<?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.7.4 (Ruby 3.0.2) -->


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

]>

<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="-o*+"?>
<?rfc docmapping="yes"?>

<rfc ipr="trust200902" docName="draft-tschofenig-lamps-nonce-cmp-est-01" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Nonce Extension for CMP/EST">Nonce-based Freshness for Remote Attestation in Certificate Signing Requests (CSRs) for the Certification Management Protocol (CMP) and for Enrollment over Secure Transport (EST)</title>

    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization>Siemens</organization>
      <address>
        <email>hannes.tschofenig@siemens.com</email>
      </address>
    </author>
    <author initials="H." surname="Brockhaus" fullname="Hendrik Brockhaus">
      <organization>Siemens</organization>
      <address>
        <email>hendrik.brockhaus@siemens.com</email>
      </address>
    </author>

    <date year="2024" month="March" day="02"/>

    <area>Security</area>
    <workgroup>LAMPS</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 59?>

<t>Certificate Management Protocol (CMP) and Enrollment over Secure
Transport (EST) define protocol messages for X.509v3 certificate
creation and management. Both protocol provide interactions
between client systems and PKI management entities, such as a Registration
Authority (RA) and a Certification Authority (CA).</t>

<t>CMP and EST allow an RA/CA to request additional information it has to
provide in a certification request. When an end entity
places attestation Evidence in a Certificate Signing Request (CSR)
it may need to demonstrate freshness of the provided Evidence.
Attestation technology today often accomplishes this task via the
help of nonces.</t>

<t>This document specifies how nonces are provided by an RA/CA to
the end entity for inclusion in Evidence.</t>



    </abstract>



  </front>

  <middle>


<?line 77?>

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

<t>Several protocols have been standardized to automate the management
of certificates, such as certificate issuance, CA certificate provisioning,
certificate renewal and certificate revocation.</t>

<t>The Certificate Management Protocol (CMP) <xref target="I-D.ietf-lamps-rfc4210bis"/>
defines protocol messages for X.509v3 certificate creation and
management. CMP provides interactions between end entities and
PKI components, such as a Registration Authority (RA) and a
Certification Authority (CA).</t>

<t>Enrollment over Secure Transport (EST) <xref target="RFC7030"/><xref target="RFC8295"/> is another
certificate management protocol, which provides a sub-set
of the features offered by CMP.</t>

<t>An end entity requesting a certificate from a Certification Authority (CA)
may wish to offer believable claims about the protections afforded
to the corresponding private key, such as whether the private key
resides on a hardware security module or the protection capabilities
provided by the hardware, and claims about the platform itself.</t>

<t>To convey these claims in Evidence, as part of remote attestation,
the remote attestation extension <xref target="I-D.ietf-lamps-csr-attestation"/> has
been defined. It describes how to encode Evidence produced by an Attester
for inclusion in Certificate Signing Requests (CSRs), and any
certificates necessary for validating it.</t>

<t>A Verifier or Relying Party might need to learn the point in time
an Evidence has been produced.  This is essential in deciding whether
the included Claims can be considered fresh, meaning they still reflect
the latest state of the Attester.</t>

<t>Attestation technology available today, such as <xref target="TPM20"/> and
<xref target="I-D.tschofenig-rats-psa-token"/>, often accomplish freshness with
the help of nonces. More details about ensuring freshness of Evidence
can be found in Section 10 of <xref target="RFC9334"/>.</t>

<t>Since an end entity needs to obtain a nonce from the Verifier via the
Relying Party, this leads to an additional roundtrip. The CSR is, however,
a one-shot message. For this reason CMP and EST are used by the end entity
to obtain the nonce from the RA/CA.</t>

<t>CMP and EST conveniently offer a mechanism to request
information from the RA/CA prior to a certification request.</t>

<t>Once the nonce
is obtained the end entity can issue an API call to the Attester
to request Evidence and passes the nonce as an input parameter
into the API call. The returned Evidence is then embedded into
a CSR and returned to the RA/CA in a certification request message.</t>

<t><xref target="fig-arch"/> shows this interaction graphically. The nonce is obtained
in step (1) using the extension to CMP/EST defined in this document.
The CSR extension of <xref target="I-D.ietf-lamps-csr-attestation"/> is used to
convey Evidence to the RA/CA in step (2). The Verifier processes the
received information and returns an Attestation Result to the Relying
Party in step (3).</t>

