- From: Mike Jones <Michael.Jones@microsoft.com>
- Date: Tue, 24 Jul 2012 17:47:38 +0000
- To: "public-webcrypto@w3.org" <public-webcrypto@w3.org>
- Message-ID: <4E1F6AAD24975D4BA5B1680429673943667427A5@TK5EX14MBXC285.redmond.corp.microsoft.>
From: Mike Jones Sent: Monday, July 23, 2012 9:50 PM To: jose@ietf.org Subject: Platform support for JWA algorithms I've been doing some investigation into the state of support for the JWA algorithms in common Web development platforms. The attached table is the data gathered to date. I'll be leading a discussion based upon this data during our session at IETF 84. If any of you have more data that I should add, or believe that there are additional columns or rows we should track, please let me know. Thanks to Roland Hedberg, Axel Nennker, Emmanuel Raviart, Nov Matake, Justin Richer, and Edmund Jay for the data they provided, based upon their implementation experiences. -- Mike Usage Param Name Param Val Description .NET OSX iOS Java JCA BouncyCastle Android PHP PHPSecLib Python MCrypto2 PyCrypto Ruby OpenSSL node.js JWS/JWE alg/int HS256 HMAC w/ SHA-256 hash YES YES YES YES YES YES YES YES YES YES YES YES YES JWS/JWE alg/int HS384 HMAC w/ SHA-384 hash YES YES YES YES YES YES YES YES YES YES YES YES YES JWS/JWE alg/int HS512 HMAC w/ SHA-512 hash YES YES YES YES YES YES YES YES YES YES YES YES YES JWS alg RS256 RSA w/ SHA-256 hash YES YES YES YES YES YES NO YES YES YES YES YES YES JWS alg RS384 RSA w/ SHA-384 hash YES YES YES YES YES YES NO YES YES YES YES YES YES JWS alg RS512 RSA w/ SHA-512 hash YES YES YES YES YES YES NO YES YES YES YES YES YES JWS alg ES256 ECDSA w/ P-256 curve and SHA-256 hash YES NO* NO NO* YES YES NO NO YES NO YES YES JWS alg ES384 ECDSA w/ P-384 curve and SHA-384 hash YES NO* NO NO* YES YES NO NO YES NO YES YES JWS alg ES512 ECDSA w/ P-521 curve and SHA-512 hash YES NO* NO NO* YES YES NO NO YES NO YES YES JWE alg RSA1_5 RSAES-PKCS1-V1_5 YES YES* YES YES YES YES YES YES YES YES YES YES JWE alg RSA-OAEP RSAES OAEP YES YES* YES NO YES YES NO YES YES YES YES YES JWE alg ECDH-ES Elliptic Curve Diffie-Hellman Ephemeral Static NO* NO NO* YES* YES* NO NO YES* NO YES YES JWE alg A128KW AES Key Wrap w/ 128 bit key NO YES YES YES YES NO NO YES YES YES* YES* JWE alg A256KW AES Key Wrap w/ 256 bit key NO YES YES YES YES NO NO YES YES YES* YES* JWE enc A128CBC AES CBC w/ 128 bit key YES YES YES YES YES YES YES YES YES YES JWE enc A256CBC AES CBC w/ 256 bit key YES YES YES YES YES YES YES YES YES YES JWE enc A128GCM AES GCM w/ 128 bit key NO NO* NO NO YES YES NO NO NO* NO YES YES JWE enc A256GCM AES GCM w/ 256 bit key NO NO* NO NO YES YES NO NO NO* NO YES YES JWE kdf CS256 Concat Key Distribution Function (KDF) NO NO NO NO NO NO NO NO NO NO NO JWE kdf CS384 Concat Key Distribution Function (KDF) NO NO NO NO NO NO NO NO NO NO NO JWE kdf CS512 Concat Key Distribution Function (KDF) NO NO NO NO NO NO NO NO NO NO NO YES - Support built into library/platform BouncyCastle is a crypto lib for Java NO - Not supported in library/platform Android uses BouncyCastle (blank) - Unknown PHPSecLib is a crypto lib for PHP * - Answer is a first impression but requires more research MCrypto2 is a crypto lib for Python PyCrypto is a crypto lib for Python PHP version 5.2 PHPSecLib version 0.3.0 PyCrypto version 2.6
Attachments
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet attachment: Support for JWA Crypto Algorithms.xlsx
Received on Tuesday, 24 July 2012 17:48:22 UTC