<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.16 (Ruby 2.6.0) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-ietf-stir-passport-rcd-22" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="RCD">PASSporT Extension for Rich Call Data</title>

    <author initials="C." surname="Wendt" fullname="Chris Wendt">
      <organization>Somos Inc.</organization>
      <address>
        <email>chris-ietf@chriswendt.net</email>
      </address>
    </author>
    <author initials="J." surname="Peterson" fullname="Jon Peterson">
      <organization>Neustar Inc.</organization>
      <address>
        <email>jon.peterson@neustar.biz</email>
      </address>
    </author>

    <date year="2022" month="October" day="14"/>

    <area>art</area>
    
    <keyword>Identity</keyword>

    <abstract>


<t>This document extends PASSporT, a token for conveying cryptographically-signed call information about personal communications, to include rich meta-data about a call and caller that can be signed and integrity protected, transmitted, and subsequently rendered to the called party. This framework is intended to include and extend caller and call specific information beyond human-readable display name comparable to the "Caller ID" function common on the telephone network and is also enhanced with a integrity mechanism that is designed to protect the authoring and transport of this information for different authoritative use-cases.</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>PASSporT <xref target="RFC8225"/> is a token format based on JWT <xref target="RFC7519"/> for conveying cryptographically-signed information about the parties involved in personal communications; it is used to convey a signed assertion of the identity of the participants in real-time communications established via a protocol like SIP <xref target="RFC8224"/>. The STIR problem statement <xref target="RFC7340"/> declared securing the display name of callers outside of STIR's initial scope. This document defines a PASSporT extension, and the associated STIR procedures, to protect additional elements conveying richer information: additional information that is intended to be rendered to assist a called party in determining whether to accept or trust incoming communications. This includes the name of the person or entity on one side of a communications session, the traditional "Caller ID" of the telephone network, along with related display information that would be rendered to the called party during alerting, or potentially used by an automaton to determine whether and how to alert a called party.</t>

<t>Traditional telephone network signaling protocols have long supported delivering a 'calling name' from the originating side, though in practice, the terminating side is often left to determine a name from the calling party number by consulting a local address book or an external database. SIP, for example, similarly can carry this information in a 'display-name' in the From header field value from the originating to terminating side, or alternatively in the Call-Info header field. In this document, we utilize the STIR framework to more generally extend the assertion of an extensible set of identity information not limited to but including calling name.</t>

<t>As such, based on some use-cases, this document extends PASSporT to provide cryptographic protection for the "display-name" field of SIP requests, or similar name fields in other protocols, as well as further "rich call data" (RCD) about the caller, which includes the contents of the Call-Info header field or other data structures that can be added to the PASSporT. In addition, Section 12 describes use-cases that enable external third-party authorities to convey rich information associated with a calling number via a "rcd" PASSporT while clearly identifying the third-party as the source of the Rich Call Data information. Finally, this document describes how to preserve the integrity of the RCD in scenarios where there may be non-authoritative users initiating and signing RCD and therefore a constraint on the RCD data that a PASSporT can attest via certificate-level controls.</t>

</section>
<section anchor="terminoloygy"><name>Terminology</name>

<t>The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="overview-of-the-use-of-the-rich-call-data-passport-extension"><name>Overview of the use of the Rich Call Data PASSporT extension</name>

<t>This document defines Rich Call Data (RCD) which is a PASSporT extension <xref target="RFC8225"/> that defines an extensible claim for asserting information about the call beyond the telephone number. This includes information such as more detailed information about the calling party or calling number being presented or the purpose of the call. There are many use-cases that will be described in this document around the entities responsible for the signing and integrity of this information, whether it is the entity that originates a call, a service provider acting on behalf of a caller or use-cases where third-party services may be authoritative over the rich call data on behalf of the caller.</t>

<t>The RCD associated with the identity of the calling party described in this document is of two main categories. The first data is a more traditional set of info about a caller associated with "display-name" in SIP <xref target="RFC3261"/>, typically a textual description of the caller, or alternate presentation numbers often used in From Header field <xref target="RFC3261"/> or P-Asserted-Identity <xref target="RFC3325"/>, or an icon associated with the caller. The second category is a set of RCD that is defined as part of the jCard definitions or extensions to that data. <xref target="I-D.ietf-sipcore-callinfo-rcd"/> describes the optional use of jCard in Call-Info header field as RCD with the "jcard" Call-Info purpose token. Either or both of these two types of data can be incorporated into an "rcd" claim defined in this document.</t>

<t>Additionally, in relation to the description of the specific communications event itself (versus the identity description in previous paragraph), <xref target="I-D.ietf-sipcore-callinfo-rcd"/> also describes a "call-reason" parameter intended for description of the intent or reason for a particular call. A new PASSporT claim "crn", or call reason, can contain a string that describes the intent of the call. This claim is intentionally kept separate from the "rcd" claim because it is envisioned that call reason is not the same as information associated with the caller and may change on a more frequent, per call, type of basis.</t>

</section>
<section anchor="rcdintegrity"><name>Overview of Rich Call Data Integrity</name>

<t>When incorporating call data that represents a user, even in traditional calling name services today, often there are policy and restrictions around what data is allowed to be used. Whether preventing offensive language or icons or enforcing uniqueness, potential trademark or copyright violations or other policy enforcement, there might be the desire to pre-certify or "vet" the specific use of rich call data. This document defines a mechanism that allows for a direct or indirect party that controls the policy to approve or certify the content, create a cryptographic digest that can be used to validate that data and applies a constraint in the certificate to allow the recipient and verifier to validate that the specific content of the RCD is as intended at its creation and approval or certification.</t>

