<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.17 (Ruby 3.3.3) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="o-*+"?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>
<?rfc consensus="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ounsworth-rats-pkix-evidence-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="PKI-based Attestation Evidence">PKI-based Attestation Evidence</title>
    <seriesInfo name="Internet-Draft" value="draft-ounsworth-rats-pkix-evidence-00"/>
    <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="R." surname="Kettlewell" fullname="Richard Kettlewell">
      <organization abbrev="Entrust">Entrust Limited</organization>
      <address>
        <postal>
          <country>United Kingdom</country>
        </postal>
        <email>Richard.Kettlewell@entrust.com</email>
      </address>
    </author>
    <author initials="" surname="JPF" fullname="Jean-Pierre Fiset">
      <organization abbrev="Crypto4A">Crypto4A Technologies Inc.</organization>
      <address>
        <postal>
          <street>1550A Laperriere Ave</street>
          <city>Ottawa, Ontario</city>
          <code>K1Z 7T2</code>
          <country>Canada</country>
        </postal>
        <email>jp@crypto4a.com</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization>Siemens</organization>
      <address>
        <email>Hannes.Tschofenig@gmx.net</email>
      </address>
    </author>
    <author fullname="Tirumaleswar Reddy">
      <organization>Nokia</organization>
      <address>
        <postal>
          <city>Bangalore</city>
          <region>Karnataka</region>
          <country>India</country>
        </postal>
        <email>kondtir@gmail.com</email>
      </address>
    </author>
    <author initials="M." surname="Wiseman" fullname="Monty Wiseman">
      <organization>Beyond Identity</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>monty.wiseman@beyondidentity.com</email>
      </address>
    </author>
    <date year="2024" month="July" day="08"/>
    <area>Security</area>
    <workgroup>RATS</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 95?>

<t>This document specifies ASN.1 structures produced by an Attester as part
of the remote attestation procedures and constitute Evidence.</t>
      <t>This document follows the Remote ATtestation procedureS (RATS)
architecture where Evidence is sent by an Attester and processed by
a Verifier.</t>
    </abstract>
  </front>
  <middle>
    <?line 104?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Trusted execution environments, like secure elements and hardware security
modules (HSMs), are now widely used, which provide a safe environment to place
cryptographic key material and security sensitive code which uses it,
such as signing and decryption services, secure boot, secure storage,
and other essential security functions.  These security functions are
typically exposed through a narrow and well-defined interface, and can be
used by operating system libraries and applications.</t>
      <t>Increasingly, parties that rely on these secure elements want evidence
that the security sensitive operations are in fact being performed within
a secure element. This evidence can pertain to the secure element platform
itself, or to the storage and protection properties of the cryptographic keys,
or both. This is generally referred to as remote attestation, and is covered by
the Remote ATtestation procedureS (RATS) architecture <xref target="RFC9344"/>. This document
species an evidence data format specified in ASN.1 and re-using many data
structures from the PKIX ASN.1 modules <xref target="RFC5912"/> so to be a convenient format
for secure elements and verifiers that are designed primarily for use within
X.509 Public Key Infrastructures.</t>
      <t>When a Certificate Signing Request (CSR) library is requesting a certificate
from a Certification Authority (CA), a PKI end entity may wish to provide
Evidence of the security properties of the trusted execution environment
in which the private key is stored. This Evidence is to be verified by a
Relying Party, such as the Registration Authority or the Certification
Authority as part of validating an incoming CSR against a given certificate
policy. <xref target="I-D.ietf-lamps-csr-attestation"/> defines how to carry Evidence in
either PKCS#10 <xref target="RFC2986"/> or Certificate Request Message Format (CRMF)
<xref target="RFC4211"/>.</t>
      <t><xref target="I-D.ietf-lamps-csr-attestation"/> is agnostic to the content and the encoding
of Evidence. To offer interoperability it is necessary to define a format
that is utilized in a specific deployment environment.
Hardware security modules and other trusted execution environments, which
have been using ASN.1-based encodings for a long time prefer the use of
the same format throughout their software ecosystem. For those use cases
this specification has been developed.</t>
      <t>This specification re-uses the claims defined in <xref target="I-D.ietf-rats-eat"/>.
While the encoding of the claims is different to what is defined in
<xref target="I-D.ietf-rats-eat"/>, the semantics of the claims is retained. This
specification is not an EAP profile, as defined in Section 6 of
<xref target="I-D.ietf-rats-eat"/></t>
      <t>This specification was designed to meet the requirements published by the
CA Browser Forum to convey properties about hardware security models, such
as non-exportability, which must be enabled for storing publicly-trusted
code-signing keys. Hence, this specification is supposed to be used with
the attestation extension for Certificate Signing Requests (CSRs), see
<xref target="I-D.ietf-lamps-csr-attestation"/>.</t>
      <t>There are, however, other use cases where remote attestation may also be
used, such as</t>
      <ul spacing="compact">
        <li>
          <t>A Certification Authority receives a certificate signing request and wishes to verify that the subject public key was generated in an HSM (for example to satisfy CA/B Forum subscriber private key verification requirement). They may also wish to verify that the operations the HSM will allow for the corresponding private key are consistent with the purpose of the requested certificate.</t>
        </li>
        <li>
          <t>A user of a Cloud Service Provider's 'Bring Your Own Key' service wishes to transfer their locally-generated key securely to the CSP's service by encrypting it under the CSP's public key. As part of their due diligence on the CSP's key they wish to verify (1) that it was generated by an HSM and (2) may only be used to unwrap the key into an HSM (i.e. unwrap permission but not decrypt permission).</t>
        </li>
        <li>
          <t>An auditor of an identity provision service (or a competent end user) may wish to verify that keys representing end-user identities are held in an HSM and have permissions that are in line with the applicable regulations. For example, they may wish verify that the protection arrangements for assigned keys cannot be changed.</t>
        </li>
        <li>
          <t>A manufacturer needs to provision configuration info, software, and credentials to a device from remote. With the help of remote attestation the manufacturer is provided enough information to verify that information is only sent to devices it has built.</t>
        </li>
      </ul>
    </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 <xref target="RFC9334"/> 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="attestation-evidence">
      <name>Attestation Evidence</name>
      <t>This specification defines the following Evidence format, which contains
