idnits 2.17.1 draft-ietf-stir-passport-shaken-07.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (January 31, 2019) is 1909 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'RFCThis' is mentioned on line 271, but not defined == Unused Reference: 'RFC3323' is defined on line 328, but no explicit reference was found in the text -- Possible downref: Non-RFC (?) normative reference: ref. 'ATIS-1000074' Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 STIR C. Wendt 3 Internet-Draft Comcast 4 Intended status: Standards Track M. Barnes 5 Expires: August 4, 2019 iconectiv 6 January 31, 2019 8 PASSporT SHAKEN Extension (SHAKEN) 9 draft-ietf-stir-passport-shaken-07 11 Abstract 13 This document extends PASSporT, which is a token object that conveys 14 cryptographically-signed information about the participants involved 15 in communications. The extension is defined, corresponding to the 16 SHAKEN specification, to provide both a specific set of levels-of- 17 confidence in the correctness of the originating identity for a SIP 18 based Communication Service Provider (CSP) telephone network 19 originated call as well as an identifier that allows the CSP to 20 uniquely identify the origin of the call within its network. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at https://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on August 4, 2019. 39 Copyright Notice 41 Copyright (c) 2019 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents 46 (https://trustee.ietf.org/license-info) in effect on the date of 47 publication of this document. Please review these documents 48 carefully, as they describe your rights and restrictions with respect 49 to this document. Code Components extracted from this document must 50 include Simplified BSD License text as described in Section 4.e of 51 the Trust Legal Provisions and are provided without warranty as 52 described in the Simplified BSD License. 54 Table of Contents 56 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 57 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 3. Overview of 'shaken' PASSporT extension . . . . . . . . . . . 3 59 4. PASSporT 'attest' Claim . . . . . . . . . . . . . . . . . . . 4 60 5. PASSporT 'origid' Claim . . . . . . . . . . . . . . . . . . . 4 61 6. Example "shaken" PASSporT . . . . . . . . . . . . . . . . . . 4 62 7. Using 'shaken' in SIP . . . . . . . . . . . . . . . . . . . . 4 63 8. Order of Claim Keys . . . . . . . . . . . . . . . . . . . . . 4 64 9. Security Considerations . . . . . . . . . . . . . . . . . . . 5 65 10. Privacy Considerations . . . . . . . . . . . . . . . . . . . 5 66 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 67 11.1. JSON Web Token claims . . . . . . . . . . . . . . . . . 6 68 11.2. PASSporT Types . . . . . . . . . . . . . . . . . . . . . 6 69 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 70 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 71 13.1. Normative References . . . . . . . . . . . . . . . . . . 6 72 13.2. Informative References . . . . . . . . . . . . . . . . . 7 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 75 1. Introduction 77 The Signature-based Handling of Asserted information using toKENs 78 (SHAKEN) [ATIS-1000074] specification defines a framework for using 79 Secure Telephone Identity Revisited (STIR) protocols including 80 PASSporT [RFC8225], SIP Authenticated Identity Management [RFC8224] 81 and the STIR certificate framework [RFC8226] for implementing the 82 cryptographic validation of an authorized originator of telephone 83 calls using SIP. Because the current telephone network contains both 84 VoIP and TDM/SS7 originated traffic, there are many scenarios that 85 need to be accounted for where PASSporT signatures may represent 86 either direct or indirect call origination scenarios. The SHAKEN 87 [ATIS-1000074] specification defines levels of attestation of the 88 origination of the call as well as an origination identifier that can 89 help create a unique association between the origin of a particular 90 call to the point in the VoIP or TDM telephone network the call came 91 from to identify, for example, either a customer or class of service 92 that call represents. This document specifies these values as claims 93 to extend the base set of PASSporT claims. 95 2. Terminology 97 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 98 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 99 "OPTIONAL" in this document are to be interpreted as described in BCP 100 14 [RFC2119] [RFC8174] when, and only when, they appear in all 101 capitals, as shown here. 103 In addition, the following terms are used in this document: 105 o Verified association: is typically defined as an authenticated 106 relationship between a customer and a device that initiated a call 107 on behalf of that customer, for example, a subscriber account with 108 a specific SIM card or set of SIP credentials. 110 o PASSporT: Defined in [RFC8225] is a JSON Web Token [RFC7519] 111 defined specifically for securing the identity of an initiator of 112 personal communication. This document defines a specific 113 extension to PASSporT. 115 3. Overview of 'shaken' PASSporT extension 117 The SHAKEN framework is designed to use PASSporT [RFC8225] as a 118 method of asserting the telephone number calling identity. In 119 addition to the PASSporT base claims, there are two additional claims 120 that have been defined for the needs of a service provider to signal 121 information beyond just the telephone identity. First, in order to 122 help bridge the transition of the state of the current telephone 123 network which has calls with no authentication and non-SIP [RFC3261] 124 signaling not compatible with the use of PASSporT and Secure 125 Telephone Identity (STI) in general, there is an attestation claim. 126 This provides three levels of attestation, including a full 127 attestation when the service provider can fully attest to the calling 128 identity, a partial attestation, when the service provider originated 129 a telephone call but can not fully attest to the calling identity, 130 and a gateway attestation which is the lowest level of attestation 131 and represents the service provider receiving a call from a non- 132 PASSporT and non-STI supporting telephone gateway. 134 The second claim is a unique origination identifier that should be 135 used by the service provider to identify different sources of 136 telephone calls to support a traceback mechanism that can be used for 137 enforcement and identification of a source of illegitimate calls. 139 The use of the compact form of PASSporT is not specified in this 140 document and is not specified for use in SHAKEN [ATIS-1000074]. 142 The next two sections define these new claims. 144 4. PASSporT 'attest' Claim 146 This indicator allows for both identifying the service provider that 147 is vouching for the call as well as clearly indicating what 148 information the service provider is attesting to. The 'attest' claim 149 can be one of the following three values: 'A', 'B', or 'C'. These 150 values correspond to 'Full Attestation', 'Partial Attestation', and 151 'Gateway Attestation', respectively. See [ATIS-1000074] for the 152 definitions of these three levels of attestation. 154 5. PASSporT 'origid' Claim 156 The purpose of the 'origid' claim is described in [ATIS-1000074]. 157 The value of 'origid' claim is a UUID as defined in [RFC4122]. 159 6. Example "shaken" PASSporT 161 Protected Header 162 { 163 "alg":"ES256", 164 "typ":"passport", 165 "ppt":"shaken", 166 "x5u":"https://cert.example.org/passport.cer" 167 } 168 Payload 169 { 170 "attest":"A" 171 "dest":{"tn":["12155550131"]} 172 "iat":"1443208345", 173 "orig":{"tn":"12155550121"}, 174 "origid":"123e4567-e89b-12d3-a456-426655440000" 175 } 177 7. Using 'shaken' in SIP 179 The use of the 'shaken' PASSporT type and the claims 'attest' and 180 'origid' are formally defined in [ATIS-1000074] for usage in SIP 181 [RFC3261] aligned with the use of the identity header field defined 182 in [RFC8224]. 184 8. Order of Claim Keys 186 The order of the claim keys MUST follow the rules of [RFC8225] 187 Section 9; the claim keys MUST appear in lexicographic order. 188 Therefore, the claim keys discussed in this document appear in the 189 PASSporT Payload in the following order, 191 o attest 192 o dest 194 o iat 196 o orig 198 o origid 200 9. Security Considerations 202 This document defines a new PASSporT [RFC8225] extension. The 203 considerations related to the security of the PASSporT object itself 204 are the same as those described in [RFC8225]. 206 [RFC8224] defines how to compare the values of the "dest", "orig" and 207 "iat" claims against fields in a SIP containing a PASSporT as part of 208 validating that request. The values of the new "attest" and "origid" 209 claims added by this extension are not used in such a validation 210 step. They are not compared to fields in the SIP message. Instead, 211 they simply carry additional information from the signer to the 212 consumer of the PASSport. This new information shares the same 213 integrity protection and non-repudiation properties as the base 214 claims in the PASSporT. 216 10. Privacy Considerations 218 As detailed in [RFC3261] Section 26, SIP messages inherently carry 219 identifying information of the caller and callee. The value of the 220 'origid' claim, as defined in SHAKEN [ATIS-1000074] and described in 221 this document, is intended to be a opaque and unique identifier of an 222 element on the path of a given request. This identifier is used by 223 an originating telephone service provider to identify where within 224 their network (e.g. a gateway or particular service element) a call 225 was initiated. This facilitates identifying and stopping bad actors 226 trying to spoof identities or make fraudulent calls. The opacity of 227 the 'origid' claim value is intended to minimize direct exposure of 228 information about the origination of a set of calls sharing the 229 'origid' value. It should be recognized, however, that the potential 230 for discovering patterns through correlation of those calls exists. 231 This could allow a recipient of many calls to, for instance, learn 232 that a set of callers are using a particular service or coming 233 through a common gateway. However, this threat already exists in 234 SIP. There is information in the SIP messages(in the form of Record- 235 Route, Via, and potentially History-Info header field values that can 236 be analyzed the same way (and may correlate closely with the 'origid' 237 value). If the operator of an element is concerned about the 238 correlation of 'origid' values, the element could be configured to 239 use a unique 'origid' value per call in such a way that the operator 240 can associate those 'origid' values to the correct element when doing 241 lookups in their backend systems. 243 11. IANA Considerations 245 11.1. JSON Web Token claims 247 This specification requests that the IANA add two new claims to the 248 JSON Web Token Claims registry as defined in [RFC7519]. 250 Claim Name: "attest" 252 Claim Description: Attestation level as defined in SHAKEN framework 254 Change Controller: IESG 256 Specification Document(s): [RFCThis] 258 Claim Name: "origid" 260 Claim Description: Originating Identifier as defined in SHAKEN 261 framework 263 Change Controller: IESG 265 Specification Document(s): [RFCThis] 267 11.2. PASSporT Types 269 This specification requests that the IANA add a new entry to the 270 Personal Assertion Token (PASSporT) Extensions registry for the type 271 "shaken" which is specified in [RFCThis]. 273 12. Acknowledgements 275 The authors would like to thank those that helped review and 276 contribute to this document including specific contributions from Jon 277 Peterson, Russ Housley, Robert Sparks, and Andrew Jurczak. The 278 authors would like to acknowledge the work of the ATIS/SIP Forum IP- 279 NNI Task Force to develop the concepts behind this document. 281 13. References 283 13.1. Normative References 285 [ATIS-1000074] 286 ATIS/SIP Forum IP-NNI Task Group, "Signature-based 287 Handling of Asserted information using toKENs (SHAKEN)", 288 January 2017, . 291 [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally 292 Unique IDentifier (UUID) URN Namespace", RFC 4122, 293 DOI 10.17487/RFC4122, July 2005, 294 . 296 [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token 297 (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, 298 . 300 [RFC8224] Peterson, J., Jennings, C., Rescorla, E., and C. Wendt, 301 "Authenticated Identity Management in the Session 302 Initiation Protocol (SIP)", RFC 8224, 303 DOI 10.17487/RFC8224, February 2018, 304 . 306 [RFC8225] Wendt, C. and J. Peterson, "PASSporT: Personal Assertion 307 Token", RFC 8225, DOI 10.17487/RFC8225, February 2018, 308 . 310 [RFC8226] Peterson, J. and S. Turner, "Secure Telephone Identity 311 Credentials: Certificates", RFC 8226, 312 DOI 10.17487/RFC8226, February 2018, 313 . 315 13.2. Informative References 317 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 318 Requirement Levels", BCP 14, RFC 2119, 319 DOI 10.17487/RFC2119, March 1997, 320 . 322 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 323 A., Peterson, J., Sparks, R., Handley, M., and E. 324 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 325 DOI 10.17487/RFC3261, June 2002, 326 . 328 [RFC3323] Peterson, J., "A Privacy Mechanism for the Session 329 Initiation Protocol (SIP)", RFC 3323, 330 DOI 10.17487/RFC3323, November 2002, 331 . 333 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 334 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 335 May 2017, . 337 Authors' Addresses 339 Chris Wendt 340 Comcast 341 One Comcast Center 342 Philadelphia, PA 19103 343 USA 345 Email: chris-ietf@chriswendt.net 347 Mary Barnes 348 iconectiv 350 Email: mary.ietf.barnes@gmail.com