<t>There are two mechanisms that are defined to accomplish that for two distinct categories of purposes. The first of the mechanisms include the definition of an integrity claim. The RCD integrity mechanism is a process of generating a sufficiently strong cryptographic digest for each resource referenced by a URI within a claim value (e.g., an image file referenced by "jcd" or a jCard referenced by "jcl"). This mechanism is inspired by and based on the W3C Subresource Integrity specification (http://www.w3.org/TR/SRI/). The second of the mechanisms uses the capability called JWT Claim Constraints, defined in <xref target="RFC8226"/> and extended in <xref target="RFC9118"/>. The JWT Claim Constraints specifically guide the verifier within the certificate used to compute the signature in the PASSporT for the inclusion (or exclusion) of specific claims and their values, so that the content intended by the signer can be verified to be accurate.</t>

<t>Both of these mechanisms, integrity digests and JWT Claims Constraints, can be used together or separately depending on the intended purpose. The first category of purpose is whether the rich call data conveyed by the RCD PASSporT is pass-by-value or pass-by-reference; i.e., is the information contained in the PASSporT claims and therefore integrity protected by the PASSporT signature, or is the information contained in an external resource referenced by a URI in the RCD PASSporT. The second category of purpose is whether the signer is authoritative or has responsibility for the accuracy of the RCD based on the policies of the eco-system the RCD PASSporTs are being used.</t>

<t>The following table provides an overview of the framework for how integrity should be used with RCD. ("Auth" represents "authoritative" in this table.)</t>

<figure><artwork><![CDATA[
+----------+---------------------+--------------------------------+
|   Modes  |  No external URIs   |      Includes URI refs         |
+----------+---------------------+--------------------------------+
|   Auth   | 1: No integrity req | 2: RCD Integrity               |
+----------+---------------------+--------------------------------+
| Non-Auth | 3: JWT Claim Const. | 4: RCD Integ./JWT Claim Const. |
+----------+---------------------+--------------------------------+
]]></artwork></figure>

<t>The first and simplest mode is exclusively for when all RCD content is directly included as part of the claims (i.e. no external reference URIs are included in the content) and when the signer is authoritative over the content. In this mode, integrity protection is not required and the set of claims is simply protected by the signature of the standard PASSporT <xref target="RFC8225"/> and SIP identity header <xref target="RFC8224"/> procedures. The second mode is an extension of the first where the signer is authoritative and an "rcd" claim contents include a URI identifying external resources. In this mode, an RCD Integrity or "rcdi" claim MUST be included. This integrity claim is defined later in this document and provides a digest of the "rcd" claim content so that, particularly for the case where there are URI references in the RCD, the content of that RCD can be comprehensively validated that it was received as intended by the signer of the PASSporT.</t>

<t>The third and fourth mode cover cases where there is a different authoritative entity responsible for the content of the RCD, separate from the signer of the PASSporT itself, allowing the ability, in particular when delegating signing authority for PASSporT, to enable a mechanism for allowing agreed or vetted content included in or referenced by the RCD claim contents. The primary framework for allowing the separation of authority and the signing of PASSporTs by non-authorized entities is detailed in <xref target="RFC9060"/> although other cases may apply. As with the first and second modes, the third and fourth modes differ with the absence or inclusion of externally referenced content using URIs.</t>

</section>
<section anchor="passport-claim-rcd-definition-and-usage"><name>PASSporT Claim "rcd" Definition and Usage</name>

<section anchor="syntax"><name>PASSporT "rcd" Claim</name>

<t>This document defines a new JSON Web Token claim for "rcd", Rich Call Data, the value of which is a JSON object that can contain one or more key value pairs. This document defines a default set of key values.</t>

<section anchor="nam-key"><name>"nam" key</name>

<t>The "nam" key value is a display name, associated with the originator of personal communications, which may for example match the display-name component of the From header field value of a SIP request or alternatively from the P-Asserted-Identity header field value, or a similar field in other PASSporT using protocols. This key MUST be included once as part of the "rcd" claim value JSON object. If there is no string associated with a display name, the claim value MUST then be an empty string.</t>

</section>
<section anchor="apn-key"><name>"apn" key</name>

<t>The "apn" key value is an optional alternate presentation number associated with the originator of personal communications, which may for example match the user component of the From header field value of a SIP request (in cases where a network number is carried in the P-Asserted-Identity <xref target="RFC3325"/>), or alternatively from the Additional-Identity header field value [3GPP TS 24.229 v16.7.0], or a similar field in other PASSporT using protocols. Its intended semantics are to convey a number that the originating user is authorized to show to called parties in lieu of their default number, such as cases where a remote call agent uses the main number of a call center instead of their personal telephone number. The "apn" key value is a canonicalized telephone number per <xref target="RFC8224"/> Section 8.3. If present, this key MUST be included once as part of the "rcd" claim value JSON object.</t>

<t>The use of the optional "apn" key is intended for cases where the signer of an rcd PASSporT authorizes the use of an alternate presentation number by the user. How the signer determines that a user is authorized to present the number in question is a policy decision outside the scope of this document, however, the vetting of the alternate presentation number should follow the same level of vetting as telephone identities or any other information contained in an RCD PASSporT. This usage is intended as an alternative to conveying the presentation number in the "tel" key value of a jCard, in situations where no other rich jCard data needs to be conveyed with the call. Only one "apn" key may be present. "apn" MUST be used when it is the intent of the caller or signer to display the alternate presentation number even if "jcd" or "jcl" keys are present in a PASSporT with a "tel" key value.</t>

</section>
<section anchor="icn-key"><name>"icn" key</name>

<t>The "icn" key value is an optional URI reference to an image that can be used to pictorially represent the originator of personal communications. This icon key value should be used as a base or default method of associating an image with a calling party.</t>

<t>When being used for SIP <xref target="RFC3261"/> this claim key value used to protect the Call-Info header field with a purpose parameter value of "icon" as described in Section 20.9 <xref target="RFC3261"/>.  Example as follows:</t>

<figure><artwork><![CDATA[
Call-Info: <http://wwww.example.com/alice/photo.jpg>; 
  purpose=icon
]]></artwork></figure>

<t>Note that <xref target="I-D.ietf-sipcore-callinfo-rcd"/> extends the specific usage of "icon" in SIP in the context of the larger rich call data framework with specific guidance on referencing images and image types, sizes and formats.</t>

<t>It should be also noted that with jCard, as described in the following "jcd" and "jcl" key value sections and in <xref target="I-D.ietf-sipcore-callinfo-rcd"/>, there are alternative ways of including photos and logos as URI references. The "icn" key should be then considered a base or default image and jCard usage should be considered for profiles and extensions that provide more direct guidance on the usage of specific defined usage of what each image type represents for the proper rendering to end users.</t>

</section>
<section anchor="jcd-key"><name>"jcd" key</name>

<t>The "jcd" key value is defined to contain a jCard <xref target="RFC7095"/> JSON object. This jCard object is intended to represent and correspond to the Call-Info header field value defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> with a type of "jcard". As also defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/>, format of the jCard and properties used should follow the normative usage and formatting rules and procedures. It is an extensible object where the calling party can provide both the standard types of information defined in jCard or can use the built-in extensibility of the jCard specification to add additional information. The "jcd" key is optional. If included, this key MUST only be included once in the "rcd" JSON object and MUST NOT be included if there is a "jcl" key included. The use of "jcd" and "jcl" keys are mutually exclusive.</t>

<t>The jCard object value for "jcd" MUST only have referenced content for URI values that do not further reference URIs. Future specifications may extend this capability, but as stated in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> it constrains the security properties of RCD information and the integrity of the content referenced by URIs.</t>

<t>Note: even though we refer to <xref target="I-D.ietf-sipcore-callinfo-rcd"/> as the definition of the jcard properties for usage in an "rcd" PASSporT, other future specifications and protocols are encouraged to be adapted for use of "jcd" (or similarly "jcl" below) key beyond SIP and Call-Info.</t>

</section>
<section anchor="jcl-key"><name>"jcl" key</name>

<t>The "jcl" key value is defined to contain a URI that refers the recipient to a jCard <xref target="RFC7095"/> JSON object hosted on a HTTPS enabled web server. The web server MUST use the MIME media type for JSON text as application/json with a default encoding of UTF-8 <xref target="RFC7159"/>. This link may correspond to the Call-Info header field value defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> with a type of "jcard". As also defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/>, format of the jCard and properties used should follow the normative usage and formatting rules and procedures. The "jcl" key is optional. If included, this key MUST only be included once in the "rcd" JSON object and MUST NOT be included if there is a "jcd" key included. The use of "jcd" and "jcl" keys are mutually exclusive.</t>

<t>The jCard object referenced by the URI value for "jcl" MUST only have referenced content for URI values that do not further reference URIs. Future specifications may extend this capability, but as stated in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> it constrains the security properties of RCD information and the integrity of the content referenced by URIs.</t>

</section>
</section>
</section>
<section anchor="rcdi-rcd-integrity-claim-definition-and-usage"><name>"rcdi" RCD Integrity Claim Definition and Usage</name>

<t>The "rcdi" claim is included for the second and fourth modes described in the integrity overview <xref target="rcdintegrity"/> of this document. If this claim is present it MUST be included only once with the corresponding single "rcd" claim. The value of the "rcdi" claim is a JSON object that is defined as follows.</t>

<t>The claim value of "rcdi" claim key is a JSON object with a set of JSON key/value pairs. These objects correspond to each of the elements of the "rcd" claim object that require integrity protection with an associated digest over the content referenced by the key string. The individual digest of different elements of the "rcd" claim data and external URI referenced content is kept specifically separate to allow the ability to verify the integrity of only the elements that are ultimately retrieved or downloaded or rendered to the end-user.</t>

<t>The key value references a specific object within the "rcd" claim value using a JSON pointer defined in <xref target="RFC6901"/> with a minor additional rule to support external URI references that include JSON objects themselves, for the specific case of the use of "jcl", defined in <xref target="jcl_element"/>. JSON pointer syntax is the key value that documents exactly the part of JSON that is used to generate the digest which produce the resulting string that makes up the value for the corresponding key. Detailed procedures are provided below, but an example "rcdi" is provided here:</t>

<figure><artwork><![CDATA[
"rcdi" : {
  "/jcl": "sha256-7kdCBZqH0nqMSPsmABvsKlHPhZEStgjojhdSJGRr3rk",
  "/jcl/1/2/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI"
}
]]></artwork></figure>

<t>The values of each key/value pair consists of a digest across either the direct values or indirectly referenced resources, combined with a string that defines the crypto algorithm used to generate the digest. RCD implementations MUST support the following hash algorithms, "SHA256", "SHA384", and "SHA512". The SHA-256, SHA-384, and SHA-512 are part of the SHA-2 set of cryptographic hash functions defined by the National Institute of Standards and Technologies (NIST). Implementations MAY support additional algorithms, but MUST NOT support known weak algorithms such as MD5 or SHA-1. In the future, the list of algorithms may be re-evaluated based on security best practices. The algorithms are represented in the text by "sha256", "sha384", or "sha512". The character following the algorithm string MUST be a hyphen character, "-", or ASCII 45. The subsequent characters are the base64 encoded <xref target="RFC4648"/> digest of a canonicalized and concatenated string or binary data based on the JSON pointer referenced elements of "rcd" claim or the URI referenced content contained in the claim. The details of the determination of the input string used to determine the digest are defined in the next section.</t>

<section anchor="creation-of-the-rcd-element-digests"><name>Creation of the "rcd" element digests</name>

<t>"rcd" claim objects can contain "nam", "apn", "icn", "jcd", or "jcl" keys as part of the "rcd" JSON object claim value. This document defines the use of JSON pointer <xref target="RFC6901"/> as a mechanism to reference specific "rcd" claim elements.</t>

<t>In order to facilitate proper verification of the digests and whether the "rcd" elements or content referenced by URIs were modified, the input to the digest must be completely deterministic at three points in the process. First, at the certification point where the content is evaluated to conform to the application policy and the JWT Claim Constraints is applied to the certificate containing the digest. Second, when the call is signed at the Authentication Service, there may be a local policy to verify that the provided "rcd" claim corresponds to each digest. Third, when the "rcd" data is verified at the Verification Service, the verification is performed for each digest by constructing the input digest string for the element being verified and referenced by the JSON pointer string.</t>

<t>The procedure for the creation of each "rcd" element digest string corresponding to a JSON pointer string key is as follows.</t>

<t><list style="numbers">
  <t>The JSON pointer either refers to a value that is a part or the whole of a JSON object or to a string that is a URI referencing an external resource.</t>
  <t>For a JSON value, serialize the JSON to remove all white space and line breaks.  The procedures of this deterministic JSON serialization are defined in <xref target="RFC8225"></xref>, Section 9.  The resulting string is the input for the hash function.</t>
  <t>For any URI referenced content, the bytes of the body of the HTTP response is the input for the hash function.</t>
</list></t>

<section anchor="nam_apn_element"><name>"nam" and "apn" elements</name>

<t>In the case of "nam" and "apn", the only allowed value is a string. For both of these key values an "rcdi" JSON pointer or integrity digest is optional because the direct value is protected by the signature and can be constrained directly with JWTClaimConstraints. If used, the JSON key value referenced by the JSON pointer is the string includes the quotes, so quotes MUST be included to compute the digest.</t>

</section>
<section anchor="icn_element"><name>"icn" elements</name>

<t>In the case of "icn", the only allowed value is a URI value that references an image file. If the URI references externally linked content there would need to be a JSON pointer and digest entry for the content in that linked resource. In order to reference the "icn" value for a digest, the JSON pointer string would be "/icn" and the digest string would be created using the image file data following the rules of JSON pointer. Even though this is probably not the typical case, an "rcdi" JSON pointer or integrity digest is optional if the image value is directly included via a data URI <xref target="RFC2397"/>. However, even though the direct value can be protected by the signature and can be constrained directly with JWTClaimConstraints, since the length of the image data is likely much larger than the integrity digest, this document would recommend the use of the "rcdi" JSON pointer and integrity digest as the constraint value in JWTClaimConstraints over the image data.</t>

</section>
<section anchor="jcd_element"><name>"jcd" elements</name>

<t>In the case of "jcd", the value associated is a jCard JSON object, which happens to be a JSON array with sub-arrays. JSON pointer notation uses numeric indices into elements of arrays, including when those elements are arrays themselves.</t>

<t>As example, for the following "rcd" claim:</t>

<figure><artwork><![CDATA[
"rcd": {
  "jcd": ["vcard",
    [ ["version",{},"text","4.0"],
      ["fn",{},"text","Q Branch"],
      ["org",{},"text","MI6;Q Branch Spy Gadgets"],
      ["photo",{},"uri",
        "https://example.com/photos/quartermaster-256x256.png"],
      ["logo",{},"uri",
        "https://example.com/logos/mi6-256x256.jpg"],
      ["logo",{},"uri",
        "https://example.com/logos/mi6-64x64.jpg"]
    ]
  ],
  "nam": "Q Branch Spy Gadgets"
}
]]></artwork></figure>

<t>In order to use JSON pointer to refer to the URIs, the following example "rcdi" claim includes a digest for the entire "jcd" array string as well as three additional digests for the URIs, where, as defined in <xref target="RFC6901"/> zero-based array indices are used to reference the URI strings.</t>

<figure><artwork><![CDATA[
"rcdi": {
  "/jcd": "sha256-7kdCBZqH0nqMSPsmABvsKlHPhZEStgjojhdSJGRr3rk",
  "/jcd/1/3/3": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4",
  "/jcd/1/4/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI",
  "/jcd/1/5/3": "sha256-GKNxxqlLRarbyBNh7hc/4lbZAdK6B0kMRf1AMRWPkSo"
  }
}
]]></artwork></figure>

