<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" 
 category="std" consensus="true" 
docName="draft-ietf-stir-8588bis-00" ipr="trust200902" obsoletes="8588" updates="" xml:lang="en" symRefs="true" sortRefs="false" tocInclude="true" version="3">

  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <!-- Generated by id2xml 1.5.2 on 2025-07-07T17:43:55Z -->
	
<front>
    <title abbrev="SHAKEN">Personal Assertion Token (PaSSporT) Extension for Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
    
    <author initials="C." surname="Wendt" fullname="Chris Wendt">
      <organization>Somos Inc.</organization>
      <address>
        <email>chris@appliedbits.com</email>
      </address>
    </author>
    <author initials="M." surname="Barnes" fullname="Mary Barnes">
      <organization>TransUnion</organization>
      <address>
        <email>mary.ietf.barnes@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="March" day="2"/>
    <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 "Signature-based Handling of Asserted information using toKENs (SHAKEN)" 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. This document obsoletes RFC8588.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="sect-1" numbered="true" toc="default">
      <name>Introduction</name>
      <t>
   The Signature-based Handling of Asserted information using toKENs
   (SHAKEN) <xref target="ATIS-1000074" format="default"/> specification defines a framework for using
   Secure Telephone Identity Revisited (STIR) protocols including the
   Personal Assertion Token (PASSporT) <xref target="RFC8225" format="default"/>, SIP Authenticated
   Identity Management <xref target="RFC8224" format="default"/>, and the STIR certificate framework
   <xref target="RFC8226" format="default"/> for implementing the cryptographic validation of an
   authorized originator of telephone calls using SIP.  Because the
   current telephone network contains traffic originated from both VoIP
   and TDM/SS7 (Time Division Multiplexing / Signaling System 7), there
   are many scenarios that need to be accounted for where PASSporT
   signatures may represent either direct or indirect call origination
   scenarios.  The SHAKEN <xref target="ATIS-1000074" format="default"/> specification defines levels of
   attestation of the origination of the call as well as an origination
   identifier that can help create a unique association between the
   origin of a particular call to the point in the VoIP or TDM telephone
   network the call came from to identify, for example, either a
   customer or class of service that call represents.  This document
   specifies these values as claims to extend the base set of PASSporT
   claims.</t>
    </section>
    <section anchor="sect-2" numbered="true" toc="default">
      <name>Terminology</name>
      <t>
   The key words "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" format="default"/> <xref target="RFC8174" format="default"/> when, and only when, they appear in all
   capitals, as shown here.</t>
      <t>
   In addition, the following terms are used in this document:</t>
      <ul spacing="normal">
        <li>
          <t>Verified association: Typically defined as an authenticated
      relationship between a customer and a device that initiated a call
      on behalf of that customer, for example, a subscriber account with
      a specific SIM card or set of SIP credentials.</t>
        </li>
        <li>
          <t>PASSporT: Defined in <xref target="RFC8225" format="default"/> is a JSON Web Token <xref target="RFC7519" format="default"/>
      defined specifically for securing the identity of an initiator of
      personal communication.  This document defines a specific
      extension to PASSporT.</t>
        </li>
      </ul>
    </section>
    <section anchor="sect-3" numbered="true" toc="default">
      <name>Overview of "shaken" PASSporT Extension</name>
      <t>
   The SHAKEN framework is designed to use PASSporT <xref target="RFC8225" format="default"/> as a
   method of asserting the caller's telephone identity.  In addition to
   the PASSporT base claims, there are two additional claims that have
   been defined for the needs of a service provider to signal
   information beyond just the telephone identity.  First, in order to
   help bridge the transition of the state of the current telephone
   network (which has calls with no authentication and non-SIP <xref target="RFC3261" format="default"/>
   signaling not compatible with the use of PASSporT and Secure
   Telephone Identity (STI) in general), there is an attestation claim.
   This provides three levels of attestation: a full attestation when
   the service provider can fully attest to the calling identity, a
   partial attestation when the service provider originated a telephone
   call but cannot fully attest to the calling identity, and a gateway
   attestation, which is the lowest level of attestation and represents
   the service provider receiving a call from a telephone gateway that
   does not support PASSporT or STI.</t>
      <t>
   The second claim is a unique origination identifier that should be
   used by the service provider to identify different sources of
   telephone calls to support a traceback mechanism that can be used for
   enforcement and identification of a source of illegitimate calls.</t>
      <t>
   The use of the compact form of PASSporT is not specified in this
   document and is not specified for use in SHAKEN <xref target="ATIS-1000074" format="default"/>.</t>
      <t>
   The next two sections define these new claims.</t>
    </section>
    <section anchor="sect-4" numbered="true" toc="default">
      <name>PASSporT "attest" Claim</name>
      <t>
   This indicator allows for both identifying the service provider that
   is vouching for the call as well as clearly indicating what
   information the service provider is attesting to.  The "attest" claim
   can be one of the following three values: 'A', 'B', or 'C'.  These
   values correspond to 'Full Attestation', 'Partial Attestation', and
   'Gateway Attestation', respectively.  See <xref target="ATIS-1000074" format="default"/> for the
   definitions of these three levels of attestation.</t>
    </section>
    <section anchor="sect-5" numbered="true" toc="default">
      <name>PASSporT "origid" Claim</name>
      <t>
   The purpose of the "origid" claim is described in <xref target="ATIS-1000074" format="default"/>.
   The value of "origid" claim is a Universally Unique Identifier (UUID)
   as defined in <xref target="RFC9562" format="default"/>.  Please refer to <xref target="sect-10" format="default"/> for a discussion
   of the privacy considerations around the use of this value.</t>
    </section>
    <section anchor="sect-6" numbered="true" toc="default">
      <name>Example "shaken" PASSporT</name>
      <artwork name="" type="" align="left" alt=""><![CDATA[
Protected Header
{
   "alg":"ES256",
   "typ":"passport",
   "ppt":"shaken",
   "x5u":"https://cert.example.org/passport.cer"
}
Payload
{
   "attest":"A"
   "dest":{"tn":["12155550131"]}
   "iat":1443208345,
   "orig":{"tn":"12155550121"},
   "origid":"123e4567-e89b-12d3-a456-426655440000"
}
]]></artwork>
    </section>
    <section anchor="sect-7" numbered="true" toc="default">
      <name>Using "shaken" in SIP</name>
      <t>
   The use of the "shaken" PASSporT type and the "attest" and "origid"
   claims for SIP is formally defined in <xref target="ATIS-1000074" format="default"/> using the SIP
   <xref target="RFC3261" format="default"/> Identity header field defined in <xref target="RFC8224" format="default"/>.</t>
    </section>
    <section anchor="sect-8" numbered="true" toc="default">
      <name>Order of Claim Keys</name>
      <t>
   The order of the claim keys MUST follow the rules of Section 9 of
   <xref target="RFC8225" format="default"/>; the claim keys MUST appear in lexicographic order.
   Therefore, the claim keys discussed in this document appear in the
   PASSporT Payload in the following order:</t>
      <ul spacing="normal">
        <li>
          <t>attest</t>
        </li>
        <li>
          <t>dest</t>
        </li>
        <li>
          <t>iat</t>
        </li>
        <li>
          <t>orig</t>
        </li>
        <li>
          <t>origid</t>
        </li>
      </ul>
    </section>

    <section anchor="sect-9" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
   This document defines a new PASSporT <xref target="RFC8225" format="default"/> extension.  The
   considerations related to the security of the PASSporT object itself
   are the same as those described in <xref target="RFC8225" format="default"/>.</t>
      <t>
   <xref target="RFC8224" format="default"/> defines how to compare the values of the "dest", "orig",
   and "iat" claims against fields in a SIP message containing a
   PASSporT as part of validating that request.  The values of the new
   "attest" and "origid" claims added by this extension are not used in
   such a validation step.  They are not compared to fields in the SIP
   message.  Instead, they simply carry additional information from the
   signer to the consumer of the PASSporT.  This new information shares
   the same integrity protection and non-repudiation properties as the
   base claims in the PASSporT.</t>
    </section>



  <section anchor="sect-10" numbered="true" toc="default">
     <name>Privacy Considerations</name>
      <t>
   As detailed in Section 26 of <xref target="RFC3261" format="default"/>, SIP messages inherently carry
   identifying information of the caller and callee.  The addition of
   STIR cryptographically attests that the signing party vouches for the
   information given about the callee, as is discussed in the Privacy
   Considerations of <xref target="RFC8224" format="default"/>.</t>
      <t>
   SHAKEN <xref target="ATIS-1000074" format="default"/> furthermore adds an "origid" value to the STIR
   PASSporT, which is an opaque unique identifier representing an
   element on the path of a given SIP request.  This identifier is
   generated by an originating telephone service provider to identify
   where within their network (e.g. a gateway or particular service
   element) a call was initiated; "origid" can facilitate forensic
   analysis of call origins when identifying and stopping bad actors
   trying to spoof identities or make fraudulent calls.</t>
      <t>
   The opacity of the "origid" claim value is intended to minimize
   exposure of information about the origination of calls labeled with
   an "origid" value.  It is therefore RECOMMENDED that implementations
   generate a unique "origid" value per call in such a way that only the
   generator of the "origid" can determine when two "origid" values
   represent the same or different elements.  If deployed systems
   instead use a common or related "origid" for service elements in
   their network, the potential for discovering patterns through
   correlation of those calls exists.  This could allow a recipient of
   calls to, for instance, learn that a set of callers are using a
   particular service or coming through a common gateway.  It is
   expected that SHAKEN PASSporTs are shared only within an <xref target="RFC3324" format="default"/>
   trust domain and will be stripped before calls exit that trust
   domain, but this information still could be used by analytics on
   intermediary and terminating systems to reveal information that could
   include geographic location and even device-level information,
   depending on how the "origid" is generated.</t>
    </section>
    <section anchor="sect-11" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <section anchor="sect-11.1" numbered="true" toc="default">
        <name>JSON Web Token claims</name>
        <t>
   IANA has updated the two claims to the "JSON Web Token Claims" registry
   as defined in <xref target="RFC7519" format="default"/> to reference this RFC XXXX.</t>
        <artwork name="" type="" align="left" alt=""><![CDATA[
Claim Name: attest
Claim Description: Attestation level as defined in SHAKEN framework
Change Controller: IESG
Specification Document(s): RFC XXXX
]]></artwork>
        <dl newline="true" spacing="normal" indent="3">
          <dt>Claim Name: origid</dt>
          <dd>
	Claim Description: Originating Identifier as defined in SHAKEN
      framework
	</dd>
          <dt>Change Controller: IESG</dt>
          <dd>
	Specification Document(s): RFC XXXX
	</dd>
        </dl>
      </section>
      <section anchor="sect-11.2" numbered="true" toc="default">
        <name>PASSporT Types</name>
        <t>
   IANA has added a new entry in the "Personal Assertion Token (PASSporT) Extensions" registry for the type "shaken", which is
   specified in this document.</t>
      </section>

    </section>