a set of claims. To protect Evidence against modification, it is protected
with a digital signature.</t>
      <sourcecode type="asn.1"><![CDATA[
PkixEvidenceStatement ::= SEQUENCE {
  tbsEvidence TBSEvidenceStatement
  signatureValues SEQUENCE SIZE (1..MAX) OF BIT STRING,
  relatedCertificates [0] IMPLICIT SEQUENCE of Certificate OPTIONAL
  -- As defined in RFC 5280
}

TBSEvidenceStatement ::= SEQUENCE {
  version INTEGER,
  claims SEQUENCE SIZE (1..MAX) OF EVIDENCE-CLAIM,
  signatureInfos SEQUENCE SIZE (1..MAX) OF SignatureInfo
}

EVIDENCE-CLAIM ::= TYPE-IDENTIFIER

-- TYPE-IDENTIFIER definition from X.681
TYPE-IDENTIFIER ::= CLASS
{
    &id OBJECT IDENTIFIER UNIQUE,
    &Type
}
WITH SYNTAX {&Type IDENTIFIED BY &id}

SignatureInfo ::= SEQUENCE {
   signatureAlgorithm AlgorithmIdentifier,
   sid [0] SignerIdentifier OPTIONAL
}

SignerIdentifier ::= SEQUENCE {
   keyId [0] EXPLICIT OCTET STRING OPTIONAL,
   subjectKeyIdentifier [1] EXPLICIT SubjectPublicKeyInfo OPTIONAL,
     -- As defined in RFC 5280
   certificate [2] EXPLICIT Certificate OPTIONAL,
     -- As defined in RFC 5280
   certHash [3] EXPLICIT CertHash OPTIONAL
}

CertHash ::= SEQUENCE {
    hash AlgorithmIdentifier,
    value OCTET STRING
}
-- There is bound to already exist an ASN.1 structure for this somewhere.

AlgorithmIdentifier ::= SEQUENCE {
   algorithm OBJECT IDENTIFIER,
   parameters ANY DEFINED BY algorithm OPTIONAL
}
]]></sourcecode>
      <t><tt>version</tt> <bcp14>MUST</bcp14> be set to 1.</t>
    </section>
    <section anchor="signing-and-verification-procedure">
      <name>Signing and Verification Procedure</name>
      <t>EDNOTE: Can we start our versions at some number to avoid versions that
Crypto4A has already used?</t>
      <section anchor="signing-procedure">
        <name>Signing Procedure</name>
        <ol spacing="compact" type="1"><li>
            <t>The message to be signed is the <tt>TBSEvidenceStatement</tt>, including the <tt>SignatureInfo</tt> for each of the signatures to be performed.</t>
          </li>
          <li>
            <t>Each signature is computed in parallel and placed into index of the
<tt>signatureValues</tt> SEQUENCE that matches the position of the corresponding
<tt>SignatureInfo</tt> in the <tt>signatureInfos</tt> sequence.</t>
          </li>
        </ol>
        <t>The signer <bcp14>MUST</bcp14> produce one signature per <tt>signatureInfo</tt>, it <bcp14>MUST NOT</bcp14>
omit signatures and <bcp14>MUST NOT</bcp14> produce a subset of the signatures listed in <tt>signatureInfos</tt>.</t>
      </section>
      <section anchor="verification-procedure">
        <name>Verification Procedure</name>
        <ol spacing="compact" type="1"><li>
            <t>The message to be verified is the <tt>TBSEvidenceStatement</tt>.</t>
          </li>
          <li>
            <t>For each <tt>signatureInfo</tt>, the corresponding verification public key
and signature algorithm is found according to the information contained
in the <tt>SignatureInfo</tt> for that signature and any accompanying
certificates or key material.</t>
          </li>
          <li>
            <t>For each signature, the message is verified using the value from the
corresponding element of the <tt>signatureValue</tt> sequence.</t>
          </li>
          <li>
            <t>The <tt>PkixEvidenceStatement</tt> <bcp14>SHOULD</bcp14> be considered valid if and only if
all signatures are valid; i.e. multiple signatures are to be treated as
an AND mode. This item is a recommendation and not a hard requirement
since verification policy is of course at the discretion of the Verifier.</t>
          </li>
        </ol>
        <t>EDNOTE: the major change here from the original Crypto4A QASM Attestation
is that the original only includes the claims in the signature, whereas
this includes everything, including the version, list of signature
algorithms. This prevents
possible attacks where those values are manipulated by attackers.
We should debate whether the certificates should be protected by the signature.
Pro: generally better for security to sign everything.
Con: in some contexts, it may be difficult to have the certificates prior to signing, but that's ok because most evidence carrier formats also allow you to attach the signatures externally.</t>
      </section>
    </section>
    <section anchor="claims">
      <name>Claims</name>
      <t>Since no claims are marked as MANDATORY, the sequence 'claims' may be constituted of
differing claims from one instance to the next. This is expected as each evidence statement
may be providing information to support different use cases.</t>
      <t>Once an evidence statement is signed, the Attester is guaranteeing that all of the claims
carried by the evidence statement are true.</t>
      <t>It is important to note that multiple claims in the sequence may have the same 'id'. Implementers
should ensure that this case is handled by verifying logic.</t>
      <t>For ease of reading, claims have been separated into two lists:
"platform claims" and "key claims".</t>
      <section anchor="platform-claims">
        <name>Platform Claims</name>
        <artwork><![CDATA[
| Claim          | OID      | Value        | Section           | Status       |
| --------       | -------- | ------------ | ----------------- | ------------ |
| Oemid          | TBD      | UTF8String   | {{sect-deviceID}} | RECOMMENDED  |
| Hwmodel        | TBD      | UTF8String   | {{sect-deviceID}} | RECOMMENDED  |
| Hwversion      | TBD      | UTF8String   | {{sect-deviceID}} | RECOMMENDED  |
| Hwserial       | TBD      | UTF8String   | {{sect-deviceID}} | RECOMMENDED  |
| Ueid           | TBD      | UTF8String   | {{sect-ueid}    } | OPTIONAL     |
| Sueid          | TBD      | UTF8String   | {{sect-sueid}}    | OPTIONAL     |
| EnvID          | TBD      | UTF8String   | {{sect-envID}}    | OPTIONAL     |
| Swname         | TBD      | UTF8String   | {{sect-swID}}     | RECOMMENDED  |
| Swversion      | TBD      | UTF8String   | {{sect-swID}}     | RECOMMENDED  |
| Oemboot        | TBD      | BOOLEAN      | {{sect-oemboot}}  | RECOMMENDED  |
| Location       | TBD      | ???          | {{sect-location}} | OPTIONAL     |
| Dbgstat        | TBD      | CHOICE       | {{sect-dbgstat}}  | RECOMMENDED  |
| Uptime         | TBD      | INTEGER      | {{sect-uptime}}   | OPTIONAL     |
| Bootcount      | TBD      | INTEGER      | {{sect-bootcount}}| OPTIONAL     |
| Bootseed       | TBD      | BIT STRING   | {{sect-bootseed}} | OPTIONAL     |
| Dloas          | TBD      | SEQUENCE OF Dloa | {{sect-dloas}}    | OPTIONAL     |
| Endorsements   | TBD      | SEQUENCE of Endorsement | {{sect-endorsements}} | OPTIONAL |
| Manifests      | TBD      | ??           | {{sect-manifests}} | OPTIONAL    |
| Measurements   | TBD      | ??           | {{sect-measurements}} | OPTIONAL    |
| Measres        | TBD      | ??           | {{sect-measres}}   | OPTIONAL    |
| Submods        | TBD      | ??           | {{sect-submods}}   | OPTIONAL    |
| Iat            | TBD      | Time         | {{sect-iat}}       | RECOMMENDED |
| FipsMode       | TBD      | Boolean      | {{sect-fipsmode}}  | RECOMMENDED |
| VendorInfo     | TBD      | TYPE-IDENTIFIER | {{sect-vendorinfo}}| OPTIONAL    |
| NestedEvidences| TBD      | SEQUENCE OF PkixEvidenceStatement | {{sect-nestedevidences}} | OPTIONAL |
| Nonce          | TBD      | OCTET STRING | {{sect-nonce}}     | OPTIONAL    |
]]></artwork>
      </section>
      <section anchor="key-claims">
        <name>Key Claims</name>
        <artwork><![CDATA[
| Claim          | OID      | Value        | Section           | Status       |
| --------       | -------- | ------------ | ----------------- | ------------ |
| KeyId          | TBD      | IA5String    | {{sect-keyid}}    | OPTIONAL     |
| PubKey         | TBD      | OCTET STRING | {{sect-pubkey}}   | RECOMMENDED  |
| Purpose        | TBD      | CHOICE       | {{sect-purpose}}  | RECOMMENDED  |
| NonExportable  | TBD      | BOOLEAN      | {{sect-nonexportable}} | RECOMMENDED |
| Imported       | TBD      | BOOLEAN      | {{sect-imported}} | RECOMMENDED  |
| KeyExpiry      | TBD      | Time         | {{sect-keyexpiry}}| OPTIONAL     |
]]></artwork>
        <t>Even though no specific claims are required, a Verifier or Relying Party <bcp14>MAY</bcp14> reject an