<t>The use of a JSON pointer and integrity digest for the "jcd" claim key and value is optional. The "jcd" value is the directly included jCard array and can be protected by the signature and can be constrained directly with JWTClaimConstraints.  However, for data length reasons (as with "icn" above) or more importantly for potential privacy and/or security considerations with a publically accessible certificate this document would recommend the use of the "rcdi" JSON pointer and integrity digest as the constraint value in JWTClaimConstraints over the jCard data.</t>

<t>It is important to remember the array indices for JSON Pointer are dependent on the order of the elements in the jCard. The use of digest for the "/jcd" corresponding to the entire jCard array string can be included as a redundant mechanism to avoid any possibility of substitution, insertion attacks, or other potential techniques that may be possible to avoid integrity detection.</t>

<t>Each URI referenced in the jCard array string MUST have a corresponding JSON pointer string key and digest value.</t>

</section>
<section anchor="jcl_element"><name>"jcl" elements</name>

<t>In the case of the use of a "jcl" URI reference to an external jCard, the procedures are similar to "jcd" with the exception and the minor modification to JSON pointer, where "/jcl" is used to refer to the external jCard array string and any following numeric array indices added to the "jcl" (e.g., "/jcl/1/2/3") are treated as if the externally referenced jCard was directly part of the overall "rcd" claim JSON object. The following example illustrates a "jcl" version of the above "jcd" example.</t>

<figure><artwork><![CDATA[
"rcd": {
  "jcl": "https://example.com/qbranch.json",
  "nam": "Q Branch Spy Gadgets"
},
"rcdi": {
  "/jcl": "sha256-7kdCBZqH0nqMSPsmABvsKlHPhZEStgjojhdSJGRr3rk",
  "/jcl/1/3/3": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4",
  "/jcl/1/4/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI",
  "/jcl/1/5/3": "sha256-GKNxxqlLRarbyBNh7hc/4lbZAdK6B0kMRf1AMRWPkSo"
}
]]></artwork></figure>

<t>The following is the example contents of resource pointed to by https://example.com/qbranch.json used to calculate the above digest for "/jcl"</t>

<figure><artwork><![CDATA[
["vcard",
  [ ["version",{},"text","4.0"],
    ["fn",{},"text","Q Branch"],
    ["org",{},"text","MI6;Q Branch Spy Gadgets"],
    ["photo",{},"uri",
      "https://example.com/photos/quartermaster-256x256.png"],
    ["logo",{},"uri",
      "https://example.com/logos/mi6-256x256.jpg"],
    ["logo",{},"uri",
      "https://example.com/logos/mi6-64x64.jpg"]
  ]
]
]]></artwork></figure>

</section>
</section>
<section anchor="jwt-claim-constraints-for-rcd-claims-only"><name>JWT Claim Constraints for "rcd" claims only</name>

<t>For the third mode described in the integrity overview <xref target="rcdintegrity"/> of this document, where only JWT Claim Constraints for "rcd" claims without an "rcdi" claim is required, the procedure when creating the certificate with the intent to always include an "rcd" claim, to include a JWT Claim Constraints on inclusion of an "rcd" claim with the intended values required to be constrained by the certificate used to compute the signature in the PASSporT.</t>

<t>The "permittedValues" for the "rcd" claim may optionally contain multiple entries, to support the case where the certificate holder is authorized to use different sets of rich call data.</t>

<t>Only including "permittedValues" for "rcd" (with no "mustInclude") provides the ability to either have no "rcd" claim or only the set of constrained "permittedValues" values for an included "rcd" claim.</t>

</section>
</section>
<section anchor="jwt-claim-constraints-usage-for-rcd-and-rcdi-claims"><name>JWT Claim Constraints usage for "rcd" and "rcdi" claims</name>

<t>The integrity overview <xref target="rcdintegrity"/> of this document describes a fourth mode where both "rcdi" and JWT Claim Constraints is used. The use of this mode implies the signing of an "rcdi" claim is required to be protected by the authoritative certificate creator using JWT Claims Constraints in the certificate. The objective of the use of both of these mechanisms is to constrain the signer to construct the "rcd" and "rcdi" claims with the "rcd" jCard object including reference external content via URI. Once both the contents of the "rcd" claim and any linked content is certified by the party that is authoritative for the certificate being created and the construction of the "rcdi" claim is complete, the "rcdi" claim is linked to the STIR certificate associated with the signature in the PASSporT via JWT Claim Constraints extension as defined in <xref target="RFC8226"/> Section 8. It should be recognized that the "rcdi" set of digests is intended to be unique for only a specific combination of "rcd" content and URI referenced external content, and therefore provides a robust integrity mechanism for an authentication service being performed by a non-authoritative party. This would often be associated with the use of delegate certificates <xref target="RFC9060"/> for the signing of calls by the calling party directly as an example, even though the "authorized party" is not necessarily the subject of a STIR certificate.</t>

<t>For the case that there should always be both "rcd" and "rcdi" values included in the "rcd" PASSporT, the certificate JWT Claims Constraint extension MUST include both of the following:</t>

<t><list style="symbols">
  <t>a "mustInclude" for the "rcd" claim, which simply constrains the fact that an "rcd" must be included</t>
  <t>a "mustInclude" for the "rcdi" claim and a "permittedValues" equal to the created "rcdi" claim value string.</t>
</list></t>

<t>Note that optionally the "rcd" claims may be included in the "permittedValues" however it is recognized that this may be redundant with the "rcdi" permittedValues because the "rcdi" digest will imply the content of the "rcd" claims themselves.</t>

<t>The "permittedValues" for the "rcdi" claims (or "rcd" claims more generally) may contain multiple entries, to support the case where the certificate holder is authorized to use different sets of rich call data.</t>

</section>
<section anchor="passport-crn-claim-call-reason-definition-and-usage"><name>PASSporT "crn" claim - Call Reason Definition and Usage</name>

<t>This document defines a new JSON Web Token claim for "crn", Call Reason, the value of which is a single string that can contain information as defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> corresponding to the "call-reason" parameter for the Call-Info header. This claim is optional.</t>

<figure><artwork><![CDATA[
Example "crn" claim with "rcd":

"crn" : "For your ears only",
"rcd": { "nam": "James Bond",
         "jcl": "https://example.org/james_bond.json"}
]]></artwork></figure>

<section anchor="jwt-constraint-for-crn-claim"><name>JWT Constraint for "crn" claim</name>

<t>The integrity of the "crn" claim can optionally be protected by the authoritative certificate creator using JWT Constraints in the certificate. If the intent of the issuer of the certificate is to always including a call reason, a "mustInclude" for the "crn" claim indicates that a "crn" claim MUST be present. If the issuer of the certificate wants to constrain the contents of "crn", then it may set "permittedValues" for "crn" in the certificate.</t>