<section numbered="true" anchor="changes" toc="default">
      <name>Changes from RFC8588</name>
      <t>
   This RFC replaces <xref target="RFC8588" format="default"/>.  The update addressees an error in the example for the "iat", which should not have any quotes.  The <xref target="ATIS-1000074" format="default"/> reference is also updated to reference the version that was in effect at the time this document was published, as the ATIS standards process only retains the most version of a published specifications. </t>
    </section>

  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="ATIS-1000074" target="https://www.sipforum.org/download/sip-forum-twg-10-signature-based-handling-of-asserted-information-using-tokens-shaken-pdf/">
          <front>
            <title>Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
            <author>
              <organization>ATIS/SIP Forum IP-NNI Task Group</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib[.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <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="RFC7519" target="https://www.rfc-editor.org/info/rfc7519" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7519.xml">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <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="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <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>
        <reference anchor="RFC8224" target="https://www.rfc-editor.org/info/rfc8224" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8224.xml">
          <front>
            <title>Authenticated Identity Management in the Session Initiation Protocol (SIP)</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="C. Jennings" initials="C." surname="Jennings"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8225.xml">
          <front>
            <title>PASSporT: Personal Assertion Token</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8226.xml">
          <front>
            <title>Secure Telephone Identity Credentials: Certificates</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <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="8588"/>
          <seriesInfo name="DOI" value="10.17487/RFC8588"/>
        </reference>
        <reference anchor="RFC8588" target="https://www.rfc-editor.org/info/rfc8588" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8588.xml">
          <front>
            <title>Secure Telephone Identity Credentials: Certificates</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="M. Barnes" initials="M." surname="Barnes"/>
            <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 "Signature-based Handling of Asserted information using toKENs (SHAKEN)" 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 dentify the origin of the call within its network.</t>
            </abstract>
          </front>
          
        </reference>

<reference anchor="RFC9562" target="https://www.rfc-editor.org/info/rfc9562" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9562.xml">
          <front>
            <title>A Universally Unique IDentifier (UUID) URN Namespace</title>
            <author fullname="K. Davis" initials="K." surname="Davis"/>
            <author fullname="B. Peabody" initials="B." surname="Peabody"/>     
            <author fullname="P. Leach" initials="P." surname="Leach"/>
            <date month="May" year="2024"/>
            <abstract>
              <t>This specification defines UUIDs (Universally Unique IDentifiers) -- also known as GUIDs (Globally Unique IDentifiers) -- and a Uniform Resource Name namespace for UUIDs. A UUID is 128 bits long and is intended to guarantee uniqueness across space and time. UUIDs were originally used in the Apollo Network Computing System (NCS), later in the Open Software Foundation's (OSF's) Distributed Computing Environment (DCE), and then in Microsoft Windows platforms.</t>