<figure title="Architecture with Background Check Model." anchor="fig-arch"><artset><artwork  type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="448" viewBox="0 0 448 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
<path d="M 8,176 L 8,320" fill="none" stroke="black"/>
<path d="M 48,240 L 48,272" fill="none" stroke="black"/>
<path d="M 112,176 L 112,320" fill="none" stroke="black"/>
<path d="M 240,32 L 240,96" fill="none" stroke="black"/>
<path d="M 240,176 L 240,200" fill="none" stroke="black"/>
<path d="M 240,216 L 240,320" fill="none" stroke="black"/>
<path d="M 280,104 L 280,208" fill="none" stroke="black"/>
<path d="M 320,104 L 320,240" fill="none" stroke="black"/>
<path d="M 344,104 L 344,168" fill="none" stroke="black"/>
<path d="M 368,32 L 368,96" fill="none" stroke="black"/>
<path d="M 368,176 L 368,320" fill="none" stroke="black"/>
<path d="M 240,32 L 368,32" fill="none" stroke="black"/>
<path d="M 240,96 L 368,96" fill="none" stroke="black"/>
<path d="M 8,176 L 112,176" fill="none" stroke="black"/>
<path d="M 240,176 L 272,176" fill="none" stroke="black"/>
<path d="M 288,176 L 312,176" fill="none" stroke="black"/>
<path d="M 328,176 L 368,176" fill="none" stroke="black"/>
<path d="M 120,208 L 280,208" fill="none" stroke="black"/>
<path d="M 120,240 L 232,240" fill="none" stroke="black"/>
<path d="M 248,240 L 320,240" fill="none" stroke="black"/>
<path d="M 8,320 L 112,320" fill="none" stroke="black"/>
<path d="M 240,320 L 368,320" fill="none" stroke="black"/>
<polygon class="arrowhead" points="352,168 340,162.4 340,173.6 " fill="black" transform="rotate(90,344,168)"/>
<polygon class="arrowhead" points="328,104 316,98.4 316,109.6 " fill="black" transform="rotate(270,320,104)"/>
<polygon class="arrowhead" points="240,240 228,234.4 228,245.6 " fill="black" transform="rotate(0,232,240)"/>
<polygon class="arrowhead" points="128,208 116,202.4 116,213.6 " fill="black" transform="rotate(180,120,208)"/>
<polygon class="arrowhead" points="56,272 44,266.4 44,277.6 " fill="black" transform="rotate(90,48,272)"/>
<polygon class="arrowhead" points="56,240 44,234.4 44,245.6 " fill="black" transform="rotate(270,48,240)"/>
<g class="text">
<text x="300" y="68">Verifier</text>
<text x="392" y="116">(3)</text>
<text x="400" y="132">Attestation</text>
<text x="396" y="148">Result</text>
<text x="168" y="164">(1)</text>
<text x="160" y="180">Nonce</text>
<text x="196" y="180">in</text>
<text x="152" y="196">CMP</text>
<text x="180" y="196">or</text>
<text x="208" y="196">EST</text>
<text x="40" y="212">End</text>
<text x="52" y="228">Entity</text>
<text x="172" y="260">Evidence</text>
<text x="280" y="260">Relying</text>
<text x="148" y="276">in</text>
<text x="176" y="276">CSR</text>
<text x="272" y="276">Party</text>
<text x="328" y="276">(RA/CA)</text>
<text x="60" y="292">Attester</text>
<text x="168" y="292">(2)</text>
</g>
</svg>
</artwork><artwork  type="ascii-art"><![CDATA[
                              .---------------.
                              |               |
                              |   Verifier    |
                              |               |
                              '---------------'
                                   |    ^  |    (3)
                                   |    |  | Attestation
                                   |    |  |   Result
                    (1)            |    |  v
 .------------.   Nonce in    .----|----|-----.
 |            |   CMP or EST  |    |    |     |
 |  End       |<-------------------+    |     |
 |  Entity    |               |         |     |
 |    ^       |-------------->|---------'     |
 |    |       |   Evidence    | Relying       |
 |    v       |   in CSR      | Party (RA/CA) |
 |  Attester  |     (2)       |               |
 |            |               |               |
 '------------'               '---------------'
]]></artwork></artset></figure>