</section>
</section>
<section anchor="rich-call-data-claims-usage-rules"><name>Rich Call Data Claims Usage Rules</name>

<t>Either or both the "rcd" or "crn" claims may appear in any PASSporT claims object as optional elements. The creator of a PASSporT MAY also add a "ppt" value of "rcd" to the header of a PASSporT as well, in which case the PASSporT claims MUST contain either an "rcd" or "crn" claim, and any entities verifying the PASSporT object are required to understand the "ppt" extension in order to process the PASSporT in question. An example PASSporT header with the "ppt" included is shown as follows:</t>

<figure><artwork><![CDATA[
{ "typ":"passport",
  "ppt":"rcd",
  "alg":"ES256",
  "x5u":"https://www.example.com/cert.cer" }
]]></artwork></figure>

<t>The PASSporT claims object contains the "rcd" key with its corresponding value. The value of "rcd" is an array of JSON objects, of which one, the "nam" object, is mandatory. The key syntax of "nam" follows the display-name ABNF given in <xref target="RFC3261"/>.</t>

<t>After the header and claims PASSporT objects have been constructed, their signature is computed normally per the guidance in <xref target="RFC8225"/>.</t>

<section anchor="rcd-passport-verification"><name>"rcd" PASSporT Verification</name>

<t>An "rcd" PASSporT that uses claims defined in this document, in order to have a successful verification outcome, MUST conform to the following:</t>

<t><list style="symbols">
  <t>have a valid signature</t>
  <t>abide by all rules set forth in the proper construction of the claims</t>
  <t>abide by JWT Claims Constraint rules defined in <xref target="RFC8226"/> Section 8 or extended in <xref target="RFC9118"/> if present in the certificate used to compute the signature in the PASSporT</t>
</list></t>

<t>Consistent with the verification rules of PASSporTs more generally <xref target="RFC8225"/>, if any of the above criteria is not met, relying parties MUST NOT use any of the claims in the PASSporT.</t>

</section>
<section anchor="rcdi-integrity-verification"><name>"rcdi" Integrity Verification</name>

<t>If the "rcdi" claim exists, any party that dereferences a URI (i.e. downloading content for display to users) from the "rcd" claim MUST perform integrity validation of the content against the corresponding digest. Consequently, if URIs with contents covered by integrity digests are passed to another entity, the corresponding integrity digest MUST also be included, for example by passing the PASSporT. Entities that pass on the content without the URI do not have to pass on the corresponding integrity digest. An entity that does not otherwise need to dereference a URI from the "rcd" claim would be discouraged from unnecessarily dereferencing the URI solely to perform integrity verification.</t>

<t>If there is any issue with completing the integrity verification procedures for externally referenced content, including HTTP or HTTPS errors, the referenced content MUST be considered not verified.  This SHOULD NOT however impact the result of base PASSporT verification for claims content that is directly included in the claims of the PASSporT.</t>

</section>
<section anchor="example-rcd-passports"><name>Example "rcd" PASSporTs</name>

<t>An example of a "nam" only PASSporT claims object is shown next (with line breaks for readability only).</t>

<figure><artwork><![CDATA[
{  "orig":{"tn":"12025551000"},
   "dest":{"tn":["12025551001"]},
   "iat":1443208345,
   "rcd":{"nam":"James Bond"} }
]]></artwork></figure>

<t>An example of a "nam", "apn", and "icn" using an https URI PASSporT claims object is shown next (with line breaks for readability only). Note, in this example, there is no integrity protection over the "icn" element in the "rcd" claim.</t>

<figure><artwork><![CDATA[
{  "orig":{"tn":"12025551000"},
   "dest":{"tn":["12155551001"]},
   "iat":1443208345,
   "rcd":{
     "apn":"12025559990",
     "icn":"https://example.com/photos/quartermaster-256x256.png",
     "nam":"Her Majesty's Secret Service" } }
]]></artwork></figure>

<t>An example of a "nam", "apn", and "icn" using data URI PASSporT claims object is shown next (with line breaks for readability only). Note, in this example, the "icn" data is incorporated directly in the "rcd" claim and therefore separate integrity protection is not required.</t>

<figure><artwork><![CDATA[
{  "orig":{"tn":"12025551000"},
   "dest":{"tn":["12155551001"]},
   "iat":1443208345,
   "rcd":{
     "apn":"12025559990",
     "icn":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAY
       AAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OH
       wAAAABJRU5ErkJggg==",
     "nam":"Her Majesty's Secret Service" } }
]]></artwork></figure>

<t>An example of an "rcd" claims object that includes the "jcd" and also contains URI references to content which requires the inclusion of an "rcdi" claim and corresponding digests. Note, in this example, the URI referenced content does include integrity protection in the "rcdi" claim.</t>

<figure><artwork><![CDATA[
{
  "crn": "Rendezvous for Little Nellie",
  "orig": { "tn": "12025551000"},
  "dest": { "tn": ["12155551001"]},
  "iat": 1443208345,
  "rcd": {
    "jcd": ["vcard",
    [ ["version",{},"text","4.0"],
      ["fn",{},"text","Q Branch"],
      ["org",{},"text","MI6;Q Branch Spy Gadgets"],
      ["photo",{},"uri","https://example.com/photos/q-256x256.png"],
      ["logo",{},"uri","https://example.com/logos/mi6-256x256.jpg"],
      ["logo",{},"uri","https://example.com/logos/mi6-64x64.jpg"]
    ] ],
    "nam": "Q Branch Spy Gadgets"
  },
  "rcdi": {
    "/jcd/1/3/3": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4",
    "/jcd/1/4/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI",
    "/jcd/1/5/3": "sha256-GKNxxqlLRarbyBNh7hc/4lbZAdK6B0kMRf1AMRWPkSo"
  }
}
]]></artwork></figure>

<t>In an example PASSporT, where a jCard is linked via HTTPS URL using "jcl", a jCard file served at a particular URL.</t>

<t>An example jCard JSON file hosted at the example web address of https://example.com/qbranch.json is shown as follows:</t>

<figure><artwork><![CDATA[
["vcard",
  [ ["version",{},"text","4.0"],
    ["fn",{},"text","Q Branch"],
    ["org",{},"text","MI6;Q Branch Spy Gadgets"],
    ["photo",{},"uri","https://example.com/photos/q-256x256.png"],
    ["logo",{},"uri","https://example.com/logos/mi6-256x256.jpg"],
    ["logo",{},"uri","https://example.com/logos/mi6-64x64.jpg"]
  ]
]
]]></artwork></figure>

<t>For the above referenced jCard, the corresponding PASSporT claims object would be as follows:</t>

<figure><artwork><![CDATA[
{
  "crn": "Rendezvous for Little Nellie",
  "orig": {"tn": "12025551000"},
  "dest": {"tn": ["12155551001"]},
  "iat": 1443208345,
  "rcd": {
    "nam": "Q Branch Spy Gadgets",
    "jcl": "https://example.com/qbranch.json"
  },
  "rcdi": {
    "/jcl": "sha256-qCn4pEH6BJu7zXndLFuAP6DwlTv5fRmJ1AFkqftwnCs",
    "/jcl/1/3/3": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4",
    "/jcl/1/4/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI",
    "/jcl/1/5/3": "sha256-GKNxxqlLRarbyBNh7hc/4lbZAdK6B0kMRf1AMRWPkSo"
  }
}
]]></artwork></figure>

<t>An example "rcd" PASSporT that uses "nam" and "icn" keys with "rcdi" for calling name and referenced icon image content:</t>

<figure><artwork><![CDATA[
{
  "crn": "Rendezvous for Little Nellie",
  "orig": {"tn": "12025551000"},
  "dest": {"tn": ["12155551001"]},
  "iat": 1443208345,
  "rcd": {
    "nam": "Q Branch Spy Gadgets",
    "icn": "https://example.com/photos/q-256x256.png"
  },
  "rcdi": {
    "/nam": "sha256-sM275lTgzCte+LHOKHtU4SxG8shlOo6OS4ot8IJQImY",
    "/icn": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4"
  }
}
]]></artwork></figure>

</section>
</section>
<section anchor="compact-form-of-rcd-passport"><name>Compact form of "rcd" PASSporT</name>

<section anchor="compact-form-of-the-rcd-passport-claim"><name>Compact form of the "rcd" PASSporT claim</name>

<t>Compact form of an "rcd" PASSporT claim has some restrictions that will be enumerated below, but mainly follows standard PASSporT compact form procedures. For SIP, the re-construction of the "nam" claim should use the display-name string in the From header field. For other protocols, if there is a display name field that exists, the string should be used, otherwise the string should be an empty string, e.g., "". "jcl" and "jcd" MUST NOT be used with compact form due to integrity rules and URI reference rules in this document leading to too restrictive of a set of constraints. Future specifications may revisit this to propose a consistent and comprehensive way of addressing integrity and security of information and to provide specific guidance for other protocol usage.</t>

</section>
<section anchor="compact-form-of-the-rcdi-passport-claim"><name>Compact form of the "rcdi" PASSporT claim</name>

<t>Compact form of an "rcdi" PASSporT claim is not supported, so if "rcdi" is required compact form MUST NOT be used.</t>

