Browser Support
panva opened this issue · 0 comments
panva commented
Browser distributions make use of Web Cryptography API for the cryptographic operations. Vendor-specifics are marked with an annotation.
JSON Web Key Type Support
Supported | kty value |
||
---|---|---|---|
RSA | ✓ | RSA | |
Elliptic Curve | ✓ | EC | supported curves: P-256, P-384, P-521 |
Octet Key Pair | ✓ | OKP | supported subtypes: Ed255191 |
Octet sequence | ✓ | oct |
JWS Algorithm Support
Supported | alg values |
|
---|---|---|
RSASSA-PKCS1-v1_5 | ✓ | RS256, RS384, RS512 |
RSASSA-PSS | ✓ | PS256, PS384, PS512 |
ECDSA | ✓ | ES256, ES384, ES512 |
Edwards-curve DSA | ✓ | EdDSA[^eddsa-support] |
HMAC with SHA-2 | ✓ | HS256, HS384, HS512 |
Unsecured JWS | ✓ | none |
JWE Key Management Algorithm Support
Supported | alg values |
|
---|---|---|
AES | ✓ | A128KW, A192KW2, A256KW |
AES GCM | ✓ | A128GCMKW, A192GCMKW2, A256GCMKW |
Direct Key Agreement | ✓ | dir |
RSAES OAEP | ✓ | RSA-OAEP, RSA-OAEP-256, RSA-OAEP-384, RSA-OAEP-512 |
PBES2 | ✓ | PBES2-HS256+A128KW, PBES2-HS384+A192KW2, PBES2-HS512+A256KW |
ECDH-ES | ✓ | ECDH-ES, ECDH-ES+A128KW, ECDH-ES+A192KW2, ECDH-ES+A256KW |
JWE Content Encryption Algorithm Support
Supported | enc values |
|
---|---|---|
AES GCM | ✓ | A128GCM, A192GCM2, A256GCM |
AES CBC w/ HMAC | ✓ | A128CBC-HS256, A192CBC-HS3842, A256CBC-HS512 |
Unsupported Algorithms or Key Types
Due to the Web Cryptography API limitations the following is not supported in any browser vendor runtime:
- RSA1_5
- secp256k1 and ES256K
- Ed448
- X448
See also
- Bun Support
- Cloudflare Workers Support
- Deno Support
- Electron Support
- Node.js Support
- Vercel's Edge Runtime Support