<t>The functionality of this document is described in two
sections, namely:</t>

<t><list style="symbols">
  <t><xref target="CMP"/> describes how to convey the nonce CMP, and</t>
  <t><xref target="EST"/> offers the equivalent functionality for EST.</t>
</list></t>

</section>
<section anchor="terminology-and-requirements-language"><name>Terminology and Requirements Language</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 <xref target="RFC2119"/>.</t>

<t>The terms Attester, Relying Party, Verifier and Evidence are defined
in <xref target="RFC9334"/>. The terms end entity, certification authority (CA),
and registration authority (RA) are defined in <xref target="RFC5280"/>.</t>

<t>We use the terms Certificate Signing Request (CSR) and certification
request interchangeably.</t>

</section>
<section anchor="CMP"><name>Conveying a Nonce in CMP</name>

<t>Section 5.3.19.16 of <xref target="I-D.ietf-lamps-rfc4210bis"/> defines the
general request message (genm) and general response (genp). 
The NonceRequest payload of the genm message, which is
send by the end entity to request a nonce, contains optional
details on the length of nonce the Attester requires.  The
NonceResponse payload of the genp message, which is
sent by the CA/RA in response to a request message by the end
entity, contains the nonce.</t>

<figure><artwork><![CDATA[
 GenMsg:    {id-it TBD1}, NonceRequestValue
 GenRep:    {id-it TBD2}, NonceResponseValue | < absent >

 id-it-NonceRequest OBJECT IDENTIFIER ::= { id-it TBD1 }
 NonceRequestValue ::= SEQUENCE {
    len INTEGER OPTIONAL,
    -- indicates the required length of the requested nonce
    hint EvidenceHint OPTIONAL
    -- indicates which Verifier to request a nonce from
 }

 id-it-NonceResponse OBJECT IDENTIFIER ::= { id-it TBD2 }
 NonceResponseValue ::= SEQUENCE {
    nonce OCTET STRING
    -- contains the nonce of length len
    -- provided by the Verifier indicated with hint
    expiry Time OPTIONAL
    -- indicates how long the Verifier considers the
    -- nonce valid
 }
]]></artwork></figure>

<t>Note: The EvidenceHint structure is defined in <xref target="I-D.ietf-lamps-csr-attestation"/>.
The hint is intended for an Attester to indicate to the EST server
which Verifier should be invoked to request a nonce.</t>

<t>The use of the general request/response message exchange leads to an
extra roundtrip to convey the nonce from the CA/RA to the end entity
(and ultimately to the Attester inside the end entity).</t>

<t>The end entity MUST construct a NonceRequest request message to
trigger the RA/CA to transmit a nonce in the response.</t>

<t>[Open Issue: Should request message indicate the remote attestation
capability of the end entity rather than relying on "policy
information"?  This may also allow to inform the CA/RA about the type
of attestation technology/technologies available to the end entity.]</t>

<t>If the end entity supports remote attestation and the policy requires
Evidence in a CSR to be provided, the RA/CA issues an NonceResponse
response message containing a nonce.</t>

<t><xref target="fig-cmp-msg"/> showns the interaction graphically.</t>

<figure title="CMP Exchange with Nonce and Evidence." anchor="fig-cmp-msg"><artwork><![CDATA[
End Entity                                          RA/CA
==========                                      =============

              -->>-- NonceRequest -->>--
                                                Verify request
                                                Generate nonce*
                                                Create response
              --<<-- NonceResponse --<<--
                      (nonce, expiry)

Generate key pair
Generate Evidence*
Generate certification request message
              -->>-- certification request -->>--
                    (+Evidence including nonce)
                                               Verify request
                                               Verify Evidence*
                                               Check for replay*
                                               Issue certificate
                                               Create response
              --<<-- certification response --<<--
Handle response
Store certificate

*: These steps require interactions with the Attester
(on the EE side) and with the Verifier (on the RA/CA side).
]]></artwork></figure>

</section>
<section anchor="EST"><name>Conveying a Nonce in EST</name>

<t>The EST client can request a nonce for its Attester.
This function is generally performed after requesting CA certificates
and before other EST functions.</t>

