<?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.6.35 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ounsworth-csr-attestation-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title abbrev="CSR Attestation Attributes">Use of Attestation with Certification Signing Requests</title>
    <seriesInfo name="Internet-Draft" value="draft-ounsworth-csr-attestation-latest"/>
    <author initials="M." surname="Ounsworth" fullname="Mike Ounsworth">
      <organization abbrev="Entrust">Entrust Limited</organization>
      <address>
        <postal>
          <street>2500 Solandt Road – Suite 100</street>
          <city>Ottawa, Ontario</city>
          <code>K2K 3G5</code>
          <country>Canada</country>
        </postal>
        <email>mike.ounsworth@entrust.com</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization>Siemens</organization>
      <address>
        <email>Hannes.Tschofenig@gmx.net</email>
      </address>
    </author>
    <date year="2023" month="July" day="08"/>
    <keyword>PKI</keyword>
    <keyword>PKCS#10</keyword>
    <keyword>Attestation</keyword>
    <keyword>Certification Signing Requests</keyword>
    <abstract>
      <?line 57?>

<t>Utilizing information from a device or hardware security module about its posture
can help to improve security of the overall system. Information about the manufacturer
of the hardware, the version of the firmware running on this hardware and potentially
about the layers of software above the firmware, the presence of hardware security
functionality to protect keys and many more properties can be made available to remote
parties in a cryptographically secured way. This functionality is accomplished with
attestation technology.</t>
      <t>This document describes extensions to encode evidence produced by an attester
for inclusion in PKCS10 certificate signing requests. More specifically, two
new ASN.1 Attribute definitions, and an ASN.1 CLASS definition to convey
attestation information to a Registration Authority or to a Certification
Authority are described.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://lamps-wg.github.io/csr-attestation/draft-ounsworth-csr-attestation.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ounsworth-csr-attestation/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/lamps-wg/csr-attestation"/>.</t>
    </note>
  </front>
  <middle>
    <?line 73?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>At the time that it is requesting a certificate from a Certification
Authority, a PKI end entity may wish to provide evidence of the security
properties of the environment in which the private key is stored to be verified
by a relying party such as the Registration Authority or the Certificate
Authority. This specification provides a newly defined attestation attribute
for carrying remote attestations in PKCS#10 Certification Requests (CSR) <xref target="RFC2986"/>.</t>
      <t>As outlined in the RATS Architecture <xref target="RFC9334"/>, an Attester (typically
a device) produces a signed collection of Evidence about its running environment,
often refered to as an "attestation". A Relying Party may consult that
attestation in making policy decisions about the trustworthiness of the
entity being attested. <xref target="architecture"/> overviews how the various roles
in the RATS Archictecture map to a certificate requester and a CA/RA.</t>
      <t>At the time of writing, several standardized and proprietary attestation technologies
are in use. This specification thereby tries to be technology agnostic with
regards to the transport of the produced signed claims.</t>
      <t>This document is concerned only about the transport of an attesttation
inside a CSR and makes minimal assumptions about its content or format.
We assume that an attestation can be broken into the following components:</t>
      <ol spacing="normal" type="1"><li>A set of certificates typically containing one or more certificate chains
rooted in a device manufacture trust anchor and the leaf certificate being
on the device in question.</li>
        <li>An attestation statement containing Evidence.</li>
      </ol>
      <t>This document creates two ATTRIBUTE/Attribute definitions. The first
Attribute may be used to carry a set of certificates or public keys that
may be necessary to validate evidence. The second Attribute carries a
structure that may be used to carry key attestation statements, signatures
and related data.</t>
      <t>A CSR may contain one or more attestations, for example a key attestation
asserting the storage properties of the private key as well as a platform
attestation asserting the firmware version and other general properties
of the device, or multiple key attestations signed by certificate chains
on different cryptographic algorithms.</t>
      <t>With these attributes, an RA or CA has additional
information about whether to issue a certificate and what information
to populate into the certificate. The scope of this document is, however,
limited to the transport of evidence via a CSR. The exact format of the
attestation data being carried is defined in various standard and proprietary
specifications.</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?>