Evidence claim if it is missing information required by the appraisal
policy. For example, a Relying Party which requires a FIPS-certified device
<bcp14>SHOULD</bcp14> reject Evidence if it does not contain sufficient
information to determine the FIPS certification status of the device.</t>
      </section>
      <section anchor="sect-deviceID">
        <name>Device Identifier</name>
        <t>Devices assigned a Universal Entity ID compliant with RATS EAT <bcp14>SHOULD</bcp14>
provide this in the <tt>Ueid</tt> or <tt>Sueid</tt> claim. Devices with a traditional
human-readable serial number <bcp14>SHOULD</bcp14> provide this in the <tt>Hwserial</tt> claim.
Both <bcp14>MAY</bcp14> be provided.</t>
        <t>The set <tt>{OemID, Hwmodel, Hwversion, Hwserial}</tt>, when provided, <bcp14>SHOULD</bcp14>
represent a universally unique identification of the device. Where
applicable, <tt>{OemID, Hwmodel, Hwversion}</tt> <bcp14>SHOULD</bcp14> match the way the
device is identified in relevant endorsements, such as published FIPS
or Common Criteria certificates.</t>
        <section anchor="sect-ueid">
          <name>ueid (Universal Entity ID) Claim</name>
          <t>The "ueid" claim conveys a UEID, which identifies an individual manufactured
entity. This identifier is a globally unique and permanent identifier. See
Section 4.2.1 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim. Three
types of UEIDs are defined, which are distinguished via a type field.</t>
          <t>The ueid claim is defined as follows:</t>
          <artwork><![CDATA[
   id-ce-evidence-ueid OBJECT IDENTIFIER ::=
         { id-ce TBD_evidence TBD_ueid }

   claim_ueid ::= SEQUENCE {
       type    INTEGER ( RAND(1), EUI(2), IMEI(3),...),
       value   OCTET STRING
   }
]]></artwork>
        </section>
        <section anchor="sect-sueid">
          <name>sueids (Semi-permanent UEIDs) Claim (SUEIDs)</name>
          <t>The "sueids" claim conveys one or more semi-permanent UEIDs (SUEIDs).
An SUEID has the same format, characteristics and requirements as a
UEID, but <bcp14>MAY</bcp14> change to a different value on entity life-cycle
events while the ueid claim is permanent. An entity <bcp14>MAY</bcp14> have both
a UEID and SUEIDs, neither, one or the other.</t>
          <t>There <bcp14>MAY</bcp14> be multiple SUEIDs and each has a text string label the
purpose of which is to distinguish it from others.</t>
          <t>See Section 4.2.2 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim.</t>
          <t>The sueids claim is defined as follows:</t>
          <artwork><![CDATA[
   id-ce-evidence-sueids OBJECT IDENTIFIER ::=
         { id-ce TBD_evidence TBD_sueids }

   claim_sueids ::= SEQUENCE {
       label   OCTET STRING,
       type    INTEGER ( RAND(1), EUI(2), IMEI(3),...),
       value   OCTET STRING
   }
]]></artwork>
        </section>
        <section anchor="oemid-hardware-oem-identification-claim">
          <name>oemid (Hardware OEM Identification) Claim</name>
          <t>The "oemid" claim identifies the Original Equipment Manufacturer (OEM) of
the hardware.</t>
          <t>See Section 4.2.3 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim.</t>
          <t>The value of this claim depends on the type of OEMID and three types of IDs
are defined:</t>
          <ul spacing="compact">
            <li>
              <t>OEMIDs using a 128-bit random number.
Section 4.2.3.1 of <xref target="I-D.ietf-rats-eat"/> defines this type.</t>
            </li>
            <li>
              <t>an IEEE based OEMID using a global registry for MAC addresses and company IDs.
Section 4.2.3.1 of <xref target="I-D.ietf-rats-eat"/> defines this type.</t>
            </li>
            <li>
              <t>OEMIDs using Private Enterprise Numbers maintained by IANA.
Section 4.2.3.3 of <xref target="I-D.ietf-rats-eat"/> defines this type.</t>
            </li>
          </ul>
          <t>The oemid claim is defined as follows:</t>
          <artwork><![CDATA[
   id-ce-evidence-oemid OBJECT IDENTIFIER ::=
         { id-ce TBD_evidence TBD_oemid }

   claim_oemid ::= SEQUENCE {
       type    INTEGER ( PEN(1), IEEE(2), RANDOM(3),...),
       value   OCTET STRING
   }
]]></artwork>
          <t>Editor's Note: The value for the PEN is numeric. For the other
two types it is a binary string.</t>
        </section>
        <section anchor="hwmodel-hardware-model-claim">
          <name>hwmodel (Hardware Model) Claim</name>
          <t>The "hwmodel" claim differentiates hardware models, products and variants
