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


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-ietf-acme-authority-token-tnauthlist-10" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="ACME TNAuthList Auth Token">TNAuthList profile of ACME Authority Token</title>

    <author initials="C." surname="Wendt" fullname="Chris Wendt">
      <organization>Somos Inc.</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>chris-ietf@chriswendt.net</email>
      </address>
    </author>
    <author initials="D." surname="Hancock" fullname="David Hancock">
      <organization>Comcast</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>davidhancock.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="M." surname="Barnes" fullname="Mary Barnes">
      <organization>Neustar Inc.</organization>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>mary.ietf.barnes@gmail.com</email>
      </address>
    </author>
    <author initials="J." surname="Peterson" fullname="Jon Peterson">
      <organization>Neustar Inc.</organization>
      <address>
        <postal>
          <street>1800 Sutter St Suite 570</street>
          <city>Concord, CA  94520</city>
          <country>US</country>
        </postal>
        <email>jon.peterson@neustar.biz</email>
      </address>
    </author>

    <date year="2022" month="September" day="16"/>

    <area>sec</area>
    
    <keyword>STIR</keyword>

    <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 VoIP Telephone Providers to support Secure Telephony Identity (STI) using the TNAuthList defined by STI certificates.</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t><xref target="RFC8555"/> is a mechanism for automating certificate management on the Internet. It enables administrative entities to prove effective control over resources like domain names, and automates the process of generating and issuing certificates. <xref target="I-D.ietf-acme-authority-token"/> extends ACME to provide a general method of extending the authority and authorization of entities to control a resource via a third party Token Authority beyond the Certification Authority (CA).</t>

<t>This document is a profile document using the Authority Token mechanism defined in <xref target="I-D.ietf-acme-authority-token"/>. It is a profile that  specifically addresses the STIR problem statement <xref target="RFC7340"/> which identifies the need for Internet credentials that can attest authority for the originator of VoIP calls in order to detect impersonation, which is currently an enabler for common attacks associated with illegal robocalling, voicemail hacking, and swatting.  These credentials are used to sign PASSporTs <xref target="RFC8225"/>, which can be carried in using protocols such as SIP <xref target="RFC8224"/>.  Currently, the only defined credentials for this purpose are the certificates specified in <xref target="RFC8226"/> using the TNAuthList.  This document defines the use of the TNAuthList Authority Token in the ACME challenge to proof the authoritative use of the contents of the TNAuthList, including a Service Provider Token (SPC), a Telephone Number, or a set of telephone numbers or telephone number blocks.</t>

<t>This document also describes the ability for a telephone authority to authorize the creation of CA types of certificates for delegation as defined in <xref target="RFC9060"/>.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="acme-new-order-identifiers-for-tnauthlist"><name>ACME new-order identifiers for TNAuthList</name>

<t>In <xref target="RFC8555"/>, Section 7 defines the procedure that an ACME client uses to order a new certificate from a CA. The new-order request contains an identifier field that specifies the identifier objects the order corresponds to.  This draft defines a new type of identifier object called TNAuthList. A TNAuthList identifier contains the identity information to be populated in the TN Authorization List of the new certificate. For the TNAuthList identifier, the new-order request includes a type set to the string "TNAuthList". The value of the TNAuthList identifier MUST be set to the details of the TNAuthList requested.</t>

<t>The format of the string that represents the TNAuthList MUST be constructed using base64url encoding, as per <xref target="RFC8555"/> base64url encoding described in Section 5 of <xref target="RFC4648"/> according to the profile specified in JSON Web Signature in Section 2 of <xref target="RFC7515"/>. The base64url encoding MUST NOT include any padding characters and the TNAuthList ASN.1 object MUST encoded using DER encoding rules.</t>

<t>An example of an ACME order object “identifiers” field containing a TNAuthList certificate would look as follows,</t>

<figure><artwork><![CDATA[
 "identifiers": [{"type":"TNAuthList","value":"F83n2a...avn27DN3"}]
]]></artwork></figure>

<t>where the "value" object string represents the arbitrary length base64url encoded string.</t>

<t>A full new-order request would look as follows,</t>

<figure><artwork><![CDATA[
POST /acme/new-order HTTP/1.1
Host: example.com
Content-Type: application/jose+json

{
  "protected": base64url({
    "alg": "ES256",
    "kid": "https://example.com/acme/acct/evOfKhNU60wg",
    "nonce": "5XJ1L3lEkMG7tR6pA00clA",
    "url": "https://example.com/acme/new-order"
  }),
  "payload": base64url({
    "identifiers": [{"type":"TNAuthList","value":"F83n...n27DN3"}],
    "notBefore": "2021-01-01T00:00:00Z",
    "notAfter": "2021-01-08T00:00:00Z"
  }),
  "signature": "H6ZXtGjTZyUnPeKn...wEA4TklBdh3e454g"
}
]]></artwork></figure>

