[Openid-specs-ab] Preliminary JOSE and JWT spec versions for your feedback

Mike Jones Michael.Jones at microsoft.com
Mon Oct 15 07:19:06 UTC 2012


The attached preliminary JOSE and JWT spec versions contain all the normative changes agreed to at the last IETF meeting and in the subsequent polls.  I wanted to give people a chance to look at these changes and discuss them before I submit IETF drafts.

Please plan on discussing any feedback you'd like to give me during the Artifact Binding spec call about 15 1/2 hours from now (4pm US Pacific Time).  While there are still a few editorial cleanups I plan to make, I believe these spec versions are otherwise ready to go.

Changelog entries (which I believe list all normative changes) follow.
JWS:
*        Changed x5c (X.509 Certificate Chain) representation from being a single string to being an array of strings, each containing a single base64 encoded DER certificate value, representing elements of the certificate chain.

JWE:
*        Removed the int and kdf parameters and defined the new composite AEAD algorithms A128CBC+HS256 and A256CBC+HS512 to replace the former uses of AES CBC, which required the use of separate integrity and key derivation functions.
*        Included additional values in the Concat KDF calculation -- the desired output size and the algorithm value, and optionally PartyUInfo and PartyVInfo values. Added the optional header parameters apu (agreement PartyUInfo), apv (agreement PartyVInfo), epu (encryption PartyUInfo), and epv (encryption PartyVInfo). Updated the KDF examples accordingly.
*        Promoted Initialization Vector from being a header parameter to being a top-level JWE element. This saves approximately 16 bytes in the compact serialization, which is a significant savings for some use cases. Promoting the Initialization Vector out of the header also avoids repeating this shared value in the JSON serialization.
*        Changed x5c (X.509 Certificate Chain) representation from being a single string to being an array of strings, each containing a single base64 encoded DER certificate value, representing elements of the certificate chain.
*        Added an AES Key Wrap example.
*        Reordered the encryption steps so CMK creation is first, when required.
*        Correct statements in examples about which algorithms produce reproducible results.

JWK:
*        Changed the name of the JWK RSA exponent parameter from exp to xpo so as to allow the potential use of the name exp for a future extension that might define an expiration parameter for keys. (The exp name is already used for this purpose in the JWT specification.)
*        Clarify that the alg (algorithm family) member is REQUIRED.
*        Correct an instance of "JWK" that should have been "JWK Set".

JWA:
*        Removed the int and kdf parameters and defined the new composite AEAD algorithms A128CBC+HS256 and A256CBC+HS512 to replace the former uses of AES CBC, which required the use of separate integrity and key derivation functions.
*        Included additional values in the Concat KDF calculation -- the desired output size and the algorithm value, and optionally PartyUInfo and PartyVInfo values. Added the optional header parameters apu (agreement PartyUInfo), apv (agreement PartyVInfo), epu (encryption PartyUInfo), and epv (encryption PartyVInfo).
*        Changed the name of the JWK RSA exponent parameter from exp to xpo so as to allow the potential use of the name exp for a future extension that might define an expiration parameter for keys. (The exp name is already used for this purpose in the JWT specification.)

JWT:
*        Promoted Initialization Vector from being a header parameter to being a top-level JWE element. This saves approximately 16 bytes in the compact serialization, which is a significant savings for some use cases. Promoting the Initialization Vector out of the header also avoids repeating this shared value in the JSON serialization.

JWS-JS:
*        Changed to use an array of structures for per-recipient values, rather than a set of parallel arrays.

JWE-JS:
*        Changed to use an array of structures for per-recipient values, rather than a set of parallel arrays.
*        Promoted Initialization Vector from being a header parameter to being a top-level JWE element. This saves approximately 16 bytes in the compact serialization, which is a significant savings for some use cases. Promoting the Initialization Vector out of the header also avoids repeating this shared value in the JSON serialization.

                                                            Thanks all,
                                                            -- Mike

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0008.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0009.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0010.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0011.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0012.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0013.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0014.html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20121015/eee01eaa/attachment-0015.html>


More information about the Openid-specs-ab mailing list