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

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-stir-passport-rcd-15" category="std">

  <front>
    <title abbrev="RCD">PASSporT Extension for Rich Call Data</title>

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

    <date year="2022" month="March" day="07"/>

    <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. The JSON element defined for this purpose, Rich Call Data (RCD), is an extensible object defined to either be used as part of STIR or with SIP Call-Info to include related information about calls that helps people decide whether to answer an incoming set of communications from another party. This signing of the RCD information is also enhanced with a integrity mechanism that is designed to protect the authoring and transport of this information between authoritative and non-authoritative parties generating and signing the Rich Call Data for support of different usage and content policies.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<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, so baseline STIR provides no features for caller name. This specification documents an optional mechanism for PASSporT and the associated STIR procedures which extend PASSporT objects to protect additional elements conveying richer information: information that is intended to be rendered to assist a called party in determining whether to accept or trust incoming communications. This includes the name of the person or entity on one side of a communications session, the traditional “Caller ID” of the telephone network, along with related display information that would be rendered to the called party during alerting, or potentially used by an automaton to determine whether and how to alert a called party.</t>

<t>Traditional telephone network signaling protocols have long supported delivering a ‘calling name’ from the originating side, though in practice, the terminating side is often left to derive a name from the calling party number by consulting a local address book or an external database. SIP 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. However, both are unsecured fields that really cannot be trusted in most interconnected SIP deployments, and therefore is a good starting point for a framework that utilizes STIR techniques and procedures for protecting call related information including but not limited to calling name.</t>

<t>As such, the baseline use-case for this document extends PASSporT to provide cryptographic protection for the “display-name” field of SIP requests 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. This document furthermore specifies a third-party profile that would allow external authorities to convey rich information associated with a calling number via a new type of PASSporT. 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="terminology" title="Terminology">

<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" title="Overview of the use of the Rich Call Data PASSporT extension">

<t>The main intended use of the signing of Rich Call Data (RCD) using STIR within SIP <xref target="RFC8224"/> or more generally as a PASSporT extension <xref target="RFC8225"/> is for the entity that originates a call, either directly the caller themselves, if they are authoritative, or a service provider or third-party service that may be authoritative over the rich call data on behalf of the caller.</t>

<t>The RCD associated with the identity of the calling party described in this document is of two main categories. The first data is a more traditional set of info about a caller associated with “display-name” in SIP <xref target="RFC3261"/>, typically a textual description of the caller, or alternate presentation numbers often used in From Header field <xref target="RFC3261"/> or P-Asserted-ID <xref target="RFC3325"/>. 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 the string or object 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" title="Overview of Rich Call Data Integrity">

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

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

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

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

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

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

<t>The third and fourth mode cover cases where there is a different authoritative entity responsible for the content of the RCD, separate from the signer of the PASSporT itself, allowing the ability to have forward control at the time of the creation of the certificate of the allowed 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="I-D.ietf-stir-cert-delegation"/> although other cases may apply. As with the first and second modes, the third and fourth modes differ with the absence or inclusion of externally referenced content using URIs.</t>

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

<section anchor="syntax" title="PASSporT “rcd” Claim">

<t>This specification 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" title="“nam” key">

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

</section>
<section anchor="apn-key" title="“apn” key">

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

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

</section>
<section anchor="icn-key" title="“icn” key">

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

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

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

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

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

</section>
<section anchor="jcd-key" title="“jcd” key">

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

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

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

</section>
<section anchor="jcl-key" title="“jcl” key">

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

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

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

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

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

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

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

<t>The values of each key/value pair consists of a digest across either the direct values or indirectly referenced resources, combined with a string that defines the crypto algorithm used to generate the digest. RCD implementations MUST support the following hash algorithms, “SHA256”, “SHA384”, and “SHA512”. The SHA-256, SHA-384, and SHA-512 are part of the SHA-2 set of cryptographic hash functions defined by the National Institute of Standards and Technologies (NIST). Implementations MAY support additional algorithms, but MUST NOT support known weak algorithms such as MD5 or SHA-1. In the future, the list of algorithms may be re-evaluated based on security best practices. The algorithms are represented in the text by “sha256”, “sha384”, or “sha512”. The character following the algorithm string MUST be a minus character, “-“. 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" title="Creation of the “rcd” element digests">

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

<section anchor="nam-and-apn-elements" title="“nam” and “apn” elements">

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