<t>On receiving a valid new-order request, the ACME server creates an authorization object, <xref target="RFC8555"/> Section 7.1.4, containing the challenge that the ACME client must satisfy to demonstrate authority for the identifiers specified by the new order (in this case, the TNAuthList identifier). The CA adds the authorization object URL to the "authorizations" field of the order object, and returns the order object to the ACME client in the body of a 201 (Created) response.</t>

<figure><artwork><![CDATA[
HTTP/1.1 201 Created
Replay-Nonce: MYAuvOpaoIiywTezizk5vw
Location: https://example.com/acme/order/1234

{
  "status": "pending",
  "expires": "2022-01-08T00:00:00Z",

  "notBefore": "2022-01-01T00:00:00Z",
  "notAfter": "2022-01-08T00:00:00Z",
  "identifiers":[{"type":"TNAuthList",
                 "value":"F83n2a...avn27DN3"}],

  "authorizations": [
   "https://example.com/acme/authz/1234"
  ],
  "finalize": "https://example.com/acme/order/1234/finalize"
}
]]></artwork></figure>

</section>
<section anchor="tnauthlist-identifier-authorization"><name>TNAuthList Identifier Authorization</name>

<t>On receiving the new-order response, the ACME client queries the referenced authorization object to obtain the challenges for the identifier contained in the new-order request as shown in the following example request and response.</t>

<figure><artwork><![CDATA[
POST /acme/authz/1234 HTTP/1.1
    Host: example.com
    Content-Type: application/jose+json

    {
      "protected": base64url({
        "alg": "ES256",
        "kid": " https://example.com/acme/acct/evOfKhNU60wg",
        "nonce": "uQpSjlRb4vQVCjVYAyyUWg",
        "url": "https://example.com/acme/authz/1234"
      }),
      "payload": "",
      "signature": "nuSDISbWG8mMgE7H...QyVUL68yzf3Zawps"
    }
]]></artwork></figure>

<figure><artwork><![CDATA[
HTTP/1.1 200 OK
Content-Type: application/json
Link: <https://example.com/acme/some-directory>;rel="index"

{
  "status": "pending",
  "expires": "2022-01-08T00:00:00Z",

  "identifier": {
    "type:"TNAuthList",
    "value":"F83n2a...avn27DN3"
  },

  "challenges": [
    {
      "type": "tkauth-01",
      "tkauth-type": "atc",
      "token-authority": "https://authority.example.org",
      "url": "https://example.com/acme/chall/prV_B7yEyA4",
      "token": "IlirfxKKXAsHtmzK29Pj8A"
    }
  ]
}
]]></artwork></figure>

<t>When processing a certificate order containing an identifier of type "TNAuthList", a CA uses the Authority Token challenge type of "tkauth-01" with a "tkauth-type" of "atc" in <xref target="I-D.ietf-acme-authority-token"/> to verify that the requesting ACME client has authenticated and authorized control over the requested resources represented by the "TNAuthList" value.</t>

<t>The challenge "token-authority" parameter is only used in cases where the VoIP telephone network requires the CA to identify the Token Authority. This is currently not the case for the SHAKEN <xref target="ATIS-1000080"/> certificate framework governance, but may be used by other frameworks. If a "token-authority" parameter is present, then the ACME client MAY use the "token-authority" value to identify the URL representing the Token Authority that will provide the TNAuthList Authority Token response to the challenge. If the "token-authority" parameter is not present, then the ACME client MUST identify the Token Authority based on locally configured information or local policies.</t>

<t>The ACME client responds to the challenge by posting the TNAuthList Authority Token to the challenge URL identified in the returned ACME authorization object, an example of which follows.</t>

<figure><artwork><![CDATA[
POST /acme/chall/prV_B7yEyA4 HTTP/1.1
Host: boulder.example.com
Content-Type: application/jose+json

{
  "protected": base64url({
  "alg": "ES256",
  "kid": "https://example.com/acme/acct/evOfKhNU60wg",
  "nonce": "Q_s3MWoqT05TrdkM2MTDcw",
  "url": "https://boulder.example.com/acme/authz/asdf/0"
  }),
  "payload": base64url({
  "tkauth": "DGyRejmCefe7v4N...vb29HhjjLPSggwiE"
  }),
  "signature": "9cbg5JO1Gf5YLjjz...SpkUfcdPai9uVYYQ"
}
]]></artwork></figure>