<t>This document re-uses the terms defined in RFC 9334 related to remote
attestation. Readers of this document are assumed to be familiar with
the following terms: evidence, claim, attestation result, attester,
verifier, and relying party.</t>
    </section>
    <section anchor="architecture">
      <name>Architecture</name>
      <t><xref target="fig-arch"/> shows the high-level communication pattern of the RATS passport
model where the attester transmits the evidence in the CSR to the RA
and the CA. The verifier processes the received evidence and computes
an attestation result, which is then processed by the RA/CA prior to the
certificate issuance.</t>
      <t>Note that the verifier is a logical role that may be included in the
RA/CA product. In this case the Relying Party and Verifier collapse into a
single entity. The verifier functionality can, however,
also be kept separate from the RA/CA functionality, such as a utility or
library provided by the device manufacturer. For example,
security concerns may require parsers of evidence formats to be logically
or physically separated from the core CA functionality.</t>
      <figure anchor="fig-arch">
        <name>Architecture</name>
        <artwork><![CDATA[
                              .-------------.
                              |             | Compare Evidence
                              |   Verifier  | against
                              |             | policy
                              '--------+----'
                                   ^   |
                          Evidence |   | Attestation
                                   |   | Result
                                   |   v
 .------------.               .----|----------.
 |            +-------------->|----'          | Compare Attestation
 |  Attester  |   Evidence    | Relying       | Result against
 |            |   in CSR      | Party (RA/CA) | policy
 '------------'               '---------------'
]]></artwork>
      </figure>
      <t>As discussed in RFC 9334, different security and privacy aspects need to be
considered. For example, evidence may need to be protected against replay and
Section 10 of RFC 9334 lists approach for offering freshness. There are also
concerns about the exposure of persistent identifiers by utilizing attestation
technology, which are discussed in Section 11 of RFC 9334. Finally, the keying
material used by the attester need to be protected against unauthorized access,
and against signing arbitrary content that originated from outside the device.
This aspect is described in Section 12 of RFC 9334. Most of these aspects are,
however, outside the scope of this specification but relevant for use with a
given attestation technology. The focus of this specification is on the
transport of evidence from the attester to the relying party via existing
certification request messages.</t>
    </section>
    <section anchor="asn1-elements">
      <name>ASN.1 Elements</name>
      <section anchor="object-identifiers">
        <name>Object Identifiers</name>
        <artwork><![CDATA[
-- Root of IETF's PKIX OID tree
id-pkix OBJECT IDENTIFIER ::= { iso(1) identified-organization(3)
     dod(6) internet(1) security(5) mechanisms(5) pkix(7) }

-- S/Mime attributes - can be used here.
id-aa OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
     rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) attributes(2)}

-- Branch for attestation statement types
id-ata OBJECT IDENTIFIER ::= { id-pkix (TBD1) }
]]></artwork>
      </section>
      <section anchor="attestattribute">
        <name>AttestAttribute</name>
        <t>By definition, Attributes within a Certification Signing Request are
typed as ATTRIBUTE.  This attribute definition contains one or more
attestation statements of a type "AttestStatement".</t>
        <artwork><![CDATA[
id-aa-attestStatement OBJECT IDENTIFIER ::= { id-aa (TBDAA2) }

AttestAttribute ATTRIBUTE ::= {
  TYPE AttestStatement
  IDENTIFIED BY id-aa-attestStatement
}
]]></artwork>
        <t>A CSR <bcp14>MAY</bcp14> contain one or more instance of <tt>AttestAttribute</tt> to allow,
for example a key attestation
asserting the storage properties of the private key as well as a platform
attestation asserting the firmware version and other general properties
of the device, or multiple key attestations signed by certificate chains
on different cryptographic algorithms.</t>
      </section>
      <section anchor="atteststatement">
        <name>AttestStatement</name>
        <t>An AttestStatement is a simple type-value pair encoded as
a sequence, of which the type of the "value" field is
controlled by the value of the "type" field, similar to an Attribute
definition.</t>
        <artwork><![CDATA[
AttestStatement ::= SEQUENCE {
  type   OBJECT IDENTIFIER,
  value  ANY
}
]]></artwork>
      </section>
      <section anchor="attestcertsattribute">
        <name>AttestCertsAttribute</name>
        <t>The "AttestCertsAttribute" contains a set of certificates that
