Comment on page

# Signature Algorithms

This framework comes with several signature algorithms. These algorithms are in the following namespace:

`Jose\Component\Signature\Algorithm`

.Algorithm | Description | Package |
---|---|---|

HS256 HS384 HS512 | HMAC with SHA-2 Functions | `web-token/jwt-signature-algorithm-hmac` |

ES256 ES384 ES512 | Elliptic Curve Digital Signature Algorithm (ECDSA) | `web-token/jwt-signature-algorithm-ecdsa` |

RS256 RS384 RS512 | RSASSA-PKCS1 v1_5 | `web-token/jwt-signature-algorithm-rsa` |

PS256 PS384 PS512 | RSASSA-PSS | `web-token/jwt-signature-algorithm-rsa` |

EdDSA ( only with the Ed25519 curve) | Edwards-curve Digital Signature Algorithm (EdDSA) | `web-token/jwt-signature-algorithm-eddsa` |

none | | `web-token/jwt-signature-algorithm-none` |

**The following signature algorithms are experimental and must not be used in production unless you know what you are doing. They are proposed for testing purpose only.**

**They are provided throught the package**

`web-token/jwt-signature-algorithm-experimental`

.Algorithm | Description |
---|---|

RS1 | RSASSA-PKCS1 v1_5 with SHA-1 hashing function |

HS1 | HMAC with SHA-1 hashing function |

ES256K | Elliptic curve secp256k1 support |

Example:

<?php

use Jose\Component\Core\AlgorithmManager;

use Jose\Component\Signature\Algorithm\PS256;

use Jose\Component\Signature\Algorithm\ES512;

use Jose\Component\Signature\Algorithm\None;

$algorithm_manager = new AlgorithmManager([

new PS256(),

new ES512(),

new None(),

]);

Last modified 1yr ago