</section>
<section anchor="icn-elements" title="“icn” elements">

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

</section>
<section anchor="jcd-elements" title="“jcd” elements">

<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 indexes 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 indexes are used to reference the URI strings.</t>

<figure><artwork><![CDATA[
"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>The use of a JSON pointer and integrity digest for the “jcd” claim key and value is optional. The “jcd” value is the directly included jCard array and can be protected by the signature and can be constrained directly with JWTClaimConstraints.  However, for data length reasons (as with “icn” above) or more importantly for potential privacy and/or security considerations with a publically accessible certificate this specification would recommend the use of the “rcdi” JSON pointer and integrity digest as the contraint value in JWTClaimConstraints over the jCare data.</t>

<t>It is important to remember the array indexes 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-elements" title="“jcl” elements">

<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 indexes added to the “jcl” (e.g., “/jcl/1/2/3”) are treated as if the externally referenced jCard was directly part of the overall “rcd” claim JSON object. The following example illustrates a “jcl” version of the above “jcd” example.</t>

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

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

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

<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 an element that is a part or whole of a JSON object string or to a string that is a URI referencing an external resource.</t>
  <t>For a JSON formatted string, serialize the element JSON to remove all white space and line breaks. The procedures of this deterministic JSON serialization are defined in <xref target="RFC8225"/>, Section 9.  The resulting string MUST be a Base64 encoded <xref target="RFC4648"/> digest string (for sha256 this should result in approximately 44 characters).</t>
  <t>For any URI referenced content, the content can either be a string as in jCard JSON objects or binary content. For example, image and audio files contain binary content. If the URI referenced content is JSON formatted, follow the procedures defined in list item 2 above. Either the binary data or string content of the file is used to create a resulting string which MUST be a Base64 encoded <xref target="RFC4648"/> digest string (for sha256 this should result in approximately 44 characters).</t>
</list></t>

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

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

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

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

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

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

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

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

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

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

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

<t>This specification defines a new JSON Web Token claim for “crn”, Call Reason, the value of which is a single string or object that can contains 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>

<t>As also noted in <xref target="I-D.ietf-sipcore-callinfo-rcd"/> this claim is included as corresponding to “call-reason” Call-Info parameter, but there is an alternative suggested way to include call-reason which is to use the “cif” claim with a “call-reason” key value, as defined below in this document.</t>

<section anchor="jwt-constraint-for-crn-claim" title="JWT Constraint for “crn” claim">

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

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

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

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

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

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

<section anchor="rcd-passport-verification" title="“rcd” PASSporT Verification">

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

<t><list style="symbols">
  <t>have a valid signature</t>
  <t>abide by all rules set forth in the proper construction of the claims</t>
  <t>abide by JWT Claims Constraint rules defined in <xref target="RFC8226"/> Section 8 or extended in <xref target="I-D.ietf-stir-enhance-rfc8226"/> if present in the certificate used to sign the PASSporT</t>
</list></t>

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

</section>
<section anchor="rcdi-integrity-verification" title="“rcdi” Integrity Verification">

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

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

</section>
<section anchor="example-rcd-passports" title="Example “rcd” PASSporTs">

<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” and “apn” only PASSporT claims object is shown next (with line breaks for readability only).</t>

<figure><artwork><![CDATA[
{  "orig":{"tn":"12025551000"},
   "dest":{"tn":["12155551001"]},
   "iat":1443208345,
   "rcd":{
     "apn":"12025559990",
     "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.</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-Gb0lOkj7Z9+plqbOkN32H+YX0Yav3fbioSk7DxQdGZU",
    "/jcl/1/3/3": "sha256-RojgWwU6xUtI4q82+kHPyHm1JKbm7+663bMvzymhkl4",
    "/jcl/1/4/3": "sha256-jL4f47fF82LuwcrOrSyckA4SWrlElfARHkW6kYo1JdI",
    "/jcl/1/5/3": "sha256-GKNxxqlLRarbyBNh7hc/4lbZAdK6B0kMRf1AMRWPkSo"
  }
}
]]></artwork></figure>

</section>
</section>
<section anchor="compact-form-of-rcd-passport" title="Compact form of “rcd” PASSporT">

<section anchor="compact-form-of-the-rcd-passport-claim" title="Compact form of the “rcd” PASSporT claim">

<t>Compact form of an “rcd” PASSporT claim has some restrictions that will be enumerated below, but mainly follows standard PASSporT compact form procedures. For re-construction of the “nam” claim the string for the display-name in the From header field. “jcl” and “jcd” MAY NOT be used with compact form due to integrity rules and URI reference rules in this specification leading to too restrictive of a set of constraints.  Future specifications may revisit this to propose a consisent and comprehensive way of addressing integrity and security of information.</t>

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

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

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

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

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

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

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

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

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

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

<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 SIP 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="I-D.ietf-stir-oob"/> 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: a SIP INVITE carries a display name in its From header field value and an initial PASSporT object without the “rcd” claim. When a terminating verification service implemented at a SIP proxy server receives this request, and determines that the signature is valid, it might query a third-party service that maps telephone numbers to calling party names. Upon receiving the PASSport in a response from that third-party service, the terminating side could add a new Identity header field to the request for the “rcd” PASSporT object provided by the third-party service. It would then forward the INVITE to the terminating user agent. If the display name in the “rcd” PASSporT object matches the display name in the INVITE, then the name would presumably be rendered to the end user by the terminating user agent.</t>

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

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

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

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

<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"></xref> 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 specification; the value of “iss” however MUST reflect the Subject of the certificate used to sign a third-party PASSporT. The explicit mechanism for reflecting the subject field of the certificate is out of scope of this document and left to the certificate governance policies that define how to map the “iss” value in the PASSporT to the subject field in the certificate. Relying parties in STIR have always been left to make their own authorization decisions about whether to trust the signers of PASSporTs, and in the third-party case, where an entity has explicitly queried a service to acquire the PASSporT object, it may be some external trust or business relationship that induces the relying party to trust a PASSporT.</t>

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

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

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

<t>As “rcd” can be provided by either first or third parties, relying parties could benefit from an additional claim that indicates the relationship of the attesting party to the caller. Even in first party cases, this admits of some complexity: 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 derive from any number of data sources, on a spectrum between public data scraped from web searches to a direct business relationship to the caller. As multiple PASSporTs can be associated with the same call, potentially a verification service could receive attestations of the caller name from multiple sources, which have different levels of granularity or accuracy. Therefore, third-party PASSporTs that carry “rcd” data MUST also carry an indication of the relationship of the generator of the PASSporT to the caller in the form of the “iss” claim. As stated in the previous section, the use of “iss” MUST reflect the subject field of the certificate used to sign a third-party PASSporT to represent that relationship.</t>

</section>
<section anchor="use" title="Using “rcd” in SIP">

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

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

<t>An authentication service creating a PASSporT containing an “rcd” claim MAY include a “ppt” for “rcd” or not. Third-party authentication services following the behavior in <xref target="thirdsign"/> MUST include a “ppt” of “rcd”. If “ppt” does contain an “rcd”, then any SIP authentication services MUST add a “ppt” parameter to the Identity header containing that PASSporT with a value of “rcd”. The resulting Identity header 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 specification assumes that by default, a SIP authentication service derives 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 derive from other fields in the request, from customer profile data, or from access to external services. If the authentication service generates an “rcd” claim containing “nam” with a value that is not equivalent to the From header field display-name value, it MUST use the full form of the PASSporT object in SIP.</t>

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

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

<t>However, if the PASSport is in full form with a “ppt” value of “rcd”, then the verification service MUST extract the value associated with the “rcd” “nam” key in the object. If the signature validates, then the verification service can use the value of the “rcd” “nam” key as the display name of calling party, which would in turn be rendered to alerted users or otherwise leveraged in accordance with local policy. This allows SIP networks that convey the display name through a field other than the From header field to interoperate with this specification. Similarly, the “jcd” or linked “jcl” jcard information and “crn” can be optionally, based on local policy for devices that support it, used to populate a Call-Info header field following the format of <xref target="I-D.ietf-sipcore-callinfo-rcd"/>.</t>

<t>The third-party “rcd” PASSporT cases presents some new challenges, 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. A third-party “rcd” PASSporT provides no assurance that the calling party number has not been spoofed: if it is carried in a SIP request, for example, then some other PASSporT in another Identity header field value would have to carry a PASSporT attesting that. 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.</t>

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

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

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

<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 cooresponding to multiple PASSporT extensions, the authentication service can alternatively directly add the “rcd” claim to a PASSporT that authenticates the calling identity.</t>

<t>It is critically important for the user of this specification to recognize that the certificates used must include the necessary JWT Claims Constraints and permitted values for proper integrity and security of the values in the “rcd” claim incorporated into PASSporTs that are not “rcd”. The verifier of “rcd” claims MUST recognize if the signing certificate contains no claim constraints for direct values or referenced content that they should have some sort of “trust” relationship with the signer of the PASSPorT that can vouch for or have an understanding of how the rich call data was properly vetted. An example scenario that demonstrates this might be when an “rcd” PASSporT with information that was properly vetted, integrity protected and constrained and is transferred by a middle party to another PASSporT and signed by that party without that integrity protection and constraints provided in the certificate. These scenarios lose the end-to-end trust and integrity required by this specification. However, it is recognized that some UNI or provider to device scenarios where there is an authenticated “trust” relationship MAY warrant the technique described in this section.</t>

<section anchor="procedures-for-applying-rcd-as-claims-only" title="Procedures for applying “rcd” as claims only">

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

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

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

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

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

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

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

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

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

<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" title="IANA Considerations">

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

<t>This specification 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="passport-types" title="PASSporT Types">

<t>This specification requests that the IANA add a new entry to the PASSporT Types registry for the type “rcd” which is specified in [RFCThis].</t>

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

<t>This document requests that the IANA create a new registry for PASSporT RCD types. Registration of new PASSporT RCD types shall be under the Specification Required policy.</t>

<t>This registry is to be initially populated with four values, “nam”, “apn”, “jcd”, and “jcl”, which are specified in [RFCThis].</t>

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

<t>Whether its identities, alternate identities, images, logos, physical addresses, all of the information contained in a RCD PASSporT must follow some form of vetting in which the authoritative entity or user of the information being signed MUST follow an applicable policy of the eco-system using RCD. This can be of many forms, depending on the setup and constraints of the eco-system so 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 over in a using protocol like SIP is all information that SIP carries in the clear anyway. Transport-level security can hide those SIP fields from eavesdroppers, and the same confidentiality mechanisms would protect any PASSporT(s) carried in SIP.</t>

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

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

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

<t>While this can apply to any PASSporT that is signed with a STIR Delegate Certificates <xref target="I-D.ietf-stir-cert-delegation"/>, 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="I-D.ietf-stir-enhance-rfc8226"/> for preventing the ability to include claims beyond the claims defined in this document may need to be considered.</t>

<t>Certificate issuers SHOULD NOT include an entry in mustExclude for the “rcdi” claim for a certificate that will be used with the PASSporT Extension for Rich Call Data defined in this document. Excluding this claim would prevent the integrity protection mechanism from working properly.</t>

</section>
</section>


  </middle>

  <back>

    <references title='Normative References'>




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

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


<reference anchor="I-D.ietf-stir-enhance-rfc8226">
   <front>
      <title>Enhanced JSON Web Token (JWT) Claim Constraints for Secure Telephone Identity Revisited (STIR) Certificates</title>
      <author fullname="Russ Housley">
	 <organization>Vigil Security</organization>
      </author>
      <date month="July" day="26" 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="Internet-Draft" value="draft-ietf-stir-enhance-rfc8226-05" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-stir-enhance-rfc8226-05.txt" />
</reference>


<reference anchor="I-D.ietf-stir-cert-delegation">
   <front>
      <title>Secure Telephone Identity Revisited (STIR) Certificate Delegation</title>
      <author fullname="Jon Peterson">
	 <organization>Neustar, Inc.</organization>
      </author>
      <date month="February" day="22" 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="Internet-Draft" value="draft-ietf-stir-cert-delegation-04" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-stir-cert-delegation-04.txt" />
</reference>



<reference  anchor="RFC3261" target='https://www.rfc-editor.org/info/rfc3261'>
<front>
<title>SIP: Session Initiation Protocol</title>
<author initials='J.' surname='Rosenberg' fullname='J. Rosenberg'><organization /></author>
<author initials='H.' surname='Schulzrinne' fullname='H. Schulzrinne'><organization /></author>
<author initials='G.' surname='Camarillo' fullname='G. Camarillo'><organization /></author>
<author initials='A.' surname='Johnston' fullname='A. Johnston'><organization /></author>
<author initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='R.' surname='Sparks' fullname='R. Sparks'><organization /></author>
<author initials='M.' surname='Handley' fullname='M. Handley'><organization /></author>
<author initials='E.' surname='Schooler' fullname='E. Schooler'><organization /></author>
<date year='2002' month='June' />
<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="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 initials='C.' surname='Jennings' fullname='C. Jennings'><organization /></author>
<author initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='M.' surname='Watson' fullname='M. Watson'><organization /></author>
<date year='2002' month='November' />
</front>
<seriesInfo name='RFC' value='3325'/>
<seriesInfo name='DOI' value='10.17487/RFC3325'/>
</reference>



<reference  anchor="RFC4627" target='https://www.rfc-editor.org/info/rfc4627'>
<front>
<title>The application/json Media Type for JavaScript Object Notation (JSON)</title>
<author initials='D.' surname='Crockford' fullname='D. Crockford'><organization /></author>
<date year='2006' month='July' />
<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.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='4627'/>
<seriesInfo name='DOI' value='10.17487/RFC4627'/>
</reference>



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



<reference  anchor="RFC6901" target='https://www.rfc-editor.org/info/rfc6901'>
<front>
<title>JavaScript Object Notation (JSON) Pointer</title>
<author initials='P.' surname='Bryan' fullname='P. Bryan' role='editor'><organization /></author>
<author initials='K.' surname='Zyp' fullname='K. Zyp'><organization /></author>
<author initials='M.' surname='Nottingham' fullname='M. Nottingham' role='editor'><organization /></author>
<date year='2013' month='April' />
<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 initials='P.' surname='Kewisch' fullname='P. Kewisch'><organization /></author>
<date year='2014' month='January' />
<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="RFC7340" target='https://www.rfc-editor.org/info/rfc7340'>
<front>
<title>Secure Telephone Identity Problem Statement and Requirements</title>
<author initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='H.' surname='Schulzrinne' fullname='H. Schulzrinne'><organization /></author>
<author initials='H.' surname='Tschofenig' fullname='H. Tschofenig'><organization /></author>
<date year='2014' month='September' />
<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="RFC7519" target='https://www.rfc-editor.org/info/rfc7519'>
<front>
<title>JSON Web Token (JWT)</title>
<author initials='M.' surname='Jones' fullname='M. Jones'><organization /></author>
<author initials='J.' surname='Bradley' fullname='J. Bradley'><organization /></author>
<author initials='N.' surname='Sakimura' fullname='N. Sakimura'><organization /></author>
<date year='2015' month='May' />
<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 initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='C.' surname='Jennings' fullname='C. Jennings'><organization /></author>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<author initials='C.' surname='Wendt' fullname='C. Wendt'><organization /></author>
<date year='2018' month='February' />
<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 initials='C.' surname='Wendt' fullname='C. Wendt'><organization /></author>
<author initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<date year='2018' month='February' />
<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 initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='S.' surname='Turner' fullname='S. Turner'><organization /></author>
<date year='2018' month='February' />
<abstract><t>In order to prevent the impersonation of telephone numbers on the Internet, some kind of credential system needs to exist that cryptographically asserts authority over telephone numbers.  This document describes the use of certificates in establishing authority over telephone numbers, as a component of a broader architecture for managing telephone numbers as identities in protocols like SIP.</t></abstract>
</front>
<seriesInfo name='RFC' value='8226'/>
<seriesInfo name='DOI' value='10.17487/RFC8226'/>
</reference>



<reference  anchor="RFC8588" target='https://www.rfc-editor.org/info/rfc8588'>
<front>
<title>Personal Assertion Token (PaSSporT) Extension for Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
<author initials='C.' surname='Wendt' fullname='C. Wendt'><organization /></author>
<author initials='M.' surname='Barnes' fullname='M. Barnes'><organization /></author>
<date year='2019' month='May' />
<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="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 initials='R.' surname='Housley' fullname='R. Housley'><organization /></author>
<date year='2021' month='August' />
<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 initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<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 initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<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="I-D.ietf-stir-oob">
   <front>
      <title>Secure Telephone Identity Revisited (STIR) Out-of-Band Architecture and Use Cases</title>
      <author fullname="Eric Rescorla">
	 <organization>Mozilla</organization>
      </author>
      <author fullname="Jon Peterson">
	 <organization>Neustar, Inc.</organization>
      </author>
      <date month="March" day="9" year="2020" />
      <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="Internet-Draft" value="draft-ietf-stir-oob-07" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-stir-oob-07.txt" />
</reference>


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


    </references>



  </back>

<!-- ##markdown-source:
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
8gAA

-->

</rfc>