may be needed to validate the contents of an attestation statement
contained in an attestAttribute. The set of certificates should contain
the object that contains the public key needed to directly validate the
AttestAttribute.  The remaining elements should chain that data back to
an agreed upon root of trust for attestations. No order is implied, it is
the Verifier's responsibility to perform the appropriate certificate path building.</t>
        <t>A CSR <bcp14>MUST</bcp14> contain at most 1 <tt>AttestCertsAttribute</tt>. In the case where
the CSR contains multiple instances of <tt>AttestAttribute</tt> representing
multiple attestations, all necessary certificates <bcp14>MUST</bcp14> be contained in
the same instance of <tt>AttestCertsAttribute</tt>.</t>
        <artwork><![CDATA[
id-aa-attestChainCerts OBJECT IDENTIFIER ::= { id-aa (TBDAA1) }

AttestCertsAttribute ATTRIBUTE ::= {
  TYPE SET OF CertificateChoice
  COUNTS MAX 1
  IDENTIFIED BY id-aa-attestChainCerts
}
]]></artwork>
      </section>
      <section anchor="certificatechoice">
        <name>CertificateChoice</name>
        <t>This is an ASN.1 CHOICE construct used to represent an encoding of a
broad variety of certificate types.</t>
        <artwork><![CDATA[
CertificateChoice ::=
   CHOICE {
      cert Certificate,
      opaqueCert    [0] IMPLICIT OCTET STRING,
      typedCert     [1] IMPLICIT TypedCert,
      typedFlatCert [2] IMPLICIT TypedFlatCert
   }
]]></artwork>
        <t>"Certificate" is a standard X.509 certificate that <bcp14>MUST</bcp14> be compliant
with RFC5280.  Enforcement of this constraint is left to the relying
parties.</t>
        <t>"opaqueCert" should be used sparingly as it requires the receiving
party to implictly know its format.  It is encoded as an OCTET
STRING.</t>
        <t>"TypedCert" is an ASN.1 construct that has the charateristics of a
certificate, but is not encoded as an X.509 certificate.  The
certTypeField indicates how to interpret the certBody field.  While
it is possible to carry any type of data in this structure, it's
intended the content field include data for at least one public key
formatted as a SubjectPublicKeyInfo (see <xref target="RFC5912"/>).</t>
        <artwork><![CDATA[
TYPED-CERT ::= TYPE-IDENTIFIER

CertType ::= TYPED-CERT.&id

TypedCert ::= SEQUENCE {
              certType     TYPED-CERT.&id({TypedCertSet}),
              content     TYPED-CERT.&Type ({TypedCertSet}{@certType})
          }

TypedCertSet TYPED-CERT ::= {
             ... -- Empty for now,
             }
]]></artwork>
        <t>"TypedFlatCert" is a certificate that does not have a valid ASN.1
encoding.  Think compact or implicit certificates as might be used
with smart cards.  certType indicates the format of the data in the
certBody field, and ideally refers to a published specification.</t>
        <artwork><![CDATA[
TypedFlatCert ::= SEQUENCE {
    certType OBJECT IDENTIFIER,
    certBody OCTET STRING
}
]]></artwork>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>The IANA is requested to open one new registry, allocate a value
from the "SMI Security for PKIX Module Identifier" registry for the
included ASN.1 module, and allocate values from "SMI Security for
S/MIME Attributes" to identify two Attributes defined within.</t>
      <section anchor="object-identifier-allocations">
        <name>Object Identifier Allocations</name>
        <section anchor="module-registration-smi-security-for-pkix-module-identifer">
          <name>Module Registration - SMI Security for PKIX Module Identifer</name>
          <ul spacing="normal">
            <li>Decimal: IANA Assigned - Replace TBDMOD</li>
            <li>Description: CSR-ATTESTATION-2023 - id-mod-pkix-attest-01</li>
            <li>References: This Document</li>
          </ul>
        </section>
        <section anchor="object-identifier-registrations-smi-security-for-smime-attributes">
          <name>Object Identifier Registrations - SMI Security for S/MIME Attributes</name>
          <ul spacing="normal">
            <li>
              <t>Attest Statement  </t>
              <ul spacing="normal">
                <li>Decimal: IANA Assigned - Replace TBDAA2</li>
                <li>Description: id-aa-attestStatement</li>
                <li>References: This Document</li>
              </ul>
            </li>
            <li>
              <t>Attest Certificate Chain  </t>
              <ul spacing="normal">
                <li>Decimal: IANA Assigned - Replace TBDAA1</li>
                <li>Description: id-aa-attestChainCerts</li>
                <li>References: This Document</li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="smi-security-for-pkix-attestation-statement-formats-registry">
          <name>"SMI Security for PKIX Attestation Statement Formats" Registry</name>
          <t>Please open up a registry for Attestation Statement Formats within