</section>
<section anchor="compact-form-of-the-crn-passport-claim"><name>Compact form of the "crn" PASSporT claim</name>

<t>Compact form of a "crn" PASSporT claim shall be re-constructed using the "call-reason" parameter of a Call-Info header as defined by <xref target="I-D.ietf-sipcore-callinfo-rcd"/>.</t>

</section>
</section>
<section anchor="extend"><name>Further Information Associated with Callers</name>

<t>Beyond naming information and the information that can be contained in a jCard <xref target="RFC7095"/> object, there may be additional human-readable information about the calling party that should be rendered to the end user in order to help the called party decide whether or not to pick up the phone. This is not limited to information about the caller, but includes information about the call itself, which may derive from analytics that determine based on call patterns or similar data if the call is likely to be one the called party wants to receive. Such data could include:</t>

<t><list style="symbols">
  <t>information related to the location of the caller, or</t>
  <t>any organizations or institutions that the caller is associated with, or even categories of institutions (is this a government agency, or a bank, or what have you), or</t>
  <t>hyperlinks to images, such as logos or pictures of faces, or to similar external profile information, or</t>
  <t>information processed by an application before rendering it to a user, like social networking data that shows that an unknown caller is a friend-of-a-friend, or reputation scores derived from crowdsourcing, or confidence scores based on broader analytics about the caller and callee.</t>
</list></t>

<t>All of these data elements would benefit from the secure attestations provided by the STIR and PASSporT frameworks. A new IANA registry has been defined to hold potential values of the "rcd" array; see <xref target="rcdtypes"/>. Specific extensions to the "rcd" PASSporT claim are left for future specification.</t>

<t>There is a few ways RCD can be extended in the future, jCard is an extensible object and the key/values in the RCD claim object can also be extended. General guidance for future extensibility that were followed by the authors is that jCard generally should refer to data that references the caller as an individual or entity, where other claims, such as "crn" refer to data regarding the specific call. There may be other considerations discovered in the future, but this logical grouping of data to the extent possible should be followed for future extensibility.</t>

</section>
<section anchor="parties"><name>Third-Party Uses</name>

<t>While rich data about the call can be provided by an originating authentication service, an intermediary in the call path could also acquire rich call data by querying a third-party service. Such a service effectively acts as a STIR Authentication Service, generating its own PASSporT, and that PASSporT could be attached to a call by either the originating or terminating side. This third-party PASSporT attests information about the calling number, rather than the call or caller itself, and as such its RCD MUST NOT be used when a call lacks a first-party PASSporT that assures verification services that the calling party number is not spoofed. It is intended to be used in cases when the originating side does not supply a display-name for the caller, so instead some entity in the call path invokes a third-party service to provide rich caller data for a call.</t>

<t>In telephone operations today, a third-party information service is commonly queried with the calling party's number in order to learn the name of the calling party, and potentially other helpful information could also be passed over that interface. The value of using a PASSporT to convey this information from third parties lies largely in the preservation of the third party's signature over the data, and the potential for the PASSporT to be conveyed from intermediaries to endpoint devices. Effectively, these use cases form a sub-case of out-of-band <xref target="RFC8816"/> use cases. The manner in which third-party services are discovered is outside the scope of this document.</t>

<t>An intermediary use case might look as follows using SIP protocol for this example: a SIP INVITE carries a display name in its From header field value and an initial PASSporT object without the "rcd" claim. When a terminating verification service implemented at a SIP proxy server receives this request, and determines that the signature is valid, it might query a third-party service that maps telephone numbers to calling party names. Upon receiving the PASSporT in a response from that third-party service, the terminating side could add a new Identity header field to the request for the "rcd" PASSporT object provided by the third-party service. It would then forward the INVITE to the terminating user agent. If the display name in the "rcd" PASSporT object matches the display name in the INVITE, then the name would presumably be rendered to the end user by the terminating user agent.</t>

<t>A very similar flow could be followed by an intermediary closer to the origination of the call. Presumably such a service could be implemented at an originating network in order to decouple the systems that sign for calling party numbers from the systems that provide rich data about calls.</t>

<t>In an alternative use case, the terminating user agent might query a third-party service. In this case, no new Identity header field would be generated, though the terminating user agent might receive a PASSporT object in return from the third-party service, and use the "rcd" field in the object as a calling name to render to users while alerting.</t>

<t>While in the traditional telephone network, the business relationship between calling customers and their telephone service providers is the ultimate root of information about a calling party's name, some other forms of data like crowdsourced reputation scores might derive from third parties. When those elements are present, they MUST be in a third-party "rcd" PASSporT using "iss" claim described in the next section.</t>

<section anchor="thirdsign"><name>Signing as a Third Party</name>

<t>A third-party PASSporT contains an "iss" element to distinguish its PASSporTs from first-party PASSporTs. Third-party "rcd" PASSporTs are signed with credentials that do not have authority over the identity that appears in the "orig" element of the PASSporT claims. The presence of "iss" signifies that a different category of credential is being used to sign a PASSporT than the <xref target="RFC8226"/> certificates used to sign STIR calls; it is instead a certificate that identifies the source of the "rcd" data. How those credentials are issued and managed is outside the scope of this document; the value of "iss" however MUST reflect the Subject of the certificate used to sign a third-party PASSporT. The explicit mechanism for reflecting the subject field of the certificate is out of scope of this document and left to the certificate governance policies that define how to map the "iss" value in the PASSporT to the subject field in the certificate. Relying parties in STIR have always been left to make their own authorization decisions about whether to trust the signers of PASSporTs, and in the third-party case, where an entity has explicitly queried a service to acquire the PASSporT object, it may be some external trust or business relationship that induces the relying party to trust a PASSporT.</t>

<t>An example of a Third Party issued PASSporT claims object is as follows.</t>

<figure><artwork><![CDATA[
{  "orig":{"tn":"12025551000"},
   "dest":{"tn":["12025551001"]},
   "iat":1443208345,
   "iss":"Zorin Industries",
   "rcd":{"nam":"James St. John Smythe"} }
]]></artwork></figure>

</section>
</section>
<section anchor="loa"><name>Levels of Assurance</name>

<t>As "rcd" can be provided by either first party providers that are directly authorized to sign PASSporTs in the STIR eco-system or third party providers that are indirectly or delegated authority to sign PASSporTs. Relying parties could benefit from an additional claim that indicates the relationship of the attesting party to the caller. Even in first party cases, the Communications Service Provider (CSP) to which a number was assigned might in turn delegate the number to a reseller, who would then sell the number to an enterprise, in which case the CSP might have little insight into the caller's name. In third party cases, a caller's name could be determined from any number of data sources, on a spectrum between public data scraped from web searches to a direct business relationship to the caller. As multiple PASSporTs can be associated with the same call, potentially a verification service could receive attestations of the caller name from multiple sources, which have different levels of granularity or accuracy. Therefore, third-party PASSporTs that carry "rcd" data MUST also carry an indication of the relationship of the generator of the PASSporT to the caller in the form of the "iss" claim. As stated in the previous section, the use of "iss" MUST reflect the subject field of the certificate used to sign a third-party PASSporT to represent that relationship.</t>

</section>
<section anchor="use"><name>Using "rcd" in SIP</name>

<t>This section documents SIP-specific usage for the "rcd" claim in PASSporT, and in the SIP Identity header field value. Other using protocols of PASSporT may define their own usages for the "rcd" claim.</t>

<section anchor="authentication-service-behavior"><name>Authentication Service Behavior</name>

<t>An authentication service creating a PASSporT containing an "rcd" claim MAY include a "ppt" for "rcd" or not. Third-party authentication services following the behavior in <xref target="thirdsign"/> MUST include a "ppt" of "rcd". If "ppt" does contain an "rcd", then any SIP authentication services MUST add a "ppt" parameter to the Identity header field containing that PASSporT with a value of "rcd". The resulting Identity header field might look as follows:</t>

<figure><artwork><![CDATA[
Identity: sv5CTo05KqpSmtHt3dcEiO/1CWTSZtnG3iV+1nmurLXV/HmtyNS7Ltrg9
       dlxkWzoeU7d7OV8HweTTDobV3itTmgPwCFjaEmMyEI3d7SyN21yNDo2ER/Ovgt
       w0Lu5csIppPqOg1uXndzHbG7mR6Rl9BnUhHufVRbp51Mn3w0gfUs=;
       info=<https://biloxi.example.org/biloxi.cer>;alg=ES256;
       ppt="rcd"
]]></artwork></figure>

<t>This document assumes that by default, a SIP authentication service determines the value of "rcd", specifically only for the "nam" key value, from the display-name component of the From header field value of the request, alternatively for some calls this may come from the P-Asserted-ID header. It is however a matter of authentication service policy to decide how it populates the value of "nam" key, which MAY also match or be determined by other fields in the request, from customer profile data, or from access to external services. If the authentication service generates an "rcd" claim containing "nam" with a value that is not equivalent to the From header field display-name value, it MUST use the full form of the PASSporT object in SIP.</t>

</section>
<section anchor="verification-service-behavior"><name>Verification Service Behavior</name>