<t>The EST server MUST support the use of the path-prefix of "/.well-
known/" as defined in <xref target="RFC5785"/> and the registered name of "est".
Thus, a valid EST server URI path begins with
"https://www.example.com/.well-known/est".  Each EST operation is
indicated by a path-suffix that indicates the intended operation.</t>

<t>The following operation is defined by this specificaion:</t>

<figure><artwork><![CDATA[
 +------------------------+-----------------+-------------------+
 | Operation              |Operation path   | Details           |
 +========================+=================+===================+
 | Retrieval of a nonce   | /nonce          | This section      |
 +------------------------+-----------------+-------------------+
]]></artwork></figure>

<t>The operation path is appended to the path-prefix to form
the URI used with HTTP GET or POST to perform the desired EST
operation.  An example valid URI absolute path for the "/nonce"
operation is "/.well-known/est/nonce".</t>

<t>An EST client uses a GET or a POST depending on whether parameters
are included:</t>

<t><list style="symbols">
  <t>A GET request MUST be used when the EST client does not want to
convey extra parameters.</t>
  <t>A POST request MUST be used when parameters, like nonce length
or a hint about the verification service, are included in the request.</t>
</list></t>

<figure><artwork><![CDATA[
 +-------------------+---------------------------------+---------------+
 | Message type      | Media type(s)                   | Reference     |
 | (per operation)   |                                 |               |
 +===================+=================================+===============+
 | Nonce Request     | N/A (for GET) or                | This section  |
 |                   | application/json (for POST)     |               |
 +===================+=================================+===============+
 | Nonce Response    | application/json                | This section  |
 |                   |                                 |               |
 +===================+=================================+===============+
]]></artwork></figure>

<t>To retrieve a nonce using a GET, the EST client would use the following
HTTP request-line:</t>

<figure><artwork><![CDATA[
GET /.well-known/est/nonce HTTP/1.1
]]></artwork></figure>

<t>To retrieve a nonce by specifying the size of the requested nonce
(and/or by including a hint about the Verification service) a POST
message is used, as shown below:</t>

<figure><artwork><![CDATA[
POST /.well-known/est/nonce HTTP/1.1
Content-Type: application/json
{
  "len": 8,
  "hint": "https://example.com"
}
]]></artwork></figure>

<t>The payload in a POST request MUST be of content-type of "application/json"
and MUST contain a JSON object <xref target="RFC7159"/> with the member "len" and/or
"hint". The value of the "len" member indicates the length of the requested
nonce value in bytes. The "hint" member contains either be a rfc822Name, a
dNSName, a uri, or a test value (based on the definition in the EvidenceHint
structure from <xref target="I-D.ietf-lamps-csr-attestation"/>).</t>

<t>The EST server MAY request HTTP-based client authentication, as
explained in Section 3.2.3 of <xref target="RFC7030"/>.</t>

<t>If the request is successful, the EST server response MUST contain
a HTTP 200 response code with a content-type of "application/json"
and a JSON object  <xref target="RFC7159"/> with the member nonce. The expiry
member is optional and indicates the time the nonce is considered
valid. After the expiry time is expired, the session is likely
garbage collected.</t>

<t>Below is a non-normative example of the response given by the EST server:</t>

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

{
    "nonce": "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=",
    "expiry": "2031-10-12T07:20:50.52Z"
}
]]></artwork></figure>

<t>[Open Issue: Should we also register a content type for use with
EST over CoAP where the nonce and the expiry field is encoded in
a CBOR structure?]</t>

</section>
<section anchor="nonce-processing-guidelines"><name>Nonce Processing Guidelines</name>

<t>When the RA/CA is requested or configured to transmit a nonce to an
end entity then it interacts with the Verifier.
The Verifier is, according to the IETF RATS architecture <xref target="RFC9334"/>, "a role
performed by an entity that appraises the validity of Evidence about
an Attester and produces Attestation Results to be used by a Relying
Party." Since the Verifier validates Evidence it is also the source
of the nonce to check for replay.</t>

<t>The nonce value MUST contain a random byte sequence whereby the length
depends on the used remote attestation technology.
Since the nonce is relayed with the RA/CA, it MUST be copied to
the respective structure, as described in <xref target="EST"/> and <xref target="CMP"/>, for
transmission to the Attester.</t>

