<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" docName="draft-ietf-stir-servprovider-oob-08" number="9888" consensus="true" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" prepTime="2026-06-19T04:35:56" indexInclude="true" scripts="Common,Latin">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-stir-servprovider-oob-08" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9888" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="Service Provider OOB">Out-of-Band Secure Telephone Identity Revisited (STIR) for Service Providers</title>
    <seriesInfo name="RFC" value="9888" stream="IETF"/>
    <author initials="J." surname="Peterson" fullname="Jon Peterson">
      <organization abbrev="TransUnion" showOnFrontPage="true">TransUnion</organization>
      <address>
        <email>jon.peterson@transunion.com</email>
      </address>
    </author>
    <date month="06" year="2026"/>
    <area>ART</area>
    <workgroup>stir</workgroup>
    <keyword>SIP</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
The Secure Telephone Identity Revisited (STIR) framework defines means of carrying its Personal Assertion Tokens (PASSporTs) either in-band, within the headers of a Session Initiation Protocol (SIP) request, or out-of-band, through a service that stores PASSporTs for retrieval by relying parties. This specification defines a way that the out-of-band conveyance of PASSporTs can be used to support large service providers for cases in which in-band STIR conveyance is not universally available.
      </t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9888" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2026 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-terminology">Terminology</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-service-provider-deployment">Service Provider Deployment Architecture for Out-of-Band STIR</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-a-cps">Advertising a CPS</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-submitting-a-passport">Submitting a PASSporT</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-passport-retrieval">PASSporT Retrieval</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-gateways">Gateways</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-privacy-considerations">Privacy Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.11.2">
              <li pn="section-toc.1-1.11.2.1">
                <t indent="0" pn="section-toc.1-1.11.2.1.1"><xref derivedContent="11.1" format="counter" sectionFormat="of" target="section-11.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.2">
                <t indent="0" pn="section-toc.1-1.11.2.2.1"><xref derivedContent="11.2" format="counter" sectionFormat="of" target="section-11.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-address">Author's Address</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="intro" numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">
   The Secure Telephone Identity Revisited (STIR) <xref target="RFC8224" format="default" sectionFormat="of" derivedContent="RFC8224"/> framework provides a cryptographic assurance of the identity of calling parties in order to prevent impersonation,
   which is a key enabler of unwanted robocalls, swatting, vishing, voicemail hacking, and similar attacks (see <xref target="RFC7340" format="default" sectionFormat="of" derivedContent="RFC7340"/>). The STIR out-of-band <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/> framework enables the delivery of PASSporT <xref target="RFC8225" format="default" sectionFormat="of" derivedContent="RFC8225"/> objects through a Call Placement Service (CPS), rather than carrying them within a signaling protocol such as SIP. Out-of-band conveyance is valuable when end-to-end SIP delivery of calls is partly or entirely unavailable due to network border policies, calls routinely transiting a gateway to the Public Switched Telephone Network (PSTN), or similar circumstances.
      </t>
      <t indent="0" pn="section-1-2">
   While out-of-band STIR can be implemented as an open Internet service, it requires complex security and privacy measures to enable the CPS function without allowing the CPS to collect data about the parties placing calls. This specification describes CPS implementations that act specifically on behalf of service providers who will be processing the calls that STIR secures and, thus, who will necessarily know the parties communicating, so an alternative security architecture becomes possible. These functions may be crucial to the adoption of STIR in some environments, like legacy non-IP telephone networks, where in-band transmission of PASSporTs may not be feasible.
      </t>
      <t indent="0" pn="section-1-3">
   Environments that might support this flavor of STIR out-of-band include carriers, large enterprises, call centers, or any Internet service that aggregates on behalf of a large number of telephone endpoints. That last case may include PSTN gateway or  interexchange or international transit providers.
      </t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-terminology">Terminology</name>
      <t indent="0" pn="section-2-1">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
      </t>
    </section>
    <section anchor="arch" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-service-provider-deployment">Service Provider Deployment Architecture for Out-of-Band STIR</name>
      <t indent="0" pn="section-3-1">
	The architecture in this specification assumes that every participating service provider is associated with one or more designated CPS instances. A service provider's CPS serves as a place where callers or, in some cases, gateways can deposit a PASSporT when attempting to place a call to a subscriber of the destination service provider; if the caller's domain supports in-band STIR, this can be done at the same time as an in-band STIR call is placed. The terminating service provider could operate the CPS themselves, or a third party could operate the CPS on the destination's behalf. This model does not assume a monolithic CPS that acts on behalf of all service providers,  nor does it prohibit multiple service providers from sharing a CPS provider. Moreover, a particular CPS can be a logically distributed entity compromised of several geographically distant entities that flood PASSporTs among themselves to support an anycast-like service.
      </t>
      <t indent="0" pn="section-3-2">
	The process of locating a destination CPS and submitting a PASSporT naturally requires Internet connectivity to the CPS. If the CPS is deployed in the terminating service provider network, any such network connectivity could instead be leveraged by a caller to initiate a SIP session, during which in-band STIR could be used normally. Therefore, the applicability of this architecture is to those cases where, for whatever reason, SIP requests cannot reliably convey PASSporTs end-to-end, but an HTTP transaction can reliably be sent to the CPS from an out-of-band authentication service (OOB-AS). It is hoped that as IP connectivity between telephone providers increases, there will be less need for an out-of-band mechanism, but it can serve as a fallback mechanism in cases where service providers cannot predict whether end-to-end delivery of SIP calls will occur.
      </t>
    </section>
    <section anchor="adv" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-advertising-a-cps">Advertising a CPS</name>
      <t indent="0" pn="section-4-1">
	If more than one CPS exists for a given deployment, there will need to be some means of discovering CPSs, either administratively or programmatically. Many service providers have bilateral agreements to peer with one another; in those environments, identifying their respective CPSs could be a simple matter of provisioning. A consortium of service providers could agree to choose from a list of available CPS providers, say. But in more pluralist environments, some mechanism is needed to discover the CPS associated with the target of a call. 
      </t>
      <t indent="0" pn="section-4-2">
    In order to allow the CPS chosen by a service provider to be discovered securely, this specification defines a CPS advertisement. Effectively, a CPS advertisement is a document
	 that contains the URL of a CPS as well as any information needed to determine which PASSporTs should be submitted to that CPS (e.g., Service Provider Codes (SPCs) or telephone number ranges). An advertisement may be signed with a STIR <xref target="RFC8226" format="default" sectionFormat="of" derivedContent="RFC8226"/> credential or another credential that is trusted by the participants in a given STIR environment. The advantage to signing with STIR certificates is that they contain a "TNAuthList" value indicating the telephone network resources that a service provider controls. This information can be matched with a TNAuthList value in the CPS advertisement to determine whether the signer has the authority to advertise a particular CPS as the proper destination for PASSporTs.
      </t>
      <t indent="0" pn="section-4-3">
      The format of a service provider CPS advertisement consists of a simple JSON object containing one or more pairs of TNAuthList values pointing to the URIs of CPSs, for example:</t>
      <t indent="0" pn="section-4-4">{ "0-1234":"https://cps.example.com" }</t>
      <t indent="0" pn="section-4-5">The format of this is a hyphen-separated concatenation of each <xref target="RFC8226" format="default" sectionFormat="of" derivedContent="RFC8226"/> TNAuthList TNEntry value ("0" for SPC, "1" for telephone number range, "2" for individual telephone number) with the corresponding TNAuthList value. Note for case "1", telephone number ranges are expressed by a starting telephone number followed by a count, and the count itself; they are hyphen-separated from the TN (e.g., "1-15714341000-99"). An advertisement can contain multiple such ranges by adding more pairs. CPS URIs <bcp14>MUST</bcp14> be HTTPS URIs (<xref target="RFC9110" sectionFormat="of" section="4.2.2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9110#section-4.2.2" derivedContent="RFC9110"/>). These CPS URIs <bcp14>SHOULD</bcp14> be 
	publicly reachable as service providers cannot usually anticipate all of the potential callers that might want to connect with them; however, in more constrained environments, they <bcp14>MAY</bcp14> be only reachable over a closed network.
      </t>
      <t indent="0" pn="section-4-6">
	Advertising an SPC may be inappropriate in environments where an originating domain has no ready means to determine whether a given called telephone number falls within the scope of an SPC (such as a national routing database that maps telephone numbers to SPCs). In such environments, TN-based advertisements could enable discovery instead. Also, note that PASSporTs can be used to sign communication where the "orig" and/or "dest" are not telephone numbers as such, but instead URI-based identifiers; typically, these PASSporTs would not be validated with a certificate as described in <xref target="RFC8226" format="default" sectionFormat="of" derivedContent="RFC8226"/> and any future specification would be required to identify URI-based prefixes for CPS advertisements.
      </t>
      <t indent="0" pn="section-4-7">
	CPS advertisements could be made available through existing or new databases, potentially aggregated across multiple service providers and distributed to call originators as necessary. They could be discovered during the call routing process, including through a DNS lookup. They could be shared through a distributed database among the participants in a multilateral peering arrangement.
      </t>
      <t indent="0" pn="section-4-8">
	An alternative to CPS advertisements that may be usable in some environments is adding a field to STIR certificates as described in <xref target="RFC8226" format="default" sectionFormat="of" derivedContent="RFC8226"/> identifying the CPS URI issued to individual service providers. As these certificates are themselves
	signed by a Certification Authority (CA) and contain their own TNAuthList, the URI would be bound securely to the proper telephone network identifiers. As STIR assumes a community of relying parties who trust these credentials, this method perhaps best mirrors the trust model required to allow a CPS to authorize PASSporT submission and retrieval.
      </t>
    </section>
    <section anchor="store" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-submitting-a-passport">Submitting a PASSporT</name>
      <t indent="0" pn="section-5-1">
    Submitting a PASSporT to a CPS as specified in the STIR <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816">out-of-band framework</xref> requires security measures that are intended to prevent the CPS from learning the identity of the caller (or callee) to the degree possible. However, in this service provider case, the CPS is operated by the service provider of the callee (or an entity operating on their behalf) and, as such, the information that appears in the PASSporT is redundant with call signaling that the terminating party will receive anyway (see <xref target="Security" format="default" sectionFormat="of" derivedContent="Section 10"/> for potential data minimization concerns). Therefore, the service provider out-of-band framework does not attempt to conceal the identity of the originating or terminating party from the CPS.
      </t>
      <t indent="0" pn="section-5-2">
    An OOB-AS forms a secure connection with the target CPS. This may happen at the time a call is being placed or it may be a persistent connection if there is a significant volume of traffic sent over this interface. The OOB-AS <bcp14>SHOULD</bcp14> authenticate itself to the CPS via mutual TLS (see <xref target="RFC9325" format="default" sectionFormat="of" derivedContent="RFC9325"/>) using its STIR credential <xref target="RFC8226" format="default" sectionFormat="of" derivedContent="RFC8226"/>, the same one it would use to sign calls; this helps mitigate the risk of flooding that more-open OOB implementations may face. Furthermore, the use of mutual TLS prevents attackers from replaying captured PASSporTs to the CPS. A CPS makes its own policy decision as to whether it will accept calls from a particular OOB-AS, and at what volumes.
      </t>
      <t indent="0" pn="section-5-3">
	A CPS can use this mechanism to authorize service providers who already hold STIR credentials to submit PASSporTs to a CPS, but alternative mechanisms would be required for any entities that do not hold a STIR credential, including gateway or transit providers who want to submit PASSporTs. See <xref target="gatewaying" format="default" sectionFormat="of" derivedContent="Section 7"/> for more on their behavior.
      </t>
      <t indent="0" pn="section-5-4">
	Service provider out-of-band PASSporTs do not need to be encrypted for storage at the CPS, although the use of TLS to prevent eavesdropping on the connection between the CPS and OOB-ASs is <bcp14>REQUIRED</bcp14>. PASSporTs will typically be submitted to the CPS at the time they are created by an AS; if the PASSporT is also being used for in-band transit within a SIP request, the PASSporT can be submitted to the CPS before or after the SIP request is sent, at the discretion of the originating domain. An OOB-AS <bcp14>MUST</bcp14> implement a Representational State Transfer (REST) interface to submit PASSporTs to the CPS as described in <xref target="RFC8816" sectionFormat="of" section="9" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8816#section-9" derivedContent="RFC8816"/>. PASSporTs persist at the CPS for as long as is required for them to be retrieved (see <xref target="retrieval" format="default" sectionFormat="of" derivedContent="Section 6"/>) but, in any event, for no longer than the freshness interval of the PASSporT itself (a maximum of sixty seconds).
      </t>
    </section>
    <section anchor="retrieval" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-passport-retrieval">PASSporT Retrieval</name>
      <t indent="0" pn="section-6-1">
	The STIR out-of-band framework <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/> proposes two means by which called parties can acquire PASSporTs out-of-band: through a retrieval interface or a subscription interface. In the service provider context, where many calls to or from the same number may pass through a CPS simultaneously, an out-of-band-capable verification service (OOB-VS) may therefore operate in one of two modes: it can either pull PASSporTs from the CPS after calls arrive or receive push notifications from the CPS for incoming calls. 
      </t>
      <t indent="0" pn="section-6-2">
	CPS implementations <bcp14>MUST</bcp14> support pulling of the PASSporTs via the REST flow described in <xref target="RFC8816" sectionFormat="of" section="9" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8816#section-9" derivedContent="RFC8816"/>. In the pull model, a terminating service provider polls the CPS via its OOB-VS after having received a call for which the call signaling does not itself carry a PASSporT. Exactly how a CPS determines which PASSporTs an OOB-VS is eligible to receive over this interface is a matter of local policy. If a CPS serves only one service provider, then all PASSporTs submitted to the CPS are made available to the OOB-VS of that provider; indeed, the CPS and OOB-VS may be colocated or effectively operated as a consolidated system. In a multi-provider environment, the STIR credential of the terminating domain can be used by the CPS to determine the range of TNAuthLists for which an OOB-VS is entitled to receive PASSporTs; this may be through a mechanism like mutual TLS or through the use of the STIR credential to sign a token that is submitted to the CPS by the retrieving OOB‑VS. Note that a multi-provider CPS will need to inspect the "dest" element of a PASSporT to determine which OOB-VS should receive the PASSporT.
      </t>
      <t indent="0" pn="section-6-3">
    In a push model, an OOB-VS could, for example, subscribe to a range of telephone numbers or a list of SPCs, which will be directed to that OOB-VS by the CPS (provided the OOB-VS is authorized to receive them by the CPS). PASSporT might be sent to the OOB-VS either before or after unsigned call signaling has been received by the terminating domain. In either model, the terminating side may need to delay rendering a call verification indicator when alerting, in order to await the potential arrival of a PASSporT at the OOB-VS. The exact timing of this, and its interaction with the substitution attack described in <xref target="RFC8816" sectionFormat="of" section="7.4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8816#section-7.4" derivedContent="RFC8816"/>, is left for future work.
      </t>
    </section>
    <section anchor="gatewaying" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-gateways">Gateways</name>
      <t indent="0" pn="section-7-1">
	In some deployment architectures, gateways might perform a function that interfaces with a CPS for the retrieval or storage of PASSporTs, especially in cases when in-band STIR service providers need to exchange secure calls with providers that can only be reached by STIR out-of-band. For example, a closed network of in-band STIR providers may send SIP INVITEs to a gateway in front of a traditional PSTN tandem that services a set of legacy service providers. In that environment, a gateway might extract a PASSporT from an in-band SIP INVITE and store it in a CPS that was established to handle requests for one or more legacy providers, who, in turn, consume those PASSporTs through an OOB-VS to assist in robocall mitigation and similar functions.
      </t>
      <t indent="0" pn="section-7-2">
	The simplest way to implement a gateway performing this sort of function for a service provider CPS system is to issue credentials to the gateway that allow it to act on behalf of the legacy service providers it supports: this would allow it to both add PASSporTs to the CPS acting on behalf of the legacy providers and also to create PASSporTs for in-band STIR conveyance from the legacy-providers to terminating service providers in the closed STIR network. For example, a service provider could issue a delegate certificate <xref target="RFC9060" format="default" sectionFormat="of" derivedContent="RFC9060"/> for this purpose.
      </t>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-8-1">This document has no IANA actions.</t>
    </section>
    <section anchor="privacy" numbered="true" toc="include" removeInRFC="false" pn="section-9">
      <name slugifiedName="name-privacy-considerations">Privacy Considerations</name>
      <t indent="0" pn="section-9-1">