<t><xref target="RFC8224"/> Section 6.2 Step 5 requires that future specifications defining "ppt" values describe any additional verifier behavior. The behavior specified for the "ppt" values of "rcd" is as follows. If the PASSporT is in compact form, then the verification service MUST extract the display-name from the From header field value, if any, and use that as the value for the "nam" key when it recomputes the header and claims of the PASSporT object. Additionally, if there exists a Call-Info header field as defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/>, the "jcard" value can be used to determine the "jcd" key when it recomputes the header and claims of the PASSporT object. If the signature validates over the recomputed object, then the verification should be considered successful.</t>

<t>If the PASSporT is in full form with a "ppt" value of "rcd", then the verification service MUST extract the value associated with the "rcd" "nam" key in the object. If the PASSporT signature validates, then the verification service compares the value of the "rcd" "nam" key with the From header field value or the preferred value depending on local policy of the SIP network technique that conveys the display name string through a field other than the From header field to interoperate with this specification (e.g. P-Asserted-Identity). Similarly, the "jcd" or linked "jcl" jcard information, "icn", "apn", or "crn" can be optionally, based on local policy for devices that support it, used to populate a Call-Info header field following the format of <xref target="I-D.ietf-sipcore-callinfo-rcd"/>.</t>

<t>The third-party "rcd" PASSporT cases, defined in <xref target="thirdsign"/>, must be considered in the verification service, as an attacker could attempt to cut-and-paste such a third-party PASSporT into a SIP request in an effort to get the terminating user agent to render the display name or confidence values it contains to a call that should have no such assurance. Following the rules of <xref target="RFC8225"/> and in particular if there is multiple identity headers, for example with the case of the inclusion of an "rcd" and "shaken" PASSporTs from two different signing providers, a verification service MUST determine that the calling party number shown in the "orig" of the "rcd" PASSporT corresponds to the calling party number of the call it has received, and that the "iat" field of the "rcd" PASSporT is within the date interval that the verification service would ordinarily accept for a PASSporT. It is possible that if there is multiple identity headers are present, only the verified identity information should be considered when presenting call information to an end user.</t>

<t>Verification services may alter their authorization policies for the credentials accepted to sign PASSporTs when third parties generate PASSporT objects, per <xref target="thirdsign"/>. This may include accepting a valid signature over a PASSporT even if it is signed with a credential that does not attest authority over the identity in the "orig" claim of the PASSporT, provided that the verification service has some other reason to trust the signer. No further guidance on verification service authorization policy is given here.</t>

<t>The behavior of a SIP UAS upon receiving an INVITE or other type of session initiation request containing a PASSporT object with an "rcd" claim largely remains a matter of implementation policy. In most cases, implementations would render this calling party name information to the user while alerting. Any user interface additions to express confidence in the veracity of this information are outside the scope of this specification.</t>

</section>
</section>
<section anchor="using-rcd-and-rcdi-as-additional-claims-to-other-passport-extensions"><name>Using "rcd" and "rcdi" as additional claims to other PASSporT extensions</name>

<t>Rich Call Data, including calling name information, as a common example, is often data that is additive to the personal communications information defined in the core PASSporT data required to support the security properties defined in <xref target="RFC8225"/>. For cases where the entity originating the personal communications is supporting the authentication service for the calling identity and is the authority of the Rich Call Data, rather than creating multiple Identity header fields corresponding to multiple PASSporT extensions, the authentication service can alternatively directly add the "rcd" claim to a PASSporT that authenticates the calling identity.</t>

<t>Note: There is one very important caveat to this capability, because generally if there is URI referenced content in an "rcd" PASSporT there is often the requirement to use "rcdi" and JWT Claims Constraints. So, it is important for the user of this specification to recognize that the certificates used should include the necessary JWT Claims Constraints for proper integrity and security of the values in the "rcd" claim incorporated into PASSporTs that are not "rcd".</t>

<section anchor="procedures-for-applying-rcd-as-claims-only"><name>Procedures for applying "rcd" as claims only</name>

<t>For a given PASSporT using some other extension than "rcd", the Authentication Service MAY additionally include the "rcd" claim as defined in this document. This would result in a set of claims that correspond to the original intended extension with the addition of the "rcd" claim.</t>

<t>The Verification service that receives the PASSporT, if it supports this specification and chooses to, should interpret the "rcd" claim as simply just an additional claim intended to deliver and/or validate delivered Rich Call Data.</t>

</section>
<section anchor="example-for-applying-rcd-as-claims-only"><name>Example for applying "rcd" as claims only</name>

<t>In the case of <xref target="RFC8588"/> which is the PASSporT extension supporting the SHAKEN specification <xref target="ATIS-1000074.v002"/>, a common case for an Authentication service to co-exist in a CSP network along with the authority over the calling name used for the call. Rather than require two identity headers, the CSP Authentication Service can apply both the SHAKEN PASSporT claims and extension and simply add the "rcd" required claims defined in this document.</t>

<t>For example, the PASSporT claims for the "shaken" PASSporT with "rcd" claims would be as follows:</t>

<figure><artwork><![CDATA[
Protected Header
{
   "alg":"ES256",
   "typ":"passport",
   "ppt":"shaken",
   "x5u":"https://cert.example.org/passport.cer"
}
Payload
{
   "attest":"A",
   "dest":{"tn":["12025551001"]},
   "iat":1443208345,
   "orig":{"tn":"12025551000"},
   "origid":"123e4567-e89b-12d3-a456-426655440000",
   "rcd":{"nam":"James Bond"}
}
]]></artwork></figure>

<t>A Verification Service that supports "rcd" and "shaken" PASSporT extensions is able to receive the above PASSporT and interpret both the "shaken" claims as well as the "rcd" defined claim.</t>

<t>If the Verification Service only understands the "shaken" PASSporT extension claims and doesn't support "rcd" PASSporT extension, then the "rcd" claim is used during PASSporT signature validation but is otherwise ignored and disregarded.</t>

</section>
</section>
<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>We would like to thank David Hancock, Robert Sparks, Russ Housley, Eric Burger, Alec Fenichel, Ben Campbell, Jack Rickard, Jordan Simpson for helpful suggestions, review, and comments.</t>

</section>
<section anchor="IANA"><name>IANA Considerations</name>

<section anchor="json-web-token-claim"><name>JSON Web Token Claim</name>

<t>This document requests that the IANA add three new claims to the JSON Web Token Claims registry as defined in <xref target="RFC7519"/>.</t>

<t>Claim Name: "rcd"</t>

<t>Claim Description: Rich Call Data Information</t>

<t>Change Controller: IESG</t>

<t>Specification Document(s): [RFCThis]</t>

<t>Claim Name: "rcdi"</t>

<t>Claim Description: Rich Call Data Integrity Information</t>

<t>Change Controller: IESG</t>

<t>Specification Document(s): [RFCThis]</t>

<t>Claim Name: "crn"</t>

<t>Claim Description: Call Reason</t>

<t>Change Controller: IESG</t>

<t>Specification Document(s): [RFCThis]</t>

</section>
<section anchor="personal-assertion-token-passport-extensions"><name>Personal Assertion Token (PASSporT) Extensions</name>

<t>This document requests that the IANA add a new entry to the Personal Assertion Token (PASSporT) Extensions registry for the type "rcd" which is specified in [RFCThis].</t>

</section>
<section anchor="rcdtypes"><name>PASSporT RCD Types</name>

<t>This document requests that the IANA create a new registry for PASSporT RCD types. This new registry should be added to the "Personal Assertion Token (PASSporT)" group. Registration of new PASSporT RCD types shall be under the Specification Required policy.</t>

<t>This registry is to be initially populated with five values, "nam", "apn", "icn", "jcd", and "jcl", which are specified in [RFCThis]. Any new registrations should consist only of a name and a reference document. There is an obligation for expert review, where the designated expert should validate that the proposed new PASSporT RCD type has a scope that doesn't potentially conflict or overlap with the usage or interpretation of the other existing types in the registry. The candidate of designated expert should be like the same designated expert for PASSporT extensions registry which happens to be the first listed author of this document.</t>

</section>
</section>
<section anchor="Security"><name>Security Considerations</name>

<t>The process of signing information contained in a RCD PASSporT, whether the identities, identifiers, alternate identities or identifiers, images, logos, physical addresses, or otherwise should follow some vetting process in which an authoritative entity should follow an appropriate consistent policy defined and governed by the eco-system using RCD and the STIR framework. This can be of many forms, depending on the setup and constraints of the policy requirements of the eco-system and is therefore out-of-scope of this document. However, the general chain of trust that signers of RCD PASSporT are either directly authoritative or have been delegated authority through certificates using JWT Claim Constraints and integrity mechanisms defined in this and related documents is critical to maintain the integrity of the eco-system utilizing this and other STIR related specifications.</t>

<t>Revealing information such as the name, location, and affiliation of a person necessarily entails certain privacy risks. Baseline PASSporT has no particular confidentiality requirement, as the information it signs in many current base communications protocols, for example SIP, is information that carried in the clear anyway. Transport-level security can hide those SIP fields from eavesdroppers, and the same confidentiality mechanisms would protect any PASSporT(s) carried in SIP.</t>

<t>The use of JWTClaimConstraints, a mechanism defined in <xref target="RFC8226"/> and extended in <xref target="RFC9118"/> to constrain any of the RCD information in the public certificate by including that information in the certificate, depending on the availability in the deployment of the PKI system, may present a privacy issue. The use of "rcdi" claim and digests for representing JWT claim contents is a recommended way of preventing the exposure of that information through the certificates which are often publically accessible and available.</t>