<t>For example, the PSA attestation token <xref target="I-D.tschofenig-rats-psa-token"/>
supports nonces of length 32, 48 and 64 bytes. Other attestation
technologies use nonces of similar length. The assumption in this
specification is that the RA/CA have out-of-band knowledge about the
required nonce length required for the attestation technology used by
the end entity. The nonces of incorrect length will cause the remote
attestation protocol to fail.</t>

<t>When the end entity receives the nonce it MUST use it, if remote
attestation is available and supports nonces. It is better for an
RA/CA to be aggressive in sending a nonce, at least where there is a
reasonable chance the client supports remote attestation and the
client should be allowed to ignore the nonce if it either does not
support it or cannot use it for policy reasons.</t>

<t>While the semantics of the attestation API and the software/hardware
architecture is out-of-scope of this specification, the API will return
Evidence from the Attester in a format specific to the attestation technology
utilized. The encoding of the returned evidence varies but will be placed
inside the CSR, as specified in <xref target="I-D.ietf-lamps-csr-attestation"/>. The
software creating the CSR will not have to interpret the Evidence format
- it is treated as an opaque blob. It is important to note that the
nonce is carried in the Evidence, either implicitly or explicitly, and
it MUST NOT be conveyed in CSR structures outside the Evidence payload.</t>

<t>The processing of the CSR containing Evidence is described in
<xref target="I-D.ietf-lamps-csr-attestation"/>. Note that the issued certificates
does not contain the nonce, as explained in
<xref target="I-D.ietf-lamps-csr-attestation"/>.</t>

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

<t>TBD:</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This specification defines how to obtain a nonce via CMP and EST and
assumes that the nonce does not require confidentiality protection
without impacting the security property of the remote attestation protocol.
<xref target="RFC9334"/> defines the IETF remote attestation architecture discusses
nonce-based freshness in great detail.</t>

<t>Section 8.4 of <xref target="I-D.ietf-rats-eat"/> places randomness and privacy requirement
on the generation of the nonce for use with an Entity Attestation Token (EAT).
These requirements have been adopted by attestation technologies, such
as the PSA attestation token <xref target="I-D.tschofenig-rats-psa-token"/> and are of general
utility:</t>

<t><list style="symbols">
  <t>The nonce MUST have at least 64 bits of entropy.</t>
  <t>To avoid the conveyance of privacy-related information in the nonce,
it should be derived using a salt that originates from a true and
 reliable random number generator or any other source of randomness.</t>
</list></t>

<t>Since each specification of an attestation technology offers guidance
for replay protection with nonces (and other techniques) this document
needs to defer specific guidance to the respective specifications.</t>

<t>For the use of Evidence in a CSR the security considerations of
<xref target="I-D.ietf-lamps-csr-attestation"/> are relevant to this document.</t>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<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="I-D.ietf-lamps-csr-attestation">
   <front>
      <title>Use of Remote Attestation with Certificate Signing Requests</title>
      <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
         <organization>Entrust Limited</organization>
      </author>
      <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         <organization>Siemens</organization>
      </author>
      <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
         <organization>Fraunhofer SIT</organization>
      </author>
      <date day="1" month="March" year="2024"/>
      <abstract>
	 <t>   A PKI end entity requesting a certificate from a Certification
   Authority (CA) may wish to offer believable claims about the
   protections afforded to the corresponding private key, such as
   whether the private key resides on a hardware security module or the
   protection capabilities provided by the hardware.

   This document defines a new PKCS#10 attribute attr-evidence and CRMF
   extension ext-evidence that allows placing any Evidence data, in any
   pre-existing format, along with any certificates needed to validate
   it, into a PKCS#10 or CRMF CSR.

   Including Evidence along with a CSR can help to improve the
   assessment of the security posture for the private key, and the
   trustworthiness properties of the submitted key to the requested
   certificate profile.  These Evidence Claims can include information
   about the hardware component&#x27;s manufacturer, the version of installed
   or running firmware, the version of software installed or running in
   layers above the firmware, or the presence of hardware components
   providing specific protection capabilities or shielded locations
   (e.g., to protect keys).

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-csr-attestation-08"/>
   
</reference>