manufactured by a particular OEM, the one identified by OEM ID.
It <bcp14>MUST</bcp14> be unique within a given OEM ID.  The concatenation of the OEM ID
and "hwmodel" give a global identifier of a particular product.
The "hwmodel" claim <bcp14>MUST</bcp14> only be present if an "oemid" claim is present.</t>
          <t>See Section 4.2.4 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim.</t>
          <t>The hwmodel claim is defined as follows:</t>
          <artwork><![CDATA[
   id-ce-evidence-hwmodel OBJECT IDENTIFIER ::=
         { id-ce TBD_evidence TBD_hwmodel }

   claim_hwmodel ::= OCTET STRING
]]></artwork>
        </section>
        <section anchor="hwversion-hardware-version-claim">
          <name>hwversion (Hardware Version) Claim</name>
          <t>The "hwversion" claim is a text string the format of which is set by each
manufacturer. A "hwversion" claim <bcp14>MUST</bcp14> only be present if a "hwmodel" claim
is present.</t>
          <t>See Section 4.2.5 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim.</t>
          <t>The hwversion claim is defined as follows:</t>
          <artwork><![CDATA[
   id-ce-evidence-hwversion OBJECT IDENTIFIER ::=
         { id-ce TBD_evidence TBD_hwwversion }

   hwversion ::= OCTET STRING
]]></artwork>
        </section>
      </section>
      <section anchor="sect-envID">
        <name>Environment Identifier</name>
        <sourcecode type="asn.1"><![CDATA[
EnvID EVIDENCE-CLAIM ::= UTF8String IDENTIFIED BY TBD
]]></sourcecode>
        <t>This claim <bcp14>MAY</bcp14> be used to identify a partition within a cryptographic
device, or a logical environment that spans multiple cryptographic
devices such as a Security World or a cloud tenant. The format of
these identifiers will be vendor or environment specific.</t>
      </section>
      <section anchor="sect-swID">
        <name>Software Identifier</name>
        <sourcecode type="asn.1"><![CDATA[
Swname EVIDENCE-CLAIM ::= UTF8String IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.6
Swversion EVIDENCE-CLAIM ::= UTF8String IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.7
]]></sourcecode>
        <t><tt>SwName</tt> and <tt>Swversion</tt> together identify the device firmware and
<bcp14>SHOULD</bcp14> match the way the firmware is identified in relevant
endorsements, such as published FIPS or Common Criteria certificates.</t>
      </section>
      <section anchor="sect-oemboot">
        <name>OEM Boot</name>
        <sourcecode type="asn.1"><![CDATA[
Oemboot EVIDENCE-CLAIM ::= BOOLEAN IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.8
]]></sourcecode>
      </section>
      <section anchor="sect-dbgstat">
        <name>Dbgstat (Debug Status)</name>
        <t>The "dbgstat" claim applies to entity-wide or submodule-wide debug
facilities and diagnostic hardware built into chips. It applies to
any software debug facilities related to privileged software that
allows system-wide memory inspection, tracing or modification of
non-system software like user mode applications.</t>
        <t>See Section 4.2.9 of <xref target="I-D.ietf-rats-eat"/> for a description of this
claim and the semantic of the values in the enumerated list.</t>
        <t>The dbgstat claim is defined as follows:</t>
        <sourcecode type="asn.1"><![CDATA[
Dbgstat EVIDENCE-CLAIM ::= CHOICE {
    enabled                         [0] IMPLICIT NULL,
    disabled                        [1] IMPLICIT NULL,
    disabled-Since-Boot             [2] IMPLICIT NULL,
    disabled-Permanently            [3] IMPLICIT NULL,
    disabled-Fully-and-Permanently  [4] IMPLICIT NULL
}
  -- semantics defined in rats-eat-4.2.9
]]></sourcecode>
      </section>
      <section anchor="sect-location">
        <name>Location</name>
        <sourcecode type="asn.1"><![CDATA[
Location EVIDENCE-CLAIM ::= ???? IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.10
]]></sourcecode>
        <t>Most HSMs will likely not know their own physical location, but cryptographic modules on mobile devices may.</t>
      </section>
      <section anchor="sect-uptime">
        <name>Uptime</name>
        <t>The "uptime" claim contains the number of seconds that have elapsed
since the entity or submodule was last booted.</t>
        <sourcecode type="asn.1"><![CDATA[
Uptime EVIDENCE-CLAIM ::= INTEGER IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.11
]]></sourcecode>
      </section>
      <section anchor="bootcount-sect-bootcount">
        <name>Bootcount {sect-bootcount}</name>
        <t>The "bootcount" claim contains a count of the number times the entity
or submodule has been booted.  Support for this claim requires a
persistent storage on the device.</t>
        <sourcecode type="asn.1"><![CDATA[
Bootcount EVIDENCE-CLAIM ::= INTEGER IDENTIFIER BY TBD
  -- semantics defined in rats-eat-4.2.12
]]></sourcecode>
      </section>
      <section anchor="sect-bootseed">
        <name>Bootseed</name>
        <t>The "bootseed" claim contains a value created at system boot time
that allows differentiation of attestation reports from different
boot sessions of a particular entity (e.g., a certain UEID).</t>
        <t>This value is usually public.  It is not a secret and <bcp14>MUST NOT</bcp14> be
used for any purpose that a secret seed is needed, such as seeding
a random number generator.</t>
        <sourcecode type="asn.1"><![CDATA[
Bootseed EVIDENCE-CLAIM ::= BIT STRING IDENTIFIED BY TBD
  -- semantics defined in rats-eat-4.2.13
]]></sourcecode>
      </section>
      <section anchor="sect-dloas">
        <name>dloas (Digital Letters of Approval)</name>
        <t>The "dloas" claim conveys one or more Digital Letters of Approval
(DLOAs).  A DLOA is a document that describes a certification
that an entity has received.  Examples of certifications represented
by a DLOA include those issued by Global Platform and those based on
Common Criteria.  The DLOA is unspecific to any particular
certification type or those issued by any particular organization.</t>
        <sourcecode type="asn.1"><![CDATA[
Dloas EVIDENCE-CLAIM ::= SEQUENCE SIZE (1..MAX) OF Dloa

Dloa ::= SEQUENCE IDENTIFIED BY TBD {
    dloaRegistrar IA5STRING,
    dloaPlatformLabel UTF8STRING,
    dloaApplicationLabal [0] IMPLICIT UTF8String OPTIONAL
}
  -- semantics defined in rats-eat-4.2.14
]]></sourcecode>
      </section>
      <section anchor="sect-endorsements">
        <name>Endorsements</name>
        <t>This claim allows referencing third party endorsements; for example
from the device vendor or a certification such as FIPS or Common
Criteria. The content <bcp14>MAY</bcp14> be referenced by URI, or placed directly
inline, but either way, the endorsement content or its URI <bcp14>MUST</bcp14> be
known by the attester at the time that the evidence is generated.</t>
        <sourcecode type="asn.1"><![CDATA[
Endorsements EVIDENCE-CLAIM ::= SEQUENCE SIZE (1..MAX) OF Endorsement

Endorsement ::= CHOICE IDENTIFIED BY TBD {
    uri     [0] IMPLICIT IA5String,
    content [1] IMPLICIT OCTET STRING
}
]]></sourcecode>
        <t>EDNOTE: this needs a bit of thought about what types of endorsements