<t>This specification is derived from the OSF DCE specification with the kind permission of the OSF (now known as "The Open Group"). Information from earlier versions of the OSF DCE specification have been incorporated into this document. This document obsoletes RFC 9562. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9562"/>
          <seriesInfo name="DOI" value="10.17487/RFC9562"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC3261" target="https://www.rfc-editor.org/info/rfc3261" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3261.xml">
          <front>
            <title>SIP: Session Initiation Protocol</title>
            <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
            <author fullname="A. Johnston" initials="A." surname="Johnston"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="R. Sparks" initials="R." surname="Sparks"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="E. Schooler" initials="E." surname="Schooler"/>
            <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="RFC3324" target="https://www.rfc-editor.org/info/rfc3324" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3324.xml">
          <front>
            <title>Short Term Requirements for Network Asserted Identity</title>
            <author fullname="M. Watson" initials="M." surname="Watson"/>
            <date month="November" year="2002"/>
          </front>
          <seriesInfo name="RFC" value="3324"/>
          <seriesInfo name="DOI" value="10.17487/RFC3324"/>
        </reference>
      </references>
    </references>
    <section numbered="false" anchor="acknowledgements" toc="default">
      <name>Acknowledgements</name>
      <t>
   The authors would like to thank those that helped review and
   contribute to this document including specific contributions from Jon
   Peterson, Russ Housley, Robert Sparks, and Andrew Jurczak.  The
   authors would like to acknowledge the work of the ATIS/SIP Forum
   IP-NNI Task Force to develop the concepts behind this document.</t>
    </section>

  </back>
</rfc>