The analysis of out-of-band STIR in the Privacy Considerations section of <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/> differs considerably from this document. Per <xref target="intro" format="default" sectionFormat="of" derivedContent="Section 1"/>, this specification was motivated in part by choosing a different privacy architecture than <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/>, one in which the CPS is operated by a service provider who is a party to the call itself and, thus, would independently have access to the call metadata captured in a PASSporT.
      </t>
      <t indent="0" pn="section-9-2">
That said, in cases where a third-party service operates the verification service function on behalf of a carrier, that third-party service would indeed be privy to this metadata. It is a fairly common situation for third-party services to receive this sort of metadata to perform tasks related to billing, security, number translation, and so on; existing data governance agreements could be readily applied to the out-of-band STIR use case.
      </t>
      <t indent="0" pn="section-9-3">
Finally, note that PASSporTs are extensible tokens, and it is conceivable that they might contain data that is not otherwise carried in SIP signaling or that would ordinarily be considered a component of call metadata. Any such extensions might have specific interactions with the privacy of both in-band and out-of-band STIR that their specifications would need to elaborate. 
      </t>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-10">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-10-1">
	The Security Considerations section of <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/> applies to this document, including concerns about potential denial-of-service vectors and traffic analysis. However, that specification's model focused a great deal on the privacy implications of uploading PASSporTs to a third-party web service. This document mitigates those concerns by making the CPS one of the parties to call setup (or an entity contractually acting on their behalf). That said, any architecture in which PASSporTs are shared with a federated or centralized CPS raises potential concerns about data collection <xref target="RFC7258" format="default" sectionFormat="of" derivedContent="RFC7258"/>.  Moreover, in a PASSporT, any additional information that is not
