<?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-25" 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="2023" month="June" day="01"/>

    <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 extends the use of JWT and PASSporT in the overall STIR framework by defining a PASSporT extension and the associated STIR procedures to protect additional caller and call related information.  This is additional information beyond the calling party originating identity (e.g. telephone number or SIP URI) that is intended to be rendered to assist a called party in determining whether to accept or trust incoming communications. This includes information such as the name of the person or entity on one side of a communications session, for example, 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 to a call and whom is calling.</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>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. In general, PASSporT <xref target="RFC8225"/> has been defined to be a communications protocol independent technology, but it's initial usage as detailed in <xref target="RFC8224"/> is with the SIP protocol <xref target="RFC3261"/>.  There are many SIP specific references and definitions in this document, but future specifications may extend the usage of RCD PASSporTs and claims to other protocol specific usage and definitions.</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 elements are 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 enforces the policies 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 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 <xref target="W3C-SubresourceIntegrity"/>. 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 in the PASSporT claims 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 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 or "rcd" claims 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 URI refs        |      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 URIs referencing external content 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 modes 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 referenced external content using URIs.</t>

</section>
<section anchor="rcd_define"><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 <xref target="RFC3261"/> or alternatively from the P-Asserted-Identity header field value <xref target="RFC3325"/>, or a similar field in other PASSporT using protocols. This key MUST be included once as part of the "rcd" claim value JSON object. The key syntax of "nam" MUST follow the display-name ABNF given in <xref target="RFC3261"/>. 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 or "rcd" claims 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 or "rcd" claims. 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 HTTPS URL reference to an image resource 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 HTTPS URL 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. The jCard is defined in this specification as an extensible object format used to contain RCD information about the call initiator. This object is intended to directly match the Call-Info header field value defined in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> with a type of "jcard" where the format of the jCard and properties used should follow the normative usage and formatting rules and procedures in that document. 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. Either a "jcd" or "jcl" MAY appear in the "rcd" claim, but not both.</t>

<t>The jCard object value for "jcd" MUST be a jCard JSON object that MAY have URI referenced content, but that URI referenced content MUST 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 "rcd" claims, using Call-Info as protocol with the addition of an identity header carrying the PASSPorT is not required.  The identity header carrying a PASSporT with "rcd" claim including a "jcd" value can be used as the primary and only transport of the RCD information.</t>

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

<t>The "jcl" key value is an HTTPS URL that refers to a jCard <xref target="RFC7095"/> JSON object on a 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="RFC8259"/>. 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. The "jcd" or "jcl" keys MAY only appear once in the "rcd" claim but MUST be mutually exclusive.</t>

<t>The jCard object referenced by the URI value for "jcl" MUST be a jCard JSON object that MAY have URI referenced content, but that URI referenced content MUST 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_define"><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. "rcdi" and "rcd" claims MAY each appear once in a PASSporT, but if "rcdi" is included the "rcd" MUST correspondingly be present also. 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 URI referenced external 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 URI references to external content 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 one of the following objects referenced by the JSON pointer key,</t>

<t><list style="symbols">
  <t>content inline to the referenced object</t>
  <t>the content of a resource referenced by an inline URI object</t>
  <t>the content of a resource specified by a URI that is in embedded in content specified by an inline URI object(e.g., jcl)</t>
</list></t>

<t>This is 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 <xref target="RFC6234"/> 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 <xref target="RFC1321"/> or SHA-1 <xref target="RFC3174"/>. Future specifications may update the list of algorithms and how they are referenced based on future 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>

<t>Note that the digest is computed on the Json representation of the string, which necessarily includes the beginning and ending double-quote characters.</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.</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 MUST be a JSON pointer and digest entry for the content in that linked resource. When creating a key/value representing "icn", the key is the JSON pointer string "/icn" and the digest value string would be created using the image file byte data referenced in the URI.</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, the use of the "rcdi" JSON pointer and integrity digest as the constraint value in JWTClaimConstraints over the jCard data is RECOMMENDED.</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 external content referenced by the 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 "rcdi" MUST have a "/jcl" key value and digest value to protect the referenced jCard object and each URI referenced in the referenced jCard array string MUST have a corresponding JSON pointer string key and digest value.</t>

<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"><name>JWT Claim Constraints for "rcd" claims</name>

<t>When using JWT Claim Constraints for "rcd" claims the procedure when creating the signing certificate should follow the following guidelines.</t>

<t>The "permittedValues" for the "rcd" claim MAY contain a single entry or optionally MAY contain multiple entries with the intent of supporting cases where the certificate holder is authorized to use different sets of rich call data corresponding to different call scenarios.</t>