<t>Since computation of "rcdi" digests for URIs requires the loading of referenced content, it would be best practice to validate that content at the creation of the "rcdi" or corresponding JWT claim constraint value by checking for content that may cause issues for verification services or that doesn't follow the behavior defined in this document, e.g., unreasonably sized data, the inclusion of recursive URI references, etc. Along the same lines, the verification service should also use precautionary best practices to avoid attacks when accessing URI linked content.</t>

<section anchor="the-use-of-jwt-claim-constraints-in-delegate-certificates-to-exclude-unauthorized-claims"><name>The use of JWT Claim Constraints in delegate certificates to exclude unauthorized claims</name>

<t>While this can apply to any PASSporT that is signed with a STIR Delegate Certificates <xref target="RFC9060"/>, it is important to note that when constraining PASSporTs to include specific claims or contents of claims, it is also important to consider potential attacks by non-authorized signers that may include other potential PASSporT claims that weren't originally vetted by the authorized entity providing the delegate certificate. The use of JWT claims constraints as defined in <xref target="RFC9118"/> for preventing the ability to include claims beyond the claims defined in this document may need to be considered.</t>

</section>
</section>


  </middle>

  <back>


    <references title='Normative References'>




<reference anchor='I-D.ietf-sipcore-callinfo-rcd'>
   <front>
      <title>SIP Call-Info Parameters for Rich Call Data</title>
      <author fullname='Chris Wendt' initials='C.' surname='Wendt'>
         <organization>Somos Inc.</organization>
      </author>
      <author fullname='Jon Peterson' initials='J.' surname='Peterson'>
         <organization>Neustar Inc.</organization>
      </author>
      <date day='7' month='March' year='2022'/>
      <abstract>
	 <t>   This document describes a SIP Call-Info header field usage defined to
   include rich data associated with the identity of the calling party
   that can be rendered to a called party for providing more useful
   information about the caller or the specific reason for the call.
   This includes extended comprehensive information about the caller
   such as what a jCard object can represent for describing the calling
   party or other call specific information such as describing the
   reason or intent of the call.  The elements defined for this purpose
   are intended to be extensible to accommodate related information
   about calls that helps people decide whether to pick up the phone and
   additionally, with the use of jCard and other elements, to be
   compatible with the STIR/PASSporT Rich Call Data framework.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-sipcore-callinfo-rcd-04'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-sipcore-callinfo-rcd-04.txt' type='TXT'/>
</reference>