we will likely see, and whether OCTET STRING is the right format.</t>
      </section>
      <section anchor="sect-manifests">
        <name>Manifests</name>
        <t>TODO -- rats-eat-4.2.15</t>
      </section>
      <section anchor="sect-measurements">
        <name>Measurements</name>
        <t>TODO -- rats-eat-4.2.16</t>
      </section>
      <section anchor="sect-measres">
        <name>Measres (Software Measurement Results)</name>
        <t>TODO -- rats-eat-4.2.17</t>
      </section>
      <section anchor="sect-submods">
        <name>Submods (Submodules)</name>
        <t>TODO -- rats-eat-4.2.18</t>
      </section>
      <section anchor="sect-iat">
        <name>iat (Issuance Time)</name>
        <t>The time at which the evidence was created. Here we differ from
the <tt>iat</tt> claim in rats-eat-4.3.1 in that we use the PKIX time
format <tt>Time</tt> instead of the 64-bit CBOR time structure.</t>
        <sourcecode type="asn.1"><![CDATA[
Iat EVIDENCE-CLAIM ::= Time
]]></sourcecode>
        <t>It is recognized that many HSMs, especially if air-gapped, will
not have an accurate system clock. If the system is not anticipated
to have a reliable clock, then this claim <bcp14>SHOULD</bcp14> be omitted and
the <tt>Nonce</tt> claim used instead.</t>
      </section>
      <section anchor="sect-intuse">
        <name>intuse (Intended Use)</name>
        <sourcecode type="asn.1"><![CDATA[
Intuse EVIDENCE-CLAIM ::= CHOICE IDENTIFIED BY TBD {
    generic              [1] IMPLICIT NULL,
    registration         [2] IMPLICIT NULL,
    provisioning         [3] IMPLICIT NULL,
    certificateIssuance  [4] IMPLICIT NULL,
    proofOfPossession    [5] IMPLICIT NULL
}
  -- semantics defined in rats-eat-4.3.3
]]></sourcecode>
        <t>Note: tags intentionally started at 1 to align with EAT. If the
IANA registry of intended use claims is extended, then the this
CHOICE <bcp14>MAY</bcp14> be extended using the same tag values as indicated
in the EAT registry.</t>
      </section>
      <section anchor="sect-fipsmode">
        <name>FipsMode</name>
        <t>The cryptographic module was booted in FIPS mode, including the
required self-tests and any other requiremnts of its FIPS certificate.</t>
        <t>Note to verifiers and relying parties: "FIPS Mode" does not imply
"FIPS Certified". For example, a device may have a FIPS Mode even
if the device was never submitted for FIPS certification. This
claim <bcp14>SHOULD</bcp14> only be taken in conjunction with a valid FIPS
certification for this hardware and software version, and
appraising any other claims as required by the FIPS certification.</t>
        <sourcecode type="asn.1"><![CDATA[
FipsMode EVIDENCE-CLAIM ::= BOOLEAN IDENTIFIED BY TBD
]]></sourcecode>
      </section>
      <section anchor="sect-vendorinfo">
        <name>VendorInfo</name>
        <t>This claim provides a place for vendor to place propriatary data;
i.e. any proprietary data that does not fit in any other claim.</t>
        <sourcecode type="asn.1"><![CDATA[
VendorInfo ::= TYPE-IDENTIFIER IDENTIFIED BY TBD
]]></sourcecode>
        <t>Vendors must specify an OID and data type for their VendorInfo,
and communicate this to verifiers who wish to parse this data.</t>
      </section>
      <section anchor="sect-nestedevidences">
        <name>NestedEvidences</name>
        <sourcecode type="asn.1"><![CDATA[
NestedEvidences EVIDENCE-CLAIM ::= SEQUENCE OF PkixEvidenceStatement IDENTIFIED BY TBD
]]></sourcecode>
        <t>Composite devices may produce multiple signed evidence statements
that need to be signed in a hiearchical manner. PkixEvidenceStatements
<bcp14>MAY</bcp14> be nested.</t>
      </section>
      <section anchor="sect-nonce">
        <name>Nonce</name>
        <t>The "nonce" claim is used to provide freshness.</t>
        <t>The Nonce claim is used to carry the challenge provided by the caller to
demonstrate freshness of the generated token. The following constraints
apply to the nonce-type:</t>
        <ul spacing="compact">
          <li>
            <t>The length must be reasonable as it may be processed by end entities with limited resources.
Therefore, it is <bcp14>RECOMMENDED</bcp14> that the length does not exceed 64 bytes.</t>
          </li>
          <li>
            <t>Only a single nonce value is conveyed.</t>
          </li>
        </ul>
        <t>The nonce claim is defined as follows:</t>
        <sourcecode type="asn.1"><![CDATA[
Nonce EVIDENCE-CLAIM ::= OCTET STRING IDENTIFIED BY TBD
]]></sourcecode>
        <t>See Section 4.1 of <xref target="I-D.ietf-rats-eat"/> for a description of this claim.</t>
      </section>
      <section anchor="sect-keyid">
        <name>KeyId</name>
        <t>An identifier for the subject key. The format <bcp14>MAY</bcp14> be vendor-specific,
but <bcp14>MUST</bcp14> be an ASCII value (IA5String).</t>
        <sourcecode type="asn.1"><![CDATA[
KeyId EVIDENCE-CLAIM ::= IA5String IDENTIFIED BY TBD
]]></sourcecode>
      </section>
      <section anchor="sect-pubkey">
        <name>PubKey</name>
        <t>The subject public key being attested by this evidence.</t>
        <sourcecode type="asn.1"><![CDATA[
PubKey EVIDENCE-CLAIM ::= OCTET STRING IDENTIFIED BY TBD
]]></sourcecode>
      </section>
      <section anchor="sect-purpose">
        <name>Purpose</name>
        <t>TODO: align with PKCS#11 Purposes</t>
        <sourcecode type="asn.1"><![CDATA[
Purpose EVIDENCE-CLAIM ::= CHOICE IDENTIFIED BY TBD {
   ... Sign, Decrypt, Unwrap, etc..

}
]]></sourcecode>
      </section>
      <section anchor="sect-nonexportable">
        <name>NonExportable</name>
        <t>TODO align with PKCS#11</t>
        <sourcecode type="asn.1"><![CDATA[
NonExportable EVIDENCE-CLAIM ::= BOOLEAN IDENTIFIED BY TBD
]]></sourcecode>
      </section>
      <section anchor="sect-imported">
        <name>Imported</name>
        <t>TODO align with PKCS#11</t>
        <sourcecode type="asn.1"><![CDATA[
Imported EVIDENCE-CLAIM ::= BOOLIAN IDENTIFIED BY TBD
]]></sourcecode>
      </section>
      <section anchor="sect-keyexpiry">
        <name>KeyExpiry</name>
        <t>If the key has a known expiry time or "not after" date.</t>
        <sourcecode type="asn.1"><![CDATA[
KeyExpiry EVIDENCE-CLAIM ::= Time
]]></sourcecode>
      </section>
      <section anchor="unrecognized-claims">
        <name>Unrecognized claims</name>
        <t>This document does not define an exhaustive list of claims. New claims