<t>Only including "permittedValues" for "rcd", with no "mustInclude", provides the ability for the construction a valid PASSPorT that can either have no "rcd" claim within or only the set of constrained "permittedValues" values for an included "rcd" claim.</t>

</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 use of JWT Claim Constraints with an "rcdi" claim is for cases where URI referenced content is to be protected by the authoritative certificate issuer. The objective for the use of JWT Claim Constraints for the combination of both "rcd" and "rcdi" claims is to constrain the signer to only construct the "rcd" and "rcdi" claims inside a PASSporT to contain and reference only a pre-determined set of content. Once both the contents of the "rcd" claim and any referenced content is certified by the party that is authoritative for the certificate being issued to the signer, the "rcdi" claim is constructed and 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 and extended in <xref target="RFC9118"/>. 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 cases that there should always be both "rcd" and "rcdi" claims included in the 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>
<section anchor="crn_define"><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 contents can optionally be protected by the authoritative certificate issuer using JWT Constraints in the certificate. When the signer of the PASSporT intends to always include a call reason string of any value, a "mustInclude" for the "crn" claim in the JWT Claim Constraints indicates that a "crn" claim must always be present and is RECOMMENDED to be included by the certificate issuer. If the signer of the "crn" claim wants to constrain the contents of "crn", then "permittedValues" for "crn" in JWT Claim Constraints should match the contents of the allowed strings and is RECOMMENDED to be included by the certificate issuer.</t>

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

<t>The "rcd" or "crn" claims MAY appear in any PASSporT claims object as optional elements. The creator of a PASSporT MAY also add a PASSporT extension ("ppt") value, defined in <xref target="RFC8225"/> Section 8.1, of "rcd" to the header of a PASSporT as well, in which case the PASSporT claims MUST contain at least one or both an "rcd" or "crn" claim. Any entities verifying the PASSporT claims defined in this document are required to understand the PASSporT extension in order to process the PASSporT in question. An example PASSporT header with the PASSporT extension ("ppt") value of "rcd" 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" key and value, is mandatory.</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>A verifier that successfully verifies a PASSportT that contains an "rcd" claim MUST ensure the following about the PASSporT:</t>

<t><list style="symbols">
  <t>it has a valid signature per the verification procedures detailed in <xref target="RFC8225"/></t>
  <t>it abides by all rules set forth in the proper construction of the claims defined in <xref target="rcd_define"/> of this document</t>
  <t>it abides 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>In addition if the "iss" claim is included in the PASSPorT, verification should follow procedures described in <xref target="thirdsignverify"/>.</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>When the "rcdi" claim exists, the verifier should verify the digest for each JSON pointer key.  Any digest string that doesn't match a generated digest MUST be considered a failure of the verification of the content referenced by the JSON pointer.</t>

<t>If there is any issue with completing the integrity verification procedures for referenced external 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>

<t>As a potential optimization of verification procedure, an entity that does not otherwise need to dereference a URI from the "rcd" claim for display to end-user is NOT RECOMMENDED to unnecessarily dereference the URI solely to perform integrity verification.</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 "rcdi" claim includes integrity protection of the URI referenced content.</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>The specific usage of compact form of an "rcd" PASSporT claim, defined in <xref target="RFC8225"/> Section 7, has some restrictions that will be enumerated below, but mainly follows standard PASSporT compact form procedures. Compact form only provides the signature from the PASSporT, requiring the re-construction of the other PASSporT claims from the SIP header fields as discussed in <xref target="RFC8224"/> Section 4.1.</t>

<t>The re-construction of the "nam" claim, if using SIP protocol, 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>The use of compact form of a PASSporT using an "rcdi" 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="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 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 PASSporT object matches, or is string equivelent to, 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 anchor="thirdsignverify"><name>Verification using Third Party RCD</name>

<t>The third-party "rcd" PASSporT cases 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>

</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 identification, in the form of a uniquely identifiable name, 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 are RECOMMENDED to also carry an indication of the identity of the generator of the PASSporT in the form of the 'iss' claim.</t>

</section>
<section anchor="use"><name>Use of "rcd" PASSporTs in SIP</name>

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

<section anchor="authentication-service-behavior-for-sip-protocol"><name>Authentication Service Behavior for SIP protocol</name>

<t>An authentication service creating a PASSporT containing an "rcd" claim MAY include a PASSporT extension ("ppt" value) of "rcd" or not. Third-party authentication services following the behavior in <xref target="thirdsign"/> MUST include a PASSporT extension value of "rcd". If PASSporT extension does contain an "rcd", then any SIP authentication services MUST add a PASSporT extension "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 when using the SIP protocol, an 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 string equivalent to the From header field display-name value, it MUST use the full form of the PASSporT object in SIP.</t>