the SMI-numbers registry, allocating an assignment from id-pkix ("SMI
Security for PKIX" Registry) for the purpose.</t>
          <ul spacing="normal">
            <li>Decimal: IANA Assigned - replace TBD1</li>
            <li>Description: id-ata</li>
            <li>References: This document</li>
            <li>Initial contents: None</li>
            <li>Registration Regime: Specification Required.
Document must specify an ATTEST-STATEMENT definition to which this Object Identifier shall be bound.</li>
          </ul>
          <t>Columns:</t>
          <ul spacing="normal">
            <li>Decimal: The subcomponent under id-ata</li>
            <li>Description: Begins with id-ata</li>
            <li>References: RFC or other document</li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The attestation evidence communicated in the attributes and
structures defined in this document are meant to be used in
a PKCS10 Certification Signing Request (CSR). It is up to the
verifier and to the relying party (RA/CA) to place as much or
as little trust in this information as dictated by policies.</t>
      <t>This document defines the transport of evidence of different formats
in a CSR. Some of these attestation formats are based on standards
while others are proprietary formats. A verifier will need to understand
these formats for matching the received values against policies.</t>
      <t>Policies drive the processing of evidence at the verifier and other
policies influence the decision making at the relying party when
evaluating the attestation result. The relying party is ultimately
responsible for making a decision of what attestation-related
information in the CSR it will accept. The presence of the attributes
defined in this specification provide the relying party with additional
assurance about attester. Policies used at the verifier and the relying
party are implementation dependent and out of scope for this document.
Whether to require the use of the attestation-related attributes in the
CSR is out-of-scope for this document.</t>
      <t>Evidence generated by the attestation generally needs to be fresh to provide
value to the verifier since the configuration on the device may change
over time. Section 10 of <xref target="RFC9334"/> discusses different approaches for
providing freshness, including a nonce-based approach, the use of timestamps
and an epoch-based technique.  The use of nonces requires an extra message
exchange via the relying party and the use of timestamps requires
synchronized clocks. Epochs also require communication. The definition of
"fresh" is somewhat ambiguous in the context of CSRs, especially
considering that non-automated certificate enrollments are often asyncronous,
and considering the common practice of re-using the same CSR
for multiple certificate renewals across the lifetime of a key.
"Freshness" typically implies both asserting that the data was generated
at a certain point-in-time, as well as providing non-replayability.
Developers, operators, and designers of protocols which embed
attestation-carrying-CSRs need to consider what notion of freshness is
appropriate and available in-context; thus the issue of freshness is
out-of-scope for this document.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <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="RFC5912">
          <front>
            <title>New ASN.1 Modules for the Public Key Infrastructure Using X.509 (PKIX)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>The Public Key Infrastructure using X.509 (PKIX) certificate format, and many associated formats, are expressed using ASN.1.  The current ASN.1 modules conform to the 1988 version of ASN.1.  This document updates those ASN.1 modules to conform to the 2002 version of ASN.1.  There are no bits-on-the-wire changes to any of the formats; this is simply a change to the syntax.  This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5912"/>
          <seriesInfo name="DOI" value="10.17487/RFC5912"/>
        </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>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC2986">
          <front>
            <title>PKCS #10: Certification Request Syntax Specification Version 1.7</title>
            <author fullname="M. Nystrom" initials="M." surname="Nystrom"/>
            <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
            <date month="November" year="2000"/>
            <abstract>
              <t>This memo represents a republication of PKCS #10 v1.7 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series, and change control is retained within the PKCS process. The body of this document, except for the security considerations section, is taken directly from the PKCS #9 v2.0 or the PKCS #10 v1.7 document. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2986"/>
          <seriesInfo name="DOI" value="10.17487/RFC2986"/>
        </reference>
        <reference anchor="I-D.tschofenig-rats-psa-token">
          <front>
            <title>Arm'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>Arm Limited</organization>
            </author>
            <date day="5" month="July" year="2023"/>
            <abstract>
              <t>   The 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
   are able to produce attestation tokens as described in this memo,
   which are the basis for a number of 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 profiled 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.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-tschofenig-rats-psa-token-12"/>
        </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>
    </references>
    <?line 424?>

<section anchor="examples">
      <name>Examples</name>
      <t>This section provides two non-normative examples for embedding evidence
in in CSRs. The first example conveys Arm Platform Security Architecture
tokens, which offers platform attestation, into the CSR. The second example
embeds the TPM v2.0 attestation information in the CSR.</t>
      <section anchor="tpm-v20-attestation-in-csr">
        <name>TPM V2.0 Attestation in CSR</name>
        <t>The following example illustrates a CSR with a signed TPM Quote based on
<xref target="TPM20"/>. The Platform Configuration Registers (PCRs) are fixed-size
registers in a TPM that record measurements of software and configuration
information and are therefore used to capture the system state. The digests
stored in these registers are then digitially signed with an attestation
key known to the hardware.</t>
        <t>Note: The information conveyed in the value field of the AttestStatement
structure may contain more information than the signed TPM Quote structure
defined in the TPM v2.0 specification <xref target="TPM20"/>, such as plaintext PCR values,
the up-time, the event log, etc. The detailed structure of such
payload is, however, not defined in this document and may be subject to
future standardization work in supplementary documents.</t>
        <figure anchor="fig-example-tpm">
          <name>CSR with embedded TPM V2.0 Attestation</name>
          <artwork><![CDATA[
Certification Request:
    Data:
        Version: 1 (0x0)
        Subject: CN = server.example.com
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:b9:7c:02:a1:1f:9c:f3:f4:c4:55:3a:d9:3e:26:
                    e8:e5:11:63:84:36:5f:93:a6:99:7d:d7:43:23:0a:
                    4f:c0:a8:40:46:7e:8d:b2:1a:38:19:ff:6a:a7:38:
                    16:06:1e:12:9f:d1:d5:58:55:e6:be:6d:bb:e1:fb:
                    f7:70:a7:5c:c9
                ASN1 OID: prime256v1
                NIST CURVE: P-256
        Attributes:
            AttestStatement
               type: TBD2 (identifying TPM V2.0 attestation)
               value:
                    80:02:00:00:01:99:00:00:00:00:00:00:01:86:00:7e
                    ff:54:43:47:80:18:00:22:00:0b:76:71:0f:61:80:95
                    8d:89:32:38:a6:cc:40:43:02:4a:da:26:d5:ea:11:71
                    99:d7:a5:59:a4:18:54:1e:7b:86:00:0d:30:2e:66:6e
                    6a:37:66:63:39:31:76:62:74:00:00:00:00:00:00:36
                    5b:bc:0b:71:4f:d8:84:90:09:01:42:82:48:a6:46:53
                    98:96:00:00:00:01:00:0b:03:0f:00:00:00:20:49:ce
                    66:9a:aa:7e:52:ff:93:0e:dd:9f:27:97:88:eb:75:cb
                    ad:53:22:e5:ad:2c:9d:44:1e:dd:65:48:6b:88:00:14
                    00:0b:01:00:15:a4:95:8a:0e:af:04:36:be:35:f7:27
                    85:bd:7f:87:46:74:18:e3:67:2f:32:f2:bf:b2:e7:af
                    a1:1b:f5:ca:1a:eb:83:8f:2f:36:71:cd:7c:18:ab:50
                    3d:e6:6e:ab:2e:78:a7:e4:6d:cf:1f:03:e6:46:74:28
                    a7:6c:d6:1e:44:3f:88:89:36:9a:a3:f0:9a:45:07:7e
                    01:5e:4c:97:7d:3f:e2:f7:15:59:96:5f:0e:9a:1c:b3
                    a0:6b:4a:77:a5:c0:e0:93:53:cb:b7:50:59:3d:23:ee
                    5c:31:00:48:6c:0b:1a:b8:04:a4:14:05:a6:63:bc:36
                    aa:7f:b9:aa:1f:19:9e:ee:49:48:08:e1:3a:d6:af:5f
                    d5:eb:96:28:bf:41:3c:89:7a:05:4b:b7:32:a2:fc:e7
                    f6:ad:c7:98:a6:98:99:f6:e9:a4:30:d4:7f:5e:b3:cb
                    d7:cc:76:90:ef:2e:cc:4f:7d:94:ab:33:8c:9d:35:5d
                    d7:57:0b:3c:87:9c:63:89:61:d9:5c:a0:b7:5c:c4:75
                    21:ae:dc:c9:7c:e3:18:a2:b3:f8:15:27:ff:a9:28:2f
                    cb:9b:17:fe:96:04:53:c4:19:0e:bf:51:0e:9d:1c:83
                    49:7e:51:64:03:a1:40:f1:72:8b:74:e3:16:79:af:f1
                    14:a8:5e:44:00:00:01:00:00
    Signature Algorithm: ecdsa-with-SHA256
    Signature Value:
        30:45:02:21:00:93:fd:81:03:75:d1:7d:ab:53:6c:a5:19:a7:
        68:3d:d6:e2:39:14:d6:9e:47:24:38:b5:76:db:18:a6:ca:c4:
        8a:02:20:36:be:3d:71:93:5d:05:c3:ac:fa:a8:f3:e5:46:db:
        57:f9:23:ee:93:47:6d:d6:d3:4f:c2:b7:cc:0d:89:71:fe
]]></artwork>
        </figure>
      </section>
      <section anchor="psa-attestation-in-csr">
        <name>PSA Attestation in CSR</name>
        <t>The example shown in <xref target="fig-example-psa"/> illustrates how platform attestation
is conveyed in a CSR. The content of the evidence in this example is re-used
from <xref target="I-D.tschofenig-rats-psa-token"/> and contains a digitally signed
Entity Attestation Token (EAT).</t>
        <t>While the PSA token is digitally signed with an attestation private key, it
does not offer key attestation.</t>
        <figure anchor="fig-example-psa">
          <name>CSR with embedded PSA Attestation</name>
          <artwork><![CDATA[
Certification Request:
    Data:
        Version: 1 (0x0)
        Subject: CN = server.example.com
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:b9:7c:02:a1:1f:9c:f3:f4:c4:55:3a:d9:3e:26:
                    e8:e5:11:63:84:36:5f:93:a6:99:7d:d7:43:23:0a:
                    4f:c0:a8:40:46:7e:8d:b2:1a:38:19:ff:6a:a7:38:
                    16:06:1e:12:9f:d1:d5:58:55:e6:be:6d:bb:e1:fb:
                    f7:70:a7:5c:c9
                ASN1 OID: prime256v1
                NIST CURVE: P-256
        Attributes:
            AttestStatement
               type: TBD1 (referring to PSA attestation)
               value: d2:84:43:a1:01:26:a0:59:01:3b:aa:19:01:09:78:
                      18:68:74:74:70:3a:2f:2f:61:72:6d:2e:63:6f:6d:
                      2f:70:73:61:2f:32:2e:30:2e:30:19:09:5a:1a:7f:
                      ff:ff:ff:19:09:5b:19:30:00:19:09:5c:58:20:00:
                      00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
                      00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
                      00:19:09:5d:48:00:00:00:00:00:00:00:00:19:09:
                      5e:73:31:32:33:34:35:36:37:38:39:30:31:32:33:
                      2d:31:32:33:34:35:19:09:5f:81:a2:02:58:20:03:
                      03:03:03:03:03:03:03:03:03:03:03:03:03:03:03:
                      03:03:03:03:03:03:03:03:03:03:03:03:03:03:03:
                      03:05:58:20:04:04:04:04:04:04:04:04:04:04:04:
                      04:04:04:04:04:04:04:04:04:04:04:04:04:04:04:
                      04:04:04:04:04:04:0a:58:20:01:01:01:01:01:01:
                      01:01:01:01:01:01:01:01:01:01:01:01:01:01:01:
                      01:01:01:01:01:01:01:01:01:01:01:19:01:00:58:
                      21:01:02:02:02:02:02:02:02:02:02:02:02:02:02:
                      02:02:02:02:02:02:02:02:02:02:02:02:02:02:02:
                      02:02:02:02:19:09:60:78:2e:68:74:74:70:73:3a:
                      2f:2f:76:65:72:61:69:73:6f:6e:2e:65:78:61:6d:
                      70:6c:65:2f:76:31:2f:63:68:61:6c:6c:65:6e:67:
                      65:2d:72:65:73:70:6f:6e:73:65:58:40:56:f5:0d:
                      13:1f:a8:39:79:ae:06:4e:76:e7:0d:c7:5c:07:0b:
                      6d:99:1a:ec:08:ad:f9:f4:1c:ab:7f:1b:7e:2c:47:
                      f6:7d:ac:a8:bb:49:e3:11:9b:7b:ae:77:ae:c6:c8:
                      91:62:71:3e:0c:c6:d0:e7:32:78:31:e6:7f:32:84:
                      1a
    Signature Algorithm: ecdsa-with-SHA256
    Signature Value:
        30:45:02:21:00:93:fd:81:03:75:d1:7d:ab:53:6c:a5:19:a7:
        68:3d:d6:e2:39:14:d6:9e:47:24:38:b5:76:db:18:a6:ca:c4:
        8a:02:20:36:be:3d:71:93:5d:05:c3:ac:fa:a8:f3:e5:46:db:
        57:f9:23:ee:93:47:6d:d6:d3:4f:c2:b7:cc:0d:89:71:fe
]]></artwork>
        </figure>
        <t>The decoded evidence is shown in Appendix A of
<xref target="I-D.tschofenig-rats-psa-token"/>, the shown attestation information, provides the following
information to an RA/CA:</t>
        <ul spacing="normal">
          <li>Boot seed,</li>
          <li>Firmware measurements,</li>
          <li>Hardware security certification reference,</li>
          <li>Identification of the immutable root of trust implementation, and</li>
          <li>Lifecycle state information.</li>
        </ul>
      </section>
    </section>
    <section anchor="asn1-module">
      <name>ASN.1 Module</name>
      <artwork><![CDATA[
{::include CSR-ATTESTATION-2023.asn}
]]></artwork>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This specification is the work of a design team created by the chairs of the
LAMPS working group. The following persons, in no specific order,
contributed to the work: Richard Kettlewell, Chris Trufan, Bruno Couillard,
Jean-Pierre Fiset, Sander Temme, Jethro Beekman, Zsolt Rózsahegyi, Ferenc
Pető, Mike Agrenius Kushner, Tomas Gustavsson, Dieter Bong, Christomer Meyer,
Michael StJohns, Carl Wallace, Michael Ricardson, Tomofumi Okubo, Olivier
Couillard, John Gray, Eric Amador, Johnson Darren, Herman Slatman, Tiru Reddy,
Thomas Fossati, Corey Bonnel, Argenius Kushner, James Hagborg.</t>
      <t>We would like to specifically thank Mike StJohns for his work on an earlier
version of this draft.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
G0UZH6KFzzpWvRTO8PqSUYMk791HFeeJu+zhuidc4Fq3YWy1RFQZzMAvx1NY
StbPpS9tW7TvlnYLtA+b3U2BIXy6SpbuNnj0XOKoOZNctSwTltaWT0GVyVka
Rwe7Zw2F5CHZetu4gOj6f1pde43mFTieQnmW3dYOiObll7ZgBduStLdVfx8N
pNJV9xCysyjXdXO7r031VHVaIov7TmQ74LV3MiRhS6Z3DXxmzXBLshQxq3Ry
7UcKdNYcNMSkF/xcNzD65g3usimaNNgmaVPhOA9bKCo3BbrZvHtwu6CqttvM
eLldMbU4uLT50mYhfc+IFIgbFz4Cm8B1eqaiFJg7qvKq8+R+42xOu3dZmmgX
Or03AfvxpU2+p9pl68athqo8XDS0hq9jGxHPwILVKmV3XIhr2TVlHbtrdYaf
22nRG0CABqu17f5lmmmdRQs3RWqjCRSwy7W6SbJqUecyOOsjdJ6vWgbmo0VU
Kp27HOo5aweGasmgeEqjRZ6lUqeO4Jx8gAq7JGiFVOgr3mn1nVmZaljnbB4c
CWkklCygYa3QrmY4JfaUOvEU5+GjMC74CkQ0Im3SLuTbFKw+wWyg39WbMlsJ
MzWjU5Oy4GCT0FpaBXhdRBMZ4IL9bK29vaLFQUQacWpidYE0HFZFJGZOAZdU
nqqMbPtGBmIy0AW6Jc8Ka4SWCDH8VQwpU/WCo9eeTY4a3f02qV3AQ6HiaBSa
nEaQuPYRdrCSoIA0FACYnV5nSVp2k7TL3TrNYlbNn6nIMps1tM2O94JX7Btk
kQrk5n90meXuwllsxEW0/VxsYsiiDMhZR4tF37hZHOv6O0hdnl1l2DyVrZ5O
M3/XpxIVZvCbSXkRgOquIPBxXPEfQIWNpaltud5e5Ks6iBfXWH2gA3ZpK4eF
8x8KJ//V1SsGpqRWdX/X1xqtRRbshaTelNKFsD1BzWsKVYXS3s8r1DRf1bds
Ky+w2d8TyNXewreoSJtMUZUjm+qyU7eRV23e7oqC2zYQOC3R7t5fq4dhr99S
uPttpAu8OeMnzpi2ZogMBHetbliPJgzrRpx9ueRF42DtoK9ocsnfb9iO6T2o
4NMnucL8+bNFoCLORUuJ2yiClDh+f3FTPBfBnicfTdwtoJ2CvHovrhz3EcmB
t5TlMV1edg1VVfT6OqxVBPVO7WZ/8qI1jbmZszpd3+hYu9sexl34tSU7p/uS
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
F5U0Z4DKlSZcks8P6jHsAY8WA+1KI9FmVH52XuTeYr2T00NrcHYsEEy4PZcU
CAiK8C+M4OSEgXf/IByDEQ21FjFnMGBo/caGMCGg70tYBnXYl7joEBwxzTMj
+4hRI2I5uMWw+ohO4LtDDyP6hyUeRnSRD+nkE3H1I4IC84rwhQHKgIHQ6Yxg
MVZGUAcf/iCPnQ8kYzSgi9GPODbuEwtoJRwHSAwDfio24+ygzA3032Ib/v0/
im3g1R+ObbYCGIY1tmZh2/nrgKKo45jpmh0dyUc1ZQX9q6GErYzY2QdqfJ1G
gbNZvwu2fys0tT8mIu1xL3kzqzAm7uDLa3/nsVlR44vvdn5Md/tKtWuL42Df
mefeuagqWa02pVR925fB2o0uUpvGGm+SuYmeoqWxhbcmmnL50fUs227fwJ1Y
6G8e7Ovb7ekirZqypxHrbUsT37vr3nt+9ND+NI0t/0h531bMVWn0yv2uXdXm
wmtwefWTkfLr4jKRrqn9FWTVLqmyJC+3vMAJaVbtbG/Bdey9SnGOq447Lheq
m4T3SWLEQ2ypYw9AR10scsB6l2/m/D2Zl/kGC15kGwTFGNkJvjc67b5P4Cgb
HHBhyo661dL5eGdWLLl9b8pFnqmXxnxYcYX/WGTLUt38r//x50IvzP1T0lGv
5XSD96b83/+1Y38kfHqPR8mmUD9sWKXPO4hcV7pQ3+JQ9UNR8CxfJYYX9F9m
/IVKAbPMVnhwjSAcWF4TGbNUt+X32YLEuND5Uv2MuFbzGqp/DZzZg8cFsUU2
36wS9e7DZpZ11Ltl8gDMghpdxaXUt7lGzHuZg6LTlY6z3D7HGohiQQgs9Z0B
P6XqdqlLwfouyTeId+P4qQNuEFReZ0UBXgBcWY74E2ikBvSe5vdbmH+vVxC6
7/T9LMt5vfBnHhevKC1JqTJr/SiwlFg/WCI6zKXrgBxomU1ughrQgqi1fjCa
oT9/9L0X/F82xXzHKmAAAA==

-->

</rfc>
