idnits 2.17.00 (12 Aug 2021) /tmp/idnits31967/draft-ietf-stir-passport-shaken-08.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 (March 10, 2019) is 1161 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 281, but not defined == Unused Reference: 'RFC3323' is defined on line 338, 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: September 11, 2019 iconectiv 6 March 10, 2019 8 PASSporT SHAKEN Extension (SHAKEN) 9 draft-ietf-stir-passport-shaken-08 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 September 11, 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 . . . . . . . . . . . . . . . . . . . . . . . . . 7 71 13.1. Normative References . . . . . . . . . . . . . . . . . . 7 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]. 158 Please refer to Section 10 for a discussion of the privacy 159 considerations around the use of this value. 161 6. Example "shaken" PASSporT 163 Protected Header 164 { 165 "alg":"ES256", 166 "typ":"passport", 167 "ppt":"shaken", 168 "x5u":"https://cert.example.org/passport.cer" 169 } 170 Payload 171 { 172 "attest":"A" 173 "dest":{"tn":["12155550131"]} 174 "iat":"1443208345", 175 "orig":{"tn":"12155550121"}, 176 "origid":"123e4567-e89b-12d3-a456-426655440000" 177 } 179 7. Using 'shaken' in SIP 181 The use of the 'shaken' PASSporT type and the claims 'attest' and 182 'origid' are formally defined in [ATIS-1000074] for usage in SIP 183 [RFC3261] aligned with the use of the identity header field defined 184 in [RFC8224]. 186 8. Order of Claim Keys 188 The order of the claim keys MUST follow the rules of [RFC8225] 189 Section 9; the claim keys MUST appear in lexicographic order. 190 Therefore, the claim keys discussed in this document appear in the 191 PASSporT Payload in the following order, 192 o attest 194 o dest 196 o iat 198 o orig 200 o origid 202 9. Security Considerations 204 This document defines a new PASSporT [RFC8225] extension. The 205 considerations related to the security of the PASSporT object itself 206 are the same as those described in [RFC8225]. 208 [RFC8224] defines how to compare the values of the "dest", "orig" and 209 "iat" claims against fields in a SIP containing a PASSporT as part of 210 validating that request. The values of the new "attest" and "origid" 211 claims added by this extension are not used in such a validation 212 step. They are not compared to fields in the SIP message. Instead, 213 they simply carry additional information from the signer to the 214 consumer of the PASSport. This new information shares the same 215 integrity protection and non-repudiation properties as the base 216 claims in the PASSporT. 218 10. Privacy Considerations 220 As detailed in [RFC3261] Section 26, SIP messages inherently carry 221 identifying information of the caller and callee. The addition of 222 STIR cryptographically attests that the signing party vouches for the 223 information given about the callee, as is discussed in the Privacy 224 Considerations of [RFC8224]. 226 SHAKEN [ATIS-1000074] furthermore adds an 'origid' value to the STIR 227 PASSporT, which is an opaque unique identifier representing an 228 element on the path of a given SIP request. This identifier is 229 generated by an originating telephone service provider to identify 230 where within their network (e.g. a gateway or particular service 231 element) a call was initiated; 'origid' can facilitate forensic 232 analysis of call origins when identifying and stopping bad actors 233 trying to spoof identities or make fraudulent calls. 235 The opacity of the 'origid' claim value is intended to minimize 236 exposure of information about the origination of calls labelled with 237 an 'origid' value. It is therefore RECOMMENDED that implementations 238 generate a unique 'origid' value per call in such a way that only the 239 generator of the 'origid' can determine when two 'origid' values 240 represent the same or different elements. If deployed systems 241 instead use a common or related 'origid' for service elements in 242 their network, the potential for discovering patterns through 243 correlation of those calls exists. This could allow a recipient of 244 calls to, for instance, learn that a set of callers are using a 245 particular service or coming through a common gateway. It is 246 expected that SHAKEN PASSporTs are shared only within an [RFC3324] 247 trust domain and will be stripped before calls exit that trust 248 domain, but this information still could be used by analytics on 249 intermediary and terminating systems to reveal information that could 250 include geographic location and even device-level information, 251 depending on how the 'origid' is generated. 253 11. IANA Considerations 255 11.1. JSON Web Token claims 257 This specification requests that the IANA add two new claims to the 258 JSON Web Token Claims registry as defined in [RFC7519]. 260 Claim Name: "attest" 262 Claim Description: Attestation level as defined in SHAKEN framework 264 Change Controller: IESG 266 Specification Document(s): [RFCThis] 268 Claim Name: "origid" 270 Claim Description: Originating Identifier as defined in SHAKEN 271 framework 273 Change Controller: IESG 275 Specification Document(s): [RFCThis] 277 11.2. PASSporT Types 279 This specification requests that the IANA add a new entry to the 280 Personal Assertion Token (PASSporT) Extensions registry for the type 281 "shaken" which is specified in [RFCThis]. 283 12. Acknowledgements 285 The authors would like to thank those that helped review and 286 contribute to this document including specific contributions from Jon 287 Peterson, Russ Housley, Robert Sparks, and Andrew Jurczak. The 288 authors would like to acknowledge the work of the ATIS/SIP Forum IP- 289 NNI Task Force to develop the concepts behind this document. 291 13. References 293 13.1. Normative References 295 [ATIS-1000074] 296 ATIS/SIP Forum IP-NNI Task Group, "Signature-based 297 Handling of Asserted information using toKENs (SHAKEN)", 298 January 2017, . 301 [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally 302 Unique IDentifier (UUID) URN Namespace", RFC 4122, 303 DOI 10.17487/RFC4122, July 2005, 304 . 306 [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token 307 (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, 308 . 310 [RFC8224] Peterson, J., Jennings, C., Rescorla, E., and C. Wendt, 311 "Authenticated Identity Management in the Session 312 Initiation Protocol (SIP)", RFC 8224, 313 DOI 10.17487/RFC8224, February 2018, 314 . 316 [RFC8225] Wendt, C. and J. Peterson, "PASSporT: Personal Assertion 317 Token", RFC 8225, DOI 10.17487/RFC8225, February 2018, 318 . 320 [RFC8226] Peterson, J. and S. Turner, "Secure Telephone Identity 321 Credentials: Certificates", RFC 8226, 322 DOI 10.17487/RFC8226, February 2018, 323 . 325 13.2. Informative References 327 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 328 Requirement Levels", BCP 14, RFC 2119, 329 DOI 10.17487/RFC2119, March 1997, 330 . 332 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 333 A., Peterson, J., Sparks, R., Handley, M., and E. 334 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 335 DOI 10.17487/RFC3261, June 2002, 336 . 338 [RFC3323] Peterson, J., "A Privacy Mechanism for the Session 339 Initiation Protocol (SIP)", RFC 3323, 340 DOI 10.17487/RFC3323, November 2002, 341 . 343 [RFC3324] Watson, M., "Short Term Requirements for Network Asserted 344 Identity", RFC 3324, DOI 10.17487/RFC3324, November 2002, 345 . 347 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 348 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 349 May 2017, . 351 Authors' Addresses 353 Chris Wendt 354 Comcast 355 One Comcast Center 356 Philadelphia, PA 19103 357 USA 359 Email: chris-ietf@chriswendt.net 361 Mary Barnes 362 iconectiv 364 Email: mary.ietf.barnes@gmail.com