| < draft-ietf-ace-cwt-proof-of-possession-07.txt | draft-ietf-ace-cwt-proof-of-possession-08.txt > | |||
|---|---|---|---|---|
| ACE M. Jones | ACE M. Jones | |||
| Internet-Draft Microsoft | Internet-Draft Microsoft | |||
| Intended status: Standards Track L. Seitz | Intended status: Standards Track L. Seitz | |||
| Expires: March 21, 2020 RISE SICS | Expires: April 3, 2020 RISE SICS | |||
| G. Selander | G. Selander | |||
| Ericsson AB | Ericsson AB | |||
| S. Erdtman | S. Erdtman | |||
| Spotify | Spotify | |||
| H. Tschofenig | H. Tschofenig | |||
| Arm Ltd. | Arm Ltd. | |||
| September 18, 2019 | October 1, 2019 | |||
| Proof-of-Possession Key Semantics for CBOR Web Tokens (CWTs) | Proof-of-Possession Key Semantics for CBOR Web Tokens (CWTs) | |||
| draft-ietf-ace-cwt-proof-of-possession-07 | draft-ietf-ace-cwt-proof-of-possession-08 | |||
| Abstract | Abstract | |||
| This specification describes how to declare in a CBOR Web Token (CWT) | This specification describes how to declare in a CBOR Web Token (CWT) | |||
| that the presenter of the CWT possesses a particular proof-of- | that the presenter of the CWT possesses a particular proof-of- | |||
| possession key. Being able to prove possession of a key is also | possession key. Being able to prove possession of a key is also | |||
| sometimes described as being the holder-of-key. This specification | sometimes described as being the holder-of-key. This specification | |||
| provides equivalent functionality to "Proof-of-Possession Key | provides equivalent functionality to "Proof-of-Possession Key | |||
| Semantics for JSON Web Tokens (JWTs)" (RFC 7800) but using CBOR and | Semantics for JSON Web Tokens (JWTs)" (RFC 7800) but using CBOR and | |||
| CWTs rather than JSON and JWTs. | CWTs rather than JSON and JWTs. | |||
| skipping to change at page 1, line 43 ¶ | skipping to change at page 1, line 43 ¶ | |||
| 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 https://datatracker.ietf.org/drafts/current/. | Drafts is at https://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 March 21, 2020. | This Internet-Draft will expire on April 3, 2020. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2019 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 | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://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 2, line 23 ¶ | skipping to change at page 2, line 23 ¶ | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Representations for Proof-of-Possession Keys . . . . . . . . 3 | 3. Representations for Proof-of-Possession Keys . . . . . . . . 3 | |||
| 3.1. Confirmation Claim . . . . . . . . . . . . . . . . . . . 4 | 3.1. Confirmation Claim . . . . . . . . . . . . . . . . . . . 4 | |||
| 3.2. Representation of an Asymmetric Proof-of-Possession Key . 5 | 3.2. Representation of an Asymmetric Proof-of-Possession Key . 5 | |||
| 3.3. Representation of an Encrypted Symmetric Proof-of- | 3.3. Representation of an Encrypted Symmetric Proof-of- | |||
| Possession Key . . . . . . . . . . . . . . . . . . . . . 5 | Possession Key . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 3.4. Representation of a Key ID for a Proof-of-Possession Key 6 | 3.4. Representation of a Key ID for a Proof-of-Possession Key 7 | |||
| 3.5. Specifics Intentionally Not Specified . . . . . . . . . . 7 | 3.5. Specifics Intentionally Not Specified . . . . . . . . . . 8 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | |||
| 5. Privacy Considerations . . . . . . . . . . . . . . . . . . . 9 | 5. Privacy Considerations . . . . . . . . . . . . . . . . . . . 9 | |||
| 6. Operational Considerations . . . . . . . . . . . . . . . . . 9 | 6. Operational Considerations . . . . . . . . . . . . . . . . . 9 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 7.1. CBOR Web Token Claims Registration . . . . . . . . . . . 10 | 7.1. CBOR Web Token Claims Registration . . . . . . . . . . . 11 | |||
| 7.1.1. Registry Contents . . . . . . . . . . . . . . . . . . 10 | 7.1.1. Registry Contents . . . . . . . . . . . . . . . . . . 11 | |||
| 7.2. CWT Confirmation Methods Registry . . . . . . . . . . . . 11 | 7.2. CWT Confirmation Methods Registry . . . . . . . . . . . . 11 | |||
| 7.2.1. Registration Template . . . . . . . . . . . . . . . . 11 | 7.2.1. Registration Template . . . . . . . . . . . . . . . . 11 | |||
| 7.2.2. Initial Registry Contents . . . . . . . . . . . . . . 11 | 7.2.2. Initial Registry Contents . . . . . . . . . . . . . . 12 | |||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 12 | |||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 13 | 8.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
| Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 14 | Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| Document History . . . . . . . . . . . . . . . . . . . . . . . . 14 | Document History . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 1. Introduction | 1. Introduction | |||
| This specification describes how a CBOR Web Token (CWT) [RFC8392] can | This specification describes how a CBOR Web Token (CWT) [CWT] can | |||
| declare that the presenter of the CWT possesses a particular proof- | declare that the presenter of the CWT possesses a particular proof- | |||
| of-possession (PoP) key. Proof of possession of a key is also | of-possession (PoP) key. Proof of possession of a key is also | |||
| sometimes described as being the holder-of-key. This specification | sometimes described as being the holder-of-key. This specification | |||
| provides equivalent functionality to "Proof-of-Possession Key | provides equivalent functionality to "Proof-of-Possession Key | |||
| Semantics for JSON Web Tokens (JWTs)" [RFC7800] but using CBOR | Semantics for JSON Web Tokens (JWTs)" [RFC7800] but using CBOR | |||
| [RFC7049] and CWTs [RFC8392] rather than JSON [RFC8259] and JWTs | [RFC7049] and CWTs [CWT] rather than JSON [RFC8259] and JWTs [JWT]. | |||
| [JWT]. | ||||
| 2. Terminology | 2. Terminology | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| This specification uses terms defined in the CBOR Web Token (CWT) | This specification uses terms defined in the CBOR Web Token (CWT) | |||
| [RFC8392], CBOR Object Signing and Encryption (COSE) [RFC8152], and | [CWT], CBOR Object Signing and Encryption (COSE) [RFC8152], and | |||
| Concise Binary Object Representation (CBOR) [RFC7049] specifications. | Concise Binary Object Representation (CBOR) [RFC7049] specifications. | |||
| These terms are defined by this specification: | These terms are defined by this specification: | |||
| Issuer | Issuer | |||
| Party that creates the CWT and binds the claims about the subject | Party that creates the CWT and binds the claims about the subject | |||
| to the proof-of-possession key. | to the proof-of-possession key. | |||
| Presenter | Presenter | |||
| Party that proves possession of a private key (for asymmetric key | Party that proves possession of a private key (for asymmetric key | |||
| skipping to change at page 3, line 50 ¶ | skipping to change at page 3, line 50 ¶ | |||
| 3. Representations for Proof-of-Possession Keys | 3. Representations for Proof-of-Possession Keys | |||
| By including a "cnf" (confirmation) claim in a CWT, the issuer of the | By including a "cnf" (confirmation) claim in a CWT, the issuer of the | |||
| CWT declares that the presenter possesses a particular key and that | CWT declares that the presenter possesses a particular key and that | |||
| the recipient can cryptographically confirm that the presenter has | the recipient can cryptographically confirm that the presenter has | |||
| possession of that key. The value of the "cnf" claim is a CBOR map | possession of that key. The value of the "cnf" claim is a CBOR map | |||
| and the members of that map identify the proof-of-possession key. | and the members of that map identify the proof-of-possession key. | |||
| The presenter can be identified in one of several ways by the CWT, | The presenter can be identified in one of several ways by the CWT, | |||
| depending upon the application requirements. For instance, some | depending upon the application requirements. For instance, some | |||
| applications may use the CWT "sub" (subject) claim [RFC8392], to | applications may use the CWT "sub" (subject) claim [CWT], to identify | |||
| identify the presenter. Other applications may use the "iss" claim | the presenter. Other applications may use the "iss" claim to | |||
| to identify the presenter. In some applications, the subject | identify the presenter. In some applications, the subject identifier | |||
| identifier might be relative to the issuer identified by the "iss" | might be relative to the issuer identified by the "iss" (issuer) | |||
| (issuer) claim [RFC8392]. The actual mechanism used is dependent | claim [CWT]. The actual mechanism used is dependent upon the | |||
| upon the application. The case in which the presenter is the subject | application. The case in which the presenter is the subject of the | |||
| of the CWT is analogous to Security Assertion Markup Language (SAML) | CWT is analogous to Security Assertion Markup Language (SAML) 2.0 | |||
| 2.0 [OASIS.saml-core-2.0-os] SubjectConfirmation usage. | [OASIS.saml-core-2.0-os] SubjectConfirmation usage. | |||
| 3.1. Confirmation Claim | 3.1. Confirmation Claim | |||
| The "cnf" claim in the CWT is used to carry confirmation methods. | The "cnf" claim in the CWT is used to carry confirmation methods. | |||
| Some of them use proof-of-possession keys while others do not. This | Some of them use proof-of-possession keys while others do not. This | |||
| design is analogous to the SAML 2.0 [OASIS.saml-core-2.0-os] | design is analogous to the SAML 2.0 [OASIS.saml-core-2.0-os] | |||
| SubjectConfirmation element in which a number of different subject | SubjectConfirmation element in which a number of different subject | |||
| confirmation methods can be included (including proof-of-possession | confirmation methods can be included (including proof-of-possession | |||
| key information). | key information). | |||
| skipping to change at page 5, line 45 ¶ | skipping to change at page 5, line 45 ¶ | |||
| } | } | |||
| } | } | |||
| The COSE_Key MUST contain the required key members for a COSE_Key of | The COSE_Key MUST contain the required key members for a COSE_Key of | |||
| that key type and MAY contain other COSE_Key members, including the | that key type and MAY contain other COSE_Key members, including the | |||
| "kid" (Key ID) member. | "kid" (Key ID) member. | |||
| The "COSE_Key" member MAY also be used for a COSE_Key representing a | The "COSE_Key" member MAY also be used for a COSE_Key representing a | |||
| symmetric key, provided that the CWT is encrypted so that the key is | symmetric key, provided that the CWT is encrypted so that the key is | |||
| not revealed to unintended parties. The means of encrypting a CWT is | not revealed to unintended parties. The means of encrypting a CWT is | |||
| explained in [RFC8392]. If the CWT is not encrypted, the symmetric | explained in [CWT]. If the CWT is not encrypted, the symmetric key | |||
| key MUST be encrypted as described in Section 3.3. | MUST be encrypted as described in Section 3.3. This procedure is | |||
| equivalent to the one defined in section 3.3 of [RFC7800]. | ||||
| 3.3. Representation of an Encrypted Symmetric Proof-of-Possession Key | 3.3. Representation of an Encrypted Symmetric Proof-of-Possession Key | |||
| When the key held by the presenter is a symmetric key, the | When the key held by the presenter is a symmetric key, the | |||
| "Encrypted_COSE_Key" member is an encrypted COSE_Key [RFC8152] | "Encrypted_COSE_Key" member is an encrypted COSE_Key [RFC8152] | |||
| representing the symmetric key encrypted to a key known to the | representing the symmetric key encrypted to a key known to the | |||
| recipient using COSE_Encrypt or COSE_Encrypt0. | recipient using COSE_Encrypt or COSE_Encrypt0. | |||
| The following example illustrates a symmetric key that could | The following example illustrates a symmetric key that could | |||
| subsequently be encrypted for use in the "Encrypted_COSE_Key" member: | subsequently be encrypted for use in the "Encrypted_COSE_Key" member: | |||
| skipping to change at page 7, line 36 ¶ | skipping to change at page 7, line 45 ¶ | |||
| derived from the key or where not all of the parties involved are | derived from the key or where not all of the parties involved are | |||
| validating the cryptographic derivation, implementers should expect | validating the cryptographic derivation, implementers should expect | |||
| collisions, where different keys are assigned the same Key ID. | collisions, where different keys are assigned the same Key ID. | |||
| Recipients of a CWT with a PoP key linked through only a Key ID | Recipients of a CWT with a PoP key linked through only a Key ID | |||
| should be prepared to handle such situations. | should be prepared to handle such situations. | |||
| In the world of constrained Internet of Things (IoT) devices, there | In the world of constrained Internet of Things (IoT) devices, there | |||
| is frequently a restriction on the size of Key IDs, either because of | is frequently a restriction on the size of Key IDs, either because of | |||
| table constraints or a desire to keep message sizes small. | table constraints or a desire to keep message sizes small. | |||
| Note that the value of a Key ID for a specific key is not necessarily | ||||
| the same for different parties. When sending a COSE encrypted | ||||
| message with a shared key, the Key ID may be different on both sides | ||||
| of the conversation, with the appropriate one being included in the | ||||
| message based on the recipient of the message. | ||||
| 3.5. Specifics Intentionally Not Specified | 3.5. Specifics Intentionally Not Specified | |||
| Proof of possession is often demonstrated by having the presenter | Proof of possession is often demonstrated by having the presenter | |||
| sign a value determined by the recipient using the key possessed by | sign a value determined by the recipient using the key possessed by | |||
| the presenter. This value is sometimes called a "nonce" or a | the presenter. This value is sometimes called a "nonce" or a | |||
| "challenge". There are, however, also other means to demonstrate | "challenge". There are, however, also other means to demonstrate | |||
| freshness of the exchange and to link the proof-of-possession key to | freshness of the exchange and to link the proof-of-possession key to | |||
| the participating parties, as demonstrated by various authentication | the participating parties, as demonstrated by various authentication | |||
| and key exchange protocols. | and key exchange protocols. | |||
| skipping to change at page 8, line 13 ¶ | skipping to change at page 8, line 29 ¶ | |||
| specified, as this is also protocol specific. | specified, as this is also protocol specific. | |||
| Note that other means of proving possession of the key exist, which | Note that other means of proving possession of the key exist, which | |||
| could be used in conjunction with a CWT's confirmation key. | could be used in conjunction with a CWT's confirmation key. | |||
| Applications making use of such alternate means are encouraged to | Applications making use of such alternate means are encouraged to | |||
| register them in the IANA "CWT Confirmation Methods" registry | register them in the IANA "CWT Confirmation Methods" registry | |||
| established in Section 7.2. | established in Section 7.2. | |||
| 4. Security Considerations | 4. Security Considerations | |||
| All the security considerations that are discussed in [RFC8392] also | All the security considerations that are discussed in [CWT] also | |||
| apply here. In addition, proof of possession introduces its own | apply here. In addition, proof of possession introduces its own | |||
| unique security issues. Possessing a key is only valuable if it is | unique security issues. Possessing a key is only valuable if it is | |||
| kept secret. Appropriate means must be used to ensure that | kept secret. Appropriate means must be used to ensure that | |||
| unintended parties do not learn private key or symmetric key values. | unintended parties do not learn private key or symmetric key values. | |||
| Applications utilizing proof of possession SHOULD also utilize | Applications utilizing proof of possession SHOULD also utilize | |||
| audience restriction, as described in Section 4.1.3 of [JWT], as it | audience restriction, as described in Section 3.1.3 of [CWT], as it | |||
| provides additional protections. Audience restriction can be used by | provides additional protections. Audience restriction can be used by | |||
| recipients to reject messages intended for different recipients. | recipients to reject messages intended for different recipients. | |||
| A recipient might not understand the "cnf" claim. Applications that | A recipient might not understand the "cnf" claim. Applications that | |||
| use proof-of-possession keys in CWTs with the "cnf" claim MUST ensure | use proof-of-possession keys in CWTs with the "cnf" claim MUST ensure | |||
| that the parts of this specification that they use are implemented by | that the parts of this specification that they use are implemented by | |||
| the intended recipient. | the intended recipient. | |||
| CBOR Web Tokens with proof-of-possession keys are used in context of | CBOR Web Tokens with proof-of-possession keys are used in context of | |||
| an architecture, such as the ACE OAuth Framework | an architecture, such as the ACE OAuth Framework | |||
| skipping to change at page 8, line 52 ¶ | skipping to change at page 9, line 19 ¶ | |||
| necessary to apply data origin authentication and integrity | necessary to apply data origin authentication and integrity | |||
| protection (via a keyed message digest or a digital signature). Data | protection (via a keyed message digest or a digital signature). Data | |||
| origin authentication ensures that the recipient of the CWT learns | origin authentication ensures that the recipient of the CWT learns | |||
| about the entity that created the CWT since this will be important | about the entity that created the CWT since this will be important | |||
| for any policy decisions. Integrity protection prevents an adversary | for any policy decisions. Integrity protection prevents an adversary | |||
| from changing any elements conveyed within the CWT payload. Special | from changing any elements conveyed within the CWT payload. Special | |||
| care has to be applied when carrying symmetric keys inside the CWT | care has to be applied when carrying symmetric keys inside the CWT | |||
| since those not only require integrity protection but also | since those not only require integrity protection but also | |||
| confidentiality protection (e.g., either by encrypting the "cnf" | confidentiality protection (e.g., either by encrypting the "cnf" | |||
| element, as specified in Section 3.3, or by encrypting the whole CWT, | element, as specified in Section 3.3, or by encrypting the whole CWT, | |||
| as specified in [RFC8392]). | as specified in [CWT]). | |||
| As described in Section 6 (Key Identification) and Appendix D (Notes | As described in Section 6 (Key Identification) and Appendix D (Notes | |||
| on Key Selection) of [JWS], it is important to make explicit trust | on Key Selection) of [JWS], it is important to make explicit trust | |||
| decisions about the keys. Proof-of-possession signatures made with | decisions about the keys. Proof-of-possession signatures made with | |||
| keys not meeting the application's trust criteria MUST NOT be relied | keys not meeting the application's trust criteria MUST NOT be relied | |||
| upon. | upon. | |||
| 5. Privacy Considerations | 5. Privacy Considerations | |||
| A proof-of-possession key can be used as a correlation handle if the | A proof-of-possession key can be used as a correlation handle if the | |||
| skipping to change at page 10, line 39 ¶ | skipping to change at page 11, line 8 ¶ | |||
| able to represent the perspectives of different applications using | able to represent the perspectives of different applications using | |||
| this specification in order to enable broadly informed review of | this specification in order to enable broadly informed review of | |||
| registration decisions. In cases where a registration decision could | registration decisions. In cases where a registration decision could | |||
| be perceived as creating a conflict of interest for a particular | be perceived as creating a conflict of interest for a particular | |||
| Expert, that Expert should defer to the judgment of the other | Expert, that Expert should defer to the judgment of the other | |||
| Experts. | Experts. | |||
| 7.1. CBOR Web Token Claims Registration | 7.1. CBOR Web Token Claims Registration | |||
| This specification registers the "cnf" claim in the IANA "CBOR Web | This specification registers the "cnf" claim in the IANA "CBOR Web | |||
| Token Claims" registry [IANA.CWT.Claims] established by [RFC8392]. | Token Claims" registry [IANA.CWT.Claims] established by [CWT]. | |||
| 7.1.1. Registry Contents | 7.1.1. Registry Contents | |||
| o Claim Name: "cnf" | o Claim Name: "cnf" | |||
| o Claim Description: Confirmation | o Claim Description: Confirmation | |||
| o JWT Claim Name: "cnf" | o JWT Claim Name: "cnf" | |||
| o Claim Key: TBD (maybe 8) | o Claim Key: TBD (maybe 8) | |||
| o Claim Value Type(s): map | o Claim Value Type(s): map | |||
| o Change Controller: IESG | o Change Controller: IESG | |||
| o Specification Document(s): Section 3.1 of [[ this document ]] | o Specification Document(s): Section 3.1 of [[ this document ]] | |||
| skipping to change at page 12, line 29 ¶ | skipping to change at page 12, line 45 ¶ | |||
| o JWT Confirmation Method Name: "kid" | o JWT Confirmation Method Name: "kid" | |||
| o Confirmation Key: 3 | o Confirmation Key: 3 | |||
| o Confirmation Value Type(s): binary string | o Confirmation Value Type(s): binary string | |||
| o Change Controller: IESG | o Change Controller: IESG | |||
| o Specification Document(s): Section 3.4 of [[ this document ]] | o Specification Document(s): Section 3.4 of [[ this document ]] | |||
| 8. References | 8. References | |||
| 8.1. Normative References | 8.1. Normative References | |||
| [CWT] Jones, M., Wahlstroem, E., Erdtman, S., and H. Tschofenig, | ||||
| "CBOR Web Token (CWT)", RFC 8392, DOI 10.17487/RFC8392, | ||||
| May 2018, <http://www.rfc-editor.org/info/rfc8392>. | ||||
| [IANA.CWT.Claims] | [IANA.CWT.Claims] | |||
| IANA, "CBOR Web Token Claims", | IANA, "CBOR Web Token Claims", | |||
| <http://www.iana.org/assignments/cwt>. | <http://www.iana.org/assignments/cwt>. | |||
| [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, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC7049] Bormann, C. and P. Hoffman, "Concise Binary Object | [RFC7049] Bormann, C. and P. Hoffman, "Concise Binary Object | |||
| skipping to change at page 13, line 9 ¶ | skipping to change at page 13, line 27 ¶ | |||
| <https://www.rfc-editor.org/info/rfc8126>. | <https://www.rfc-editor.org/info/rfc8126>. | |||
| [RFC8152] Schaad, J., "CBOR Object Signing and Encryption (COSE)", | [RFC8152] Schaad, J., "CBOR Object Signing and Encryption (COSE)", | |||
| RFC 8152, DOI 10.17487/RFC8152, July 2017, | RFC 8152, DOI 10.17487/RFC8152, July 2017, | |||
| <https://www.rfc-editor.org/info/rfc8152>. | <https://www.rfc-editor.org/info/rfc8152>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8392] Jones, M., Wahlstroem, E., Erdtman, S., and H. Tschofenig, | ||||
| "CBOR Web Token (CWT)", RFC 8392, DOI 10.17487/RFC8392, | ||||
| May 2018, <https://www.rfc-editor.org/info/rfc8392>. | ||||
| 8.2. Informative References | 8.2. Informative References | |||
| [I-D.ietf-ace-oauth-authz] | [I-D.ietf-ace-oauth-authz] | |||
| Seitz, L., Selander, G., Wahlstroem, E., Erdtman, S., and | Seitz, L., Selander, G., Wahlstroem, E., Erdtman, S., and | |||
| H. Tschofenig, "Authentication and Authorization for | H. Tschofenig, "Authentication and Authorization for | |||
| Constrained Environments (ACE) using the OAuth 2.0 | Constrained Environments (ACE) using the OAuth 2.0 | |||
| Framework (ACE-OAuth)", draft-ietf-ace-oauth-authz-21 | Framework (ACE-OAuth)", draft-ietf-ace-oauth-authz-21 | |||
| (work in progress), February 2019. | (work in progress), February 2019. | |||
| [IANA.JWT.Claims] | [IANA.JWT.Claims] | |||
| IANA, "JSON Web Token Claims", | IANA, "JSON Web Token Claims", | |||
| <http://www.iana.org/assignments/jwt>. | <http://www.iana.org/assignments/jwt>. | |||
| [JWS] Jones, M., Bradley, J., and N. Sakimura, "JSON Web | [JWS] Jones, M., Bradley, J., and N. Sakimura, "JSON Web | |||
| Signature (JWS)", RFC 7515, May 2015, | Signature (JWS)", RFC 7515, DOI 10.17487/RFC7515, May | |||
| <http://www.rfc-editor.org/info/rfc7515>. | 2015, <http://www.rfc-editor.org/info/rfc7515>. | |||
| [JWT] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token | [JWT] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token | |||
| (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, | (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, | |||
| <http://www.rfc-editor.org/info/rfc7519>. | <http://www.rfc-editor.org/info/rfc7519>. | |||
| [OASIS.saml-core-2.0-os] | [OASIS.saml-core-2.0-os] | |||
| Cantor, S., Kemp, J., Philpott, R., and E. Maler, | Cantor, S., Kemp, J., Philpott, R., and E. Maler, | |||
| "Assertions and Protocol for the OASIS Security Assertion | "Assertions and Protocol for the OASIS Security Assertion | |||
| Markup Language (SAML) V2.0", OASIS Standard saml-core- | Markup Language (SAML) V2.0", OASIS Standard saml-core- | |||
| 2.0-os, March 2005, | 2.0-os, March 2005, | |||
| skipping to change at page 14, line 18 ¶ | skipping to change at page 14, line 35 ¶ | |||
| JSON Data Structures", RFC 8610, DOI 10.17487/RFC8610, | JSON Data Structures", RFC 8610, DOI 10.17487/RFC8610, | |||
| June 2019, <https://www.rfc-editor.org/info/rfc8610>. | June 2019, <https://www.rfc-editor.org/info/rfc8610>. | |||
| Acknowledgements | Acknowledgements | |||
| Thanks to the following people for their reviews of the | Thanks to the following people for their reviews of the | |||
| specification: Roman Danyliw, Benjamin Kaduk, Michael Richardson, and | specification: Roman Danyliw, Benjamin Kaduk, Michael Richardson, and | |||
| Jim Schaad. | Jim Schaad. | |||
| Ludwig Seitz and Goeran Selander worked on this document as part of | Ludwig Seitz and Goeran Selander worked on this document as part of | |||
| the CelticPlus project CyberWI, with funding from Vinnova. | the CelticPlus projects CyberWI and CRITISEC, with funding from | |||
| Vinnova. | ||||
| Document History | 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 ]] | |||
| -08 | ||||
| o Addressed remaining Area Director review comments by Benjamin | ||||
| Kaduk. | ||||
| -07 | -07 | |||
| o Addressed Area Director review by Benjamin Kaduk. | o Addressed Area Director review by Benjamin Kaduk. | |||
| -06 | -06 | |||
| o Corrected nits identified by Roman Danyliw. | o Corrected nits identified by Roman Danyliw. | |||
| -05 | -05 | |||
| o Added text suggested by Jim Schaad describing considerations when | o Added text suggested by Jim Schaad describing considerations when | |||
| using the Key ID confirmation method. | using the Key ID confirmation method. | |||
| -04 | -04 | |||
| o Addressed additional WGLC comments by Jim Schaad and Roman | o Addressed additional WGLC comments by Jim Schaad and Roman | |||
| End of changes. 24 change blocks. | ||||
| 38 lines changed or deleted | 49 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/ | ||||