<t>In addition, {I-D.ietf-sipcore-callinfo-rcd}} defines a Call-Info header field that MAY be used as a source of RCD information that an authentication services uses to construct the appropriate PASSporT RCD claim types used.</t>

<t>Note also that, as a best practice, the accuracy and legitimacy of Rich Call Data information that is included in the claims is RECOMMENDED to follow a trust framework that is out of scope of this document. As with telephone numbers for the STIR framework the authentication of Rich Call Data should follow some type of vetting process by an entity that is authoritative over determining the accuracy and legitimacy of that information. This includes the mechanisms for how and from whom that information is received by the authentication service. For example, the general use of Call-Info via SIP as a trusted source of RCD information on the authentication side is NOT RECOMMENDED.</t>

</section>
<section anchor="verification-service-behavior-for-sip-protocol"><name>Verification Service Behavior for SIP protocol</name>

<t><xref target="RFC8224"/> Section 6.2 Step 5 requires that future specifications defining PASSporT extension ("ppt") values describe any additional verifier behavior specific to the SIP protocol. The general verification proceedures defined in <xref target="rcd_passport_verification"/>
should be followed, but the following paragraphs describe some of the specifics needed to implement a verification service using the SIP protocol.</t>

<t>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 MUST use that as the string 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" JSON object value MUST be used to construct the "jcd" key value when it recomputes the header and claims of the PASSporT object. If the signature validates over the recomputed object, then the verification is considered successful.</t>

<t>If the PASSporT is in full form with a PASSporT extension value of "rcd", then the verification service MUST extract the value associated with the "rcd" claim "nam" key in the object. If the PASSporT signature is verified successfully then the verification service MUST additionally compare the string value of the "rcd" claim "nam" key value with the From header field value or the preferred value.  The preferred value depends 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) as discussed in <xref target="RFC8224"/>. Similarly, "jcd" or "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"/>. If future defined PASSporT RCD claims types are present, they should follow similar defined proceedures and policies.</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-rcdi-crn-as-additional-claims-to-other-passport-extensions"><name>Using "rcd", "rcdi", "crn" 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>

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

<t>For a given PASSporT using some other extension than "rcd", the Authentication Service MAY additionally include the "rcd" defined in {#rcd_define}, "rcdi" defined in {#rcdi_define}, and "crn" defined in {#crn_define} claims. 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-claims-as-claims-only"><name>Example for applying RCD claims 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 understands and supports claims defined in the "rcd" and "shaken" PASSporT extensions is able to receive the above PASSporT and interpret both the "shaken" claims as well as the "rcd" defined claims.</t>

<t>If the Verification Service only understands the "shaken" PASSporT extension claims and doesn't support "rcd" PASSporT extension or claims, then the "rcd" claim, in this example, is used during PASSporT signature validation but is otherwise ignored and disregarded.</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="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 Claim Types</name>

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

<t>This registry is to be initially populated with five claim name values, "nam", "apn", "icn", "jcd", and "jcl", which are specified in [RFCThis]. This is a two column registry with column1 = "Name" and column2 = "Reference Document". Any new registrations should consist of only of the name and the reference document. There is an obligation for expert review, where the designated expert should validate that the proposed new PASSporT RCD claim type has a scope that doesn't potentially conflict or overlap with the usage or interpretation of the other existing types in the registry.</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 dereferencing and download of any RCD URI linked resources as part of verification either in-network or on device could provide some level of information about calling patterns, so this should be considered when making these resources available.</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 RECOMMENDED for the prevention of 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>

<t>As general guidance, the use of URLs and URIs that reference potentially dangerous or intentionally harmful content should be considered in implimenting this specification.  <xref target="RFC3986"/> Section 7 contains good additional guidance to consider when communicating or dereferencing URLs and URIs.</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' target='https://datatracker.ietf.org/doc/html/draft-ietf-sipcore-callinfo-rcd-05'>
   <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='1' month='March' year='2023'/>
      <abstract>
	 <t>   This document describes a SIP Call-Info header field usage defined to
   include Rich Call Data (RCD) associated with the identity of the
   calling party that can be rendered to a called party for providing
   more descriptive information about the caller or more details about
   the reason for the call.  This includes extended information about
   the caller beyond the telephone number such as a calling name, a logo
   or photo representing the caller or a jCard object representing the
   calling party.  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 with the use of
   icon and newly defined jCard and other elements to be compatible and
   complimentary with the STIR/PASSporT Rich Call Data framework.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-sipcore-callinfo-rcd-05'/>
   
</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='RFC3986' target='https://www.rfc-editor.org/info/rfc3986'>
<front>
<title>Uniform Resource Identifier (URI): Generic Syntax</title>
<author fullname='T. Berners-Lee' initials='T.' surname='Berners-Lee'><organization/></author>
<author fullname='R. Fielding' initials='R.' surname='Fielding'><organization/></author>
<author fullname='L. Masinter' initials='L.' surname='Masinter'><organization/></author>
<date month='January' year='2005'/>
<abstract><t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource.  This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet.  The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier.  This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='STD' value='66'/>
<seriesInfo name='RFC' value='3986'/>
<seriesInfo name='DOI' value='10.17487/RFC3986'/>
</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='RFC6234' target='https://www.rfc-editor.org/info/rfc6234'>
<front>
<title>US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)</title>
<author fullname='D. Eastlake 3rd' initials='D.' surname='Eastlake 3rd'><organization/></author>
<author fullname='T. Hansen' initials='T.' surname='Hansen'><organization/></author>
<date month='May' year='2011'/>
<abstract><t>Federal Information Processing Standard, FIPS</t></abstract>
</front>
<seriesInfo name='RFC' value='6234'/>
<seriesInfo name='DOI' value='10.17487/RFC6234'/>
</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='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='RFC8259' target='https://www.rfc-editor.org/info/rfc8259'>
<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='December' year='2017'/>
<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='STD' value='90'/>
<seriesInfo name='RFC' value='8259'/>
<seriesInfo name='DOI' value='10.17487/RFC8259'/>
</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='RFC1321' target='https://www.rfc-editor.org/info/rfc1321'>
<front>
<title>The MD5 Message-Digest Algorithm</title>
<author fullname='R. Rivest' initials='R.' surname='Rivest'><organization/></author>
<date month='April' year='1992'/>
<abstract><t>This document describes the MD5 message-digest algorithm. The algorithm takes as input a message of arbitrary length and produces as output a 128-bit &quot;fingerprint&quot; or &quot;message digest&quot; of the input.  This memo provides information for the Internet community.  It does not specify an Internet standard.</t></abstract>
</front>
<seriesInfo name='RFC' value='1321'/>
<seriesInfo name='DOI' value='10.17487/RFC1321'/>
</reference>