<reference anchor="I-D.ietf-lamps-rfc4210bis">
   <front>
      <title>Internet X.509 Public Key Infrastructure -- Certificate Management Protocol (CMP)</title>
      <author fullname="Hendrik Brockhaus" initials="H." surname="Brockhaus">
         <organization>Siemens</organization>
      </author>
      <author fullname="David von Oheimb" initials="D." surname="von Oheimb">
         <organization>Siemens</organization>
      </author>
      <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
         <organization>Entrust</organization>
      </author>
      <author fullname="John Gray" initials="J." surname="Gray">
         <organization>Entrust</organization>
      </author>
      <date day="1" month="March" year="2024"/>
      <abstract>
	 <t>   This document describes the Internet X.509 Public Key Infrastructure
   (PKI) Certificate Management Protocol (CMP).  Protocol messages are
   defined for X.509v3 certificate creation and management.  CMP
   provides interactions between client systems and PKI components such
   as a Registration Authority (RA) and a Certification Authority (CA).

   This document obsoletes RFC 4210 by including the updates specified
   by CMP Updates RFC 9480 Section 2 and Appendix A.2 maintaining
   backward compatibility with CMP version 2 wherever possible and
   obsoletes both documents.  Updates to CMP version 2 are: improving
   crypto agility, extending the polling mechanism, adding new general
   message types, and adding extended key usages to identify special CMP
   server authorizations.  Introducing CMP version 3 to be used only for
   changes to the ASN.1 syntax, which are: support of EnvelopedData
   instead of EncryptedValue and hashAlg for indicating a hash
   AlgorithmIdentifier in certConf messages.

   In addition to the changes specified in CMP Updates RFC 9480 this
   document adds support for management of KEM certificates.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-rfc4210bis-08"/>
   
</reference>

<reference anchor="RFC8295">
  <front>
    <title>EST (Enrollment over Secure Transport) Extensions</title>
    <author fullname="S. Turner" initials="S." surname="Turner"/>
    <date month="January" year="2018"/>
    <abstract>
      <t>The EST (Enrollment over Secure Transport) protocol defines the Well-Known URI (Uniform Resource Identifier) -- /.well-known/est -- along with a number of other path components that clients use for PKI (Public Key Infrastructure) services, namely certificate enrollment (e.g., /simpleenroll). This document defines a number of other PKI services as additional path components -- specifically, firmware and trust anchors as well as symmetric, asymmetric, and encrypted keys. This document also specifies the PAL (Package Availability List), which is an XML (Extensible Markup Language) file or JSON (JavaScript Object Notation) object that clients use to retrieve packages available and authorized for them. This document extends the EST server path components to provide these additional services.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8295"/>
  <seriesInfo name="DOI" value="10.17487/RFC8295"/>
</reference>

<reference anchor="RFC7030">
  <front>
    <title>Enrollment over Secure Transport</title>
    <author fullname="M. Pritikin" initials="M." role="editor" surname="Pritikin"/>
    <author fullname="P. Yee" initials="P." role="editor" surname="Yee"/>
    <author fullname="D. Harkins" initials="D." role="editor" surname="Harkins"/>
    <date month="October" year="2013"/>
    <abstract>
      <t>This document profiles certificate enrollment for clients using Certificate Management over CMS (CMC) messages over a secure transport. This profile, called Enrollment over Secure Transport (EST), describes a simple, yet functional, certificate management protocol targeting Public Key Infrastructure (PKI) clients that need to acquire client certificates and associated Certification Authority (CA) certificates. It also supports client-generated public/private key pairs as well as key pairs generated by the CA.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7030"/>
  <seriesInfo name="DOI" value="10.17487/RFC7030"/>
</reference>

<reference anchor="RFC5280">
  <front>
    <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
    <author fullname="D. Cooper" initials="D." surname="Cooper"/>
    <author fullname="S. Santesson" initials="S." surname="Santesson"/>
    <author fullname="S. Farrell" initials="S." surname="Farrell"/>
    <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
    <author fullname="R. Housley" initials="R." surname="Housley"/>
    <author fullname="W. Polk" initials="W." surname="Polk"/>
    <date month="May" year="2008"/>
    <abstract>
      <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5280"/>
  <seriesInfo name="DOI" value="10.17487/RFC5280"/>
</reference>