may be added in the future, including proprietary ones. As such, parsers
<bcp14>SHOULD</bcp14> expect to encounter unrecognized claims, and to handle them gracefully.</t>
        <t>In general, the correct behaviour for a verifier will be to start with an
appraisal policy of claims to look for, and where appropriate the expected
values (for example, FipsMode: true), and any additional claims that may be in the
evidence <bcp14>SHOULD</bcp14> be ignored.</t>
      </section>
    </section>
    <section anchor="extclaims-extension">
      <name>Evidence Claims Certificate Extension</name>
      <t>This section specifies the syntax and semantics of the Evidence Claims certificate extension which
provides a list of claims associated with the certificate subject appraised by the CA.</t>
      <t>The Evidence Claims certificate extension <bcp14>MAY</bcp14> be included in public key certificates <xref target="RFC5280"/>.
The Evidence Claims certificate extension <bcp14>MUST</bcp14> be identified by the following object identifier:</t>
      <artwork><![CDATA[
     id-pe-evidenceclaims OBJECT IDENTIFIER  ::=
        { iso(1) identified-organization(3) dod(6) internet(1)
          security(5) mechanisms(5) pkix(7) id-pe(1) 34 }
]]></artwork>
      <t>This extension <bcp14>MUST NOT</bcp14> be marked critical.</t>
      <t>The Evidence Claims extension <bcp14>MUST</bcp14> have the following syntax:</t>
      <artwork><![CDATA[
EvidenceClaims ::= SET SIZE (1..MAX) OF EVIDENCE-CLAIM
]]></artwork>
      <t>The EvidenceClaims represents an unsigned version of the evidence claims appraised by the CA.
It <bcp14>MUST</bcp14> contain at least one claim.  For privacy reasons, the CA <bcp14>MAY</bcp14> include only a subset
of the EvidenceClaims that were presented to it, for example in an EvidenceBundle in a CSR.
The CA may include in their certificate profile a
list of verified evidence claims (identified by OID) that <bcp14>MAY</bcp14> be copied from the CSR to
the certificate, while any other claims <bcp14>MUST NOT</bcp14> be copied.
By removing the signature from the evidence, the CA is asserting that it has has verified
the Evidence to chain to a root that the CA trusts, but it is not required to disclose
in the final certificate what that root is.</t>
      <t>See <xref target="sec-priv-cons"/> for a discussion of privacy concerns related to re-publishing
Evidence into a certificate.</t>
      <section anchor="extclaims-asn">
        <name>ASN.1 Module</name>
        <t>This section provides an ASN.1 Module <xref target="X.680"/> for the Evidence Claims
certificate extension, and it follows the conventions established in
<xref target="RFC5912"/> and <xref target="RFC6268"/>.</t>
        <sourcecode markers="true"><![CDATA[
     EvidenceClaimsCertExtn
       { iso(1) identified-organization(3) dod(6) internet(1)
         security(5) mechanisms(5) pkix(7) id-mod(0)
         id-mod-evidenceclaims(TBD) }

     DEFINITIONS IMPLICIT TAGS ::=
     BEGIN

     IMPORTS
       EXTENSION
       FROM PKIX-CommonTypes-2009  -- RFC 5912
         { iso(1) identified-organization(3) dod(6) internet(1)
           security(5) mechanisms(5) pkix(7) id-mod(0)
           id-mod-pkixCommon-02(57) } ;

     -- Evidence Claims Certificate Extension

     ext-EvidenceClaims EXTENSION ::= {
       SYNTAX EvidenceClaims
       IDENTIFIED BY id-pe-evidenceclaims }

     -- EvidenceClaims Certificate Extension OID

     id-pe-evidenceclaims OBJECT IDENTIFIER ::=
        { iso(1) identified-organization(3) dod(6) internet(1)
          security(5) mechanisms(5) pkix(7) id-pe(1) 34 }

     -- Evidence Claims Certificate Extension Syntax

     EvidenceClaims ::= SET SIZE (1..MAX) OF EVIDENCE-CLAIM

     END
   ]]></sourcecode>
      </section>
    </section>
    <section anchor="implementation-considerations">
      <name>Implementation Considerations</name>
      <section anchor="api-for-requesting-evidence-from-an-attesting-device">
        <name>API for requesting evidence from an attesting device</name>
        <t>While it is strictly outside the scope of this document to specify how a calling application
can request evidence from a cryptographic device, two modes are suggested.</t>
        <section anchor="request-by-id-and-claim-profile">
          <name>Request by ID and claim profile</name>
          <t>In this mode, the calling application request evidence about a given entity
-- for example, a given EnvID or a given KeyID -- and the cryptographic device
assembles a <tt>PkixEvidenceStatement</tt> containing as many claims as it is able to
populate. Implementers may have named evidence profiles if it is desirable for
the cryptographic device to respond with multiple different sets of claims.</t>
        </section>
        <section anchor="request-by-claim-set">
          <name>Request by claim set</name>
          <t>In this mode, the calling application pre-constructs a sequence of <tt>EVIDENCE-CLAIM</tt>
which is passed in to the attesting device. As a response, the attesting device returns
a structure of type <tt>PkixEvidenceStatement</tt> which includes all the expected signatures.</t>
          <t>This mode is useful for attesting devices with more resources and used in situations where
the supported evidence profiles may not be known during implementation.</t>
          <t>It is left to the implementer to choose the way that the desired claims are submitted to the
attesting device, including which types of claims are recognized and how much information is
provided by the caller.</t>
          <t>However, when using this mode:
- an attesting device <bcp14>MUST</bcp14> reject the production of a <tt>PkixEvidenceStatement</tt> if any requested
  claim is not recognized; and,
- an attesting device <bcp14>MUST</bcp14> reject the production of a <tt>PkixEvidenceStatement</tt> if any requested
  claim is not supported by the observed state (claim is deemed false).</t>
          <t>The use of this mode implies that the attesting device contains the logic necessary to interpret
and verify the submitted claims.</t>
        </section>
      </section>
    </section>
    <section anchor="sec-priv-cons">
      <name>Privacy Considerations</name>
      <section anchor="publishing-evidence-in-a-certificate">
        <name>Publishing Evidence in a certificate</name>
        <t>The extension <bcp14>MUST NOT</bcp14> publish in the certificate any privacy-sensitive information
that could compromise the end device. What counts as privacy-sensitive will vary by
use case. For example, consider a few scenarios:</t>
        <t>First, consider a Hardware Security Module (HSM) backing a public code-signing service.
The model and firmware patch level could be considered sensitive as it could give an
attacker an advantage in exploiting known vulnerabilities against un-patched systems.</t>
        <t>Second, consider a certificate issued to a end-user mobile computing device,
any sort of unique identifier could be used as a super-cookie for tracking
purposes.</t>
        <t>Third, consider small IoT devices such as un-patchable wireless sensors.
Here there may be no privacy concerns and in fact knowing exact hardware
and firmware version information could help edge gateways to deny network
access to devices with known vulnerabilities.</t>
        <t>Beyond that, a CA <bcp14>MUST</bcp14> have a configurable mechanism to control which information
is to be copied from the provided Evidence into the certificate, for example this
could be configured within a certificate profile or Certificate Practice Statement
(CPS) and this must be considered on a case-by-base basis.  To protect end-user
privacy, CA operators should err on the
side of caution and exclude information that is not clearly essential for security
verification by relying parties.  Avoiding unnecessary claims also mitigates the risk
of targeted attacks, where an
attacker could exploit knowledge of hardware versions, models, etc.</t>
      </section>
    </section>
    <section anchor="sec-cons">
      <name>Security Considerations</name>
      <t>This specification re-uses the claims from the EAT specification and
relies on the security protection offered by digital signatures. This
digital signature is computed with the Attestation Key available
on the device, see Section 12.1 of <xref target="RFC9334"/> for considerations
regarding the generation, the use and the protection of these
Attestation Keys. Since the Attester located at the end entity creates
the Evidence with claims defined in this document. This document inherits
the remote attestation architecture described in <xref target="RFC9334"/>. With the
re-use of the claims from <xref target="I-D.ietf-rats-eat"/> the security and privacy
considerations apply also to this document even though the encoding
in this specification is different from the encoding of claims
discussed by <xref target="I-D.ietf-rats-eat"/>.</t>
      <t>Evidence contains information that may be unique to a device
and may therefore allow to single out an individual device for
tracking purposes.  Deployments that have privacy requirements must
take appropriate measures to ensure that claim values can only
identify a group of devices and that the Attestation Keys are used
across a number of devices as well.</t>
      <t>To verify the Evidence, the primary need is to check the signature and
the correct encoding of the claims. To produce the Attestation Result,
the Verifier will use Endorsements, Reference Values, and Appraisal
Policies. The policies may require that certain claims must be present
and that their values match registered reference values.  All claims
may be worthy of additional appraisal.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>TBD: OIDs for all the claims listed in this document.</t>
      <section anchor="oids-for-evidence-claims-certificate-extension">
        <name>OIDs for Evidence Claims Certificate Extension</name>
        <t>For the EvidenceClaims certificate extension in <xref target="extclaims-extension"/>,
IANA is requested to assign an object identifier (OID) for the certificate extension.
The OID for the certificate extension should be allocated in the "SMI
Security for PKIX Certificate Extension" registry (1.3.6.1.5.5.7.1).</t>
        <t>For the ASN.1 Module in <xref target="extclaims-asn"/>, IANA is requested to assign an
object identifier (OID) for the module identifier.  The OID for the
module should be allocated in the "SMI Security for PKIX Module
Identifier" registry (1.3.6.1.5.5.7.0).</t>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="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="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="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">
              <organization>Mediatek USA</organization>
            </author>
            <author fullname="Jeremy O'Donoghue" initials="J." surname="O'Donoghue">
              <organization>Qualcomm Technologies Inc.</organization>
            </author>
            <author fullname="Carl Wallace" initials="C." surname="Wallace">
              <organization>Red Hound Software, Inc.</organization>
            </author>
            <date day="25" month="June" 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-28"/>
        </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 anchor="sec-informative-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="RFC4211">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF)</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="September" year="2005"/>
            <abstract>
              <t>This document describes the Certificate Request Message Format (CRMF) syntax and semantics. This syntax is used to convey a request for a certificate to a Certification Authority (CA), possibly via a Registration Authority (RA), for the purposes of X.509 certificate production. The request will typically include a public key and the associated registration information. This document does not define a certificate request protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4211"/>
          <seriesInfo name="DOI" value="10.17487/RFC4211"/>
        </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="RFC9344">
          <front>
            <title>CCNinfo: Discovering Content and Network Information in Content-Centric Networks</title>
            <author fullname="H. Asaeda" initials="H." surname="Asaeda"/>
            <author fullname="A. Ooka" initials="A." surname="Ooka"/>
            <author fullname="X. Shao" initials="X." surname="Shao"/>
            <date month="February" year="2023"/>
            <abstract>
              <t>This document describes a mechanism named "CCNinfo" that discovers information about the network topology and in-network cache in Content-Centric Networks (CCNs). CCNinfo investigates 1) the CCN routing path information per name prefix, 2) the Round-Trip Time (RTT) between the content forwarder and the consumer, and 3) the states of in-network cache per name prefix. CCNinfo is useful to understand and debug the behavior of testbed networks and other experimental deployments of CCN systems.</t>
              <t>This document is a product of the IRTF Information-Centric Networking Research Group (ICNRG). This document represents the consensus view of ICNRG and has been reviewed extensively by several members of the ICN community and the RG. The authors and RG chairs approve of the contents. The document is sponsored under the IRTF, is not issued by the IETF, and is not an IETF standard. This is an experimental protocol and the specification may change in the future.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9344"/>
          <seriesInfo name="DOI" value="10.17487/RFC9344"/>
        </reference>
        <reference anchor="RFC6268">
          <front>
            <title>Additional New ASN.1 Modules for the Cryptographic Message Syntax (CMS) and the Public Key Infrastructure Using X.509 (PKIX)</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <date month="July" year="2011"/>
            <abstract>
              <t>The Cryptographic Message Syntax (CMS) 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 some auxiliary ASN.1 modules to conform to the 2008 version of ASN.1; the 1988 ASN.1 modules remain the normative version. 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="6268"/>
          <seriesInfo name="DOI" value="10.17487/RFC6268"/>
        </reference>
        <reference anchor="I-D.ietf-lamps-csr-attestation">
          <front>
            <title>Use of Remote Attestation with Certification 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>
            <author fullname="Monty Wiseman" initials="M." surname="Wiseman">
              <organization>Beyond Identity</organization>
            </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
              <organization>Intel Corporation</organization>
            </author>
            <date day="7" month="July" year="2024"/>
            <abstract>
              <t>   A PKI end entity requesting a certificate from a Certification
   Authority (CA) may wish to offer trustworthy claims about the
   platform generating the certification request and the environment
   associated with the corresponding private key, such as whether the
   private key resides on a hardware security module.

   This specification defines an attribute and an extension that allow
   for conveyance of Evidence in Certificate Signing Requests (CSRs)
   such as PKCS#10 or Certificate Request Message Format (CRMF) payloads
   which provides an elegant and automatable mechanism for transporting
   Evidence to a Certification Authority.

   Including Evidence along with a CSR can help to improve the
   assessment of the security posture for the private key, and can help
   the Certification Authority to assess whether it satisfies the
   requested certificate profile.  These Evidence Claims can include
   information about the hardware component'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-10"/>
        </reference>
        <reference anchor="X.680" target="https://www.itu.int/rec/T-REC-X.680">
          <front>
            <title>Information technology -- Abstract Syntax Notation One (ASN.1): Specification of basic notation</title>
            <author>
              <organization>ITU-T</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 998?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>This specification is the work of a design team created by the chairs
of the LAMPS working group. This specification has been developed
based on discussions in that design team.</t>
      <t>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, Christopher Meyer, Michael StJohns,
Carl Wallace, Michael Ricardson, Tomofumi Okubo, Olivier Couillard, John
Gray, Eric Amador, Johnson Darren, Herman Slatman, Tiru Reddy, Thomas
Fossati, Corey Bonnell, Argenius Kushner, James Hagborg.</t>
    </section>
    <section anchor="asn1-mod">
      <name>ASN.1 Module</name>
      <t>TBD: Full ASN.1 goes in here.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9V97XIjR5LY/3qKMhVhkWcAO5wvSdTeakESo4E0/DgCo49V
bCwb6CLQy0Y3rqubHOzcbPgVHH4Bv4PfwA6/iJ/E+VXV1Y0GxRmtz+G52xAB
dGVXZWXld2b1+31VJmVqjvTl9+P+LLIm1sOyNLaMyiTP9OguiU02NyqazQpz
96uPxfk8i1YALi6im7KfV5m9z4ty2S+i0vbXt8m7vpFn+0+eqHlUmkVebI60
LWM1zzNrMlvZI10WlVG2mq0Sa+EF5WYNMMej6SulknVBv9vy6ZMnXz15qqLC
REd6YuZVkZQbBe+7XRR5tT7SV8PpRN2aDXwVw/CsNEVmyv4pzk0pmHwW/yVK
8wxgb4xV6+RIaV3czE1sy00q32pd5vPgzySD6ZfuCwurK8yN9Z83q8bHskjm
/uF5vlrBWP9rkqVJVr/GvCv7aWLLPgCZ5Sk8lvf/6T/xuHVUgwG8tL4JMHcT
pdYoFVXlMi9wPX34H74Kfjsb6Au3I/Qt79VZcmtaP+TF4kiPMkKzfpOsktLE
9IOjA/mNvoNFGgNzefriyRM9yVNAa6mv8ijW//s//1c9qWCwPoTdxmfnsEVH
+qIso/uopy+yMiqSnH8BYimRFE6iLIoj+S6G+X3/9Hv97NsX9I1ZRUl6pFcw
5YGnrj8ans0A0NJc8dVAf29KIPB7k6bBkq+S+TIq4vaPH7VsP+G3GT6nv0+y
RUwT8NOU1wzq1+ye6neXr4IJfmeirH+ZmKIw+lViTenmF2XJ3+jQAaKKzbrM
nw/11MyXWZ7mi8RYIPP5oDFn91hjrw5fvHgy1G+iNbwB3mL08M58+gYd/kl/
MX0arvyv6z/O+b1RY6m8utdRlsFUp3a+zG9Mliw6VjdJDBwWGwLlYYN62B8X
q3eDjJDD4G+qNOVXTJOiWkWpsfdRoa9MHG863nGe3yZRsOzjKFsAQygYFYVZ
0FPfR0UWldFt1ETDOItlsExv7zYHyk8KmBV8xmXvbZ2/H2EvV1EWnj5kb43v
iQqPzQag6TEyG2RrTYqbDBunAUEM7hnEH2c0MpGBhH2V5cUK1nxnkCNcvTp5
enj4lfz51bNnz+XPF0+/fIJ/jvung8SUN8y1TVQeAdvNbtowvvrypfz5HOA5
GF8dPvWQnzvIL5++/LIBOY1Wa9uf26If1XIEn/hp8JInAf9ENO2N3btB1JSO
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
9rbYh0gkEZvB7Y4kbVZciM05LHLlAN1eQGkoZKI3WsK56m60X0Wkai9StT71
92OHBYJ1yCJo1oXMVmE6YCMCKvnoUt5c97ln5VhCoujjwBCHCroPLIq8olsp
nbyLRJ51HUW2blBdAEFZ5BZVhrrC0UMAoWlSij3loX48aoQCYOIr5KSZlHiR
oWbmt61AgktxdqHl7sut3U15lCzWnrhc80dgfmhEoinJuVEnf+UKRbivrMTA
h77L5iVGpxPmaIZj1YkYq7JLgneplpOz5CSkhIxUiOSkcPvDdf6cc0vM1Jet
yBMojdK0lRYAeku5pIB5EMv28XQyQqjb0ZYjbnp8eoTuTrkzVRwBMuP6SqIm
J+KOAG7QI12+r1pBiAdDucSlukLlH3qcGJ3Y4MpiPJjU/hMP3FaEV+9TGMxf
ldz1QrYPMPPywceCO1TwuM8jjx6j9yZnY+WlMYKhQoZObOzVid37h4Nng5eD
w8EL+L8vBocHgxpVjXBOCyUYCfrQ0w8jQ/0aMiRBO2wyqVuYUPLMryxdby+d
J67qdh+7l/2ELjbu98mao0s2514T4pTMLh1GynxQaWf/Al8Er0sTrXzd7Mzn
VIJl6eK5b4ZnlxMaiGyE+J/I1+YbfB1yjBYiqKWxcpWKQfjP+jKWYALifKjD
6VifTDocPBx2Ds6LGN08ZA4ks6p2PNH8jtRVMqcbl743ZZka5KqgIy9BxdTT
orqJQG05LioAeJJXwM8iNMu+M1HWvwSMAyt6BVY8ML5JRPdkT81qZfCBclnk
+tiY2xVC+JPN01Jf/c///jcbLc1ik/T0K+I6+tKU/+u/9PQZNowYLuCrpLLq
+wrzTWHS03wFGPoWOFt0Zy2qUKcJ9vvVxzlekULTLPM1hpDPzAZHnOFqwNie
lN/lS8CGOgHNXP8INBWhVHA/w6JhJQQR3pHfVKtEX9xWs7ynL1IQqKZorBdA
qW8LrNMbYenJcBXFmClEr4CtOo0AE9gYl1oh6EkalbTsaVJUwO7jGAZOl7gW
OHsWb3eHuYNQ3+A6MsL4EDR5XLv2a/8uwgr219FilhcLvhm2GbaFI3qIMbMP
wmaxJYM8s8i5+QXfgfh/AHIPxLmjkwAA

-->

</rfc>