<t>The "tkauth" field is defined as a new field in the challenge object specific to the tkauth-01 challenge type that should contain the TNAuthList Authority Token defined in the next section.</t>

</section>
<section anchor="tnauthlist-authority-token"><name>TNAuthList Authority Token</name>

<t>The Telephone Number Authority List Authority Token (TNAuthList Authority Token) is a profile instance of the ACME Authority Token defined in <xref target="I-D.ietf-acme-authority-token"/>.</t>

<t>The TNAuthList Authority Token Protected header MUST comply with the Authority Token Protected header as defined in <xref target="I-D.ietf-acme-authority-token"/>.</t>

<t>The TNAuthList Authority Token Payload MUST include the mandatory claims "exp", "jti", and "atc", and MAY include the optional claims defined for the Authority Token detailed in the next subsections.</t>

<section anchor="iss-claim"><name>"iss" claim</name>

<t>The "iss" claim is an optional claim defined in <xref target="RFC7519"/> Section 4.1.1.  It can be used as a URL identifying the Token Authority that issued the TNAuthList Authority Token beyond the "x5u" or other Header claims that identify the location of the certificate or certificate chain of the Token Authority used to validate the TNAuthList Authority Token.</t>

</section>
<section anchor="exp-claim"><name>"exp" claim</name>

<t>The "exp" claim, defined in <xref target="RFC7519"/> Section 4.1.4, MUST be included and contains the DateTime value of the ending date and time that the TNAuthList Authority Token expires.</t>

</section>
<section anchor="jti-claim"><name>"jti" claim</name>

<t>The "jti" claim, defined in <xref target="RFC7519"/> Section 4.1.7, MUST be included and contains a unique identifier for this TNAuthList Authority Token transaction.</t>

</section>
<section anchor="atc-claim"><name>"atc" claim</name>

<t>The "atc" claim MUST be included and is defined in <xref target="I-D.ietf-acme-authority-token"/>.  It contains a JSON object with the following elements:</t>

<t><list style="symbols">
  <t>a "tktype" key with a string value equal to "TNAuthList" to represent a TNAuthList profile of the authority token <xref target="I-D.ietf-acme-authority-token"/> defined by this document. "tktype" is a required key and MUST be included.</t>
  <t>a "tkvalue" key with a string value equal to the base64url encoding of the TN Authorization List certificate extension ASN.1 object using DER encoding rules. "tkvalue" is a required key and MUST be included.</t>
  <t>a "ca" key with a boolean value set to either true when the requested certificate is allowed to be a CA cert for delegation uses or false when the requested certificate is not intended to be a CA cert, only an end-entity certificate. "ca" is an optional key, if it not included the "ca" value is considered false by default.</t>
  <t>a "fingerprint" key is constructed as defined in <xref target="RFC8555"/> Section 8.1 corresponding to the computation of the "Thumbprint" step using the ACME account key credentials. "fingerprint" is a required key and MUST be included.</t>
</list></t>

<t>An example of the TNAuthList Authority Token is as follows:</t>