<reference anchor='RFC2397' target='https://www.rfc-editor.org/info/rfc2397'>
<front>
<title>The &quot;data&quot; URL scheme</title>
<author fullname='L. Masinter' initials='L.' surname='Masinter'><organization/></author>
<date month='August' year='1998'/>
<abstract><t>A new URL scheme, &quot;data&quot;, is defined. It allows inclusion of small data items as &quot;immediate&quot; data, as if it had been included externally. [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='2397'/>
<seriesInfo name='DOI' value='10.17487/RFC2397'/>
</reference>



<reference anchor='RFC3261' target='https://www.rfc-editor.org/info/rfc3261'>
<front>
<title>SIP: Session Initiation Protocol</title>
<author fullname='J. Rosenberg' initials='J.' surname='Rosenberg'><organization/></author>
<author fullname='H. Schulzrinne' initials='H.' surname='Schulzrinne'><organization/></author>
<author fullname='G. Camarillo' initials='G.' surname='Camarillo'><organization/></author>
<author fullname='A. Johnston' initials='A.' surname='Johnston'><organization/></author>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='R. Sparks' initials='R.' surname='Sparks'><organization/></author>
<author fullname='M. Handley' initials='M.' surname='Handley'><organization/></author>
<author fullname='E. Schooler' initials='E.' surname='Schooler'><organization/></author>
<date month='June' year='2002'/>
<abstract><t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants.  These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3261'/>
<seriesInfo name='DOI' value='10.17487/RFC3261'/>
</reference>



<reference anchor='RFC4648' target='https://www.rfc-editor.org/info/rfc4648'>
<front>
<title>The Base16, Base32, and Base64 Data Encodings</title>
<author fullname='S. Josefsson' initials='S.' surname='Josefsson'><organization/></author>
<date month='October' year='2006'/>
<abstract><t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes.  It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4648'/>
<seriesInfo name='DOI' value='10.17487/RFC4648'/>
</reference>



<reference anchor='RFC6901' target='https://www.rfc-editor.org/info/rfc6901'>
<front>
<title>JavaScript Object Notation (JSON) Pointer</title>
<author fullname='P. Bryan' initials='P.' role='editor' surname='Bryan'><organization/></author>
<author fullname='K. Zyp' initials='K.' surname='Zyp'><organization/></author>
<author fullname='M. Nottingham' initials='M.' role='editor' surname='Nottingham'><organization/></author>
<date month='April' year='2013'/>
<abstract><t>JSON Pointer defines a string syntax for identifying a specific value within a JavaScript Object Notation (JSON) document.</t></abstract>
</front>
<seriesInfo name='RFC' value='6901'/>
<seriesInfo name='DOI' value='10.17487/RFC6901'/>
</reference>



<reference anchor='RFC7095' target='https://www.rfc-editor.org/info/rfc7095'>
<front>
<title>jCard: The JSON Format for vCard</title>
<author fullname='P. Kewisch' initials='P.' surname='Kewisch'><organization/></author>
<date month='January' year='2014'/>
<abstract><t>This specification defines &quot;jCard&quot;, a JSON format for vCard data. The vCard data format is a text format for representing and exchanging information about individuals and other entities, for example, telephone numbers, email addresses, structured names, and delivery addresses.  JSON is a lightweight, text-based, language- independent data interchange format commonly used in Internet applications.</t></abstract>
</front>
<seriesInfo name='RFC' value='7095'/>
<seriesInfo name='DOI' value='10.17487/RFC7095'/>
</reference>



<reference anchor='RFC7159' target='https://www.rfc-editor.org/info/rfc7159'>
<front>
<title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
<author fullname='T. Bray' initials='T.' role='editor' surname='Bray'><organization/></author>
<date month='March' year='2014'/>
<abstract><t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format.  It was derived from the ECMAScript Programming Language Standard.  JSON defines a small set of formatting rules for the portable representation of structured data.</t><t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t></abstract>
</front>
<seriesInfo name='RFC' value='7159'/>
<seriesInfo name='DOI' value='10.17487/RFC7159'/>
</reference>



<reference anchor='RFC7519' target='https://www.rfc-editor.org/info/rfc7519'>
<front>
<title>JSON Web Token (JWT)</title>
<author fullname='M. Jones' initials='M.' surname='Jones'><organization/></author>
<author fullname='J. Bradley' initials='J.' surname='Bradley'><organization/></author>
<author fullname='N. Sakimura' initials='N.' surname='Sakimura'><organization/></author>
<date month='May' year='2015'/>
<abstract><t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties.  The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t></abstract>
</front>
<seriesInfo name='RFC' value='7519'/>
<seriesInfo name='DOI' value='10.17487/RFC7519'/>
</reference>



<reference anchor='RFC8224' target='https://www.rfc-editor.org/info/rfc8224'>
<front>
<title>Authenticated Identity Management in the Session Initiation Protocol (SIP)</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='C. Jennings' initials='C.' surname='Jennings'><organization/></author>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<author fullname='C. Wendt' initials='C.' surname='Wendt'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>The baseline security mechanisms in the Session Initiation Protocol (SIP) are inadequate for cryptographically assuring the identity of the end users that originate SIP requests, especially in an interdomain context.  This document defines a mechanism for securely identifying originators of SIP requests.  It does so by defining a SIP header field for conveying a signature used for validating the identity and for conveying a reference to the credentials of the signer.</t><t>This document obsoletes RFC 4474.</t></abstract>
</front>
<seriesInfo name='RFC' value='8224'/>
<seriesInfo name='DOI' value='10.17487/RFC8224'/>
</reference>



<reference anchor='RFC8225' target='https://www.rfc-editor.org/info/rfc8225'>
<front>
<title>PASSporT: Personal Assertion Token</title>
<author fullname='C. Wendt' initials='C.' surname='Wendt'><organization/></author>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>This document defines a method for creating and validating a token that cryptographically verifies an originating identity or, more generally, a URI or telephone number representing the originator of personal communications.  The Personal Assertion Token, PASSporT, is cryptographically signed to protect the integrity of the identity of the originator and to verify the assertion of the identity information at the destination.  The cryptographic signature is defined with the intention that it can confidently verify the originating persona even when the signature is sent to the destination party over an insecure channel.  PASSporT is particularly useful for many personal-communications applications over IP networks and other multi-hop interconnection scenarios where the originating and destination parties may not have a direct trusted relationship.</t></abstract>
</front>
<seriesInfo name='RFC' value='8225'/>
<seriesInfo name='DOI' value='10.17487/RFC8225'/>
</reference>



<reference anchor='RFC8226' target='https://www.rfc-editor.org/info/rfc8226'>
<front>
<title>Secure Telephone Identity Credentials: Certificates</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='S. Turner' initials='S.' surname='Turner'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>In order to prevent the impersonation of telephone numbers on the Internet, some kind of credential system needs to exist that cryptographically asserts authority over telephone numbers.  This document describes the use of certificates in establishing authority over telephone numbers, as a component of a broader architecture for managing telephone numbers as identities in protocols like SIP.</t></abstract>
</front>
<seriesInfo name='RFC' value='8226'/>
<seriesInfo name='DOI' value='10.17487/RFC8226'/>
</reference>



<reference anchor='RFC8588' target='https://www.rfc-editor.org/info/rfc8588'>
<front>
<title>Personal Assertion Token (PaSSporT) Extension for Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
<author fullname='C. Wendt' initials='C.' surname='Wendt'><organization/></author>
<author fullname='M. Barnes' initials='M.' surname='Barnes'><organization/></author>
<date month='May' year='2019'/>
<abstract><t>This document extends the Personal Assertion Token (PASSporT), which is a token object that conveys cryptographically signed information about the participants involved in communications.  The extension is defined based on the &quot;Signature-based Handling of Asserted                                     information using toKENs (SHAKEN)&quot; specification by the ATIS/SIP Forum IP-NNI Task Group.  It provides both (1) a specific set of levels of confidence in the correctness of the originating identity of a call originated in a SIP-based telephone network as well as (2) an identifier that allows the Service Provider (SP) to uniquely identify the origin of the call within its network.</t></abstract>
</front>
<seriesInfo name='RFC' value='8588'/>
<seriesInfo name='DOI' value='10.17487/RFC8588'/>
</reference>



<reference anchor='RFC9060' target='https://www.rfc-editor.org/info/rfc9060'>
<front>
<title>Secure Telephone Identity Revisited (STIR) Certificate Delegation</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<date month='September' year='2021'/>
<abstract><t>The Secure Telephone Identity Revisited (STIR) certificate profile provides a way to attest authority over telephone numbers and related identifiers for the purpose of preventing telephone number spoofing. This specification details how that authority can be delegated from a parent certificate to a subordinate certificate. This supports a number of use cases, including those where service providers grant credentials to enterprises or other customers capable of signing calls with STIR.</t></abstract>
</front>
<seriesInfo name='RFC' value='9060'/>
<seriesInfo name='DOI' value='10.17487/RFC9060'/>
</reference>



<reference anchor='RFC9118' target='https://www.rfc-editor.org/info/rfc9118'>
<front>
<title>Enhanced JSON Web Token (JWT) Claim Constraints for Secure Telephone Identity Revisited (STIR) Certificates</title>
<author fullname='R. Housley' initials='R.' surname='Housley'><organization/></author>
<date month='August' year='2021'/>
<abstract><t>RFC 8226 specifies the use of certificates for Secure Telephone Identity Credentials; these certificates are often called &quot;Secure Telephone Identity Revisited (STIR) Certificates&quot;. RFC 8226 provides a certificate extension to constrain the JSON Web Token (JWT) claims that can be included in the Personal Assertion Token (PASSporT), as defined in RFC 8225.  If the PASSporT signer includes a JWT claim outside the constraint boundaries, then the PASSporT recipient will reject the entire PASSporT. This document updates RFC 8226; it provides all of the capabilities available in the original certificate extension as well as an additional way to constrain the allowable JWT claims.  The enhanced extension can also provide a list of claims that are not allowed to be included in the PASSporT.</t></abstract>
</front>
<seriesInfo name='RFC' value='9118'/>
<seriesInfo name='DOI' value='10.17487/RFC9118'/>
</reference>



<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<date month='May' year='2017'/>
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>




    </references>

    <references title='Informative References'>





<reference anchor='RFC3325' target='https://www.rfc-editor.org/info/rfc3325'>
<front>
<title>Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks</title>
<author fullname='C. Jennings' initials='C.' surname='Jennings'><organization/></author>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='M. Watson' initials='M.' surname='Watson'><organization/></author>
<date month='November' year='2002'/>
</front>
<seriesInfo name='RFC' value='3325'/>
<seriesInfo name='DOI' value='10.17487/RFC3325'/>
</reference>



<reference anchor='RFC7340' target='https://www.rfc-editor.org/info/rfc7340'>
<front>
<title>Secure Telephone Identity Problem Statement and Requirements</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='H. Schulzrinne' initials='H.' surname='Schulzrinne'><organization/></author>
<author fullname='H. Tschofenig' initials='H.' surname='Tschofenig'><organization/></author>
<date month='September' year='2014'/>
<abstract><t>Over the past decade, Voice over IP (VoIP) systems based on SIP have replaced many traditional telephony deployments.  Interworking VoIP systems with the traditional telephone network has reduced the overall level of calling party number and Caller ID assurances by granting attackers new and inexpensive tools to impersonate or obscure calling party numbers when orchestrating bulk commercial calling schemes, hacking voicemail boxes, or even circumventing multi-factor authentication systems trusted by banks.  Despite previous attempts to provide a secure assurance of the origin of SIP communications, we still lack effective standards for identifying the calling party in a VoIP session.  This document examines the reasons why providing identity for telephone numbers on the Internet has proven so difficult and shows how changes in the last decade may provide us with new strategies for attaching a secure identity to SIP sessions.  It also gives high-level requirements for a solution in this space.</t></abstract>
</front>
<seriesInfo name='RFC' value='7340'/>
<seriesInfo name='DOI' value='10.17487/RFC7340'/>
</reference>



<reference anchor='RFC8816' target='https://www.rfc-editor.org/info/rfc8816'>
<front>
<title>Secure Telephone Identity Revisited (STIR) Out-of-Band Architecture and Use Cases</title>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<date month='February' year='2021'/>
<abstract><t>The Personal Assertion Token (PASSporT) format defines a token that can be carried by signaling protocols, including SIP, to cryptographically attest the identity of callers. However, not all telephone calls use Internet signaling protocols, and some calls use them for only part of their signaling path, while some cannot reliably deliver SIP header fields end-to-end. This document describes use cases that require the delivery of PASSporT objects outside of the signaling path, and defines architectures and semantics to provide this functionality.</t></abstract>
</front>
<seriesInfo name='RFC' value='8816'/>
<seriesInfo name='DOI' value='10.17487/RFC8816'/>
</reference>


<reference anchor="ATIS-1000074.v002" >
  <front>
    <title>Signature-based Handling of Asserted information using toKENs (SHAKEN) &lt;https://access.atis.org/apps/group_public/download.php/62391/ATIS-1000074.v002.pdf&gt;</title>
    <author >
      <organization>ATIS/SIP Forum NNI Task Group</organization>
    </author>
    <date year="2021" month="November"/>
  </front>
</reference>


    </references>



  </back>

<!-- ##markdown-source:
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
LthxyeZfQUoAdUPYwnDCU4WL4uqNeLKWW9NZ+InWFWNGvXW0xd2+iYkWS2aj
wca7gvCrAG9wPW46bkO0P8C1rWGSuds/h6uPCF7SuUos4gzMYLKRwAbGIwed
YlpuIzp1Nkb7MGmQ/CeJwoRR464LJOZUUba0uGDTXQzFojy8+kxn4rszi4fw
OkVknujQfOO0Uyl9taXCfFGx+ApFhm0uTUqWWJVfNwVm3lW+8QGK+rO3wIRh
7M9SEkambHqgwiNDF4LyVfca/i8cLIxhKK9Ff1ynXSuJ/2+IvbNZ4gBfVjcQ
MMNM2u6J3kEzqbqmwiZLd+wlepIAYaYYJce01C0lvVz9y7hlxEjGXZBcfPz3
yNe45MINvi4hI0JCi6X7tSroVdccy1Q58dzbWZ/D6lX6SoUfkjeKP6IQhVbI
0FmLUwlZGp7NtrnwtTJFPDzYSK5H96kGLeVsFEvqt4c1HkaN3ljdY3Y6hJvo
WP3qUVRdH55cFruHP/y6uljWz+v708lp+mZn7+Sny4t/1Pn399Mf/7yXL9fl
y7/9uPN8WW9eXzx8WZfzx5paNc0+XP30sUjePZw+fPPjo+c3yeXl02L84/20
vlzO396cPHsfny5fbU7P7k8fXmxe7+9tXj8t9k/Pd95cz2uXoLX7cn04qc5W
q7e/vpnvrf+WTz8+H3//cHn+4Dx7/CR/t3i+nv14Pl4d7r3K79/szmfvqr98
p99G78Nf/l1Bs+M0Kz6kI1sWSD4CHvEf38XZ/C9U08N9HY7sL7TDrbIdgTEC
mthSjYwx3bIYTmIgXukt1yNwQjerdgzCXtlFnvkOTQwRdT2xBt71FITOEHpX
5Ma83uaqd8xdPeTeUSdvJeWe6+G5QmRYqMK/+e0Q1NEEwYDDs6euNhRHBtXg
jNFfqzC77j3x7Q0FEYa2WooR9BWVem5ule6EiktXN4c8w2SABGrIWINjtH6n
ybqlM2xGPF8OGsRhJwzUkxYz4cI0hTd39Lo7F/aW5anrsWoyP3PdeU3BNdfk
cHS3ILASPhW3T/exBmQgNJJKgrs6IWfrLAuEcYdnE4iXpUBX80cjA9RpcmCK
fjwY7YM9k6yiQ5uhCOvogsgIwJKr7LpSR5XzqRGbNRq+5OSXjrkzA3SsXgYX
eAXdGTtsUBrHG4Z6eD4SQwRiIawmlNCp+dEWA1mUWg8gDGbrbdlyE7XgiHUX
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
AA==

-->

</rfc>