strictly redundant with the contents of a SIP request increases data
collection concerns; PASSporTs as defined in <xref target="RFC8225" format="default" sectionFormat="of" derivedContent="RFC8225"/> only contain
information redundant with the SIP request.  Existing and future extensions (e.g., the "origid" field described in <xref target="RFC8588" format="default" sectionFormat="of" derivedContent="RFC8588"/>) might leak further information.
      </t>
      <t indent="0" pn="section-10-2">
	  Unlike <xref target="RFC8816" format="default" sectionFormat="of" derivedContent="RFC8816"/>, this document proposes the use of STIR certificates to authenticate transactions with a CPS as well as signatures for CPS advertisements. This presumes an environment where STIR certificates are issued by trust anchors that are already trusted by the CPS, potentially to gateways and similar services. Common STIR deployments use SPCs instead of telephone number ranges to identify service providers today; determining whether a given SPC entitles a service provider to access PASSporTs for a given telephone number is not trivial, but is a necessary component of this CPS architecture. Otherwise, if anyone with a STIR certificate were able to publish or access PASSporTs for any telephone number, this could lead to an undesirable environment where effectively anyone with a STIR certificate could acquire PASSporTs for calls in progress to any service provider.
      </t>
    </section>
  </middle>
  <back>
    <references pn="section-11">
      <name slugifiedName="name-references">References</name>
      <references pn="section-11.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <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 indent="0">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" quoteTitle="true" derivedAnchor="RFC8174">
          <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 indent="0">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" quoteTitle="true" derivedAnchor="RFC8224">
          <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 indent="0">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 indent="0">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" quoteTitle="true" derivedAnchor="RFC8225">
          <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 indent="0">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" quoteTitle="true" derivedAnchor="RFC8226">
          <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 indent="0">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="RFC8816" target="https://www.rfc-editor.org/info/rfc8816" quoteTitle="true" derivedAnchor="RFC8816">
          <front>
            <title>Secure Telephone Identity Revisited (STIR) Out-of-Band Architecture and Use Cases</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <date month="February" year="2021"/>
            <abstract>
              <t indent="0">The Personal Assertion Token (PASSporT) format defines a token that can be carried by signaling protocols, including SIP, to cryptographically attest the identity of callers. However, not all telephone calls use Internet signaling protocols, and some calls use them for only part of their signaling path, while some cannot reliably deliver SIP header fields end-to-end. This document describes use cases that require the delivery of PASSporT objects outside of the signaling path, and defines architectures and semantics to provide this functionality.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8816"/>
          <seriesInfo name="DOI" value="10.17487/RFC8816"/>
        </reference>
        <reference anchor="RFC9110" target="https://www.rfc-editor.org/info/rfc9110" quoteTitle="true" derivedAnchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t indent="0">The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t indent="0">This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9325" target="https://www.rfc-editor.org/info/rfc9325" quoteTitle="true" derivedAnchor="RFC9325">
          <front>
            <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="T. Fossati" initials="T." surname="Fossati"/>
            <date month="November" year="2022"/>
            <abstract>
              <t indent="0">Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols and can also form the basis for secure transport protocols. Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation. This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.</t>
              <t indent="0">RFC 7525, an earlier version of the TLS recommendations, was published when the industry was transitioning to TLS 1.2. Years later, this transition is largely complete, and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, this document updates RFCs 5288 and 6066 in view of recent attacks.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="9325"/>
          <seriesInfo name="DOI" value="10.17487/RFC9325"/>
        </reference>
      </references>
      <references pn="section-11.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC7258" target="https://www.rfc-editor.org/info/rfc7258" quoteTitle="true" derivedAnchor="RFC7258">
          <front>
            <title>Pervasive Monitoring Is an Attack</title>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="May" year="2014"/>
            <abstract>
              <t indent="0">Pervasive monitoring is a technical attack that should be mitigated in the design of IETF protocols, where possible.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="188"/>
          <seriesInfo name="RFC" value="7258"/>
          <seriesInfo name="DOI" value="10.17487/RFC7258"/>
        </reference>
        <reference anchor="RFC7340" target="https://www.rfc-editor.org/info/rfc7340" quoteTitle="true" derivedAnchor="RFC7340">
          <front>
            <title>Secure Telephone Identity Problem Statement and Requirements</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="September" year="2014"/>
            <abstract>
              <t indent="0">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="RFC8588" target="https://www.rfc-editor.org/info/rfc8588" quoteTitle="true" derivedAnchor="RFC8588">
          <front>
            <title>Personal Assertion Token (PaSSporT) Extension for Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="M. Barnes" initials="M." surname="Barnes"/>
            <date month="May" year="2019"/>
            <abstract>
              <t indent="0">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.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8588"/>
          <seriesInfo name="DOI" value="10.17487/RFC8588"/>
        </reference>
        <reference anchor="RFC9060" target="https://www.rfc-editor.org/info/rfc9060" quoteTitle="true" derivedAnchor="RFC9060">
          <front>
            <title>Secure Telephone Identity Revisited (STIR) Certificate Delegation</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <date month="September" year="2021"/>
            <abstract>
              <t indent="0">The Secure Telephone Identity Revisited (STIR) certificate profile provides a way to attest authority over telephone numbers and related identifiers for the purpose of preventing telephone number spoofing. This specification details how that authority can be delegated from a parent certificate to a subordinate certificate. This supports a number of use cases, including those where service providers grant credentials to enterprises or other customers capable of signing calls with STIR.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9060"/>
          <seriesInfo name="DOI" value="10.17487/RFC9060"/>
        </reference>
      </references>
    </references>
    <section anchor="Acknowledgments" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">Thank you to <contact fullname="Alex Fenichel"/> for contributing to this specification.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-address">Author's Address</name>
      <author initials="J." surname="Peterson" fullname="Jon Peterson">
        <organization abbrev="TransUnion" showOnFrontPage="true">TransUnion</organization>
        <address>
          <email>jon.peterson@transunion.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
