jose v1.7.7 Release Notes
Release Date: 2016-06-30 // over 7 years ago-
- ✨ Enhancements
- Improved handling of RSA private keys in SMF (Straightforward Method) form to CRT (Chinese Remainder Theorem) form, see #19 This is especially useful for keys produced by Java programs using the
RSAPrivateKeySpec
API as mentioned in Section 9.3 of RFC 7517. - Updated EdDSA operations to comply with draft 02 of draft-ietf-jose-cfrg-curves-02.
- Improved handling of RSA private keys in SMF (Straightforward Method) form to CRT (Chinese Remainder Theorem) form, see #19 This is especially useful for keys produced by Java programs using the
Example RSA SMF to CRT usage:
%% The following map of an RSA secret key is in SMF (Straightforward Method) form. %% Notice that we only have d, e, and n for this secret key. JWK = jose_jwk:from(#{ <<"d">> => <<"WSAGFGM7fSyYn5NyBL0dp3kjHjQ3djjhQoOAFasoyeE">>, <<"e">> => <<"AQAB">>, <<"kty">> => <<"RSA">>, <<"n">> => <<"0PM6Aooi_KYkDA1r-S24SauFpfTRc5kiPLF3a1EhuY8">> }). %% If we convert it back to a map, it is now in CRT (Chinese Remainder Theorem) form. %% Notice that the dp, dq, p, q, and qi have been restored. element(2, jose_jwk:to_map(JWK)) =:= #{ <<"d">> => <<"WSAGFGM7fSyYn5NyBL0dp3kjHjQ3djjhQoOAFasoyeE">>, <<"dp">> => <<"G00J545ym1bqC9hnFDo3aQ">>, <<"dq">> => <<"tt0FvEZgKli6IL4rVKx3cw">>, <<"e">> => <<"AQAB">>, <<"kty">> => <<"RSA">>, <<"n">> => <<"0PM6Aooi_KYkDA1r-S24SauFpfTRc5kiPLF3a1EhuY8">>, <<"p">> => <<"9O5YQ0w6PIpDl6c6yqwyKQ">>, <<"q">> => <<"2mScgy86M3q6b301UAU09w">>, <<"qi">> => <<"Wrp0SgcGgTT5WmeuHD6Sqw">> }.
- ✨ Enhancements