LAST UPDATE: 2014-Jun-06
There are many implementations of JWT/JWS and below shows which algorithms are supported. If you know any aother implementation or find a mistake in the table please let me know.
| impl | language | HS256 | HS384 | HS512 | RS256 | RS384 | RS512 | ES256 | ES384 | ES512 | PS256 | PS384 | PS512 | none | Crypto Lib |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| jsjws | JavaScript | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | ✔ | ✔ | ✔ | — | Tom Wu's RSA, jsrsasign, CryptoJS, sjcl |
| node-jsjws | JavaScript | — | — | — | ✔ | ✔ | ✔ | — | — | — | ✔ | ✔ | ✔ | — | Tom Wu's RSA, jsrsasign, CryptoJS, sjcl |
| jwt-node | JavaScript | ✔ | — | — | ✔ | — | — | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Tom Wu's RSA, jsrsasign |
| jwt-js | JavaScript | — | — | — | ✔ | — | — | — | — | — | — | — | — | — | Tom Wu's RSA, jsrsasign |
| jwcrypto | JavaScript | — | — | — | ✔ | — | — | — | — | — | — | — | — | — | Tom Wu's RSA, jsrsasign, sjcl |
| green-jwt | JavaScript | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | — | — | ✔ | node-crypto |
| jose.4.j | Java | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Default JCE |
| Nimbus JWT | Java | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | BouncyCastle |
| json-jwt | Ruby | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | Ruby(OpenSSL) |
| jws | Python | ✔ | ✔ | ✔ | ✔ | — | — | ✔ | ✔ | ✔ | — | — | — | — | hashlib, ecdsa, Crypto.PublicKey.RSA module |
| pyjwkest | Python | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | — | ✔ | M2Crypto |
| php Akita JOSE | PHP | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | — | — | ✔ | ? |
| p5 JSON WebToken | Perl | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | — | — | — | — | — | — | Digest::SHA, Crypt::OpenSSL::RSA module |
| jwt for .NET | C# | ✔ | ✔ | ✔ | — | — | — | — | — | — | — | — | — | — | CNG,CAPI |
| mod_auth_openidc | C | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | — | OpenSSL |
| JOSE JWT .NET | PHP | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |