<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.17 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-wendt-stir-certificate-transparency-03" category="info" consensus="true" submissionType="IETF" number="2" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <link href="https://datatracker.ietf.org/doc/draft-wendt-stir-certificate-transparency-03" rel="prev"/>
  <front>
    <title abbrev="STI CT">STI Certificate Transparency</title>
    <seriesInfo name="RFC" value="2"/>
    <author fullname="Chris Wendt">
      <organization>Somos, Inc.</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>chris@appliedbits.com</email>
      </address>
    </author>
    <author fullname="Rob Sliwa">
      <organization>Somos, Inc.</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>robjsliwa@gmail.com</email>
      </address>
    </author>
    <author fullname="Alec Fenichel">
      <organization>TransNexus</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>alec.fenichel@transnexus.com</email>
      </address>
    </author>
    <author fullname="Vinit Anil Gaikwad">
      <organization>Twilio</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>vanilgaikwad@twilio.com</email>
      </address>
    </author>
    <date year="2024" month="July" day="08"/>
    <area>Applications and Real-Time</area>
    <workgroup>Secure Telephone Identity Revisited</workgroup>
    <keyword>stir</keyword>
    <keyword>certificates</keyword>
    <keyword>delegate certificates</keyword>
    <abstract>
      <?line 61?>

<t>This document describes a framework for the use of the Certificate Transparency (CT) protocol for publicly logging the existence of Secure Telephone Identity (STI) certificates as they are issued or observed. This allows any interested party that is part of the STI eco-system to audit STI certification authority (CA) activity and audit both the issuance of suspect certificates and the certificate logs themselves. The intent is for the establishment of a level of trust in the STI eco-system that depends on the verification of telephone numbers requiring and refusing to honor STI certificates that do not appear in a established log. This effectively establishes the precedent that STI CAs must add all issued certificates to the logs and thus establishes unique association of STI certificates to an authorized provider or assignee of a telephone number resource. The primary role of CT in the STI ecosystem is for verifiable trust in the avoidance of issuance of unauthorized duplicate telephone number level delegate certificates or provider level certificates.  This provides a robust auditable mechanism for the detection of unauthorized creation of certificate credentials for illegitimate spoofing of telephone numbers or service provider codes (SPC).</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://appliedbits.github.io/draft-wendt-stir-certificate-transparency/draft-wendt-stir-certificate-transparency.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-wendt-stir-certificate-transparency/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Secure Telephone Identity Revisited Working Group mailing list (<eref target="mailto:stir@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/stir/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/stir/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/appliedbits/draft-wendt-stir-certificate-transparency"/>.</t>
    </note>
  </front>
  <middle>
    <?line 65?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Certificate Transparency (CT) aims to mitigate the problem of mis-issued certificates by providing append-only logs of issued certificates. The logs do not themselves prevent mis-issuance, but ensure that interested parties (particularly those named in certificates or certificate chains) can detect such mis-issuance. <xref target="RFC9162"/> describes the core protocols and mechanisms for use of CT for the purposes of public TLS server certificates associated with a domain name as part of the public domain name system (DNS). This document describes a conceptually similar framework that directly borrows concepts like transparency receipts in the form of SCPs but also is more opinionated about the process and procedures for when the receipt is generated and how it is used outside of the certificate.  This framework is defined for the specific use with Secure Telephone Identity (STI) certificates <xref target="RFC8226"/> and delegate certificates <xref target="RFC9060"/>.</t>
      <t>Telephone numbers (TNs) and their management and assignment by telephone service providers and Responsible Organizations (RespOrgs) for toll-free numbers share many similarities to the Domain Name System (DNS) where there is a global uniqueness and established association of telephone numbers to regulatory jurisdictions that manage the allocation and assignment of telephone numbers under country codes and a set of numeric digits for routing telephone calls and messages over telephone networks. STI Certificates use a TNAuthList extension defined in <xref target="RFC8226"/> to specifically associate either telephone service providers or telephone numbers to the issuance of STI certificates and certificate change that are intended to represent the authorized right to use a telephone number. This trusted association can be establish via mechanisms such as Authority tokens for TNAuthList defined in <xref target="RFC9448"/>. Certificate transparency is generally meant to provide a publicly verifiable and auditable representation of the creation of certificates in order to establish transparency and trust to interested parties as part of a stir related eco-system.</t>
      <t>There is three primary actors in the certificate transparency framework. There is the STI Certification Authorities (CAs) that submit all certificates to be issued to one or more log services. The log services are network services that implement the protocol operations for submissions of STI certificates and subsequent queries. They are hosted by interested parties in the STI ecosystem and can accept certificate log submissions from any other CA participant. The second role is the monitors that play the role of monitoring the CT logs to check for potential mis-issuance as well as auditing of the log services. This role can be played by any STI ecosystem participant interested in the trust of the ecosystem or the integrity of the telephone number or provider level certificates produced in the eco-system. CT provides a mechanism of a receipt or Signed Certificate Timestamp (SCT) that is provided as a result of submitting a certificate to the append-only log. The third actor role in the certificate transparency framework is the eco-system participants that can send and receive receipt(s) or SCT(s) to prove and validate that a certificate was submitted to a log(s) and optionally query the log directly for further validation.</t>
      <t>The details that follow in this document will detail the specific protocols and framework for Certificate Transparency associated with STI certificates. Most of the details borrow many of the concepts of certificate transparency defined in <xref target="RFC9162"/> used in Web PKI environments, but provides a specific framework designed for STI certificates and their specific issuance and usage in a telecommunications environments.</t>
      <t>This general mechanism could also be used for transparently logging other important stir related metadata associations perhaps via JWTClaimConstraints defined in <xref target="RFC8226"/> and <xref target="RFC9118"/> or other ways defined in potential future extensions of this document.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>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"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="the-use-of-certificate-transparency-for-sti-certificates">
      <name>The Use of Certificate Transparency for STI Certificates</name>
      <t>CT log(s) contains certificate chains, which can be submitted by any CA authorized in a STIR eco-system. It is expected that these CAs will contribute all their newly issued certificates to one or more logs.  Note, in <xref target="RFC9162"/> it is possible for certificate holders to directly contribute their own certificate chains or interested third parties, however because in stir eco-systems that generally consist of entities that are authorized to be assigned telephone number resources, this does not seem to be a likely scenario. Generally, many stir eco-systems have a controlled set of CAs that are authorized to participate as valid trust anchors. It is required that each chain ends with a trust anchor that is accepted by the log which would include those authorized trust anchors or a subset of them. When a chain is accepted by a log, a signed timestamp is returned, which is later used to provide evidence to STIR verification services (VS), defined in <xref target="RFC8224"/>, that the chain has been submitted. A VS can thus require that all certificates they accept as valid are accompanied by signed timestamps.</t>
      <t>Those concerned about mis-issuance of stir certificates can monitor the logs, asking them regularly for all new entries, and can thus check whether the providers or telephone numbers for which they are responsible have had certificates issued that they did not expect. What they do with this information, particularly when they find that a mis-issuance has happened, is beyond the scope of this document. However, broadly speaking, because many existing STI ecosystems have a connection to regulated and industry environments that govern the issuance of STI certificates, they can invoke existing mechanisms for dealing with issues such as mis-issued certificates, such as working with the CA to get the certificate revoked or with maintainers of trust anchor lists to get the CA removed.</t>
    </section>
    <section anchor="submitters">
      <name>Submitters</name>
      <t>Submitters submit certificates to logs for public auditing. In order to enable attribution of each logged certificate to its issuer, each submission <bcp14>MUST</bcp14> be accompanied by all additional certificates required to verify the chain up to an accepted trust anchor. The trust anchor (a root or intermediate CA certificate) <bcp14>MAY</bcp14> be omitted from the submission.</t>
      <t>If a log accepts a submission, it will return a Signed Certificate Timestamp (SCT) (see Section 4.8 <xref target="RFC9162"/>).</t>
      <section anchor="certificates">
        <name>Certificates</name>
        <t>Any entity, generally a STIR CA, can submit <xref target="RFC8226"/> defined certificates or <xref target="RFC9060"/> defined delegate certificates or similarly defined STIR certificates to a log. Since it is anticipated that verification services could reject certificates that are not logged, it is expected that certificate issuers and subjects will be strongly motivated to submit them.</t>
      </section>
    </section>
    <section anchor="log-format-and-operation">
      <name>Log Format and Operation</name>
      <t>A log is a single, append-only, merkel-tree type of log of submitted certificate entries.  Log procedures are <bcp14>RECOMMENDED</bcp14> to follow similar procedures and formats defined in Section 4 of <xref target="RFC9162"/>, but in general only are required to follow the API interfaces defined in this document.</t>
    </section>
    <section anchor="stir-authentication-services">
      <name>STIR Authentication Services</name>
      <t>STIR Authentication Services <xref target="RFC8224"/> <bcp14>MUST</bcp14> present one or more SCTs from one or more logs by the inclusion of an array of SCTs as a 'sct' claim in the signed PASSporT defined in the next section of this document.</t>
    </section>
    <section anchor="sct_define">
      <name>PASSporT Claim "sct" Definition and Usage</name>
      <t>This document defines a new JSON Web Token claim for "sct", Signed Certificate Timestamp, the value of which is a JSON object that can contains an array of one or more Signed Certificate Timestamps defined in <xref target="RFC9162"/>, Section 4.8 corresponding to SCTs provided by different CT logs the certificate may have been submitted to.</t>
      <t>Example PASSporT with SCT Claim:</t>
      <artwork><![CDATA[
{
   "dest":{"tn":["12155550131"]},
   "iat":"1443208345",
   "orig":{"tn":"12155550121"},
   "sct": ["base64-encoded-sct1", "base64-encoded-sct2"]
}
]]></artwork>
    </section>
    <section anchor="clients">
      <name>Clients</name>
      <t>There are various different functions clients of logs might perform. In this document, the client generally refers to the STI verification service defined in <xref target="RFC8224"/>, or more generally an entity that performs the verification of a PASSporT defined in <xref target="RFC8225"/>. We describe here some typical clients and how they should function.</t>
      <section anchor="submission-and-handling-of-scts">
        <name>Submission and Handling of SCTs</name>
        <ol spacing="normal" type="1"><li>
            <t>STI-CA/STI-SCA Submits STI Certificate to Transparency Logs  </t>
            <t>
Step 1: The STI Certificate Authority (STI-CA) or STI Subordinate Certificate Authority (STI-SCA) issues a new STI certificate.  </t>
            <t>
Step 2: The STI-CA/STI-SCA submits the issued STI certificate to one or more transparency logs using the 'submit-entry' API.  </t>
            <artwork><![CDATA[
   API Call:
   POST <Base URL>/ct/v2/submit-entry
   Content-Type: application/json
   {
      "submission": "base64-encoded-sti-certificate",
      "type": 1,
      "chain": [
         "base64-encoded-CA-cert-1",
         "base64-encoded-CA-cert-2"
      ]
   }

   Expected Response:
   {
      "sct": "base64-encoded-sct",
      "sth": "base64-encoded-signed_tree_head",
      "inclusion": "base64-encoded-inclusion_proof"
   }
]]></artwork>
          </li>
          <li>
            <t>Transparency Log Generates SCT:  </t>
            <t>
Step 3: Each transparency log processes the submission and generates a Signed Certificate Timestamp (SCT).  </t>
            <t>
Step 4: The transparency log returns the SCT to the STI-CA/STI-SCA.</t>
          </li>
          <li>
            <t>STI-CA/STI-SCA Passes SCT(s) to STI-AS:  </t>
            <t>
Step 5: The STI-CA/STI-SCA passes the generated SCT(s) to the STI Authentication Service (STI-AS). This can be done via a non-prescriptive method such as including SCT(s) in the certificate issuance metadata or through a separate communication channel.</t>
          </li>
          <li>
            <t>STI-AS Includes SCTs in <tt>sct</tt> Claim:  </t>
            <t>
Step 6: The STI-AS includes the SCTs in the <tt>sct</tt> claim of the PASSporT (Personal Assertion Token) when signing a call identity.  </t>
            <t>
Step 7: If some logs are slow to respond, their SCTs may be skipped to ensure timely processing.</t>
          </li>
          <li>
            <t>STI-VS Verifies PASSporT and SCTs:  </t>
            <t>
Step 8: The STI Verification Service (STI-VS) receives the signed PASSporT from the STI-AS.  </t>
            <t>
Step 9: The STI-VS verifies that the PASSporT contains matching SCTs for the certificate it was signed with. The STI-VS checks for the presence of SCT(s) and trusts them for quick verification.  </t>
            <t>
Step 10: In the background, a separate process can periodically gather and verify the SCTs with the transparency logs to ensure their validity and integrity.</t>
          </li>
        </ol>
      </section>
      <section anchor="example-api-calls-for-step-by-step-flow">
        <name>Example API Calls for Step-by-Step Flow</name>
        <ol spacing="normal" type="1"><li>
            <t>Submit Entry to Log:  </t>
            <artwork><![CDATA[
   POST <Base URL>/ct/v2/submit-entry
   Content-Type: application/json
   {
      "submission": "base64-encoded-sti-certificate",
      "type": 1,
      "chain": [
         "base64-encoded-CA-cert-1",
         "base64-encoded-CA-cert-2"
      ]
   }
]]></artwork>
          </li>
          <li>
            <t>Retrieve Latest STH (optional for background process):  </t>
            <artwork><![CDATA[
   GET <Base URL>/ct/v2/get-sth

   Expected Response:
   {
      "sth": "base64-encoded-signed_tree_head_v2"
   }
]]></artwork>
          </li>
          <li>
            <t>Retrieve Merkle Inclusion Proof by Leaf Hash (optional for background process):  </t>
            <artwork><![CDATA[
   GET <Base URL>/ct/v2/get-proof-by-hash?hash=base64-encoded-hash
         &tree_size=tree-size

   Expected Response:
   {
      "inclusion": "base64-encoded-inclusion_proof_v2",
      "sth": "base64-encoded-signed_tree_head_v2"
   }
]]></artwork>
          </li>
          <li>
            <t>Retrieve Entries and STH from Log (optional for background process):  </t>
            <artwork><![CDATA[
   GET <Base URL>/ct/v2/get-entries?start=0&end=99

   Expected Response:
   {
      "entries": [
         {
            "log_entry": "base64-encoded-log-entry",
            "submitted_entry": {
               "submission": "base64-encoded-sti-certificate",
               "chain": [
                  "base64-encoded-CA-cert-1",
                  "base64-encoded-CA-cert-2",
                  "base64-encoded-trust-anchor-cert"
               ]
            },
            "sct": "base64-encoded-sct"
         }
      ],
      "sth": "base64-encoded-signed_tree_head_v2"
   }
]]></artwork>
          </li>
        </ol>
      </section>
      <section anchor="monitor">
        <name>Monitor</name>
        <t>Monitors in the STIR/SHAKEN Certificate Transparency (CT) framework play a crucial role in maintaining the integrity and trust of the ecosystem. They ensure that no certificates are mis-issued, particularly concerning the TNAuthList field, which lists the telephone numbers an entity is authorized to use.</t>
        <section anchor="monitor-workflow">
          <name>Monitor Workflow</name>
          <ol spacing="normal" type="1"><li>
              <t>Initialize Monitor:  </t>
              <t>
Step 1: Set up the Monitor to periodically query the transparency logs for new entries. The Monitor must be configured with the base URL of each log it intends to monitor.  </t>
              <t>
Step 2: Configure the Monitor with a list of telephone numbers (TNs) and associated entities to track.</t>
            </li>
            <li>
              <t>Retrieve Latest STH:  </t>
              <t>
Step 3: The Monitor retrieves the latest Signed Tree Head (STH) from each log to determine the current state of the log.  </t>
              <artwork><![CDATA[
   API Call:

   GET <Base URL>/ct/v2/get-sth

   Expected Response:
   {
      "sth": "base64-encoded-signed_tree_head_v2"
   }
]]></artwork>
            </li>
            <li>
              <t>Retrieve New Entries from Log:  </t>
              <t>
Step 4: Using the STH, the Monitor retrieves new entries from the log that have been added since the last known state.  </t>
              <artwork><![CDATA[
   API Call:

   GET <Base URL>/ct/v2/get-entries?start=last_known_index
      &end=current_sth_index

   Expected Response:
   {
      "entries": [
         {
            "log_entry": "base64-encoded-log-entry",
            "submitted_entry": {
               "submission": "base64-encoded-sti-certificate",
               "chain": [
                  "base64-encoded-CA-cert-1",
                  "base64-encoded-CA-cert-2",
                  "base64-encoded-trust-anchor-cert"
               ]
            },
            "sct": "base64-encoded-sct"
         }
      ],
      "sth": "base64-encoded-signed_tree_head_v2"
   }
]]></artwork>
            </li>
            <li>
              <t>Decode and Verify Certificates:  </t>
              <t>
Step 5: Decode each retrieved certificate and verify its validity using the provided certificate chain. Extract the entity name and TNAuthList from the certificate.</t>
            </li>
            <li>
              <t>Check for Mis-issuance:  </t>
              <t>
Step 6: Compare the TNAuthList and entity name from the newly issued certificate with the Monitor's configured list. Alarm if a certificate is issued in the name of a different entity for the same TNs.  </t>
              <artwork><![CDATA[
   Example Pseudocode:

   for entry in entries:
      certificate = decode_base64(entry["submitted_entry"] \
         ["submission"])
      tn_auth_list = extract_tn_auth_list(certificate)
      entity_name = extract_entity_name(certificate)

      for tn in tn_auth_list:
         if tn in monitor_configured_tn_list:
            if monitor_configured_tn_list[tn] != entity_name:
                  raise Alarm(f"Mis-issued Certificate: {tn} assigned \
                     to {entity_name}")
]]></artwork>
            </li>
            <li>
              <t>Alarm and Reporting:  </t>
              <t>
Step 7: If a mis-issuance is detected, raise an alarm and log the details for further investigation and notify relevant stakeholders to rectify any confirmed mis-issuance.</t>
            </li>
            <li>
              <t>Maintain State and Continuity:  </t>
              <t>
Step 8: Update the Monitor's last known state with the current STH index to ensure continuity in monitoring.</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="auditing">
        <name>Auditing</name>
        <t>Auditing ensures that the current published state of a log is reachable from previously published states that are known to be good and that the promises made by the log, in the form of SCTs, have been kept. Audits are performed by monitors or STI Verification Services.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <section anchor="json-web-token-claim">
        <name>JSON Web Token Claim</name>
        <t>This document requests that the IANA add three new claims to the JSON Web Token Claims registry as defined in <xref target="RFC7519"/>.</t>
        <t>Claim Name: "sct"</t>
        <t>Claim Description: Signed Certificate Timestamp</t>
        <t>Change Controller: IESG</t>
        <t>Specification Document(s): [RFCThis]</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC7519">
        <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="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>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">
        <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">
        <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="8226"/>
        <seriesInfo name="DOI" value="10.17487/RFC8226"/>
      </reference>
      <reference anchor="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>The Secure Telephone Identity Revisited (STIR) certificate profile provides a way to attest authority over telephone numbers and related identifiers for the purpose of preventing telephone number spoofing. This specification details how that authority can be delegated from a parent certificate to a subordinate certificate. This supports a number of use cases, including those where service providers grant credentials to enterprises or other customers capable of signing calls with STIR.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9060"/>
        <seriesInfo name="DOI" value="10.17487/RFC9060"/>
      </reference>
      <reference anchor="RFC9118">
        <front>
          <title>Enhanced JSON Web Token (JWT) Claim Constraints for Secure Telephone Identity Revisited (STIR) Certificates</title>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <date month="August" year="2021"/>
          <abstract>
            <t>RFC 8226 specifies the use of certificates for Secure Telephone Identity Credentials; these certificates are often called "Secure Telephone Identity Revisited (STIR) Certificates". 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="RFC9162">
        <front>
          <title>Certificate Transparency Version 2.0</title>
          <author fullname="B. Laurie" initials="B." surname="Laurie"/>
          <author fullname="E. Messeri" initials="E." surname="Messeri"/>
          <author fullname="R. Stradling" initials="R." surname="Stradling"/>
          <date month="December" year="2021"/>
          <abstract>
            <t>This document describes version 2.0 of the Certificate Transparency (CT) protocol for publicly logging the existence of Transport Layer Security (TLS) server certificates as they are issued or observed, in a manner that allows anyone to audit certification authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
            <t>This document obsoletes RFC 6962. It also specifies a new TLS extension that is used to send various CT log artifacts.</t>
            <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9162"/>
        <seriesInfo name="DOI" value="10.17487/RFC9162"/>
      </reference>
      <reference anchor="RFC9448">
        <front>
          <title>TNAuthList Profile of Automated Certificate Management Environment (ACME) Authority Token</title>
          <author fullname="C. Wendt" initials="C." surname="Wendt"/>
          <author fullname="D. Hancock" initials="D." surname="Hancock"/>
          <author fullname="M. Barnes" initials="M." surname="Barnes"/>
          <author fullname="J. Peterson" initials="J." surname="Peterson"/>
          <date month="September" year="2023"/>
          <abstract>
            <t>This document defines a profile of the Automated Certificate Management Environment (ACME) Authority Token for the automated and authorized creation of certificates for Voice over IP (VoIP) telephone providers to support Secure Telephone Identity (STI) using the TNAuthList defined by STI certificates.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9448"/>
        <seriesInfo name="DOI" value="10.17487/RFC9448"/>
      </reference>
      <reference anchor="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>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">
        <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>
    </references>
    <?line 375?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the authors and contributors to the protocols and ideas around Certificate Transparency <xref target="RFC9162"/> which sets the basis for the STI eco-system to adopt in a very straight forward way, providing trust and transparency in the telephone number world.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
sMXeeBmFlDlqG/8PariQXrVMAAA=

-->

</rfc>