<figure><artwork><![CDATA[
{
  "protected": base64url({
    "typ":"JWT",
    "alg":"ES256",
    "x5u":"https://authority.example.org/cert"
  }),
  "payload": base64url({
    "iss":"https://authority.example.org",
    "exp":1640995200,
    "jti":"id6098364921",
    "atc":{"tktype":"TNAuthList",
      "tkvalue":"F83n2a...avn27DN3",
      "ca":false,
      "fingerprint":"SHA256 56:3E:CF:AE:83:CA:4D:15:B0:29:FF:1B:71:
       D3:BA:B9:19:81:F8:50:9B:DF:4A:D4:39:72:E2:B1:F0:B9:38:E3"}
  }),
  "signature": "9cbg5JO1Gf5YLjjz...SpkUfcdPai9uVYYQ"
}
]]></artwork></figure>

</section>
<section anchor="acquiring-the-token-from-the-token-authority"><name>Acquiring the token from the Token Authority</name>

<t>Following <xref target="I-D.ietf-acme-authority-token"/> Section 5, the authority token should be acquired using a RESTful HTTP POST transaction as follows:</t>

<figure><artwork><![CDATA[
  POST /at/account/:id/token HTTP/1.1
  Host: authority.example.org
  Content-Type: application/json
]]></artwork></figure>

<t>The request will pass the account id as a string in the request parameter "id".  This string will be managed as an identifier specific to the Token Authority's relationship with a communications service provider (CSP). There is assumed to also be a corresponding authentication procedure that can be verified for the success of this transaction. For example, an HTTP authorization header containing a valid authorization credentials as defined in <xref target="RFC7231"/> Section 14.8.</t>

<t>The body of the POST request MUST contain a JSON object with key value pairs corresponding to values that are requested as the content of the claims in the issued token. As an example, the body SHOULD contain a JSON object as follows:</t>

<figure><artwork><![CDATA[
 {
   "tktype":"TNAuthList",
   "tkvalue":"F83n2a...avn27DN3",
   "ca":false,
   "fingerprint":"SHA256 56:3E:CF:AE:83:CA:4D:15:B0:29:FF:1B:71:D3
     :BA:B9:19:81:F8:50:9B:DF:4A:D4:39:72:E2:B1:F0:B9:38:E3"
 }
]]></artwork></figure>

<t>The response to the POST request if successful returns a 200 OK with a JSON body that contains, at a minimum, the TNAuthList Authority Token as a JSON object with a key of "token" and the base64url encoded string representing the atc token. JSON is easily extensible, so users of this specification may want to pass other pieces of information relevant to a specific application.</t>

<t>An example successful response would be as follows:</t>

<figure><artwork><![CDATA[
HTTP/1.1 200 OK
Content-Type: application/json

{"token": "DGyRejmCefe7v4N...vb29HhjjLPSggwiE"}
]]></artwork></figure>

<t>If the request is not successful, the response should indicate the error condition.  Specifically, for the case that the authorization credentials are invalid or if the Account ID provided does not exist, the response code MUST be 403 - Forbidden. Other 4xx and 5xx responses MUST follow standard <xref target="RFC7231"/> HTTP error condition conventions.</t>

</section>
<section anchor="token-authority-responsibilities"><name>Token Authority Responsibilities</name>

<t>When creating the TNAuthList Authority Token, the Token Authority MUST validate that the information contained in the ASN.1 TNAuthList accurately represents the service provider code (SPC) or telephone number (TN) resources the requesting party is authorized to represent based on their pre-established and verified secure relationship between the Token Authority and the requesting party. Note that the fingerprint in the token request is not meant to be verified by the Token Authority, but rather is meant to be signed as part of the token so that the party that requests the token can, as part of the challenge response, allow the ACME server to validate the token requested and used came from the same party that controls the ACME client.</t>

</section>
<section anchor="scope-of-the-tnauthlist"><name>Scope of the TNAuthList</name>

<t>Because this specification specifically involves the TNAuthList defined in <xref target="RFC8226"/> which involves SPC, TNBlock, and individual TNs, the client may also request an Authority Token with some subset of its own authority as the TNAuthList provided in the "tkvalue" element in the "atc" JSON object. Generally, the scope of authority representing a communications service provider is represented by a particular SPC (e.g. in North America, an operating company number (OCN) or service provider identifier (SPID)). That provider is also generally associated, based on number allocations, with a particular set of different TN Blocks and/or TNs. TNAuthList can be constructed to define a limited scope of the TNBlocks or TNs either associated with an SPC or with the scope of TN Blocks or TNs the client has authority over.</t>

<t>As recommended in <xref target="I-D.ietf-acme-authority-token"/> security considerations, an Authority Token can either have a scope that attests all of the resources which a client is eligible to receive certificates for, or potentially a more limited scope that is intended to capture only those resources for which a client will receive a certificate from a particular certification authority.  Any certification authority that sees an Authority Token can learn information about the resources a client can claim.  In cases where this incurs a privacy risk, Authority Token scopes should be limited to only the resources that will be attested by the requested ACME certificate.</t>

</section>
</section>
<section anchor="validating-the-tnauthlist-authority-token"><name>Validating the TNAuthList Authority Token</name>

<t>Upon receiving a response to the challenge, the ACME server MUST perform the following steps to determine the validity of the response.</t>

<t><list style="symbols">
  <t>Verify that the value of the "atc" claim is a well-formed JSON object containing the mandatory key values.</t>
  <t>Verify the "x5u" parameter is a HTTPS URL with a reference to a certificate representing the trusted issuer of authority tokens for the eco-system.</t>
  <t>Verify the TNAuthList Authority Token signature using the public key of the certificate referenced by the token's "x5u" parameter.</t>
  <t>Verify that "atc" claim contains a "tktype" identifier with the value "TNAuthList".</t>
  <t>Verify that the "atc" claim "tkvalue" identifier contains the equivalent base64url encoded TNAuthList certificate extension string value as the Identifier specified in the original challenge.</t>
  <t>Verify that the remaining claims are valid (e.g., verify that token has not expired)</t>
  <t>Verify that the "atc" claim "fingerprint" is valid and matches the account key of the client making the request</t>
  <t>Verify that the "atc" claim "ca" identifier boolean corresponds to the CA boolean in the Basic Constraints extension in the CSR for either CA certificate or end-entity certificate</t>
</list></t>

<t>If all steps in the token validation process pass, then the CA MUST set the challenge object "status" to "valid". If any step of the validation process fails, the "status" in the challenge object MUST be set to "invalid".</t>

</section>
<section anchor="using-acme-issued-certificates-with-json-web-signature"><name>Using ACME-issued Certificates with JSON Web Signature</name>

<t>JSON Web Signature (JWS, <xref target="RFC7515"/>) objects can include an "x5u" header parameter to refer to a certificate that is used to validate the JWS signature.  For example, the STIR PASSporT framework <xref target="RFC8225"/> uses "x5u" to indicate the STIR certificate used to validate the PASSporT JWS object.  The URLs used in "x5u" are expected to provide the required certificate in response to a GET request, not a POST-as-GET as required for the "certificate" URL in the ACME order object.  Thus the current mechanism generally requires the ACME client to download the certificate and host it on a public URL to make it accessible to relying parties.  This section defines an optional mechanism for the Certificate Authority (CA) to host the certificate directly and provide a URL that the ACME client owner can directly reference in the "x5u" of their signed PASSporTs.</t>

<t>As described in Section 7.4 of <xref target="RFC8555"/> when the certificate is ready for making a finalize request, the server will return a 200 (OK) with the updated order object.  In this response, an ACME Server can add a newly defined field called "x5u" that can pass this URL to the ACME client for usage in generated PASSporTs as a publically available URL for PASSporT validation.</t>

<dl>
  <dt>x5u (optional, string):</dt>
  <dd>
    <t>A URL that can be used to reference the certificate in the "x5u" parameter of a JWS object <xref target="RFC7515"/></t>
  </dd>
</dl>

<t>The publishing of the certificates at the new "x5u" URL should follow the GET request requirement as mentioned above and should be consistent with the timely publication according to the durations of the certificate lifecycle.</t>

<t>The following is an example of the use of "x5u" in the response when the certificate status is "valid".</t>

<figure><artwork><![CDATA[
HTTP/1.1 200 OK
Replay-Nonce: CGf81JWBsq8QyIgPCi9Q9X
Link: <https://example.com/acme/directory>;rel="index"
Location: https://example.com/acme/order/TOlocE8rfgo

{
  "status": "valid",
  "expires": "2016-01-20T14:09:07.99Z",

  "notBefore": "2016-01-01T00:00:00Z",
  "notAfter": "2016-01-08T00:00:00Z",

  "identifiers": [
    "type:"TNAuthList",
    "value":"F83n2a...avn27DN3"
  ],

  "authorizations": ["https://sti-ca.com/acme/authz/1234"],

  "finalize": "https://example.com/acme/order/TOlocE8rfgo/finalize",

  "certificate": "https://example.com/acme/cert/mAt3xBGaobw",

  "x5u": "https://example.com/cert-repo/giJI53km23.pem"
}
]]></artwork></figure>

</section>
<section anchor="usage-considerations"><name>Usage Considerations</name>

<section anchor="large-number-of-non-contiguous-tnauthlist-values"><name>Large number of Non-contiguous TNAuthList values</name>

<t>There are many scenarios and reasons to have various combinations of SPCs, TNs, and TN Ranges.  <xref target="RFC8226"/> has provided a somewhat unbounded set of combinations.  It's possible that a complex non-contiguous set of telephone numbers are being managed by a CSP.  Best practice may be simply to split a set of non-contiguous numbers under management into multiple STI certificates to represent the various contiguous parts of the greater non-contiguous set of TNs, particularly if length of the set of values in identifier object grows to be too large.</t>

</section>
</section>
<section anchor="security_considerations"><name>Security Considerations</name>

<t>The token represented by this document has the credentials to represent the scope of a telephone number, a block of telephone numbers, or an entire set of telephone numbers represented by a SPC. The creation, transport, and any storage of this token MUST follow the strictest of security best practices beyond the recommendations of the use of encrypted transport protocols in this document to protect it from getting in the hands of bad actors with illegitimate intent to impersonate telephone numbers.</t>

<t>This document inherits the security properties of <xref target="I-D.ietf-acme-authority-token"/>. Implementations should follow the best practices identified in <xref target="RFC8725"/>.</t>

<t>This document only specifies SHA256 for the fingerprint hash. However, the syntax of the fingerprint object would permit other algorithms if, due to concerns about algorithmic agility, a more robust algorithm were required at a future time.  Future specifications can define new algorithms for the fingerprint object as needed.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document requests the addition of a new identifier object type to the "ACME Identifier Types" registry defined in Section 9.7.7 of <xref target="RFC8555"/>.</t>

<figure><artwork><![CDATA[
                         +------------+-----------+
                         |   Label    | Reference |
                         +------------+-----------+
                         | TNAuthList |  RFCThis  |
                         +------------+-----------+
]]></artwork></figure>

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

<t>We would like to thank Richard Barnes and Russ Housley for valuable contributions to this document.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>




<reference anchor='I-D.ietf-acme-authority-token'>
   <front>
      <title>ACME Challenges Using an Authority Token</title>
      <author fullname='Jon Peterson'>
	 <organization>Neustar, Inc.</organization>
      </author>
      <author fullname='Mary Barnes'>
	 <organization>Neustar, Inc.</organization>
      </author>
      <author fullname='David Hancock'>
	 <organization>Comcast</organization>
      </author>
      <author fullname='Chris Wendt'>
	 <organization>Somos</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <abstract>
	 <t>   Some proposed extensions to the Automated Certificate Management
   Environment (ACME) rely on proving eligibility for certificates
   through consulting an external authority that issues a token
   according to a particular policy.  This document specifies a generic
   Authority Token challenge for ACME which supports subtype claims for
   different identifiers or namespaces that can be defined separately
   for specific applications.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-acme-authority-token-08'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-acme-authority-token-08.txt' type='TXT'/>
</reference>



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



<reference anchor='RFC7231' target='https://www.rfc-editor.org/info/rfc7231'>
<front>
<title>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</title>
<author fullname='R. Fielding' initials='R.' role='editor' surname='Fielding'><organization/></author>
<author fullname='J. Reschke' initials='J.' role='editor' surname='Reschke'><organization/></author>
<date month='June' year='2014'/>
<abstract><t>The Hypertext Transfer Protocol (HTTP) is a stateless \%application- level protocol for distributed, collaborative, hypertext information systems.  This document defines the semantics of HTTP/1.1 messages, as expressed by request methods, request header fields, response status codes, and response header fields, along with the payload of messages (metadata and body content) and mechanisms for content negotiation.</t></abstract>
</front>
<seriesInfo name='RFC' value='7231'/>
<seriesInfo name='DOI' value='10.17487/RFC7231'/>
</reference>



<reference anchor='RFC7515' target='https://www.rfc-editor.org/info/rfc7515'>
<front>
<title>JSON Web Signature (JWS)</title>
<author fullname='M. Jones' initials='M.' surname='Jones'><organization/></author>
<author fullname='J. Bradley' initials='J.' surname='Bradley'><organization/></author>
<author fullname='N. Sakimura' initials='N.' surname='Sakimura'><organization/></author>
<date month='May' year='2015'/>
<abstract><t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures.  Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification.  Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t></abstract>
</front>
<seriesInfo name='RFC' value='7515'/>
<seriesInfo name='DOI' value='10.17487/RFC7515'/>
</reference>



<reference anchor='RFC7519' target='https://www.rfc-editor.org/info/rfc7519'>
<front>
<title>JSON Web Token (JWT)</title>
<author fullname='M. Jones' initials='M.' surname='Jones'><organization/></author>
<author fullname='J. Bradley' initials='J.' surname='Bradley'><organization/></author>
<author fullname='N. Sakimura' initials='N.' surname='Sakimura'><organization/></author>
<date month='May' year='2015'/>
<abstract><t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties.  The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t></abstract>
</front>
<seriesInfo name='RFC' value='7519'/>
<seriesInfo name='DOI' value='10.17487/RFC7519'/>
</reference>



<reference anchor='RFC8226' target='https://www.rfc-editor.org/info/rfc8226'>
<front>
<title>Secure Telephone Identity Credentials: Certificates</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='S. Turner' initials='S.' surname='Turner'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>In order to prevent the impersonation of telephone numbers on the Internet, some kind of credential system needs to exist that cryptographically asserts authority over telephone numbers.  This document describes the use of certificates in establishing authority over telephone numbers, as a component of a broader architecture for managing telephone numbers as identities in protocols like SIP.</t></abstract>
</front>
<seriesInfo name='RFC' value='8226'/>
<seriesInfo name='DOI' value='10.17487/RFC8226'/>
</reference>



<reference anchor='RFC8555' target='https://www.rfc-editor.org/info/rfc8555'>
<front>
<title>Automatic Certificate Management Environment (ACME)</title>
<author fullname='R. Barnes' initials='R.' surname='Barnes'><organization/></author>
<author fullname='J. Hoffman-Andrews' initials='J.' surname='Hoffman-Andrews'><organization/></author>
<author fullname='D. McCarney' initials='D.' surname='McCarney'><organization/></author>
<author fullname='J. Kasten' initials='J.' surname='Kasten'><organization/></author>
<date month='March' year='2019'/>
<abstract><t>Public Key Infrastructure using X.509 (PKIX) certificates are used for a number of purposes, the most significant of which is the authentication of domain names.  Thus, certification authorities (CAs) in the Web PKI are trusted to verify that an applicant for a certificate legitimately represents the domain name(s) in the certificate.  As of this writing, this verification is done through a collection of ad hoc mechanisms.  This document describes a protocol that a CA and an applicant can use to automate the process of verification and certificate issuance.  The protocol also provides facilities for other certificate management functions, such as certificate revocation.</t></abstract>
</front>
<seriesInfo name='RFC' value='8555'/>
<seriesInfo name='DOI' value='10.17487/RFC8555'/>
</reference>



<reference anchor='RFC8725' target='https://www.rfc-editor.org/info/rfc8725'>
<front>
<title>JSON Web Token Best Current Practices</title>
<author fullname='Y. Sheffer' initials='Y.' surname='Sheffer'><organization/></author>
<author fullname='D. Hardt' initials='D.' surname='Hardt'><organization/></author>
<author fullname='M. Jones' initials='M.' surname='Jones'><organization/></author>
<date month='February' year='2020'/>
<abstract><t>JSON Web Tokens, also known as JWTs, are URL-safe JSON-based security tokens that contain a set of claims that can be signed and/or encrypted. JWTs are being widely used and deployed as a simple security token format in numerous protocols and applications, both in the area of digital identity and in other application areas.  This Best Current Practices document updates RFC 7519 to provide actionable guidance leading to secure implementation and deployment of JWTs.</t></abstract>
</front>
<seriesInfo name='BCP' value='225'/>
<seriesInfo name='RFC' value='8725'/>
<seriesInfo name='DOI' value='10.17487/RFC8725'/>
</reference>



<reference anchor='RFC9060' target='https://www.rfc-editor.org/info/rfc9060'>
<front>
<title>Secure Telephone Identity Revisited (STIR) Certificate Delegation</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<date month='September' year='2021'/>
<abstract><t>The Secure Telephone Identity Revisited (STIR) certificate profile provides a way to attest authority over telephone numbers and related identifiers for the purpose of preventing telephone number spoofing. This specification details how that authority can be delegated from a parent certificate to a subordinate certificate. This supports a number of use cases, including those where service providers grant credentials to enterprises or other customers capable of signing calls with STIR.</t></abstract>
</front>
<seriesInfo name='RFC' value='9060'/>
<seriesInfo name='DOI' value='10.17487/RFC9060'/>
</reference>



<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<date month='May' year='2017'/>
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>




    </references>

    <references title='Informative References'>

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




<reference anchor='RFC7340' target='https://www.rfc-editor.org/info/rfc7340'>
<front>
<title>Secure Telephone Identity Problem Statement and Requirements</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='H. Schulzrinne' initials='H.' surname='Schulzrinne'><organization/></author>
<author fullname='H. Tschofenig' initials='H.' surname='Tschofenig'><organization/></author>
<date month='September' year='2014'/>
<abstract><t>Over the past decade, Voice over IP (VoIP) systems based on SIP have replaced many traditional telephony deployments.  Interworking VoIP systems with the traditional telephone network has reduced the overall level of calling party number and Caller ID assurances by granting attackers new and inexpensive tools to impersonate or obscure calling party numbers when orchestrating bulk commercial calling schemes, hacking voicemail boxes, or even circumventing multi-factor authentication systems trusted by banks.  Despite previous attempts to provide a secure assurance of the origin of SIP communications, we still lack effective standards for identifying the calling party in a VoIP session.  This document examines the reasons why providing identity for telephone numbers on the Internet has proven so difficult and shows how changes in the last decade may provide us with new strategies for attaching a secure identity to SIP sessions.  It also gives high-level requirements for a solution in this space.</t></abstract>
</front>
<seriesInfo name='RFC' value='7340'/>
<seriesInfo name='DOI' value='10.17487/RFC7340'/>
</reference>



<reference anchor='RFC8224' target='https://www.rfc-editor.org/info/rfc8224'>
<front>
<title>Authenticated Identity Management in the Session Initiation Protocol (SIP)</title>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<author fullname='C. Jennings' initials='C.' surname='Jennings'><organization/></author>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<author fullname='C. Wendt' initials='C.' surname='Wendt'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>The baseline security mechanisms in the Session Initiation Protocol (SIP) are inadequate for cryptographically assuring the identity of the end users that originate SIP requests, especially in an interdomain context.  This document defines a mechanism for securely identifying originators of SIP requests.  It does so by defining a SIP header field for conveying a signature used for validating the identity and for conveying a reference to the credentials of the signer.</t><t>This document obsoletes RFC 4474.</t></abstract>
</front>
<seriesInfo name='RFC' value='8224'/>
<seriesInfo name='DOI' value='10.17487/RFC8224'/>
</reference>



<reference anchor='RFC8225' target='https://www.rfc-editor.org/info/rfc8225'>
<front>
<title>PASSporT: Personal Assertion Token</title>
<author fullname='C. Wendt' initials='C.' surname='Wendt'><organization/></author>
<author fullname='J. Peterson' initials='J.' surname='Peterson'><organization/></author>
<date month='February' year='2018'/>
<abstract><t>This document defines a method for creating and validating a token that cryptographically verifies an originating identity or, more generally, a URI or telephone number representing the originator of personal communications.  The Personal Assertion Token, PASSporT, is cryptographically signed to protect the integrity of the identity of the originator and to verify the assertion of the identity information at the destination.  The cryptographic signature is defined with the intention that it can confidently verify the originating persona even when the signature is sent to the destination party over an insecure channel.  PASSporT is particularly useful for many personal-communications applications over IP networks and other multi-hop interconnection scenarios where the originating and destination parties may not have a direct trusted relationship.</t></abstract>
</front>
<seriesInfo name='RFC' value='8225'/>
<seriesInfo name='DOI' value='10.17487/RFC8225'/>
</reference>




    </references>



  </back>

<!-- ##markdown-source:
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
vyhU6LXqD+2voCTxNQ/kOoh3dzGZzvOQXF1GzrCljbeSN2Pab852NQfuuiLY
VbNZYXzlN7eSWufRYD66zXUnr8iqU5zFkzrxpyWA0Oaq1lKiImWt2AnQb9dU
/+i2NODMlCCrcSrhy7p3WNurP2BsL1Rpp6VIjIrBik0wiNSSJKVosZgvMcV8
z88mtyqTmSp9AvbzSsl8qr4jwV+VlFYQErenVn+lTXcKagrLyZC5b4qZyTiw
7S2qINLbQmETIoRqUEX7XJXiDpWSrrarlJE29QCeg7BodbjvHGu/zGROEVgi
LLNt2jlUbnaLlYaSXCmvxBOpbOoV+qidCazEK7WuJ+1SzMKnUM6Hph7j0ZAb
wMbSCiv1ypSvrhtsB3MrB5FQ3i4xnxaXNVn5bwnK8z0lKn+jmOywZkimHuGs
7CsYI5ooUfaYXLunk0uGgQiPhGJF3tpcBzJF8xnPAazyVaNMoK6lvVb73iPa
oaQC5USK6qltdT7NIDAoPUMaNDxwFvekAPtM27QzJBNgZLAA05L7isJ14gKM
eq+9iMxPkmnKF04E91WprB2IBSnDH3Rjr5RKluSsmjAVHOvtWBeqYAtl/spM
X+dbmVX6gbhflVB0rLsgC2X9lmD39GcNu9ZjAtjbN447T1Oqjod3SqCxiXUy
oFcIQcpUFE7zI4KLqvSUeIOuQkfGtJa5PDfyOwAfiyt4+RdhinEKUJF0CgNz
f7DH+ihpZyIIkF5uaJP3v3whsjuAf01HqTqpnWF0itFLg4oAJQldWzY+PeAS
ihhRPepxpyYQVMQtuNQZPVWh/WRsvtcaSSFQrTCKRq5Nso2SAuXlWTOBAs+x
bAj4plaD19CYhFSqfm8tZX8+vd6x8m21hJ46/CKknbereORFOgQ6ihSzK33o
6s1CIZc6zFCoVqnOVFXU/oxna669uzqmjHSpw+Ow69hGnSXEDcIynTCqsMiK
azFg6/tZa5pHZdcAw0uVObK7olGrdCFCY5SgNhrjEiyFO12OS4BIqyXYHb36
GGXYvCxjIYe59N10zVo9EldZr8Y7hex8sOBKe1niLwsunYKV9TyY4oaJHyct
Ll2nc8p9T6UEG6K5csIIREIcPvBGDXLD2VWHTvR5HtMJSLYHvU7xrIUKFKMM
A6LGIMr0Wva08aFK60AlkAFYVtI0lBrpMCyiUMFhQrvAAyXryD4v1gC3EF6a
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
aAy76F3dTzrz/PvO/wPOO3uh8FoAAA==

-->

</rfc>