<reference anchor="RFC5785">
  <front>
    <title>Defining Well-Known Uniform Resource Identifiers (URIs)</title>
    <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
    <author fullname="E. Hammer-Lahav" initials="E." surname="Hammer-Lahav"/>
    <date month="April" year="2010"/>
    <abstract>
      <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5785"/>
  <seriesInfo name="DOI" value="10.17487/RFC5785"/>
</reference>

<reference anchor="RFC7159">
  <front>
    <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
    <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
    <date month="March" year="2014"/>
    <abstract>
      <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
      <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7159"/>
  <seriesInfo name="DOI" value="10.17487/RFC7159"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC9334">
  <front>
    <title>Remote ATtestation procedureS (RATS) Architecture</title>
    <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="N. Smith" initials="N." surname="Smith"/>
    <author fullname="W. Pan" initials="W." surname="Pan"/>
    <date month="January" year="2023"/>
    <abstract>
      <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9334"/>
  <seriesInfo name="DOI" value="10.17487/RFC9334"/>
</reference>


<reference anchor="I-D.tschofenig-rats-psa-token">
   <front>
      <title>Arm&#x27;s Platform Security Architecture (PSA) Attestation Token</title>
      <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         </author>
      <author fullname="Simon Frost" initials="S." surname="Frost">
         <organization>Arm Limited</organization>
      </author>
      <author fullname="Mathias Brossard" initials="M." surname="Brossard">
         <organization>Arm Limited</organization>
      </author>
      <author fullname="Adrian L. Shaw" initials="A. L." surname="Shaw">
         <organization>HP Labs</organization>
      </author>
      <author fullname="Thomas Fossati" initials="T." surname="Fossati">
         <organization>Linaro</organization>
      </author>
      <date day="21" month="February" year="2024"/>
      <abstract>
	 <t>   The Arm Platform Security Architecture (PSA) is a family of hardware
   and firmware security specifications, as well as open-source
   reference implementations, to help device makers and chip
   manufacturers build best-practice security into products.  Devices
   that are PSA compliant can produce attestation tokens as described in
   this memo, which are the basis for many different protocols,
   including secure provisioning and network access control.  This
   document specifies the PSA attestation token structure and semantics.

   The PSA attestation token is a profile of the Entity Attestation
   Token (EAT).  This specification describes what claims are used in an
   attestation token generated by PSA compliant systems, how these
   claims get serialized to the wire, and how they are cryptographically
   protected.

   This informational document is published as an independent submission
   to improve interoperability with ARM&#x27;s architecture.  It is not a
   standard nor a product of the IETF.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-tschofenig-rats-psa-token-22"/>
   
</reference>


<reference anchor="I-D.ietf-rats-eat">
   <front>
      <title>The Entity Attestation Token (EAT)</title>
      <author fullname="Laurence Lundblade" initials="L." surname="Lundblade">
         <organization>Security Theory LLC</organization>
      </author>
      <author fullname="Giridhar Mandyam" initials="G." surname="Mandyam">
         </author>
      <author fullname="Jeremy O&#x27;Donoghue" initials="J." surname="O&#x27;Donoghue">
         <organization>Qualcomm Technologies Inc.</organization>
      </author>
      <author fullname="Carl Wallace" initials="C." surname="Wallace">
         <organization>Red Hound Software, Inc.</organization>
      </author>
      <date day="15" month="January" year="2024"/>
      <abstract>
	 <t>   An Entity Attestation Token (EAT) provides an attested claims set
   that describes state and characteristics of an entity, a device like
   a smartphone, IoT device, network equipment or such.  This claims set
   is used by a relying party, server or service to determine the type
   and degree of trust placed in the entity.

   An EAT is either a CBOR Web Token (CWT) or JSON Web Token (JWT) with
   attestation-oriented claims.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-rats-eat-25"/>
   
</reference>


<reference anchor="TPM20" target="https://trustedcomputinggroup.org/resource/tpm-library-specification/">
  <front>
    <title>Trusted Platform Module Library Specification, Family 2.0, Level 00, Revision 01.59</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2019" month="November"/>
  </front>
</reference>


    </references>


<?line 445?>

<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>We would like to thank Russ Housley, Thomas Fossati, Watson Ladd, Ionut Mihalcea
and Carl Wallace for their review comments.</t>

</section>


  </back>

<!-- ##markdown-source:
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
fda4Pyut1v4fTgEa/wcQ+NAXN0cAAA==

-->

</rfc>