<reference anchor='RFC3174' target='https://www.rfc-editor.org/info/rfc3174'>
<front>
<title>US Secure Hash Algorithm 1 (SHA1)</title>
<author fullname='D. Eastlake 3rd' initials='D.' surname='Eastlake 3rd'><organization/></author>
<author fullname='P. Jones' initials='P.' surname='Jones'><organization/></author>
<date month='September' year='2001'/>
<abstract><t>The purpose of this document is to make the SHA-1 (Secure Hash Algorithm 1) hash algorithm conveniently available to the Internet community. This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='3174'/>
<seriesInfo name='DOI' value='10.17487/RFC3174'/>
</reference>



<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>
<reference anchor="W3C-SubresourceIntegrity" >
  <front>
    <title>Subresource Integrity &lt;https://www.w3.org/TR/SRI/&gt;</title>
    <author >
      <organization>W3C</organization>
    </author>
    <date year="2016" month="June" day="23"/>
  </front>
</reference>


    </references>



  </back>

<!-- ##markdown-source:
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
iOkumwqVEjOE08kD6PnbB+qUT5m3909cAy39NnmfUptqv1NfJ9EkETd7BTWz
EYcRcbMwdF3yV5Mq/7YWYSZ2WXjO96UBokH9rClcKVNmvyuLZLMf2S4OAwxs
gV2EJQk+fMCSFuLTARR2m277NKwm3jZzedM+RW3D41zHJCnLohRAbyr1EEIB
kUOzDij+HJbvWx97C8BiGTvHJoankxEZxRVvhbSbIWM4o1GY+tzV6cGmXVVN
3QBhe8JVPDUWBOW7hcbVU0XNLjBSC4HEtKxFJKH9UmzJbVolVISSs7W8JZqD
lTt7+lHIkxaLLFxaOu6q0RGapSRrTLNT4LgUhVdkmCuEMhLbFzfgBl+9MxOG
aJrGAHi8+MSRI8TTybi6QdhwkhGln90jLDVpDoKA8UT9PjjW/abG/BEEISwc
2Tv+2KtzkId293b2Dg8Pd3d2dnqfSOntATms9e+/mAd2e7/KE2kMD+weHOzv
7TzcPzjkH0mZ/siqtNWkP7Ukqs69u7Q3MjRSGJrk++fsvSbof1XYRGh66zvR
2Vlea1N0u7NWhAsfC2LuO0rMfA3w7x7+DvCz1YIg6QZ/9OjRjtozaMHHf8wr
rkPwCT/DeknxO1js+tsKxYISZBdJwAIh+k8eOnlP/zsPXGbXSMCgI6yhfp0+
K++8cOU3vqTLzP9U5EAYHFP2wjYc+3ecIdxPf3r8+uJ258cfZsUJ/Pfq8u38
7O0MP77Ff56envxdTWbw9fTVaD3K8A/PzrKzv/701/PdvTcH29sPt2/3H/5w
fvK3J+ePfzzbefLs/Sx79+rxycnrR1d/e7Hz94PXz3SUW3z78fOLt4dn5fXz
2Wz2/fdfFwXDGmxhqRubx+Rrj5LNwakW7dIhyjZZX5Nz1qQs0zaj6YnmfGqr
K4or7m6M7Qxt7yZYHRk6TsRAbh0iIqrLaI84jnoXKOB/uMEew3inXqR1DeB7
lWRZmrBezSiLVtSa3mhhrSCte6ILbxltoxBvTWjd/xWpHHeS1S/M2vgqyRq/
N0cjkqHujkmMok96KhqXGCYM/NG4wjBh4I/GFYYJA18tX+A8twVqvI9TGxm4
OrQSHoCOfV+gkLmZ1P3RhyknjEoOUhpz0C8bXhoGlMpkcdF786KqffqzPoVF
DEFLLqW562fD/b7AzPY/Marvd9+wr3C//tztagftqfedlf5m7Kj2FrPMYIMM
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
zQjZQhnIOUKG0RkhcB7AmXg2q/SnxWKxyp0TWnxm0RsBVXTv9PLNfRyTDdKx
Elks3wmcje8Dq9C4eLRnuJI6pMvy48QnkcKwd+Z2Xlg7IP7cfJpEzaRclmmV
dCVow7pkXuK2GccYYb0rXksABrEUqNnHYYQAIg4f8wYyUwhLjtVyGTIxsFaG
ZsZcCinBrVs4owhXSZZHx2W81KG4UXVcoo2SwSPdJTYIvuGpnhjG4K+B3LLO
2lW0rxiT3a0HaAMHZwA44xVhmGCI4a7YQ4B8b7gftxwHEG1PcGPrrWSOWsyA
VKCAQ/SxRKIMxGNMFZwkAaPfKfHJ7aUe57adEF7nRv4XR/jTg2REnTRyCx01
lu/CV4qu8hjBxcTP34KQ/q0veId+93aUFetzIJt+/AZYp1aDEduOafoJjwwa
4VW+Rp4xrXgdjRwvnfZKyUx/TeSV5XwXpmN1PuKJotl6fZIm90y6sQI2R3U7
2qPHCRx2WnAlGOs52trCAgMbynuZHh9Ni5WJBrEFJH1lko0lCRgI9/2BFNTv
IjRcdS9I9T0V00e6qzCdGGT1oNBV52LCygDkvuh4iuQGX5RPy0ISaUSKg6Dc
tFZaw8bCGQwLH3EiVKQbb4IGYzYgQsSd5mau5rZTUveYnb7FZuiovnocVTeH
p1fFzuGPvy0vF/Wzen8yPktfb++e/nx1+Y86/2E//ekvu/liVb7420/bzxb1
+tXlgxd1OXukaUaT7P31zx+K5O2DyYPXPz18dptcXT0pRj/tp/XVYvbm9vTp
u/hs8XJ9dr4/eXC5frW3u371pNg7u9h+fTOrXbLSzovV4bg6Xy7f/PZ6trv6
Wz758Gz0w4PFxdFF9uhx/nb+bDX96WK0PNx9me/f7symb6vvv9O3UXL+/t81
onSUZsX7dGjLDMlP46T8j+/ibPY9lbVwr8ORfU8QblWuCMxYIGst1Dw1onsc
Y1Lwra8Mq1TCB/1trrEXODqbFS36YVfqIs98HVJfvUIqVzhvRhCegYFZRW4s
tpvcwfJn74X1vh+ZlSRdrsDn6p+Ni4WN0hyAJJpgqNjg/IkrQsWKltowY/QP
ahBWN0x8Fzy0qk3Y/AcC3rJYUk3lJqgUEsr5XF0bzolHm1YgUYw0AEOCP139
adk67UedKXiKlDHCoQ1IZEkgGXNhF9PoWkmDc5Zu2J4qUa2qGoYO8J6C+69J
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
OxgMQEgcX2/9HyGAR+c7AQEA

-->

</rfc>

