| < draft-ietf-jose-json-web-encryption-36.txt | draft-ietf-jose-json-web-encryption-37.txt > | |||
|---|---|---|---|---|
| JOSE Working Group M. Jones | JOSE Working Group M. Jones | |||
| Internet-Draft Microsoft | Internet-Draft Microsoft | |||
| Intended status: Standards Track J. Hildebrand | Intended status: Standards Track J. Hildebrand | |||
| Expires: April 27, 2015 Cisco | Expires: May 23, 2015 Cisco | |||
| October 24, 2014 | November 19, 2014 | |||
| JSON Web Encryption (JWE) | JSON Web Encryption (JWE) | |||
| draft-ietf-jose-json-web-encryption-36 | draft-ietf-jose-json-web-encryption-37 | |||
| Abstract | Abstract | |||
| JSON Web Encryption (JWE) represents encrypted content using | JSON Web Encryption (JWE) represents encrypted content using | |||
| JavaScript Object Notation (JSON) based data structures. | JavaScript Object Notation (JSON) based data structures. | |||
| Cryptographic algorithms and identifiers for use with this | Cryptographic algorithms and identifiers for use with this | |||
| specification are described in the separate JSON Web Algorithms (JWA) | specification are described in the separate JSON Web Algorithms (JWA) | |||
| specification and IANA registries defined by that specification. | specification and IANA registries defined by that specification. | |||
| Related digital signature and MAC capabilities are described in the | Related digital signature and MAC capabilities are described in the | |||
| separate JSON Web Signature (JWS) specification. | separate JSON Web Signature (JWS) specification. | |||
| skipping to change at page 1, line 37 ¶ | skipping to change at page 1, line 37 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on April 27, 2015. | This Internet-Draft will expire on May 23, 2015. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2014 IETF Trust and the persons identified as the | Copyright (c) 2014 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| skipping to change at page 3, line 22 ¶ | skipping to change at page 3, line 22 ¶ | |||
| 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 | 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 | |||
| 12.1. Normative References . . . . . . . . . . . . . . . . . . . 29 | 12.1. Normative References . . . . . . . . . . . . . . . . . . . 29 | |||
| 12.2. Informative References . . . . . . . . . . . . . . . . . . 30 | 12.2. Informative References . . . . . . . . . . . . . . . . . . 30 | |||
| Appendix A. JWE Examples . . . . . . . . . . . . . . . . . . . . 31 | Appendix A. JWE Examples . . . . . . . . . . . . . . . . . . . . 31 | |||
| A.1. Example JWE using RSAES OAEP and AES GCM . . . . . . . . . 31 | A.1. Example JWE using RSAES OAEP and AES GCM . . . . . . . . . 31 | |||
| A.1.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 31 | A.1.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 31 | |||
| A.1.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 31 | A.1.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 31 | |||
| A.1.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 32 | A.1.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 32 | |||
| A.1.4. Initialization Vector . . . . . . . . . . . . . . . . 33 | A.1.4. Initialization Vector . . . . . . . . . . . . . . . . 33 | |||
| A.1.5. Additional Authenticated Data . . . . . . . . . . . . 33 | A.1.5. Additional Authenticated Data . . . . . . . . . . . . 33 | |||
| A.1.6. Content Encryption . . . . . . . . . . . . . . . . . . 33 | A.1.6. Content Encryption . . . . . . . . . . . . . . . . . . 34 | |||
| A.1.7. Complete Representation . . . . . . . . . . . . . . . 34 | A.1.7. Complete Representation . . . . . . . . . . . . . . . 34 | |||
| A.1.8. Validation . . . . . . . . . . . . . . . . . . . . . . 34 | A.1.8. Validation . . . . . . . . . . . . . . . . . . . . . . 35 | |||
| A.2. Example JWE using RSAES-PKCS1-V1_5 and | A.2. Example JWE using RSAES-PKCS1-V1_5 and | |||
| AES_128_CBC_HMAC_SHA_256 . . . . . . . . . . . . . . . . . 35 | AES_128_CBC_HMAC_SHA_256 . . . . . . . . . . . . . . . . . 35 | |||
| A.2.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 35 | A.2.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 35 | |||
| A.2.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 35 | A.2.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 36 | |||
| A.2.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 35 | A.2.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 36 | |||
| A.2.4. Initialization Vector . . . . . . . . . . . . . . . . 37 | A.2.4. Initialization Vector . . . . . . . . . . . . . . . . 38 | |||
| A.2.5. Additional Authenticated Data . . . . . . . . . . . . 37 | A.2.5. Additional Authenticated Data . . . . . . . . . . . . 38 | |||
| A.2.6. Content Encryption . . . . . . . . . . . . . . . . . . 37 | A.2.6. Content Encryption . . . . . . . . . . . . . . . . . . 38 | |||
| A.2.7. Complete Representation . . . . . . . . . . . . . . . 38 | A.2.7. Complete Representation . . . . . . . . . . . . . . . 39 | |||
| A.2.8. Validation . . . . . . . . . . . . . . . . . . . . . . 38 | A.2.8. Validation . . . . . . . . . . . . . . . . . . . . . . 39 | |||
| A.3. Example JWE using AES Key Wrap and | A.3. Example JWE using AES Key Wrap and | |||
| AES_128_CBC_HMAC_SHA_256 . . . . . . . . . . . . . . . . . 38 | AES_128_CBC_HMAC_SHA_256 . . . . . . . . . . . . . . . . . 40 | |||
| A.3.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 39 | A.3.1. JOSE Header . . . . . . . . . . . . . . . . . . . . . 40 | |||
| A.3.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 39 | A.3.2. Content Encryption Key (CEK) . . . . . . . . . . . . . 40 | |||
| A.3.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 39 | A.3.3. Key Encryption . . . . . . . . . . . . . . . . . . . . 40 | |||
| A.3.4. Initialization Vector . . . . . . . . . . . . . . . . 40 | A.3.4. Initialization Vector . . . . . . . . . . . . . . . . 41 | |||
| A.3.5. Additional Authenticated Data . . . . . . . . . . . . 40 | A.3.5. Additional Authenticated Data . . . . . . . . . . . . 41 | |||
| A.3.6. Content Encryption . . . . . . . . . . . . . . . . . . 40 | A.3.6. Content Encryption . . . . . . . . . . . . . . . . . . 41 | |||
| A.3.7. Complete Representation . . . . . . . . . . . . . . . 41 | A.3.7. Complete Representation . . . . . . . . . . . . . . . 42 | |||
| A.3.8. Validation . . . . . . . . . . . . . . . . . . . . . . 41 | A.3.8. Validation . . . . . . . . . . . . . . . . . . . . . . 42 | |||
| A.4. Example JWE using General JWE JSON Serialization . . . . . 41 | A.4. Example JWE using General JWE JSON Serialization . . . . . 43 | |||
| A.4.1. JWE Per-Recipient Unprotected Headers . . . . . . . . 42 | A.4.1. JWE Per-Recipient Unprotected Headers . . . . . . . . 43 | |||
| A.4.2. JWE Protected Header . . . . . . . . . . . . . . . . . 42 | A.4.2. JWE Protected Header . . . . . . . . . . . . . . . . . 43 | |||
| A.4.3. JWE Unprotected Header . . . . . . . . . . . . . . . . 42 | A.4.3. JWE Unprotected Header . . . . . . . . . . . . . . . . 44 | |||
| A.4.4. Complete JOSE Header Values . . . . . . . . . . . . . 42 | A.4.4. Complete JOSE Header Values . . . . . . . . . . . . . 44 | |||
| A.4.5. Additional Authenticated Data . . . . . . . . . . . . 43 | A.4.5. Additional Authenticated Data . . . . . . . . . . . . 44 | |||
| A.4.6. Content Encryption . . . . . . . . . . . . . . . . . . 43 | A.4.6. Content Encryption . . . . . . . . . . . . . . . . . . 44 | |||
| A.4.7. Complete JWE JSON Serialization Representation . . . . 43 | A.4.7. Complete JWE JSON Serialization Representation . . . . 45 | |||
| A.5. Example JWE using Flattened JWE JSON Serialization . . . . 44 | A.5. Example JWE using Flattened JWE JSON Serialization . . . . 46 | |||
| Appendix B. Example AES_128_CBC_HMAC_SHA_256 Computation . . . . 45 | Appendix B. Example AES_128_CBC_HMAC_SHA_256 Computation . . . . 46 | |||
| B.1. Extract MAC_KEY and ENC_KEY from Key . . . . . . . . . . . 45 | B.1. Extract MAC_KEY and ENC_KEY from Key . . . . . . . . . . . 46 | |||
| B.2. Encrypt Plaintext to Create Ciphertext . . . . . . . . . . 46 | B.2. Encrypt Plaintext to Create Ciphertext . . . . . . . . . . 47 | |||
| B.3. 64 Bit Big Endian Representation of AAD Length . . . . . . 46 | B.3. 64 Bit Big Endian Representation of AAD Length . . . . . . 47 | |||
| B.4. Initialization Vector Value . . . . . . . . . . . . . . . 46 | B.4. Initialization Vector Value . . . . . . . . . . . . . . . 48 | |||
| B.5. Create Input to HMAC Computation . . . . . . . . . . . . . 46 | B.5. Create Input to HMAC Computation . . . . . . . . . . . . . 48 | |||
| B.6. Compute HMAC Value . . . . . . . . . . . . . . . . . . . . 47 | B.6. Compute HMAC Value . . . . . . . . . . . . . . . . . . . . 48 | |||
| B.7. Truncate HMAC Value to Create Authentication Tag . . . . . 47 | B.7. Truncate HMAC Value to Create Authentication Tag . . . . . 48 | |||
| Appendix C. Acknowledgements . . . . . . . . . . . . . . . . . . 47 | Appendix C. Acknowledgements . . . . . . . . . . . . . . . . . . 48 | |||
| Appendix D. Document History . . . . . . . . . . . . . . . . . . 48 | Appendix D. Document History . . . . . . . . . . . . . . . . . . 49 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 59 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 60 | |||
| 1. Introduction | 1. Introduction | |||
| JSON Web Encryption (JWE) represents encrypted content using | JSON Web Encryption (JWE) represents encrypted content using | |||
| JavaScript Object Notation (JSON) [RFC7159] based data structures. | JavaScript Object Notation (JSON) [RFC7159] based data structures. | |||
| The JWE cryptographic mechanisms encrypt and provide integrity | The JWE cryptographic mechanisms encrypt and provide integrity | |||
| protection for an arbitrary sequence of octets. | protection for an arbitrary sequence of octets. | |||
| Two closely related serializations for JWE objects are defined. The | Two closely related serializations for JWE objects are defined. The | |||
| JWE Compact Serialization is a compact, URL-safe representation | JWE Compact Serialization is a compact, URL-safe representation | |||
| skipping to change at page 12, line 41 ¶ | skipping to change at page 12, line 41 ¶ | |||
| 4.1.2. "enc" (Encryption Algorithm) Header Parameter | 4.1.2. "enc" (Encryption Algorithm) Header Parameter | |||
| The "enc" (encryption algorithm) Header Parameter identifies the | The "enc" (encryption algorithm) Header Parameter identifies the | |||
| content encryption algorithm used to perform authenticated encryption | content encryption algorithm used to perform authenticated encryption | |||
| on the Plaintext to produce the Ciphertext and the Authentication | on the Plaintext to produce the Ciphertext and the Authentication | |||
| Tag. This algorithm MUST be an AEAD algorithm with a specified key | Tag. This algorithm MUST be an AEAD algorithm with a specified key | |||
| length. The recipient MUST reject the JWE if the "enc" value does | length. The recipient MUST reject the JWE if the "enc" value does | |||
| not represent a supported algorithm. "enc" values should either be | not represent a supported algorithm. "enc" values should either be | |||
| registered in the IANA JSON Web Signature and Encryption Algorithms | registered in the IANA JSON Web Signature and Encryption Algorithms | |||
| registry defined in [JWA] or be a value that contains a Collision- | registry defined in [JWA] or be a value that contains a Collision- | |||
| Resistant Name. The "enc" value is a case-sensitive string | Resistant Name. The "enc" value is a case-sensitive ASCII string | |||
| containing a StringOrURI value. This Header Parameter MUST be | containing a StringOrURI value. This Header Parameter MUST be | |||
| present and MUST be understood and processed by implementations. | present and MUST be understood and processed by implementations. | |||
| A list of defined "enc" values for this use can be found in the IANA | A list of defined "enc" values for this use can be found in the IANA | |||
| JSON Web Signature and Encryption Algorithms registry defined in | JSON Web Signature and Encryption Algorithms registry defined in | |||
| [JWA]; the initial contents of this registry are the values defined | [JWA]; the initial contents of this registry are the values defined | |||
| in Section 5.1 of the JSON Web Algorithms (JWA) [JWA] specification. | in Section 5.1 of the JSON Web Algorithms (JWA) [JWA] specification. | |||
| 4.1.3. "zip" (Compression Algorithm) Header Parameter | 4.1.3. "zip" (Compression Algorithm) Header Parameter | |||
| skipping to change at page 17, line 41 ¶ | skipping to change at page 17, line 41 ¶ | |||
| The message decryption process is the reverse of the encryption | The message decryption process is the reverse of the encryption | |||
| process. The order of the steps is not significant in cases where | process. The order of the steps is not significant in cases where | |||
| there are no dependencies between the inputs and outputs of the | there are no dependencies between the inputs and outputs of the | |||
| steps. If any of these steps fails, the encrypted content cannot be | steps. If any of these steps fails, the encrypted content cannot be | |||
| validated. | validated. | |||
| When there are multiple recipients, it is an application decision | When there are multiple recipients, it is an application decision | |||
| which of the recipients' encrypted content must successfully validate | which of the recipients' encrypted content must successfully validate | |||
| for the JWE to be accepted. In some cases, encrypted content for all | for the JWE to be accepted. In some cases, encrypted content for all | |||
| recipients must successfully validate or the JWE will be rejected. | recipients must successfully validate or the JWE will be considered | |||
| In other cases, only the encrypted content for a single recipient | invalid. In other cases, only the encrypted content for a single | |||
| needs to be successfully validated. However, in all cases, the | recipient needs to be successfully validated. However, in all cases, | |||
| encrypted content for at least one recipient MUST successfully | the encrypted content for at least one recipient MUST successfully | |||
| validate or the JWE MUST be rejected. | validate or the JWE MUST be considered invalid. | |||
| 1. Parse the JWE representation to extract the serialized values | 1. Parse the JWE representation to extract the serialized values | |||
| for the components of the JWE. When using the JWE Compact | for the components of the JWE. When using the JWE Compact | |||
| Serialization, these components are the base64url encoded | Serialization, these components are the base64url encoded | |||
| representations of the JWE Protected Header, the JWE Encrypted | representations of the JWE Protected Header, the JWE Encrypted | |||
| Key, the JWE Initialization Vector, the JWE Ciphertext, and the | Key, the JWE Initialization Vector, the JWE Ciphertext, and the | |||
| JWE Authentication Tag, and when using the JWE JSON | JWE Authentication Tag, and when using the JWE JSON | |||
| Serialization, these components also include the base64url | Serialization, these components also include the base64url | |||
| encoded representation of the JWE AAD and the unencoded JWE | encoded representation of the JWE AAD and the unencoded JWE | |||
| Shared Unprotected Header and JWE Per-Recipient Unprotected | Shared Unprotected Header and JWE Per-Recipient Unprotected | |||
| skipping to change at page 20, line 13 ¶ | skipping to change at page 20, line 13 ¶ | |||
| calculation) using the specified content encryption algorithm, | calculation) using the specified content encryption algorithm, | |||
| returning the decrypted plaintext and validating the JWE | returning the decrypted plaintext and validating the JWE | |||
| Authentication Tag in the manner specified for the algorithm, | Authentication Tag in the manner specified for the algorithm, | |||
| rejecting the input without emitting any decrypted output if the | rejecting the input without emitting any decrypted output if the | |||
| JWE Authentication Tag is incorrect. | JWE Authentication Tag is incorrect. | |||
| 17. If a "zip" parameter was included, uncompress the decrypted | 17. If a "zip" parameter was included, uncompress the decrypted | |||
| plaintext using the specified compression algorithm. | plaintext using the specified compression algorithm. | |||
| 18. If there was no recipient for which all of the decryption steps | 18. If there was no recipient for which all of the decryption steps | |||
| succeeded, then the JWE MUST be rejected. Otherwise, output the | succeeded, then the JWE MUST be considered invalid. Otherwise, | |||
| Plaintext. In the JWE JSON Serialization case, also return a | output the Plaintext. In the JWE JSON Serialization case, also | |||
| result to the application indicating for which of the recipients | return a result to the application indicating for which of the | |||
| the decryption succeeded and failed. | recipients the decryption succeeded and failed. | |||
| Finally, note that it is an application decision which algorithms may | Finally, note that it is an application decision which algorithms may | |||
| be used in a given context. Even if a JWE can be successfully | be used in a given context. Even if a JWE can be successfully | |||
| decrypted, unless the algorithms used in the JWE are acceptable to | decrypted, unless the algorithms used in the JWE are acceptable to | |||
| the application, it SHOULD reject the JWE. | the application, it SHOULD consider the JWE to be invalid. | |||
| 5.3. String Comparison Rules | 5.3. String Comparison Rules | |||
| The string comparison rules for this specification are the same as | The string comparison rules for this specification are the same as | |||
| those defined in Section 5.3 of [JWS]. | those defined in Section 5.3 of [JWS]. | |||
| 6. Key Identification | 6. Key Identification | |||
| The key identification methods for this specification are the same as | The key identification methods for this specification are the same as | |||
| those defined in Section 6 of [JWS], except that the key being | those defined in Section 6 of [JWS], except that the key being | |||
| skipping to change at page 29, line 21 ¶ | skipping to change at page 29, line 21 ¶ | |||
| of receiving an improperly formatted key, that the recipient | of receiving an improperly formatted key, that the recipient | |||
| substitute a randomly generated CEK and proceed to the next step, to | substitute a randomly generated CEK and proceed to the next step, to | |||
| mitigate timing attacks. | mitigate timing attacks. | |||
| 12. References | 12. References | |||
| 12.1. Normative References | 12.1. Normative References | |||
| [JWA] Jones, M., "JSON Web Algorithms (JWA)", | [JWA] Jones, M., "JSON Web Algorithms (JWA)", | |||
| draft-ietf-jose-json-web-algorithms (work in progress), | draft-ietf-jose-json-web-algorithms (work in progress), | |||
| October 2014. | November 2014. | |||
| [JWK] Jones, M., "JSON Web Key (JWK)", | [JWK] Jones, M., "JSON Web Key (JWK)", | |||
| draft-ietf-jose-json-web-key (work in progress), | draft-ietf-jose-json-web-key (work in progress), | |||
| October 2014. | November 2014. | |||
| [JWS] Jones, M., Bradley, J., and N. Sakimura, "JSON Web | [JWS] Jones, M., Bradley, J., and N. Sakimura, "JSON Web | |||
| Signature (JWS)", draft-ietf-jose-json-web-signature (work | Signature (JWS)", draft-ietf-jose-json-web-signature (work | |||
| in progress), October 2014. | in progress), November 2014. | |||
| [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification | [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification | |||
| version 1.3", RFC 1951, May 1996. | version 1.3", RFC 1951, May 1996. | |||
| [RFC20] Cerf, V., "ASCII format for Network Interchange", RFC 20, | [RFC20] Cerf, V., "ASCII format for Network Interchange", RFC 20, | |||
| October 1969. | October 1969. | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| skipping to change at page 32, line 27 ¶ | skipping to change at page 32, line 27 ¶ | |||
| psk_ZkoFnilakGygTwpZ3uesH-PFABNIUYpOiN15dsQRkgr0vEhxN92i2a | psk_ZkoFnilakGygTwpZ3uesH-PFABNIUYpOiN15dsQRkgr0vEhxN92i2a | |||
| sbOenSZeyaxziK72UwxrrKoExv6kc5twXTq4h-QChLOln0_mtUZwfsRaMS | sbOenSZeyaxziK72UwxrrKoExv6kc5twXTq4h-QChLOln0_mtUZwfsRaMS | |||
| tPs6mS6XrgxnxbWhojf663tuEQueGC-FCMfra36C9knDFGzKsNa7LZK2dj | tPs6mS6XrgxnxbWhojf663tuEQueGC-FCMfra36C9knDFGzKsNa7LZK2dj | |||
| YgyD3JR_MB_4NUJW_TqOQtwHYbxevoJArm-L5StowjzGy-_bq6Gw", | YgyD3JR_MB_4NUJW_TqOQtwHYbxevoJArm-L5StowjzGy-_bq6Gw", | |||
| "e":"AQAB", | "e":"AQAB", | |||
| "d":"kLdtIj6GbDks_ApCSTYQtelcNttlKiOyPzMrXHeI-yk1F7-kpDxY4-WY5N | "d":"kLdtIj6GbDks_ApCSTYQtelcNttlKiOyPzMrXHeI-yk1F7-kpDxY4-WY5N | |||
| WV5KntaEeXS1j82E375xxhWMHXyvjYecPT9fpwR_M9gV8n9Hrh2anTpTD9 | WV5KntaEeXS1j82E375xxhWMHXyvjYecPT9fpwR_M9gV8n9Hrh2anTpTD9 | |||
| 3Dt62ypW3yDsJzBnTnrYu1iwWRgBKrEYY46qAZIrA2xAwnm2X7uGR1hghk | 3Dt62ypW3yDsJzBnTnrYu1iwWRgBKrEYY46qAZIrA2xAwnm2X7uGR1hghk | |||
| qDp0Vqj3kbSCz1XyfCs6_LehBwtxHIyh8Ripy40p24moOAbgxVw3rxT_vl | qDp0Vqj3kbSCz1XyfCs6_LehBwtxHIyh8Ripy40p24moOAbgxVw3rxT_vl | |||
| t3UVe4WO3JkJOzlpUf-KTVI2Ptgm-dARxTEtE-id-4OJr0h-K-VFs3VSnd | t3UVe4WO3JkJOzlpUf-KTVI2Ptgm-dARxTEtE-id-4OJr0h-K-VFs3VSnd | |||
| VTIznSxfyrj8ILL6MG_Uv8YAu7VILSB3lOW085-4qE3DzgrTjgyQ" | VTIznSxfyrj8ILL6MG_Uv8YAu7VILSB3lOW085-4qE3DzgrTjgyQ", | |||
| "p":"1r52Xk46c-LsfB5P442p7atdPUrxQSy4mti_tZI3Mgf2EuFVbUoDBvaRQ- | ||||
| SWxkbkmoEzL7JXroSBjSrK3YIQgYdMgyAEPTPjXv_hI2_1eTSPVZfzL0lf | ||||
| fNn03IXqWF5MDFuoUYE0hzb2vhrlN_rKrbfDIwUbTrjjgieRbwC6Cl0", | ||||
| "q":"wLb35x7hmQWZsWJmB_vle87ihgZ19S8lBEROLIsZG4ayZVe9Hi9gDVCOBm | ||||
| UDdaDYVTSNx_8Fyw1YYa9XGrGnDew00J28cRUoeBB_jKI1oma0Orv1T9aX | ||||
| IWxKwd4gvxFImOWr3QRL9KEBRzk2RatUBnmDZJTIAfwTs0g68UZHvtc", | ||||
| "dp":"ZK-YwE7diUh0qR1tR7w8WHtolDx3MZ_OTowiFvgfeQ3SiresXjm9gZ5KL | ||||
| hMXvo-uz-KUJWDxS5pFQ_M0evdo1dKiRTjVw_x4NyqyXPM5nULPkcpU827 | ||||
| rnpZzAJKpdhWAgqrXGKAECQH0Xt4taznjnd_zVpAmZZq60WPMBMfKcuE", | ||||
| "dq":"Dq0gfgJ1DdFGXiLvQEZnuKEN0UUmsJBxkjydc3j4ZYdBiMRAy86x0vHCj | ||||
| ywcMlYYg4yoC4YZa9hNVcsjqA3FeiL19rk8g6Qn29Tt0cj8qqyFpz9vNDB | ||||
| UfCAiJVeESOjJDZPYHdHY8v1b-o-Z2X5tvLx-TCekf7oxyeKDUqKWjis", | ||||
| "qi":"VIMpMYbPf47dT1w_zDUXfPimsSegnMOA1zTaX7aGk_8urY6R8-ZW1FxU7 | ||||
| AlWAyLWybqq6t16VFd7hQd0y6flUK4SlOydB61gwanOsXGOAOv82cHq0E3 | ||||
| eL4HrtZkUuKvnPrMnsUUFlfUdybVzxyjz9JF_XyaY14ardLSjf4L_FNY" | ||||
| } | } | |||
| The resulting JWE Encrypted Key value is: | The resulting JWE Encrypted Key value is: | |||
| [56, 163, 154, 192, 58, 53, 222, 4, 105, 218, 136, 218, 29, 94, 203, | [56, 163, 154, 192, 58, 53, 222, 4, 105, 218, 136, 218, 29, 94, 203, | |||
| 22, 150, 92, 129, 94, 211, 232, 53, 89, 41, 60, 138, 56, 196, 216, | 22, 150, 92, 129, 94, 211, 232, 53, 89, 41, 60, 138, 56, 196, 216, | |||
| 82, 98, 168, 76, 37, 73, 70, 7, 36, 8, 191, 100, 136, 196, 244, 220, | 82, 98, 168, 76, 37, 73, 70, 7, 36, 8, 191, 100, 136, 196, 244, 220, | |||
| 145, 158, 138, 155, 4, 117, 141, 230, 199, 247, 173, 45, 182, 214, | 145, 158, 138, 155, 4, 117, 141, 230, 199, 247, 173, 45, 182, 214, | |||
| 74, 177, 107, 211, 153, 11, 205, 196, 171, 226, 162, 128, 171, 182, | 74, 177, 107, 211, 153, 11, 205, 196, 171, 226, 162, 128, 171, 182, | |||
| 13, 237, 239, 99, 193, 4, 91, 219, 121, 223, 107, 167, 61, 119, 228, | 13, 237, 239, 99, 193, 4, 91, 219, 121, 223, 107, 167, 61, 119, 228, | |||
| skipping to change at page 36, line 18 ¶ | skipping to change at page 37, line 18 ¶ | |||
| cbAYxknTcQkhslANGRUZmdTOQ5qTRsLAt6BTYuyvVRdhS8exSZEy_c4gs_ | cbAYxknTcQkhslANGRUZmdTOQ5qTRsLAt6BTYuyvVRdhS8exSZEy_c4gs_ | |||
| 7svlJJQ4H9_NxsiIoLwAEk7-Q3UXERGYw_75IDrGA84-lA_-Ct4eTlXHBI | 7svlJJQ4H9_NxsiIoLwAEk7-Q3UXERGYw_75IDrGA84-lA_-Ct4eTlXHBI | |||
| Y2EaV7t7LjJaynVJCpkv4LKjTTAumiGUIuQhrNhZLuF_RJLqHpM2kgWFLU | Y2EaV7t7LjJaynVJCpkv4LKjTTAumiGUIuQhrNhZLuF_RJLqHpM2kgWFLU | |||
| 7-VTdL1VbC2tejvcI2BlMkEpk1BzBZI0KQB0GaDWFLN-aEAw3vRw", | 7-VTdL1VbC2tejvcI2BlMkEpk1BzBZI0KQB0GaDWFLN-aEAw3vRw", | |||
| "e":"AQAB", | "e":"AQAB", | |||
| "d":"VFCWOqXr8nvZNyaaJLXdnNPXZKRaWCjkU5Q2egQQpTBMwhprMzWzpR8Sxq | "d":"VFCWOqXr8nvZNyaaJLXdnNPXZKRaWCjkU5Q2egQQpTBMwhprMzWzpR8Sxq | |||
| 1OPThh_J6MUD8Z35wky9b8eEO0pwNS8xlh1lOFRRBoNqDIKVOku0aZb-ry | 1OPThh_J6MUD8Z35wky9b8eEO0pwNS8xlh1lOFRRBoNqDIKVOku0aZb-ry | |||
| nq8cxjDTLZQ6Fz7jSjR1Klop-YKaUHc9GsEofQqYruPhzSA-QgajZGPbE_ | nq8cxjDTLZQ6Fz7jSjR1Klop-YKaUHc9GsEofQqYruPhzSA-QgajZGPbE_ | |||
| 0ZaVDJHfyd7UUBUKunFMScbflYAAOYJqVIVwaYR5zWEEceUjNnTNo_CVSj | 0ZaVDJHfyd7UUBUKunFMScbflYAAOYJqVIVwaYR5zWEEceUjNnTNo_CVSj | |||
| -VvXLO5VZfCUAVLgW4dpf1SrtZjSt34YLsRarSb127reG_DUwg9Ch-Kyvj | -VvXLO5VZfCUAVLgW4dpf1SrtZjSt34YLsRarSb127reG_DUwg9Ch-Kyvj | |||
| T1SkHgUWRVGcyly7uvVGRSDwsXypdrNinPA4jlhoNdizK2zF2CWQ" | T1SkHgUWRVGcyly7uvVGRSDwsXypdrNinPA4jlhoNdizK2zF2CWQ", | |||
| "p":"9gY2w6I6S6L0juEKsbeDAwpd9WMfgqFoeA9vEyEUuk4kLwBKcoe1x4HG68 | ||||
| ik918hdDSE9vDQSccA3xXHOAFOPJ8R9EeIAbTi1VwBYnbTp87X-xcPWlEP | ||||
| krdoUKW60tgs1aNd_Nnc9LEVVPMS390zbFxt8TN_biaBgelNgbC95sM", | ||||
| "q":"uKlCKvKv_ZJMVcdIs5vVSU_6cPtYI1ljWytExV_skstvRSNi9r66jdd9-y | ||||
| BhVfuG4shsp2j7rGnIio901RBeHo6TPKWVVykPu1iYhQXw1jIABfw-MVsN | ||||
| -3bQ76WLdt2SDxsHs7q7zPyUyHXmps7ycZ5c72wGkUwNOjYelmkiNS0", | ||||
| "dp":"w0kZbV63cVRvVX6yk3C8cMxo2qCM4Y8nsq1lmMSYhG4EcL6FWbX5h9yuv | ||||
| ngs4iLEFk6eALoUS4vIWEwcL4txw9LsWH_zKI-hwoReoP77cOdSL4AVcra | ||||
| Hawlkpyd2TWjE5evgbhWtOxnZee3cXJBkAi64Ik6jZxbvk-RR3pEhnCs", | ||||
| "dq":"o_8V14SezckO6CNLKs_btPdFiO9_kC1DsuUTd2LAfIIVeMZ7jn1Gus_Ff | ||||
| 7B7IVx3p5KuBGOVF8L-qifLb6nQnLysgHDh132NDioZkhH7mI7hPG-PYE_ | ||||
| odApKdnqECHWw0J-F0JWnUd6D2B_1TvF9mXA2Qx-iGYn8OVV1Bsmp6qU", | ||||
| "qi":"eNho5yRBEBxhGBtQRww9QirZsB66TrfFReG_CcteI1aCneT0ELGhYlRlC | ||||
| tUkTRclIfuEPmNsNDPbLoLqqCVznFbvdB7x-Tl-m0l_eFTj2KiqwGqE9PZ | ||||
| B9nNTwMVvH3VRRSLWACvPnSiwP8N5Usy-WRXS-V7TbpxIhvepTfE0NNo" | ||||
| } | } | |||
| The resulting JWE Encrypted Key value is: | The resulting JWE Encrypted Key value is: | |||
| [80, 104, 72, 58, 11, 130, 236, 139, 132, 189, 255, 205, 61, 86, 151, | [80, 104, 72, 58, 11, 130, 236, 139, 132, 189, 255, 205, 61, 86, 151, | |||
| 176, 99, 40, 44, 233, 176, 189, 205, 70, 202, 169, 72, 40, 226, 181, | 176, 99, 40, 44, 233, 176, 189, 205, 70, 202, 169, 72, 40, 226, 181, | |||
| 156, 223, 120, 156, 115, 232, 150, 209, 145, 133, 104, 112, 237, 156, | 156, 223, 120, 156, 115, 232, 150, 209, 145, 133, 104, 112, 237, 156, | |||
| 116, 250, 65, 102, 212, 210, 103, 240, 177, 61, 93, 40, 71, 231, 223, | 116, 250, 65, 102, 212, 210, 103, 240, 177, 61, 93, 40, 71, 231, 223, | |||
| 226, 240, 157, 15, 31, 150, 89, 200, 215, 198, 203, 108, 70, 117, 66, | 226, 240, 157, 15, 31, 150, 89, 200, 215, 198, 203, 108, 70, 117, 66, | |||
| 212, 238, 193, 205, 23, 161, 169, 218, 243, 203, 128, 214, 127, 253, | 212, 238, 193, 205, 23, 161, 169, 218, 243, 203, 128, 214, 127, 253, | |||
| skipping to change at page 48, line 21 ¶ | skipping to change at page 49, line 34 ¶ | |||
| Sakimura, Jim Schaad, Hannes Tschofenig, and Sean Turner. | Sakimura, Jim Schaad, Hannes Tschofenig, and Sean Turner. | |||
| Jim Schaad and Karen O'Donoghue chaired the JOSE working group and | Jim Schaad and Karen O'Donoghue chaired the JOSE working group and | |||
| Sean Turner, Stephen Farrell, and Kathleen Moriarty served as | Sean Turner, Stephen Farrell, and Kathleen Moriarty served as | |||
| Security area directors during the creation of this specification. | Security area directors during the creation of this specification. | |||
| Appendix D. Document History | Appendix D. Document History | |||
| [[ to be removed by the RFC Editor before publication as an RFC ]] | [[ to be removed by the RFC Editor before publication as an RFC ]] | |||
| -37 | ||||
| o Restricted algorithm names to using only ASCII characters. | ||||
| o When describing actions taken as a result of validation failures, | ||||
| changed statements about rejecting the JWE to statements about | ||||
| considering the JWE to be invalid. | ||||
| o Added the CRT parameter values to example RSA private key | ||||
| representations. | ||||
| -36 | -36 | |||
| o Defined a flattened JWE JSON Serialization syntax, which is | o Defined a flattened JWE JSON Serialization syntax, which is | |||
| optimized for the single recipient case. | optimized for the single recipient case. | |||
| o Clarified where white space and line breaks may occur in JSON | o Clarified where white space and line breaks may occur in JSON | |||
| objects by referencing Section 2 of RFC 7159. | objects by referencing Section 2 of RFC 7159. | |||
| -35 | -35 | |||
| End of changes. 18 change blocks. | ||||
| 58 lines changed or deleted | 99 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||