<?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.43 (Ruby 3.4.9) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="-o*+"?>
<?rfc docmapping="yes"?>
<?rfc toc_levels="4"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-rats-pkix-key-attestation-08" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="Evidence Encoding for HSMs">Evidence Encoding for Hardware Security Modules</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-rats-pkix-key-attestation-08"/>
    <author initials="J.-P." surname="Fiset" fullname="Jean-Pierre Fiset">
      <organization abbrev="Crypto4A">Crypto4A 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="M." surname="Ounsworth" fullname="Mike Ounsworth">
      <organization abbrev="Cryptic Forest">Cryptic Forest Software</organization>
      <address>
        <postal>
          <city>Sioux Lookout</city>
          <country>Canada</country>
        </postal>
        <email>mike@ounsworth.ca</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization abbrev="UniBw M.">University of the Bundeswehr Munich</organization>
      <address>
        <postal>
          <city>Neubiberg</city>
          <region>Bavaria</region>
          <code>85579</code>
          <country>Germany</country>
        </postal>
        <email>hannes.tschofenig@gmx.net</email>
      </address>
    </author>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization>Fraunhofer SIT</organization>
      <address>
        <email>henk.birkholz@ietf.contact</email>
      </address>
    </author>
    <author initials="M." surname="Wiseman" fullname="Monty Wiseman">
      <organization/>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>monty@iomt.dev</email>
      </address>
    </author>
    <author initials="N." surname="Smith" fullname="Ned Smith">
      <organization/>
      <address>
        <postal>
          <country>United States</country>
        </postal>
        <email>ned.smith.ietf@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="30"/>
    <area>Security</area>
    <workgroup>RATS</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>RATS</keyword>
    <keyword>PKIX</keyword>
    <keyword>HSM</keyword>
    <abstract>
      <?line 176?>

<t>This document specifies a vendor-agnostic format for Evidence produced and verified within a PKIX context.
The Evidence produced this way includes claims collected about a cryptographic module, such as a Hardware Security
Module (HSM),
and elements found within it such as cryptographic keys.</t>
      <t>One scenario envisaged is that the state information about the cryptographic module can be securely presented
to a remote operator or auditor in a vendor-agnostic verifiable format.
A more complex scenario would be to submit this Evidence to a Certification Authority to aid in determining
whether the storage properties of this key meet the requirements of a given certificate profile.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-rats-wg.github.io/key-attestation/draft-ietf-rats-pkix-key-attestation.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-rats-pkix-key-attestation/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        RATS Working Group mailing list (<eref target="mailto:rats@ietf.org"/>),
        which is archived at <eref target="https://datatracker.ietf.org/wg/rats/about/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/rats/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-rats-wg/key-attestation"/>.</t>
    </note>
  </front>
  <middle>
    <?line 188?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document specifies a vendor-neutral Evidence format for remote attestation in PKIX-based environments, with a focus on hardware security modules (HSMs)
and cryptographic keys managed by such devices. The format enables an Attester to convey measured platform and key properties to a Verifier and, ultimately,
to a Relying Party in a form that integrates with existing X.509-based trust infrastructures.</t>
      <t>Concretely, this specification defines:</t>
      <ul spacing="normal">
        <li>
          <t>an ASN.1/DER <tt>Evidence</tt> envelope containing a to-be-signed section, one or more signature blocks, and optional intermediate certificates;</t>
        </li>
        <li>
          <t>an element-and-claim data model organized around transaction, platform, and key elements, identified by OIDs;</t>
        </li>
        <li>
          <t>encoding and signature-verification processing rules for PKIX Evidence.</t>
        </li>
      </ul>
      <t>The design is intentionally PKIX-native. ASN.1 and DER are used to align with existing certificate tooling, certification authority workflows, and HSM implementations where non-ASN.1 formats are less common.</t>
      <t>This document does not define a transport protocol for carrying Evidence, does not define Verifier appraisal policy, and
does not standardize device-internal authentication/authorization mechanisms. It defines the data model and cryptographic container
so that such mechanisms can be applied consistently across deployments.</t>
    </section>
    <section anchor="use-cases">
      <name>Use Cases</name>
      <t>This section covers use cases that motivated the development of this specification.</t>
      <section anchor="continuous-assurance">
        <name>Continuous Assurance</name>
        <t>There are situations where it is necessary to verify the current running state of an HSM as part of operational or
auditing procedures. For example, there are devices that are certified to work in an environment only if certain
versions of the firmware are loaded or only if user keys are protected with specific policies.</t>
        <t>The Evidence format offered by this specification allows a platform to report its firmware level along with
other collected claims necessary in critical deployments.</t>
      </section>
      <section anchor="key-import-and-hsm-clustering">
        <name>Key import and HSM clustering</name>
        <t>Consider that an HSM is being added to a logical HSM cluster. Part of the onboarding process involves
the newly-added HSM providing Evidence of its running state, for example that it is a genuine device from
the same manufacturer as the existing clustered HSMs, firmware patch level, FIPS mode, etc.
It could also be required to provide information about any system-level keys required to establish
secure cluster communication. In this scenario, the Verifier and Relying Party will typically be other HSMs in the cluster
deciding whether or not to admit the new HSM.</t>
        <t>A related scenario is when performing a key migration across HSMs.
If the key being migrated is associated with certain properties, for example an environment running in FIPS mode at
FIPS Level 3, and the key is set to certain protection properties such as Non-Exportable and Dual-Control,
then the HSM might wish to verify that the key was previously stored under the same conditions.
This specification provides an Evidence format with sufficient details to support this type of
implementation across HSM vendors.</t>
        <t>These scenarios motivate the design requirements to have an ASN.1 based Evidence format and a data model that
more closely matches typical HSM architecture since, as shown in both scenarios,
an HSM is acting as Verifier and Relying Party.</t>
      </section>
      <section anchor="attesting-subject-of-a-certificate-issuance">
        <name>Attesting subject of a certificate issuance</name>
        <t>Prior to a Certification Authority (CA) issuing a certificate on behalf of a subject, a number of procedures
are required to verify that the subject of the certificate is associated with the key that is certified.
In some cases, such as issuing a code signing certificate <xref target="CNSA2.0"/> <xref target="CSBR"/>, a CA must ensure that
the subject key is located in a Hardware Security Module (HSM).</t>
        <t>The Evidence format offered by this specification is designed to carry the information necessary for a CA to
assess the location of the subject key along with a number of commonly-required attributes. More specifically, a CA could
determine which HSM was used to generate the subject key, whether this device adheres
to certain jurisdiction policies (such as FIPS mode) and the constraints applied to the key (such as whether it is extractable).
The use of Evidence in a certification request is specified in <xref target="I-D.ietf-lamps-csr-attestation"/>.</t>
        <t>For relatively simple HSM devices, storage properties such as "extractable" may always be false for all keys
since the devices are not capable of key export and so the Evidence could be essentially a hard-coded template asserting these
immutable attributes. However, more complex HSM devices require a more elaborate Evidence format that encompasses the
mutability of these attributes.</t>
        <t>Also, a client requesting a key attestation might wish to scope down the content of the produced Evidence as
the HSM contains much more information than that which is relevant to the transaction.
Not reducing the scope of the generated Evidence could, in some scenarios, constitute a privacy violation.</t>
      </section>
    </section>
    <section anchor="terminology">
      <name>Conventions and Terminology</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 specification uses a necessary mixture of PKI terminology and RATS Architecture definitions
in order to map concepts between the two domains.</t>
      <t>The reader is assumed to be familiar with the vocabulary and concepts
defined in the RATS Architecture (<xref target="RFC9334"/>) such as Attester,
Relying Party, Verifier.</t>
      <t>The reader is assumed to be familiar with common vocabulary and concepts
defined in <xref target="RFC5280"/> such as certificate, signature, attribute, verification and validation.</t>
      <t>In order to avoid confusion, this document generally
capitalizes RATS terms such as Attester, Relying Party, and Claim.
Therefore, for example, a "Verifier"
should be assumed to be an entity that checks the validity of Evidence as per <xref target="RFC9334"/>,
whereas a "verifier" could be a more general reference to a PKI entity that checks
the validity of an X.509 certificate or other digital signature as per <xref target="RFC5280"/>.</t>
      <t>The following terms are used in this document:</t>
      <dl newline="true">
        <dt>Attestation Key (AK):</dt>
        <dd>
          <t>Cryptographic key controlled solely by the Attester and used only for the purpose
of producing Evidence. In other words, it is used to digitally sign the claims collected by
the Attester.</t>
        </dd>
        <dt>Attester:</dt>
        <dd>
          <t>The term Attester respects the definition offered in <xref target="RFC9334"/>. In this specification, it
is also interchangeable with "platform" or "HSM".</t>
        </dd>
        <dt>Attesting Environment:</dt>
        <dd>
          <t>As defined in <xref target="RFC9334"/>, the Attesting Environment collects the information to be represented
in Claims. In practical terms, an implementation may be designed with services to perform this function.
To remain consistent with the RATS Architecture, the term "Attesting Environment" is used throughout
this specification.</t>
        </dd>
        <dt>Evidence:</dt>
        <dd>
          <t>The term Evidence respects the definition offered in <xref target="RFC9334"/>. In this specification, it
refers to claims, encoded according to the format defined within this document, and signed using
Attestation Keys.</t>
        </dd>
        <dt>Hardware Security Module (HSM):</dt>
        <dd>
          <t>A physical computing device that safeguards and manages secrets, such as cryptographic keys,
and performs cryptographic operations based on those secrets.
This specification takes a broad definition of what counts as an HSM to include smartcards,
USB tokens, TPMs, cryptographic co-processors (PCI cards) and "enterprise-grade" or "cloud-service grade" HSMs
(possibly rack mounted). In this specification, it is interchangeable with "platform" or "Attester".</t>
        </dd>
        <dt>Key Attestation:</dt>
        <dd>
          <t>Process of producing Evidence containing claims pertaining to user keys found within an HSM. In
general, the claims include enough information about a user key and its hosting platform to allow
a Relying Party to make judicious decisions about the key, such as whether to issue a certificate for the key.</t>
        </dd>
        <dt>RATS:</dt>
        <dd>
          <t>Remote ATtestation procedureS. Refers to a working group within IETF and all the documents developed
under this umbrella of efforts. This specification is developed using concepts developed in RATS but more
particularly refers to the RATS Architecture as introduced in <xref target="RFC9334"/>.</t>
        </dd>
        <dt>PKIX:</dt>
        <dd>
          <t>Public Key Infrastructure based on X.509 certificates. Refers to the framework of technology, policies and
procedures used to manage and distribute digital certificates based on <xref target="RFC5280"/> and related specifications.</t>
        </dd>
        <dt>Platform:</dt>
        <dd>
          <t>The module or device that embodies the Attester. In this specification, it is interchangeable with
"Attester" or "HSM".</t>
        </dd>
        <dt>Platform Attestation:</dt>
        <dd>
          <t>Process of producing Evidence containing claims pertaining to measured values associated with the platform itself. In general, the claims include
enough information about the platform to allow a Relying Party to make judicious decisions about the
platform, such as those carried out during audit reviews.</t>
        </dd>
        <dt>Presenter:</dt>
        <dd>
          <t>Role that facilitates communication between the Attester and the Verifier. The
Presenter initiates the operation of generating Evidence at the Attester and
passes the generated Evidence to the Verifier. The interface by which the Presenter
initiates Evidence generation is outside the scope of this specification.</t>
        </dd>
        <dt>Trust Anchor:</dt>
        <dd>
          <t>As defined in <xref target="RFC6024"/> and <xref target="RFC9019"/>, a Trust Anchor
"represents an authoritative element via a public key and
associated data. The public key is used to verify digital
signatures, and the associated data is used to constrain the types
of information for which the trust anchor is authoritative." The
Trust Anchor may be a certificate, a raw public key, or other
structure, as appropriate.</t>
        </dd>
        <dt>Trusted Platform Module (TPM):</dt>
        <dd>
          <t>A tamper-resistant processor generally located on a computer's motherboard used to enhance attestation
functions for the hosting platform as defined by the Trusted Computing Group. TPMs are very specialized Hardware Security Modules and generally use
other protocols (than the one presented in this specification) to transmit Evidence.</t>
        </dd>
        <dt>User Key:</dt>
        <dd>
          <t>A user key consists of a key hosted by an HSM (the platform) and intended to be used by a client
of the HSM. Other terms used for a user key are "application key", "client key" or "operational key".
The access and operations on a user key are controlled by the HSM.</t>
        </dd>
      </dl>
      <section anchor="claims-and-measurements-in-generated-evidence">
        <name>Claims and measurements in generated Evidence</name>
        <t>The RATS Architecture <xref target="RFC9334"/> states that Evidence is made up of claims and that a claim is "a piece of
asserted information, often in the form of a name/value pair". The RATS Architecture also mentions
the concept of "measurements" that "can describe a variety of attributes of system components, such
as hardware, firmware, BIOS, software, etc., and how they are hardened."</t>
        <t>Some HSMs have a large amount of memory and can therefore contain a substantial amount of elements that
can be observed independently by the Attesting Environment. Each of those elements, in turn, can contain a
number of measurable attributes.</t>
        <t>A certain level of complexity arises as multiple elements of the same class can be reported simultaneously in generated
Evidence. In this case, multiple similar claims are reported simultaneously but associated with different elements.</t>
        <t>For example, two independent user keys could be reported simultaneously in Evidence. Each key is associated with a
SPKI (SubjectPublicKeyInfo). The measured values for the SPKI of the respective keys are different.</t>
        <t>To that end, in this specification, the claims are organized as collections where each claim is the association of
a claim type with the measured value. The collections, in turn, are organized by "elements". An element represents a
logical portion of the Target Environment that is observed by the Attesting Environment.</t>
        <t>Thus, an element is associated with a collection of claims. Each claim is the association of a claim type
with a measured value.</t>
        <t>The grouping of claims into elements facilitates the comprehension of a large addressable space into
portions recognizable by the user. More importantly, it curtails the produced Evidence to portions of the
Target Environment that relate to the needs of the Verifier. See <xref target="sec-cons-privacy"/>.</t>
      </section>
      <section anchor="sec-ak-chain">
        <name>Attestation Key Certificate Chain</name>
        <t>The data format in this specification represents Evidence and
requires third-party endorsement in order to establish trust. Part of this
endorsement is a trust anchor that chains to the HSM's attestation key (AK)
which signs the Evidence. In practice the trust anchor usually is a
manufacturing CA belonging to the device vendor which proves
that the device is genuine and not counterfeit. The trust anchor can also belong
to the device operator as would be the case when the AK certificate is replaced
as part of onboarding the device into a new operational environment.</t>
        <t>The AK certificate associated with the AK that signs the Evidence has the following constraints:</t>
        <ul spacing="normal">
          <li>
            <t>the certificate <bcp14>MUST</bcp14> include the Extended Key Usage (EKU) certificate extension;</t>
          </li>
          <li>
            <t>the EKU certificate extension <bcp14>MUST</bcp14> include the <tt>id-kp-attestationKey</tt>, as defined in this specification; and,</t>
          </li>
          <li>
            <t>the <tt>KeyUsage</tt> extension (KU) <bcp14>MUST</bcp14> have the <tt>digitalSignature</tt> bit set.</t>
          </li>
        </ul>
        <t>An EKU that includes only a single KeyPurposeId of <tt>id-kp-attestationKey</tt> <bcp14>SHOULD</bcp14> be marked as <tt>critical</tt>.
The reasoning here is that the usage of a true attestation key is constrained by the security module it's
contained by. Presenting non-attestation data for validation by this AK public key should ALWAYS fail.</t>
        <t>An EKU that includes a KeyPurposeId of <tt>id-kp-attestationKey</tt> along with other attestation-related
KeyPurposeId <bcp14>SHOULD NOT</bcp14> be marked as critical.</t>
        <t>The data format specified in <xref target="sec-data-model"/> requires one or more <tt>SignatureBlock</tt> values.
Multiple signature blocks allow one Attester identity, represented by a single subject DN,
to use distinct Attestation Keys and signature algorithms. See <xref target="sec-verif-proc"/> for the
processing rules.</t>
      </section>
      <section anchor="presenter">
        <name>Presenter Role</name>
        <t>This specification introduces the role of "Presenter" as shown in <xref target="fig-presenter"/>. The Presenter is the role that initiates the generation of
Evidence. Since HSMs are generally servers (client/server relationship) or peripherals (controller/peripheral relationship), a Presenter is
required to launch the process of creating the Evidence and capturing it to forward it to the Verifier.</t>
        <figure anchor="fig-presenter">
          <name>Presenter Role</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="496" width="408" viewBox="0 0 408 496" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,336" fill="none" stroke="black"/>
                <path d="M 48,416 L 48,480" fill="none" stroke="black"/>
                <path d="M 64,80 L 64,160" fill="none" stroke="black"/>
                <path d="M 64,240 L 64,288" fill="none" stroke="black"/>
                <path d="M 112,296 L 112,408" fill="none" stroke="black"/>
                <path d="M 128,160 L 128,232" fill="none" stroke="black"/>
                <path d="M 136,288 L 136,408" fill="none" stroke="black"/>
                <path d="M 184,416 L 184,480" fill="none" stroke="black"/>
                <path d="M 216,80 L 216,160" fill="none" stroke="black"/>
                <path d="M 216,240 L 216,288" fill="none" stroke="black"/>
                <path d="M 248,32 L 248,336" fill="none" stroke="black"/>
                <path d="M 296,416 L 296,480" fill="none" stroke="black"/>
                <path d="M 400,416 L 400,480" fill="none" stroke="black"/>
                <path d="M 8,32 L 248,32" fill="none" stroke="black"/>
                <path d="M 64,80 L 216,80" fill="none" stroke="black"/>
                <path d="M 64,160 L 216,160" fill="none" stroke="black"/>
                <path d="M 64,240 L 216,240" fill="none" stroke="black"/>
                <path d="M 64,288 L 216,288" fill="none" stroke="black"/>
                <path d="M 8,336 L 248,336" fill="none" stroke="black"/>
                <path d="M 48,416 L 184,416" fill="none" stroke="black"/>
                <path d="M 296,416 L 400,416" fill="none" stroke="black"/>
                <path d="M 192,432 L 288,432" fill="none" stroke="black"/>
                <path d="M 192,464 L 288,464" fill="none" stroke="black"/>
                <path d="M 48,480 L 184,480" fill="none" stroke="black"/>
                <path d="M 296,480 L 400,480" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="296,464 284,458.4 284,469.6" fill="black" transform="rotate(0,288,464)"/>
                <polygon class="arrowhead" points="200,432 188,426.4 188,437.6" fill="black" transform="rotate(180,192,432)"/>
                <polygon class="arrowhead" points="144,408 132,402.4 132,413.6" fill="black" transform="rotate(90,136,408)"/>
                <polygon class="arrowhead" points="136,232 124,226.4 124,237.6" fill="black" transform="rotate(90,128,232)"/>
                <polygon class="arrowhead" points="120,296 108,290.4 108,301.6" fill="black" transform="rotate(270,112,296)"/>
                <g class="text">
                  <text x="60" y="52">Attester</text>
                  <text x="120" y="52">(HSM)</text>
                  <text x="100" y="100">Target</text>
                  <text x="120" y="116">Environment</text>
                  <text x="112" y="132">(Elements</text>
                  <text x="160" y="132">&amp;</text>
                  <text x="112" y="148">values)</text>
                  <text x="168" y="196">Collect</text>
                  <text x="176" y="212">Claims(3)</text>
                  <text x="112" y="260">Attesting</text>
                  <text x="120" y="276">Environment</text>
                  <text x="56" y="372">Attestation</text>
                  <text x="208" y="372">Evidence(4)</text>
                  <text x="52" y="388">Request(2)</text>
                  <text x="244" y="420">Nonce(1)</text>
                  <text x="120" y="452">Presenter</text>
                  <text x="348" y="452">Verifier</text>
                  <text x="240" y="484">Evidence(5)</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
+-----------------------------+
|  Attester (HSM)             |
|                             |
|      +------------------+   |
|      | Target           |   |
|      | Environment      |   |
|      | (Elements &      |   |
|      |  values)         |   |
|      +-------+----------+   |
|              |              |
|              | Collect      |
|              | Claims(3)    |
|              v              |
|      +------------------+   |
|      | Attesting        |   |
|      | Environment      |   |
|      +--------+---------+   |
|            ^  |             |
|            |  |             |
+------------+--+-------------+
             |  |
 Attestation |  |   Evidence(4)
 Request(2)  |  |
             |  v
     +----------------+   Nonce(1)  +------------+
     |                |<------------|            |
     |    Presenter   |             |  Verifier  |
     |                |------------>|            |
     +----------------+ Evidence(5) +------------+
]]></artwork>
          </artset>
        </figure>
        <t>The process of generating Evidence generally starts at the Verifier with the generation of a nonce. The nonce is used to ensure freshness
of the Evidence and this quality is guaranteed by the Verifier. Therefore, if a nonce is used, it must be provided to the Presenter by
the Verifier (1).</t>
        <t>An Attestation Request (request) is assembled by the Presenter and submitted to the HSM (2). The Attesting Environment parses the request and
collects the appropriate measurements from the Target Environment (3).</t>
        <t>In the previous figure, the HSM is represented as being composed of an Attesting Environment and a Target Environment. This representation is offered
as a simplified view and implementations are not required to adhere to this separation of concerns.</t>
        <t>The Attesting Environment produces Evidence based on the collected information and returns it to the Presenter for distribution (4). Finally, the
Presenter forwards the Evidence to the Verifier (5).</t>
        <t>The aim of the figure is to depict the position of the Presenter as an intermediate role between the Attester and the Verifier.
The role of "Presenter" is privileged as it controls the claims included in the Evidence being generated by the Attester. However, the role is not "trusted" as
the Verifier does not have to take into account the participation of the Presenter as part of the function of appraising the Evidence.</t>
        <t>The attestation request is a message used by the Presenter to specify the elements and the associated claims that are included by the Attester in the
generated Evidence. The nonce specified by the Verifier <bcp14>MUST</bcp14> be included in the attestation request for the Attester to include in the Evidence.</t>
        <t>The nature and format of the attestation request is not dictated by this specification.</t>
      </section>
    </section>
    <section anchor="sec-info-model">
      <name>Information Model</name>
      <t>The Evidence format is composed of two main sections:</t>
      <ul spacing="normal">
        <li>
          <t>An Evidence description which describes the list of reported elements.</t>
        </li>
        <li>
          <t>A signature section where one or more digital signatures are offered to prove the origin of the
Evidence description and maintain its integrity.</t>
        </li>
      </ul>
      <t>The details of the signature section are left to the data model. The remainder of this section
deals with the way the information is organized to form the Evidence description.</t>
      <t>The Evidence description is associated with elements to help with the organization and comprehension
of the information. Elements are portions of the Target Environment observed by the Attesting
Environment. Each element, in turn, is associated with a collection of claims that describes the attributes
of the element.</t>
      <t>Therefore, the Evidence description is composed of a set of elements and each element is composed
of a claim set.</t>
      <section anchor="element">
        <name>Element</name>
        <t>An element is a logical construct that refers to a portion of the Target Environment's state. It is
addressable via an identifier such as a UUID or a handle (as expressed in <xref target="PKCS11"/>). In general, an
element refers to a component recognized by users of the HSM, such as a user key or the platform itself.</t>
        <t>An element is composed of a type, the element type, and a collection of claims. The element type
describes the class of the element while the collection of claims defines its state.</t>
        <t>An element <bcp14>MUST</bcp14> be reported at most once in an Evidence description. The Evidence description can
have multiple elements of the same type (for example reporting multiple keys), but each
element <bcp14>MUST</bcp14> relate to different portions of the Target Environment.</t>
        <t>It is possible for two elements to be quite similar such as in a situation where a key is imported
twice in an HSM. In this case, the two related elements could be associated with similar claims. However, they
are treated as different elements as they are reporting different portions of the Target Environment.</t>
        <t>The number of elements reported in an Evidence description, and their respective type, is
left to the implementer. For a simple device where there is only one key, the list of
reported elements could be fixed. For larger and more complex devices, the list of
reported elements should be tailored to the intended use and authorized recipient of the Evidence.</t>
        <t>In particular, note that the <tt>nonce</tt> claim contained with the Transaction element is optional,
and therefore it is possible that an extremely simple device that holds one static key
could have its Evidence generated at manufacturing time and injected
statically into the device instead of
being generated on-demand. This model would essentially
off-board the Attesting Environment to be part of the manufacturing infrastructure. In the RATS
Architecture, this configuration would refer to the information provided this way as an Endorsement
provided by the manufacturer as opposed to Evidence generated by the HSM.</t>
      </section>
      <section anchor="element-type">
        <name>Element Type</name>
        <t>An element is defined by its type. This specification defines three element types:</t>
        <ul spacing="normal">
          <li>
            <t>Platform : This element holds claims that describe the state of the platform (or device)
itself. Elements of this type hold claims that are global
in nature within the Target Environment.</t>
          </li>
          <li>
            <t>Key : The elements of this type represent a cryptographic key protected within the
Target Environment and hold claims that describe that specific key.</t>
          </li>
          <li>
            <t>Transaction : This element is abstract in nature since it is associated with claims
that do not describe portions of the Target Environment. Instead, these claims
relate to the Evidence-generation transaction, such as a <tt>nonce</tt> to support freshness.</t>
          </li>
        </ul>
        <t>Although this document defines a short list of element types, this list is extensible
to allow implementers to report on elements found in their implementation and not
covered by this specification. By using Object Identifiers (OIDs) for specifying element types
and claim types, this format is inherently extensible;
implementers of this specification <bcp14>MAY</bcp14> define new custom or proprietary element types and
place them alongside the standardized elements, or define new claim types
and place them inside standardized elements.</t>
        <t>Verifiers <bcp14>SHOULD</bcp14> ignore and skip over
unrecognized element or claim types and continue processing normally.
In other words, if a given Evidence would have been acceptable without the
unrecognized elements or claims, then it <bcp14>SHOULD</bcp14> still be acceptable with them.</t>
      </section>
      <section anchor="claim-type">
        <name>Claim Type</name>
        <t>Each claim found in an element is composed of a claim type and a value.
Each claim describes a portion of the state from the associated element. For example,
a platform element could have a claim which indicates the firmware version currently running.
Another example is a key element with a claim that reports whether the key is extractable
or not.</t>
        <t>A value provided by a claim is to be interpreted within the context
of its element and in relation to the claim type.</t>
        <t>A claim type <bcp14>MUST</bcp14> be defined for a specific element type to reduce
confusion when it comes to interpretation of the value. In other words, a specific claim type <bcp14>MUST
NOT</bcp14> be used by multiple element types. For example, if a concept of "revision" is applicable to a platform
and a key, the claim for one element type (platform revision) should have a different identifier
from the one for the other element type (key revision).</t>
        <t>The nature of the value (boolean, integer, string, bytes) and its format are dependent on the claim type.</t>
        <t>This specification defines a limited set of claim types. However, the list is extensible
through the IANA registration process or private OID allocation, enabling implementers to
report additional claims not covered by this specification.</t>
        <t>The number of claims reported within an element, and their respective type, is
left to the implementer. For a simple device, the reported list of claims for an element
might be fixed. However, for larger and more complex devices, the list of reported claims
should be tailored to the intended use and authorized recipient of the Evidence.</t>
        <t>Claims of a particular type <bcp14>MAY</bcp14> be repeated within an element while others <bcp14>MUST NOT</bcp14>. For example, for a
platform element, there can only be one "firmware version" claim. Therefore, the associated claim
<bcp14>MUST NOT</bcp14> be repeated as it may lead to confusion. Other claim definitions can allow
multiple independent values. Therefore, the definition of a claim specifies whether or not multiple copies of that
claim are allowed within an element's claim set.</t>
        <t>If a Verifier detects, within a single element, multiple copies of a claim type that should not
be repeated, it <bcp14>MUST</bcp14> reject the Evidence as malformed. Since a Verifier is encouraged to ignore
unrecognized claim types, it is possible that a potential rejection is missed.</t>
        <t>If a Verifier encounters, within the context of an element, a repeated claim for a type where
it is allowed, it <bcp14>MUST</bcp14> treat each one as an independent claim and <bcp14>MUST NOT</bcp14>
consider later ones to overwrite the previous one.</t>
      </section>
    </section>
    <section anchor="sec-data-model">
      <name>Data Model</name>
      <t>This section describes the data model associated with generated Evidence. For ease of
deployment within the target ecosystem, ASN.1 definitions <xref target="X680"/> and DER encoding
<xref target="X690"/> are used. A complete ASN.1 module is provided in <xref target="sec-asn1-mod"/>.</t>
      <t>The top-level structures, as ASN.1 fragments, are:</t>
      <sourcecode type="asn.1"><![CDATA[
Evidence ::= SEQUENCE {
    tbs  TbsEvidence,
    signatures  SEQUENCE SIZE (1..MAX) OF SignatureBlock,
    intermediateCertificates  [0] SEQUENCE OF Certificate OPTIONAL
                                  -- As defined in RFC 5912
}

SignatureBlock ::= SEQUENCE {
    sid SignerIdentifier,
    signatureAlgorithm AlgorithmIdentifier{
        SIGNATURE-ALGORITHM, { ... } },
    signatureValue OCTET STRING
}

SignerIdentifier ::= SEQUENCE {
    keyId [0] EXPLICIT OCTET STRING OPTIONAL,
    subjectPublicKeyInfo [1] EXPLICIT
        SubjectPublicKeyInfo OPTIONAL,
        -- As defined in RFC 5912
    certificate [2] EXPLICIT Certificate OPTIONAL
      -- As defined in RFC 5912
} (
    WITH COMPONENTS { ..., keyId PRESENT}
    | WITH COMPONENTS { ..., subjectPublicKeyInfo PRESENT }
    | WITH COMPONENTS { ...,certificate PRESENT } )

TbsEvidence ::= SEQUENCE {
    version INTEGER,
    reportedElements SEQUENCE SIZE (1..MAX) OF ReportedElement
}
]]></sourcecode>
      <t>An <tt>Evidence</tt> message is composed of a protected section known as the To-Be-Signed (TBS) section.
The <tt>TbsEvidence</tt> corresponds to the "Evidence Description" referred to in <xref target="sec-info-model"/>.
The integrity of the TBS section is ensured with one or multiple cryptographic signatures
over the content of this section. There is a provision to carry X.509 certificates supporting each signature.
The SEQUENCE OF <tt>SignatureBlock</tt> supports algorithm agility by allowing the same Attester
identity to sign the TBS section with multiple Attestation Keys. When more than one
<tt>SignatureBlock</tt> is present, each signing certificate represents the same Attester
identity with the same subject Distinguished Name (DN), but contains a distinct SPKI.</t>
      <t>The TBS section is composed of a version number, to ensure future extensibility, and a sequence of reported elements.
For compliance with this specification, <tt>TbsEvidence.version</tt> <bcp14>MUST</bcp14> be <tt>1</tt>.
This envelope format is not extensible; future specifications which make compatibility-breaking changes <bcp14>MUST</bcp14> increment the version number.</t>
      <t>A <tt>SignatureBlock</tt> is included for each signature submitted against the TBS section. The <tt>SignatureBlock</tt> includes
the signature algorithm (signatureAlgorithm) and the signature itself (signatureValue). It also includes
information to identify the authority that provided the signature which is the structure <tt>SignerIdentifier</tt> (sid).
The signer identifier includes a combination of X.509 certificate, SubjectPublicKeyInfo (SPKI) and/or
key identifier (keyId). It is expected that an X.509 certificate will be generally used, as it provides the public key needed
to verify the signature and clearly identifies the subject that provided the signature. The SPKI and keyId are allowed
to support environments where X.509 certificates are not used.</t>
      <t>The field <tt>SignerIdentifier.keyId</tt> is not constrained to specific details. It is an identifier that is shared between the Attester and the Verifier to establish which public key should be used during the verification of a signature block. The fields <tt>SignerIdentifier.subjectPublicKeyInfo</tt> and <tt>SignerIdentifier.certificate</tt> are encouraged as these fields have specific syntax and semantics. When <tt>SignerIdentifier.keyId</tt> is used without a certificate or SPKI, the Verifier <bcp14>MUST</bcp14> obtain the corresponding public key by some implementation-specific or out-of-band mechanism before it can validate the signature.</t>
      <t>The optional certificate list provided in <tt>Evidence.intermediateCertificates</tt> enables the insertion
of X.509 certificates to support trusting the signatures found in signature blocks. This information is intended to provide
the certificates required by the Verifier to validate the endorsement on the certificates included
with the signatures. <tt>intermediateCertificates</tt> <bcp14>MAY</bcp14> include any or all intermediate CA certificates needed to build paths.
It is not required to include trust anchors. Order is not significant.</t>
      <t>As described in <xref target="sec-info-model"/>, the <tt>TbsEvidence</tt> is a collection of elements. Each element
is associated with a type that defines its class. The element types are represented by object identifiers
(OIDs). The following ASN.1 fragment defines the structures associated with elements:</t>
      <sourcecode type="asn.1"><![CDATA[
ReportedElement ::= SEQUENCE {
    elementType         OBJECT IDENTIFIER,
    claims             SEQUENCE SIZE (1..MAX) OF ReportedClaim
}

id-evidence-element             OBJECT IDENTIFIER ::=
    { id-evidence 0 }
id-evidence-element-transaction OBJECT IDENTIFIER ::=
    { id-evidence-element 0 }
id-evidence-element-platform    OBJECT IDENTIFIER ::=
    { id-evidence-element 1 }
id-evidence-element-key         OBJECT IDENTIFIER ::=
    { id-evidence-element 2 }
]]></sourcecode>
      <t>In turn, elements are composed of a collection of claims. Each claim is composed of a type and a value.
The claim types are represented by object identifiers (OIDs). The
following ASN.1 fragment defines the structures associated with claims:</t>
      <sourcecode type="asn.1"><![CDATA[
CLAIM ::= CLASS {
    &id       OBJECT IDENTIFIER UNIQUE,
    &Type
} WITH SYNTAX {
    ID &id
    WITH TYPE &Type
}

ReportedClaim ::= SEQUENCE {
    claimType  CLAIM.&id ({ClaimSet}),
    value      CLAIM.&Type ({ClaimSet}{@claimType})
}

ClaimSet CLAIM ::= {
    -- claim definitions from this specification,
    ...
}
]]></sourcecode>
      <t>The <tt>ClaimSet</tt> object set in the complete ASN.1 module is extensible. This allows future or proprietary claim types to be encoded without changing the <tt>ReportedClaim</tt> syntax. A Verifier that does not recognize a claim type <bcp14>SHOULD</bcp14> ignore that claim as described in <xref target="sec-info-model"/>, unless local policy requires rejection. Every reported claim contains a value.</t>
      <t>Each claim type <bcp14>SHOULD</bcp14> be associated with a single element type. Therefore, it is encouraged
to define claim types grouped with their respective element type.</t>
      <t>The nature of a claim value is dictated by the claim type. When a claim type is defined, the
definition must include the type of the value, its semantics and interpretation.</t>
      <t>The following ASN.1 fragment illustrates how a claim is associated with a type, in this case the
OID <tt>id-evidence-claim-transaction-nonce</tt> and the expected data format (OCTET STRING).</t>
      <sourcecode type="asn.1"><![CDATA[
id-evidence-claim-transaction-nonce     OBJECT IDENTIFIER ::=
    { id-evidence-claim-transaction 0 }

claim-transaction-nonce CLAIM ::= {
  ID id-evidence-claim-transaction-nonce
  WITH TYPE OCTET STRING
}
]]></sourcecode>
      <t>The remainder of this section describes the element types and their associated claims.</t>
      <section anchor="platform-element">
        <name>Platform Element</name>
        <t>A platform element reports information about the device where the Evidence is generated and is
composed of a collection of claims that are global to the Target Environment.
It is associated with the type identifier <tt>id-evidence-element-platform</tt>.</t>
        <t>A platform element, if provided, <bcp14>MUST</bcp14> be included only once within the generated Evidence. If a
Verifier encounters multiple elements of type <tt>id-evidence-element-platform</tt>, it <bcp14>MUST</bcp14>
reject the Evidence as malformed.</t>
        <t>The following table lists the claims for a platform element (platform claims) defined
within this specification. In cases where the claim is borrowed from another specification,
the "Reference" column refers to the specification where the semantics
for the claim value can be found.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Claim Type</th>
              <th align="left">Reference</th>
              <th align="left">Multiple?</th>
              <th align="left">OID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">vendor</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-vendor</td>
            </tr>
            <tr>
              <td align="left">oemid</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-oemid</td>
            </tr>
            <tr>
              <td align="left">hwmodel</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-hwmodel</td>
            </tr>
            <tr>
              <td align="left">hwversion</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-hwversion</td>
            </tr>
            <tr>
              <td align="left">hwserial</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-hwserial</td>
            </tr>
            <tr>
              <td align="left">swname</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-swname</td>
            </tr>
            <tr>
              <td align="left">swversion</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-swversion</td>
            </tr>
            <tr>
              <td align="left">dbgstat</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-dbgstat</td>
            </tr>
            <tr>
              <td align="left">uptime</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-uptime</td>
            </tr>
            <tr>
              <td align="left">bootcount</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-bootcount</td>
            </tr>
            <tr>
              <td align="left">fipsboot</td>
              <td align="left">
                <xref target="ISO19790"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-fipsboot</td>
            </tr>
            <tr>
              <td align="left">fipsver</td>
              <td align="left">
                <xref target="FIPS140-3"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-fipsver</td>
            </tr>
            <tr>
              <td align="left">fipslevel</td>
              <td align="left">
                <xref target="ISO19790"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-fipslevel</td>
            </tr>
            <tr>
              <td align="left">fipsmodule</td>
              <td align="left">
                <xref target="SP800-140B"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-fipsmodule</td>
            </tr>
            <tr>
              <td align="left">ccmoduleid</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-ccmoduleid</td>
            </tr>
            <tr>
              <td align="left">ccboot</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-ccboot</td>
            </tr>
            <tr>
              <td align="left">ccscheme</td>
              <td align="left">
                <xref target="CC2022P1"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-ccscheme</td>
            </tr>
            <tr>
              <td align="left">ccrequirement</td>
              <td align="left">
                <xref target="CC2022P1"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-ccrequirement</td>
            </tr>
            <tr>
              <td align="left">cceallevel</td>
              <td align="left">
                <xref target="CC2022P5"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-platform-cceallevel</td>
            </tr>
          </tbody>
        </table>
        <t>Each claim defined in the table above is described in the following sub-sections.</t>
        <section anchor="vendor">
          <name>vendor</name>
          <t>A human-readable string that reports the name of the device's manufacturer. This field is for informational
purposes only and should not be used in any automated mechanism to compare the Evidence. For the purposes of comparison,
the claims <tt>oemid</tt> and <tt>hwmodel</tt> should be used.</t>
          <t>If the device is submitted to FIPS validation, this string should correspond to the vendor field of the submission.</t>
        </section>
        <section anchor="oemid-hwmodel-hwversion-swname-swversion-dbgstat-uptime-bootcount">
          <name>oemid, hwmodel, hwversion, swname, swversion, dbgstat, uptime, bootcount</name>
          <t>These claims are defined in <xref target="RFC9711"/> and are reused in this specification for interoperability. Small
descriptions are offered for each to ease the reading of this specification. In case of confusion between the
description offered here and the one in <xref target="RFC9711"/>, the definition offered in the latter shall prevail.</t>
          <t>The claim "oemid" uniquely identifies the Original Equipment Manufacturer (OEM) of the HSM. This is a
sequence of bytes and is not meant to be a human readable string.</t>
          <t>The claim "hwmodel" differentiates models, products, and variants manufactured by a particular OEM. A model
must be unique within a given "oemid". This is a sequence of bytes and is not meant to be a human readable string.</t>
          <t>The claim "hwversion" is a text string reporting the version of the hardware. This claim must be
interpreted along with the claim "hwmodel".</t>
          <t>The claim "swname" is a text string reporting the name of the firmware running on the platform.</t>
          <t>The claim "swversion" differentiates between the various revisions of a firmware offered for the platform. This
is a string that is expected to be human readable.</t>
          <t>The claim "dbgstat" refers to the state of the debug facilities offered by the HSM. This is an integer
value describing the current state as described in <xref target="RFC9711"/>.</t>
          <t>The claim "uptime" reports the number of seconds that have elapsed since the HSM was last booted.</t>
          <t>The claim "bootcount" reports the number of times the HSM was booted.</t>
        </section>
        <section anchor="hwserial">
          <name>hwserial</name>
          <t>A human-readable string that reports the serial number of the hardware module. This serial number often matches the number engraved
on the case or on an applied sticker.</t>
        </section>
        <section anchor="fipsboot-fipsver-fipslevel-and-fipsmodule">
          <name>fipsboot, fipsver, fipslevel and fipsmodule</name>
          <t>FIPS 140-3 CMVP validation places stringent requirements on the mode of operation of the device and the cryptography offered by the module,
including restricting cryptographic services to approved (or explicitly allowed) security functions, certain requirements on entropy sources, and extensive start-up self-tests.
FIPS 140-3 offers compliance levels 1 through 4 with increasingly strict requirements. Many HSMs include a configuration setting that allows
the device to be taken out of FIPS mode and thus enable additional functionality or performance, and some offer configuration settings to change between compliance levels.</t>
          <t><xref target="FIPS140-3"/> adopts the requirements of <xref target="ISO19790"/> (2012 edition). In this specification, "FIPS mode" refers to the "approved mode of operation" and "compliance level"
refers to the "security level", both as defined in <xref target="ISO19790"/>. Guidance on how a module indicates that it is operating in the approved mode is provided in <xref target="FIPS140-3-IG"/>.
The module name and overall security level of a validated module are documented in its Security Policy, whose content is specified in <xref target="SP800-140B"/>.</t>
          <t>The boolean claim <tt>fipsboot</tt> indicates whether the device is currently operating in FIPS mode. When the claim value is "true", the HSM is running in compliance with the
FIPS 140 restrictions. If the value of this claim is "false", then the HSM is not
restricted to the behavior limited by compliance.</t>
          <t>A <tt>fipsboot</tt> value of "true" indicates that the module is in an approved mode of operation as described in its Security Policy.
It is not, by itself, the per-service indicator required by <xref target="ISO19790"/> section 7.2.4.2. As clarified in <xref target="FIPS140-3-IG"/> IG 2.4.C,
a module-level indicator satisfies that requirement only when the module, in that mode, prevents the use of any non-approved service.</t>
          <t>The textual claim <tt>fipsver</tt> indicates the version of the FIPS CMVP specification with which the device's operational mode is compliant. At the time of writing, the string "FIPS 140-3" <bcp14>SHOULD</bcp14> be used; devices operating under the legacy <xref target="FIPS140-2"/> specification <bcp14>MAY</bcp14> report "FIPS 140-2".</t>
          <t>The integer claim <tt>fipslevel</tt> indicates the overall compliance level to which the device is currently operating and <bcp14>MUST</bcp14> only be 1, 2, 3, or 4. The <tt>fipslevel</tt> claim has no meaning if <tt>fipsboot</tt> is absent or <tt>false</tt>.</t>
          <t>The claim <tt>fipsmodule</tt> is a textual field used to represent the name of the module that was submitted to CMVP for validation. The information derived by combining this claim with the vendor name shall
be sufficient to find the associated records in the CMVP database.</t>
          <t>The FIPS status information found in Evidence indicates only the mode of operation of the device and is not authoritative of its validation status.
This information is available in the NIST CMVP database of validated modules <xref target="CMVP"/> or by contacting the device vendor.
As an example, some devices may have the option to enable FIPS mode in configuration even if the vendor has not submitted this model for validation. As another example,
a device may be running in a mode consistent with FIPS Level 3 but the device was only validated at Level 2.
A Relying Party wishing to know the validation status of the device <bcp14>MUST</bcp14> couple the device state information contained in the Evidence with a valid FIPS CMVP certificate for the device.</t>
        </section>
        <section anchor="ccmoduleid-ccboot-ccscheme-ccrequirement-and-cceallevel">
          <name>ccmoduleid, ccboot, ccscheme, ccrequirement and cceallevel</name>
          <t>Common Criteria certification schemes place stringent requirements on the mode of operation of the device and the cryptography offered by the module,
including only enabling a restricted set of algorithms, key sizes and modes (e.g., only the algorithms listed in the Security Target of the device),
certain requirements on entropy sources, and extensive start-up self-tests. Common Criteria offers Evaluation Assurance Levels (EAL) from EAL1 to EAL7,
with increasingly strict requirements, optionally augmented with additional assurance components (see <xref target="CC2022P5"/>). This specification
signals augmentation with a trailing "+" sign, following common industry practice.
Many HSMs include a configuration setting that allows the device to be taken out of its certified mode and thus enable additional functionality
or performance, and some offer configuration settings to change between compliance levels.</t>
          <t>In this section, the evaluation, validation or certification scheme is referred to simply as the "certification scheme", and the evaluation,
validation or certification of a module is referred to simply as its "certification".</t>
          <t>The claim <tt>ccmoduleid</tt> is a textual field used to represent the name of the module that was submitted to the certification scheme for certification.
The information derived by combining this claim with the vendor name shall be sufficient to manually find the associated records in the certification databases.</t>
          <t>The boolean claim <tt>ccboot</tt> indicates whether the device was booted in, and has been continuously operating in, the Common Criteria certified mode.
Among other restrictions, this means that only the restricted algorithm set is available. When the claim value is "true", the HSM has been running in
compliance with the claimed restrictions since its last boot. If the value of this claim is "false", then the HSM is not restricted to
the behavior limited by Common Criteria compliance; the claims <tt>ccscheme</tt>, <tt>ccrequirement</tt> and <tt>cceallevel</tt> then have no meaning and <bcp14>SHOULD</bcp14> be omitted.</t>
          <t>The textual claim <tt>ccscheme</tt> indicates the name and the version of the certification scheme specification with which the device's operational mode is compliant.
At the time of writing, the strings "ISO15408 v3.1r5", "ISO15408:2022", "ISO15408:2026", "CCRA v3.1r5", "CCRA:2022" and "EUCC" are defined, but any other scheme
can be named if the intended Verifier has knowledge about it.</t>
          <t>The textual claim <tt>ccrequirement</tt> indicates the name and the version of the requirements with which the device's operational mode is compliant. For the Common Criteria
schemes, a particular Protection Profile or a proprietary Security Target is the requirement to be satisfied. At the time of writing, when the value of <tt>ccscheme</tt>
begins with "ISO15408", "CCRA" or "EUCC", the values "EN 419 221-5:2018", "EN 419 241-2:2019" and "SecurityTarget:STversion" (where "STversion" is replaced with the exact version of the Security Target
of the device) are defined, but any other requirement, specification or standard can be named if the intended Verifier has knowledge about it.</t>
          <t>The textual claim <tt>cceallevel</tt> indicates the assurance level of the certification under which the device is currently operating. When the value of <tt>ccscheme</tt>
begins with "ISO15408", "CCRA" or "EUCC", <tt>cceallevel</tt> describes the Evaluation Assurance Level achieved (see <xref target="CC2022P5"/>) and <bcp14>MUST</bcp14> use the following syntax, expressed in EBNF:</t>
          <artwork><![CDATA[
EAL_desc        = "EAL", Level, [ "+", SAR, { ",", SAR } ] ;
Level           = "1" | "2" | "3" | "4" | "5" | "6" | "7" ;
SAR             = Class_Code, "_", Family_Code, ".", Component_Level ;
Class_Code      = 3 * Upper ;
Family_Code     = 3 * Upper ;
Component_Level = Digit, { Digit } ;
Upper           = ? an uppercase letter from "A" to "Z" ? ;
Digit           = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ;
]]></artwork>
          <t>Valid examples are "EAL1", "EAL4+AVA_VAN.5" and "EAL4+AVA_VAN.5,ALC_FLR.3".</t>
        </section>
      </section>
      <section anchor="key-element">
        <name>Key Element</name>
        <t>A key element is associated with the type <tt>id-evidence-element-key</tt>. Each instance of a
key element represents a different addressable key found in the Target Environment. There can
be multiple key elements found in Evidence, but each reported key element <bcp14>MUST</bcp14>
describe a different key observed from the Target Environment. Two key elements may represent the same underlying cryptographic key
(keys with the exact same value) but they must be different portions of the Target Environment.</t>
        <t>A key element is composed of a collection of claims relating to the cryptographic key. At
minimum, a key element <bcp14>MUST</bcp14> report the claim "identifier" to uniquely identify this cryptographic
key from any others found in the same Target Environment.</t>
        <t>A Verifier that detects Evidence with multiple key elements referring to the
same addressable key <bcp14>MUST</bcp14> reject the Evidence.</t>
        <t>The following table lists the claims for a key element defined
within this specification. The "Reference" column refers to the specification where the semantics
for the claim can be found.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Claim Type</th>
              <th align="left">Reference</th>
              <th align="left">Multiple?</th>
              <th align="left">OID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">identifier</td>
              <td align="left">RFCthis</td>
              <td align="left">Yes</td>
              <td align="left">id-evidence-claim-key-identifier</td>
            </tr>
            <tr>
              <td align="left">spki</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-spki</td>
            </tr>
            <tr>
              <td align="left">extractable</td>
              <td align="left">
                <xref target="PKCS11"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-extractable</td>
            </tr>
            <tr>
              <td align="left">sensitive</td>
              <td align="left">
                <xref target="PKCS11"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-sensitive</td>
            </tr>
            <tr>
              <td align="left">never-extractable</td>
              <td align="left">
                <xref target="PKCS11"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-never-extractable</td>
            </tr>
            <tr>
              <td align="left">local</td>
              <td align="left">
                <xref target="PKCS11"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-local</td>
            </tr>
            <tr>
              <td align="left">device-bound</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-device-bound</td>
            </tr>
            <tr>
              <td align="left">expiry</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-expiry</td>
            </tr>
            <tr>
              <td align="left">purpose</td>
              <td align="left">RFCthis</td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-key-purpose</td>
            </tr>
          </tbody>
        </table>
        <t>An attestation key might be visible to a client of the device and be reported along with other cryptographic keys. Therefore,
it is acceptable to include a key element providing claims about an attestation key like any other cryptographic key. An
implementation <bcp14>MAY</bcp14> reject the generation of Evidence if it relates to an attestation key.</t>
        <section anchor="identifier">
          <name>identifier</name>
          <t>A human-readable string that uniquely identifies the cryptographic key. This value often contains
a UUID but could also have a numeric value expressed as text or any other textual description.</t>
          <t>This claim <bcp14>MAY</bcp14> be repeated as some environments have more than one way to refer to a
cryptographic key.</t>
        </section>
        <section anchor="spki">
          <name>spki</name>
          <t>The value of this claim is the SubjectPublicKeyInfo (see <xref target="RFC5280"/>) associated with the cryptographic key.</t>
        </section>
        <section anchor="extractable-sensitive-never-extractable-local">
          <name>extractable, sensitive, never-extractable, local</name>
          <t>These claims are defined as key attributes in <xref target="PKCS11"/> and reused in this specification for interoperability. Small
descriptions are offered for each to ease the reading of this specification. In case of confusion between the
description offered here and the one in <xref target="PKCS11"/>, the definition offered in the latter shall prevail.</t>
          <t>The claim "extractable" indicates that the key can be exported from the HSM. Corresponds directly to the attribute CKA_EXTRACTABLE
found in PKCS#11.</t>
          <t>The claim "sensitive" indicates that the value of the key cannot leave the HSM in plaintext. Corresponds directly to the attribute CKA_SENSITIVE
found in PKCS#11.</t>
          <t>The claim "never-extractable" indicates if the key was never extractable from the HSM throughout the life of the key. Corresponds
directly to the attribute CKA_NEVER_EXTRACTABLE found in PKCS#11.</t>
          <t>The claim "local" indicates whether the key was generated locally or imported. Corresponds directly to the attribute CKA_LOCAL
found in PKCS#11.</t>
        </section>
        <section anchor="device-bound">
          <name>device-bound</name>
          <t>The boolean claim <tt>device-bound</tt> indicates whether the key is unique to the device on which it is hosted. When the claim value is "true", the device asserts that:</t>
          <ul spacing="normal">
            <li>
              <t>the key was generated on the device;</t>
            </li>
            <li>
              <t>the key has never been exported from the device, in any form; and,</t>
            </li>
            <li>
              <t>the device offers no means to export the key in the future. This includes, but is not limited to, export in plaintext, export wrapped by another key,
backup, cloning, and migration to another device.</t>
            </li>
          </ul>
          <t>The assertion applies to every means by which the key could leave the device, whether or not this specification
defines a claim for it. In particular, a device that reports <tt>device-bound</tt> as "true" asserts that none of the following
can reveal the key or let it be reconstructed outside the device:</t>
          <ul spacing="normal">
            <li>
              <t>vendor-specific or proprietary mechanisms, including mechanisms not defined by PKCS#11 or any other standard API;</t>
            </li>
            <li>
              <t>splitting the key into shares or components (for example, M-of-N secret sharing), even if no single share reveals the key;</t>
            </li>
            <li>
              <t>administrative, maintenance, recovery or manufacturer interfaces, including interfaces available only to the vendor;</t>
            </li>
            <li>
              <t>debug interfaces, diagnostic modes, firmware updates or changes to the device's configuration or operating mode; and,</t>
            </li>
            <li>
              <t>exporting any value from which the key can be derived or recomputed outside the device.</t>
            </li>
          </ul>
          <t>A device that cannot make this assertion for all export mechanisms, including those it may enable in the future, <bcp14>MUST NOT</bcp14> report
<tt>device-bound</tt> as "true".</t>
          <t>When the value of this claim is "false", the device makes no such assertion. A value of "false" does not by itself indicate that the key is extractable or
was imported.</t>
          <t>A key for which <tt>device-bound</tt> is "true" can be understood as having attributes that the key claims "local", "extractable" and "never-extractable" express individually
with the values "true", "false" and "true" respectively, but with the additional guarantee that no configuration change or future operation can make the key
leave the device. If a key element reports <tt>device-bound</tt> as "true" along with any of the claims "local", "extractable" or "never-extractable" with a contradicting value,
a Verifier <bcp14>MUST</bcp14> reject the Evidence as malformed.</t>
        </section>
        <section anchor="expiry">
          <name>expiry</name>
          <t>Reports a time after which the key is not to be used. The device <bcp14>MAY</bcp14> enforce this policy based on its internal clock.</t>
          <t>Note that security considerations should be taken relating to HSMs and their internal clocks. See <xref target="sec-cons-hsm-timestamps"/>.</t>
        </section>
        <section anchor="purpose">
          <name>purpose</name>
          <t>Reports the key purposes, also referred to as key capabilities, associated with the subject key. Since multiple purposes can be associated with a single key,
the value of this claim is a list of purposes, each reported as an object identifier (OID).</t>
          <t>The value of this claim is the DER encoding of the following structure:</t>
          <sourcecode type="asn.1"><![CDATA[
claim-key-purpose CLAIM ::= {
  ID id-evidence-claim-key-purpose
  WITH TYPE KeyPurposes
}

KeyPurposes ::= SEQUENCE OF OBJECT IDENTIFIER

]]></sourcecode>
          <t>The following table describes the key purposes defined in this specification. The key purposes offered are based on key
attributes provided by PKCS#11. Each purpose is assigned an object identifier (OID).</t>
          <table>
            <thead>
              <tr>
                <th align="left">Capability</th>
                <th align="left">PKCS#11</th>
                <th align="left">OID</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">encrypt</td>
                <td align="left">CKA_ENCRYPT</td>
                <td align="left">id-evidence-key-capability-encrypt</td>
              </tr>
              <tr>
                <td align="left">decrypt</td>
                <td align="left">CKA_DECRYPT</td>
                <td align="left">id-evidence-key-capability-decrypt</td>
              </tr>
              <tr>
                <td align="left">wrap</td>
                <td align="left">CKA_WRAP</td>
                <td align="left">id-evidence-key-capability-wrap</td>
              </tr>
              <tr>
                <td align="left">unwrap</td>
                <td align="left">CKA_UNWRAP</td>
                <td align="left">id-evidence-key-capability-unwrap</td>
              </tr>
              <tr>
                <td align="left">sign</td>
                <td align="left">CKA_SIGN</td>
                <td align="left">id-evidence-key-capability-sign</td>
              </tr>
              <tr>
                <td align="left">sign-recover</td>
                <td align="left">CKA_SIGN_RECOVER</td>
                <td align="left">id-evidence-key-capability-sign-recover</td>
              </tr>
              <tr>
                <td align="left">verify</td>
                <td align="left">CKA_VERIFY</td>
                <td align="left">id-evidence-key-capability-verify</td>
              </tr>
              <tr>
                <td align="left">verify-recover</td>
                <td align="left">CKA_VERIFY_RECOVER</td>
                <td align="left">id-evidence-key-capability-verify-recover</td>
              </tr>
              <tr>
                <td align="left">derive</td>
                <td align="left">CKA_DERIVE</td>
                <td align="left">id-evidence-key-capability-derive</td>
              </tr>
              <tr>
                <td align="left">decapsulate</td>
                <td align="left">CKA_DECAPSULATE</td>
                <td align="left">id-evidence-key-capability-decapsulate</td>
              </tr>
              <tr>
                <td align="left">encapsulate</td>
                <td align="left">CKA_ENCAPSULATE</td>
                <td align="left">id-evidence-key-capability-encapsulate</td>
              </tr>
            </tbody>
          </table>
          <t>The use of an object identifier to report a purpose allows third parties to extend this list to support
implementations that have other key purposes.</t>
        </section>
      </section>
      <section anchor="transaction-element">
        <name>Transaction Element</name>
        <t>A transaction element is associated with the type <tt>id-evidence-element-transaction</tt>. This is
an abstract element and does not relate to any state found in the Target Environment. Instead, it
groups together claims that relate to the generation of the Evidence.</t>
        <t>For example, a Verifier can supply a <tt>nonce</tt> for the generation of Evidence. This
<tt>nonce</tt> is included in the Evidence to support
the freshness of the Evidence. The <tt>nonce</tt> is not related to any portion of the Target Environment
and the transaction element is used to gather those values into claims.</t>
        <t>A transaction element, if provided, <bcp14>MUST</bcp14> be included only once within the reported elements. If a
Verifier detects multiple elements of type <tt>id-evidence-element-transaction</tt>, it <bcp14>MUST</bcp14>
reject the Evidence.</t>
        <t>The following table lists the claims for a transaction element defined
within this specification. The "Reference" column refers to the specification where the semantics
for the claim value can be found.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Claim Type</th>
              <th align="left">Reference</th>
              <th align="left">Multiple?</th>
              <th align="left">OID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">nonce</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-transaction-nonce</td>
            </tr>
            <tr>
              <td align="left">timestamp</td>
              <td align="left">
                <xref target="RFC9711"/></td>
              <td align="left">No</td>
              <td align="left">id-evidence-claim-transaction-timestamp</td>
            </tr>
            <tr>
              <td align="left">ak-spki</td>
              <td align="left">RFCthis</td>
              <td align="left">Yes</td>
              <td align="left">id-evidence-claim-transaction-ak-spki</td>
            </tr>
          </tbody>
        </table>
        <section anchor="nonce">
          <name>nonce</name>
          <t>The claim <tt>nonce</tt> is used to provide "freshness" quality as to the generated Evidence. If a nonce is used, it <bcp14>MUST</bcp14> be generated by the Verifier and
conveyed to the Attester, possibly through a Presenter. The Attester <bcp14>MUST</bcp14> include the nonce unchanged in the generated Evidence. The mechanism by which
the nonce is conveyed to the Attester is outside the scope of this specification.</t>
          <t>This claim is similar to the "eat_nonce" as defined in <xref target="RFC9711"/>. According to that specification, this claim may be specified multiple times with
different values. However, within the scope of this specification, the "nonce" value can be specified only once within a transaction.</t>
        </section>
        <section anchor="timestamp">
          <name>timestamp</name>
          <t>The time at which the Evidence was generated, according to the internal system clock of the Attesting Environment. This is similar to the
"iat" claim in <xref target="RFC9711"/>.</t>
          <t>Note that security considerations should be taken relating to the evaluation of timestamps generated by HSMs. See <xref target="sec-cons-hsm-timestamps"/>.</t>
        </section>
        <section anchor="ak-spki">
          <name>ak-spki</name>
          <t>This claim contains the Subject Public Key Information (SPKI) for the attestation key used to sign the Evidence. The claim value is of
type <tt>SubjectPublicKeyInfo</tt>, as defined for X.509 certificates in <xref target="RFC5280"/>.</t>
          <t>This transaction claim is used to bind the content of the Evidence with the key(s) used to sign that Evidence. The importance
of this binding is discussed in <xref target="sec-verif-proc"/>.</t>
          <t>This claim can be reported multiple times. Each included claim <bcp14>MUST</bcp14> refer to a different attestation key. In other words, this claim
should be repeated only if multiple attestation keys are used to sign the Evidence.</t>
        </section>
      </section>
      <section anchor="sec-additional-claim-types">
        <name>Additional Element and Claim Types</name>
        <t>It is expected that HSM vendors will register additional Element and Claim types by assigning OIDs from their own proprietary OID arcs to hold data describing additional proprietary key properties.</t>
        <t>When new element and claim types are used, documentation similar to the one produced in this specification <bcp14>SHOULD</bcp14> be distributed to
explain the semantics of the claims and the frequency that values can be provided.</t>
        <t>See <xref target="sec-req-verification"/> and <xref target="sec-cons-verifier"/> for handling of unrecognized custom types.</t>
      </section>
      <section anchor="encoding">
        <name>Encoding</name>
        <t>The structure <tt>Evidence</tt> is to be DER encoded <xref target="X690"/>.</t>
        <t>If a textual representation is required, then the DER encoding <bcp14>MAY</bcp14> be subsequently encoded into Standard Base64 as defined in <xref target="RFC4648"/>.</t>
        <t>PEM-like representations are also allowed where a MIME-compliant Base64 transformation of the DER encoding is used, provided that the
header label is "EVIDENCE". For example:</t>
        <artwork><![CDATA[
-----BEGIN EVIDENCE-----
(...)
-----END EVIDENCE-----
]]></artwork>
      </section>
    </section>
    <section anchor="processing">
      <name>Processing</name>
      <t>This section deals with the exchanges between the Presenter, the Attester and the Verifier during the request, generation and consumption
of Evidence as defined in this specification. The architecture as shown in <xref target="fig-presenter"/> should be used as a reference for this section.</t>
      <section anchor="initiation-from-presenter">
        <name>Initiation from Presenter</name>
        <t>The Presenter assembles a request to initiate the generation of Evidence by the Attester. This request selects the elements and the claims that
are to be included in the generated Evidence.</t>
        <t>Ultimately, the generated Evidence is consumed by the Verifier. Therefore, a certain level of coordination is required between the Presenter and
the Verifier so that the generated Evidence includes the necessary information for the specific purpose.</t>
        <t>The nonce used during the generation of Evidence is used to determine the freshness of the included information. Since the freshness is guaranteed
by the Verifier, the nonce is generally selected by the Verifier. If the Verifier generates the nonce, then it must be transmitted to the Presenter
prior to making the request. It is possible to devise schemes where a Presenter and a Verifier would agree to use a central "bell" as nonce,
alleviating the need to transmit the nonce between the two parties prior to the generation of the Evidence.</t>
        <t>Finally, in the case where an Attester has multiple attestation keys, the Presenter needs to select the attestation key(s) that are required by the
Verifier.</t>
      </section>
      <section anchor="generation-of-evidence">
        <name>Generation of Evidence</name>
        <t>Upon receiving a request, the Attesting Environment verifies the validity of the request. This specification RECOMMENDS that:</t>
        <ul spacing="normal">
          <li>
            <t>An Attesting Environment fails a request if it contains an unrecognized element. This is to ensure that all the semantics expected
by the Presenter are fully understood by the Attesting Environment.</t>
          </li>
          <li>
            <t>An Attesting Environment ignores unrecognized claim types for a specific element. In this situation, the Attesting Environment
is expected not to include the claim as part of the response. This guidance is intended to increase the likelihood of interoperability between
tools of different vendors.</t>
          </li>
          <li>
            <t>An Attesting Environment includes only elements and claims in the generated Evidence if these elements and claims were
specified as part of the request. This is to give control to the Presenter as to what information is disclosed by the Attesting Environment.</t>
          </li>
          <li>
            <t>An Attesting Environment fails a request if the Presenter does not have the appropriate access rights to the elements or claims included
in the request.</t>
          </li>
        </ul>
        <t>The Attesting Environment collects the necessary information from the Target Environment and assembles the <tt>TbsEvidence</tt> structure.</t>
        <t>During the assembly of <tt>TbsEvidence</tt>, the Attesting Environment <bcp14>MUST</bcp14>:</t>
        <ul spacing="normal">
          <li>
            <t>include the nonce (if present) provided by the Presenter to the transaction element using the claim <tt>claim-transaction-nonce</tt>; and,</t>
          </li>
          <li>
            <t>add a claim of type <tt>claim-transaction-ak-spki</tt> to the transaction element to represent each attestation key selected to sign the
Evidence.</t>
          </li>
        </ul>
        <t>For each selected attestation key, the Attesting Environment generates a signature over the DER encoding of the structure <tt>TbsEvidence</tt>.
Each signature is captured in a structure of type <tt>SignatureBlock</tt>. Each signature block is augmented with the appropriate information
identifying the attestation key used to generate the signature.</t>
        <t>Finally, the structure <tt>Evidence</tt> is assembled by combining the structures <tt>TbsEvidence</tt> and <tt>SignatureBlock</tt>. The Attesting Environment <bcp14>MAY</bcp14>
add intermediate certificates required by the Verifier to ascertain the validity of the provided signatures.</t>
      </section>
      <section anchor="sec-req-verification">
        <name>Verification by Presenter</name>
        <t>This sub-section describes the considerations that are relevant when a Presenter receives Evidence from the Attester (the HSM)
prior to distribution.</t>
        <t>A Presenter is expected to review the Evidence produced by an Attester for fitness prior to distribution.</t>
        <t>A Presenter is expected not to disclose Evidence if it contains information it
cannot parse. This restriction applies to element types and claim types. This is
to ensure that the information provided by the Attester can be evaluated by the
Presenter.</t>
        <t>A Presenter is expected not to disclose Evidence if it contains elements other than the ones that were requested of the Attester. This is to ensure that only the
selected elements are exposed to the Verifier.</t>
        <t>A Presenter is expected not to disclose Evidence if it contains an element with a claim
that was not requested of the Attester. This is to ensure that only the selected
information is disclosed to the Verifier.</t>
        <t>Further privacy concerns are discussed in <xref target="sec-cons-privacy"/>.</t>
      </section>
      <section anchor="sec-verif-proc">
        <name>Verification Procedures</name>
        <t>This sub-section describes the considerations to be taken by the Verifier when handling Evidence generated under this specification.</t>
        <t>If <tt>SignerIdentifier.certificate</tt> is present, the signature <bcp14>MUST</bcp14> be validated with the subject public key of that end-entity X.509 certificate.
If <tt>SignerIdentifier.subjectPublicKeyInfo</tt> is present, the signature <bcp14>MUST</bcp14> be validated with that public key.
If <tt>SignerIdentifier.keyId</tt> is present, the Verifier <bcp14>MUST</bcp14> obtain the corresponding public key by some implementation-specific or out-of-band mechanism;
if no such key can be obtained, the SignatureBlock <bcp14>MUST</bcp14> be treated as unverifiable and the Evidence <bcp14>MUST</bcp14> be rejected.
The certificate-based mode remains the preferred form in PKIX deployments because it provides both the public key and an X.509 identity.</t>
        <t>Verifiers <bcp14>MUST</bcp14> ensure, prior to accepting the signature associated with an end-entity certificate, that:</t>
        <ul spacing="normal">
          <li>
            <t>the certificate contains the <tt>KeyUsage</tt> (KU) extension with the <tt>digitalSignature</tt> bit set; and,</t>
          </li>
          <li>
            <t>the certificate contains the <tt>Extended Key Usage</tt> (EKU) extension that includes the <tt>id-kp-attestationKey</tt> usage.</t>
          </li>
        </ul>
        <t>Verifiers <bcp14>MAY</bcp14> also use <tt>Evidence.intermediateCertificates</tt> to build a certification path from the end-entity
certificate to a trust anchor.</t>
        <t>Each <tt>SignatureBlock</tt> is evaluated independently. A Verifier <bcp14>MUST</bcp14> successfully validate at least one <tt>SignatureBlock</tt> using an
algorithm and certification path acceptable under its appraisal policy. A Verifier <bcp14>MAY</bcp14> validate additional <tt>SignatureBlock</tt> values
when it supports their algorithms. The presence of a signature made with an algorithm that is unsupported or unacceptable to the Verifier
does not make an otherwise acceptable signature invalid. A Verifier <bcp14>MUST</bcp14> reject Evidence when multiple signing certificates do not
represent the same Attester identity as described above.</t>
        <t>If any <tt>transaction.ak-spki</tt> claims are present, the Verifier <bcp14>SHOULD</bcp14> verify that each <tt>SignerIdentifier</tt>'s SubjectPublicKeyInfo (or the SPKI of its <tt>certificate</tt>) matches at least one <tt>ak-spki</tt> value. Each such claim is authoritative only when it is backed by a successfully verified SignatureBlock using the corresponding attestation key. An <tt>ak-spki</tt> claim that is not matched by a valid signature block <bcp14>MUST NOT</bcp14> by itself be treated as proof that the corresponding key was used to sign the Evidence.</t>
      </section>
    </section>
    <section anchor="sec-asn1-mod">
      <name>ASN.1 Module</name>
      <sourcecode type="asn.1"><![CDATA[
<CODE STARTS>

PKIX-Evidence-2025
      { iso(1) identified-organization(3) dod(6) internet(1)
        security(5) mechanisms(5) pkix(7) id-mod(0)
        id-mod-pkix-evidence-2025(TBDMOD1) }

DEFINITIONS EXPLICIT TAGS ::=
BEGIN

EXPORTS ALL ;

IMPORTS
  AlgorithmIdentifier{}, SIGNATURE-ALGORITHM
    FROM AlgorithmInformation-2009 -- in [RFC5912]
  { iso(1) identified-organization(3) dod(6) internet(1)
    security(5)mechanisms(5) pkix(7) id-mod(0)
    id-mod-algorithmInformation-02(58) }

  Certificate, SubjectPublicKeyInfo
    FROM PKIX1Explicit-2009 -- in [RFC5912]
  { iso(1) identified-organization(3) dod(6) internet(1)
    security(5) mechanisms(5) pkix(7) id-mod(0)
    id-mod-pkix1-explicit-02(51) }
;

-- OID Arc

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

  -- Attestation Key Extended Key Usage --

id-kp-attestationKey OBJECT IDENTIFIER ::= { id-kp TBDMOD2 }

-- Evidence --

Evidence ::= SEQUENCE {
    tbs  TbsEvidence,
    signatures  SEQUENCE SIZE (1..MAX) OF SignatureBlock,
    intermediateCertificates  [0] SEQUENCE OF Certificate OPTIONAL
                                  -- As defined in RFC 5912
}

SignatureBlock ::= SEQUENCE {
    sid SignerIdentifier,
    signatureAlgorithm AlgorithmIdentifier
        { SIGNATURE-ALGORITHM, { ... } },
    signatureValue OCTET STRING
}

SignerIdentifier ::= SEQUENCE {
    keyId [0] EXPLICIT OCTET STRING OPTIONAL,
    subjectPublicKeyInfo [1] EXPLICIT
        SubjectPublicKeyInfo OPTIONAL,
        -- As defined in RFC 5912
    certificate [2] EXPLICIT Certificate OPTIONAL
      -- As defined in RFC 5912
} (
    WITH COMPONENTS { ..., keyId PRESENT}
    | WITH COMPONENTS { ..., subjectPublicKeyInfo PRESENT }
    | WITH COMPONENTS { ...,certificate PRESENT } )

TbsEvidence ::= SEQUENCE {
    version INTEGER,
    reportedElements SEQUENCE SIZE (1..MAX) OF ReportedElement
}

ReportedElement ::= SEQUENCE {
    elementType         OBJECT IDENTIFIER,
    claims             SEQUENCE SIZE (1..MAX) OF ReportedClaim
}

CLAIM ::= CLASS {
    &id       OBJECT IDENTIFIER UNIQUE,
    &Type
} WITH SYNTAX {
    ID &id
    WITH TYPE &Type
}

ReportedClaim ::= SEQUENCE {
    claimType  CLAIM.&id ({ClaimSet}),
    value      CLAIM.&Type ({ClaimSet}{@claimType})
}

ClaimSet CLAIM ::= {
      claim-transaction-nonce
      | claim-transaction-timestamp
      | claim-transaction-ak-spki
      | claim-platform-vendor
      | claim-platform-oemid
      | claim-platform-hwmodel
      | claim-platform-hwversion
      | claim-platform-hwserial
      | claim-platform-swname
      | claim-platform-swversion
      | claim-platform-dbgstat
      | claim-platform-uptime
      | claim-platform-bootcount
      | claim-platform-fipsboot
      | claim-platform-fipsver
      | claim-platform-fipslevel
      | claim-platform-fipsmodule
      | claim-platform-ccmoduleid
      | claim-platform-ccboot
      | claim-platform-ccscheme
      | claim-platform-ccrequirement
      | claim-platform-cceallevel
      | claim-key-identifier
      | claim-key-spki
      | claim-key-extractable
      | claim-key-sensitive
      | claim-key-never-extractable
      | claim-key-local
      | claim-key-device-bound
      | claim-key-expiry
      | claim-key-purpose,
      ...
}

id-evidence OBJECT IDENTIFIER ::= { 
     iso(1) identified-organization(3) dod(6)
     internet(1) security(5) mechanisms(5) TBDMOD3 }

id-evidence-element             OBJECT IDENTIFIER ::=
    { id-evidence 0 }
id-evidence-element-transaction OBJECT IDENTIFIER ::=
    { id-evidence-element 0 }
id-evidence-element-platform    OBJECT IDENTIFIER ::=
    { id-evidence-element 1 }
id-evidence-element-key         OBJECT IDENTIFIER ::=
    { id-evidence-element 2 }

id-evidence-claim    OBJECT IDENTIFIER ::=
    { id-evidence 1 }

id-evidence-claim-transaction           OBJECT IDENTIFIER ::=
    { id-evidence-claim 0 }
id-evidence-claim-transaction-nonce     OBJECT IDENTIFIER ::=
    { id-evidence-claim-transaction 0 }
id-evidence-claim-transaction-timestamp OBJECT IDENTIFIER ::=
    { id-evidence-claim-transaction 1 }
id-evidence-claim-transaction-ak-spki   OBJECT IDENTIFIER ::=
    { id-evidence-claim-transaction 2 }

id-evidence-claim-platform            OBJECT IDENTIFIER ::=
    { id-evidence-claim 1 }
id-evidence-claim-platform-vendor     OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 0 }
id-evidence-claim-platform-oemid      OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 1 }
id-evidence-claim-platform-hwmodel    OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 2 }
id-evidence-claim-platform-hwversion  OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 3 }
id-evidence-claim-platform-hwserial   OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 4 }
id-evidence-claim-platform-swname     OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 5 }
id-evidence-claim-platform-swversion  OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 6 }
id-evidence-claim-platform-dbgstat    OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 7 }
id-evidence-claim-platform-uptime     OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 8 }
id-evidence-claim-platform-bootcount  OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 9 }
id-evidence-claim-platform-fipsboot   OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 10 }
id-evidence-claim-platform-fipsver    OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 11 }
id-evidence-claim-platform-fipslevel  OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 12 }
id-evidence-claim-platform-fipsmodule OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 13 }
id-evidence-claim-platform-ccmoduleid OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 14 }
id-evidence-claim-platform-ccboot     OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 15 }
id-evidence-claim-platform-ccscheme   OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 16 }
id-evidence-claim-platform-ccrequirement OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 17 }
id-evidence-claim-platform-cceallevel OBJECT IDENTIFIER ::=
    { id-evidence-claim-platform 18 }

id-evidence-claim-key                   OBJECT IDENTIFIER ::=
    { id-evidence-claim 2 }
id-evidence-claim-key-identifier        OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 0 }
id-evidence-claim-key-spki              OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 1 }
id-evidence-claim-key-extractable       OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 2 }
id-evidence-claim-key-sensitive         OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 3 }
id-evidence-claim-key-never-extractable OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 4 }
id-evidence-claim-key-local             OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 5 }
id-evidence-claim-key-expiry            OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 6 }
id-evidence-claim-key-purpose           OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 7 }
id-evidence-claim-key-device-bound      OBJECT IDENTIFIER ::=
    { id-evidence-claim-key 8 }

id-evidence-key-capability              OBJECT IDENTIFIER ::=
    { id-evidence 2 }
id-evidence-key-capability-encrypt      OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 0 }
id-evidence-key-capability-decrypt      OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 1 }
id-evidence-key-capability-wrap         OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 2 }
id-evidence-key-capability-unwrap       OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 3 }
id-evidence-key-capability-sign         OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 4 }
id-evidence-key-capability-sign-recover OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 5 }
id-evidence-key-capability-verify       OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 6 }
id-evidence-key-capability-verify-recover OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 7 }
id-evidence-key-capability-derive       OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 8 }
id-evidence-key-capability-decapsulate  OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 9 }
id-evidence-key-capability-encapsulate  OBJECT IDENTIFIER ::=
    { id-evidence-key-capability 10 }


claim-transaction-nonce CLAIM ::= {
  ID id-evidence-claim-transaction-nonce
  WITH TYPE OCTET STRING
}

claim-transaction-timestamp CLAIM ::= {
  ID id-evidence-claim-transaction-timestamp
  WITH TYPE GeneralizedTime
}

claim-transaction-ak-spki CLAIM ::= {
  ID id-evidence-claim-transaction-ak-spki
  WITH TYPE SubjectPublicKeyInfo
}

claim-platform-vendor CLAIM ::= {
  ID id-evidence-claim-platform-vendor
  WITH TYPE UTF8String
}

claim-platform-oemid CLAIM ::= {
  ID id-evidence-claim-platform-oemid
  WITH TYPE OCTET STRING
}

claim-platform-hwmodel CLAIM ::= {
  ID id-evidence-claim-platform-hwmodel
  WITH TYPE OCTET STRING
}

claim-platform-hwversion CLAIM ::= {
  ID id-evidence-claim-platform-hwversion
  WITH TYPE UTF8String
}

claim-platform-hwserial CLAIM ::= {
  ID id-evidence-claim-platform-hwserial
  WITH TYPE UTF8String
}

claim-platform-swname CLAIM ::= {
  ID id-evidence-claim-platform-swname
  WITH TYPE UTF8String
}

claim-platform-swversion CLAIM ::= {
  ID id-evidence-claim-platform-swversion
  WITH TYPE UTF8String
}

claim-platform-dbgstat CLAIM ::= {
  ID id-evidence-claim-platform-dbgstat
  WITH TYPE INTEGER
}

claim-platform-uptime CLAIM ::= {
  ID id-evidence-claim-platform-uptime
  WITH TYPE INTEGER
}

claim-platform-bootcount CLAIM ::= {
  ID id-evidence-claim-platform-bootcount
  WITH TYPE INTEGER
}

claim-platform-fipsboot CLAIM ::= {
  ID id-evidence-claim-platform-fipsboot
  WITH TYPE BOOLEAN
}

claim-platform-fipsver CLAIM ::= {
  ID id-evidence-claim-platform-fipsver
  WITH TYPE UTF8String
}

claim-platform-fipslevel CLAIM ::= {
  ID id-evidence-claim-platform-fipslevel
  WITH TYPE INTEGER
}

claim-platform-fipsmodule CLAIM ::= {
  ID id-evidence-claim-platform-fipsmodule
  WITH TYPE UTF8String
}

claim-platform-ccmoduleid CLAIM ::= {
  ID id-evidence-claim-platform-ccmoduleid
  WITH TYPE UTF8String
}

claim-platform-ccboot CLAIM ::= {
  ID id-evidence-claim-platform-ccboot
  WITH TYPE BOOLEAN
}

claim-platform-ccscheme CLAIM ::= {
  ID id-evidence-claim-platform-ccscheme
  WITH TYPE UTF8String
}

claim-platform-ccrequirement CLAIM ::= {
  ID id-evidence-claim-platform-ccrequirement
  WITH TYPE UTF8String
}

claim-platform-cceallevel CLAIM ::= {
  ID id-evidence-claim-platform-cceallevel
  WITH TYPE UTF8String
}

claim-key-identifier CLAIM ::= {
  ID id-evidence-claim-key-identifier
  WITH TYPE UTF8String
}

claim-key-spki CLAIM ::= {
  ID id-evidence-claim-key-spki
  WITH TYPE SubjectPublicKeyInfo
}

claim-key-extractable CLAIM ::= {
  ID id-evidence-claim-key-extractable
  WITH TYPE BOOLEAN
}

claim-key-sensitive CLAIM ::= {
  ID id-evidence-claim-key-sensitive
  WITH TYPE BOOLEAN
}

claim-key-never-extractable CLAIM ::= {
  ID id-evidence-claim-key-never-extractable
  WITH TYPE BOOLEAN
}

claim-key-local CLAIM ::= {
  ID id-evidence-claim-key-local
  WITH TYPE BOOLEAN
}

claim-key-expiry CLAIM ::= {
  ID id-evidence-claim-key-expiry
  WITH TYPE GeneralizedTime
}

claim-key-purpose CLAIM ::= {
  ID id-evidence-claim-key-purpose
  WITH TYPE KeyPurposes
}

KeyPurposes ::= SEQUENCE OF OBJECT IDENTIFIER

claim-key-device-bound CLAIM ::= {
  ID id-evidence-claim-key-device-bound
  WITH TYPE BOOLEAN
}

END

<CODE ENDS>

]]></sourcecode>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Please replace "RFCthis" with the RFC number assigned to this document.</t>
      <t>For the ASN.1 module found in <xref target="sec-asn1-mod"/>, IANA is requested to assign
an object identifier for the module identifier (TBDMOD1) with a
description of "id-mod-pkix-evidence-2025". This should be allocated in the
"SMI Security for PKIX Module Identifier" registry (1.3.6.1.5.5.7.0).</t>
      <t>For the ASN.1 module found in <xref target="sec-asn1-mod"/>, IANA is requested to assign an
object identifier for the extended key usage <tt>id-kp-attestationKey</tt> (TBDMOD2).
This identifier should be allocated under the PKIX KP arc (1.3.6.1.5.5.7.3)
with the description "Extended Key Usage (EKU) for signing Evidence".</t>
      <t>IANA is asked to define a new arc under "SMI Security for Mechanism Codes" (1.3.6.1.5.5) with the following
details:</t>
      <ul spacing="normal">
        <li>
          <t>OID Value: 1.3.6.1.5.5.TBDMOD3</t>
        </li>
        <li>
          <t>Name: evidence</t>
        </li>
        <li>
          <t>Description: Evidence Encoding for Hardware Security Modules</t>
        </li>
        <li>
          <t>Reference: RFCthis</t>
        </li>
      </ul>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="sec-cons-verifier">
        <name>Policies relating to Verifier and Relying Party</name>
        <t>The generation of Evidence by an HSM is to provide sufficient information to
a Verifier and, ultimately, a Relying Party to appraise the Target Environment (the HSM) and make
decisions based on this appraisal.</t>
        <t>The Appraisal Policy associated with the Verifier influences the generation of the Attestation
Results. Those results, in turn, are consumed by the Relying Party to make decisions about
the HSM, which might be based on a set of rules and policies. Therefore, the interpretation of
the provided Evidence may greatly influence the outcome of some decisions.</t>
        <t>A Verifier <bcp14>MAY</bcp14> reject Evidence if it lacks the claims required per the Verifier's
appraisal policy. For example, if a Relying Party mandates a FIPS 140 validated device,
it <bcp14>SHOULD</bcp14> reject Evidence lacking sufficient information to verify the device's FIPS 140
validation status.</t>
        <t>If a Verifier encounters a claim with an unrecognized claim type, it <bcp14>MAY</bcp14> ignore it and
treat it as extraneous information. By ignoring a claim, the Verifier may accept Evidence
that would be deemed malformed to a Verifier with different policies. However, this approach
fosters a higher likelihood of achieving interoperability.</t>
      </section>
      <section anchor="sec-cons-simple">
        <name>Simple to Implement</name>
        <t>The nature of attestation requires the Attesting Environment to be implemented in an extremely
privileged position within the HSM so that it can collect the required measurements such as
hardware registers and the user keys. For many HSM architectures, this will
place the Attesting Environment inside the "security kernel" and potentially subject to FIPS 140-3
or Common Criteria validation and change control. For both security and compliance reasons,
there is an incentive for the generation and parsing logic to be simple and easy to implement
correctly. Additionally, when the data formats contained in this specification are parsed
within an HSM boundary -- that would be parsing Evidence
produced by a different HSM -- implementers <bcp14>SHOULD</bcp14> opt for simple logic that rejects any
data that does not match the expected format, instead of attempting to be flexible.</t>
        <t>In particular, the Attesting Environment <bcp14>SHOULD</bcp14> generate Evidence from scratch. The Attesting Environment <bcp14>MUST</bcp14> generate Evidence
only from information and measurements that are directly observable by it.</t>
      </section>
      <section anchor="sec-cons-privacy">
        <name>Privacy and Evidence Encryption</name>
        <t>Some HSMs have the capacity of supporting cryptographic keys controlled by separate entities referred to as "tenants", and when the HSM is used in that mode
it is referred to as a multi-tenant configuration.</t>
        <t>For example, an enterprise-grade HSM in a large multi-tenant cloud service could host TLS keys fronting multiple unrelated web domains. Providing Evidence for
claims of any one of the keys would involve a Presenter that could potentially access any of the hosted keys.
In such a case, privacy violations could occur if the Presenter was to disclose information that does not relate to the subject key.</t>
        <t>Implementers <bcp14>SHOULD</bcp14> avoid over-disclosure of information by authenticating and authorizing the entity that initiates Evidence generation and by including only
keys and portions of the Target Environment that this entity is authorized to access. The interface for selecting the elements and claims included in Evidence
is outside the scope of this specification.</t>
        <t>A Presenter <bcp14>SHOULD</bcp14> review Evidence before disclosure and <bcp14>SHOULD NOT</bcp14> disclose Evidence containing information that the intended Verifier is not authorized to receive.
This specification does not provide Evidence encryption; deployments that require confidentiality <bcp14>MUST</bcp14> use an appropriate conveyance protocol or object-security mechanism.</t>
        <t><xref target="I-D.ounsworth-rats-privacy-framework"/> presents a framework for identifying points in an Evidence conveyance protocol where designers and implementers need to be conscious of privacy concerns.
For the Evidence mechanism specified in this document, the primary privacy concern has to do with authenticating the Presenter against the HSM's local policies, and only releasing claims that they are authorized to view.
The means by which a Presenter requests the generation of Evidence is not covered by this specification and is left to the implementers.</t>
        <t>Additionally, <xref target="I-D.ounsworth-rats-privacy-framework"/> calls for object-level evidence encryption (instead of relying solely on transport encryption), and corresponding validation
of the provided Verifier encryption certificate against local policies. Such a mechanism is left out-of-scope in this specification since it is largely independent of the Evidence
formatting structures defined in this specification. Implementers are welcome to wrap the structures defined here in such an encryption layer either within the HSM or externally to the HSM
at an entity such as the Presenter.</t>
      </section>
      <section anchor="sec-cons-auth-the-presenter">
        <name>Authenticating and Authorizing the Presenter</name>
        <t>The Presenter represents a privileged role because it can learn about the existence of user keys and their protection properties, as well as details of the platform.
It can also decide whether to disclose generated Evidence to a Verifier.</t>
        <t>For personal cryptographic tokens it might be appropriate for the local Evidence-generation interface to be unauthenticated. For enterprise and cloud-services grade HSMs,
the entity invoking that interface <bcp14>SHOULD</bcp14> be authenticated using the HSM's native authentication mechanism. The details of this interface are HSM-specific and outside the
scope of this specification.</t>
        <t>The HSM <bcp14>MUST</bcp14> enforce its native access controls when generating Evidence. An authenticated application <bcp14>SHOULD</bcp14> be allowed to obtain Evidence only for user keys that it
is authorized to access. An administrative application that obtains Evidence for keys it is not allowed to use <bcp14>MUST</bcp14> have a distinct permission and <bcp14>MUST</bcp14> be limited to keys
for which it has administrative visibility.</t>
      </section>
      <section anchor="proof-of-possession-of-user-keys">
        <name>Proof-of-Possession of User Keys</name>
        <t>With asymmetric keys within a Public Key Infrastructure (PKI) it is common to require a key holder to prove that they are in control of the private key by using it. This is
called "proof-of-possession (PoP)". This specification intentionally does not provide a mechanism for PoP of user keys and relies on the Presenter, Verifier, and Relying Party
trusting the Attester to correctly report the cryptographic keys that it is holding.</t>
        <t>It would be trivial to add a PoP Key claim that uses the attested user key to sign over, for example, the Transaction Element. However, this approach leads to undesired consequences, as explained
below.</t>
        <t>First, a user key intended for TLS, as an example, <bcp14>SHOULD</bcp14> only be used with the TLS protocol. Introducing a signature oracle whereby the TLS application key is used to sign Evidence could lead to cross-protocol attacks.
In this example, an attacker could submit a "nonce" value which is in fact not random but is crafted in such a way as to appear as a valid message in some other protocol context or exploit some other weakness in the signature algorithm.</t>
        <t>Second, the Presenter that initiates Evidence generation may have permission to list the relevant application keys but not permission to use them,
as in the case where the Presenter is an administrative UI displaying HSM status information to a system's administrator or auditor.</t>
        <t>Requiring the Attesting Environment to use the reported application keys to generate Evidence could, in some architectures, require the Attesting Environment to
resolve complex access control logic and handle complex error conditions, which violates the "simple to implement" design principle outlined in <xref target="sec-cons-simple"/>.
More discussion on authenticating the Presenter can be found in <xref target="sec-cons-auth-the-presenter"/>.</t>
      </section>
      <section anchor="sec-cons-hsm-timestamps">
        <name>Timestamps and HSMs</name>
        <t>It is common for HSMs to have an inaccurate system clock. Most clocks have a natural drift and must be corrected periodically. HSMs, like any other devices,
are subject to these issues.</t>
        <t>There are many situations where HSMs cannot naturally correct their internal system clocks. For example, consider an HSM hosting a trust anchor and usually kept offline
and booted up infrequently in a network without a reliable time management service. Another example is a smart card which boots up only when held against an NFC reader.</t>
        <t>When a timestamp generated from an HSM is evaluated, the expected behavior of the system clock <bcp14>SHOULD</bcp14> be considered.</t>
        <t>More specifically, the timestamp <bcp14>SHOULD NOT</bcp14> be relied on for establishing the freshness of the Evidence generated by an HSM. Instead, Verifiers <bcp14>SHOULD</bcp14> rely on other provisions
such as the "nonce" claim of the "transaction" element, introduced in this specification.</t>
        <t>Furthermore, the internal system clock of HSMs <bcp14>SHOULD NOT</bcp14> be relied on to enforce expiration policies.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-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="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="RFC9711">
          <front>
            <title>The Entity Attestation Token (EAT)</title>
            <author fullname="L. Lundblade" initials="L." surname="Lundblade"/>
            <author fullname="G. Mandyam" initials="G." surname="Mandyam"/>
            <author fullname="J. O'Donoghue" initials="J." surname="O'Donoghue"/>
            <author fullname="C. Wallace" initials="C." surname="Wallace"/>
            <date month="April" year="2025"/>
            <abstract>
              <t>An Entity Attestation Token (EAT) provides an attested claims set that describes the state and characteristics of an entity, a device such as a smartphone, an Internet of Things (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.</t>
              <t>An EAT is either a CBOR Web Token (CWT) or a JSON Web Token (JWT) with attestation-oriented claims.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9711"/>
          <seriesInfo name="DOI" value="10.17487/RFC9711"/>
        </reference>
        <reference anchor="RFC4648">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="X680" target="https://www.itu.int/rec/T-REC-X.680">
          <front>
            <title>Information technology — ASN.1: Specification of basic notation</title>
            <author>
              <organization>ITU-T</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="X690" target="https://www.itu.int/rec/T-REC-X.690">
          <front>
            <title>Information technology — ASN.1 encoding rules: BER, CER, DER</title>
            <author>
              <organization>ITU-T</organization>
            </author>
            <date>n.d.</date>
          </front>
        </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 anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6024">
          <front>
            <title>Trust Anchor Management Requirements</title>
            <author fullname="R. Reddy" initials="R." surname="Reddy"/>
            <author fullname="C. Wallace" initials="C." surname="Wallace"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>A trust anchor represents an authoritative entity via a public key and associated data. The public key is used to verify digital signatures, and the associated data is used to constrain the types of information for which the trust anchor is authoritative. A relying party uses trust anchors to determine if a digitally signed object is valid by verifying a digital signature using the trust anchor's public key, and by enforcing the constraints expressed in the associated data for the trust anchor. This document describes some of the problems associated with the lack of a standard trust anchor management mechanism and defines requirements for data formats and push-based protocols designed to address these problems. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6024"/>
          <seriesInfo name="DOI" value="10.17487/RFC6024"/>
        </reference>
        <reference anchor="RFC9019">
          <front>
            <title>A Firmware Update Architecture for Internet of Things</title>
            <author fullname="B. Moran" initials="B." surname="Moran"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="M. Meriac" initials="M." surname="Meriac"/>
            <date month="April" year="2021"/>
            <abstract>
              <t>Vulnerabilities in Internet of Things (IoT) devices have raised the need for a reliable and secure firmware update mechanism suitable for devices with resource constraints. Incorporating such an update mechanism is a fundamental requirement for fixing vulnerabilities, but it also enables other important capabilities such as updating configuration settings and adding new functionality.</t>
              <t>In addition to the definition of terminology and an architecture, this document provides the motivation for the standardization of a manifest format as a transport-agnostic means for describing and protecting firmware updates.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9019"/>
          <seriesInfo name="DOI" value="10.17487/RFC9019"/>
        </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>Cryptic Forest Software</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>Independent</organization>
            </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
         </author>
            <date day="22" month="October" year="2026"/>
            <abstract>
              <t>   Certification Authorities (CAs) issuing certificates to Public Key
   Infrastructure (PKI) end entities may require a certificate signing
   request (CSR) to include additional verifiable information to confirm
   policy compliance.  For example, a CA may require an end entity to
   demonstrate that the private key corresponding to a CSR's public key
   is secured by a hardware security module (HSM), is not exportable,
   etc.  The process of generating, transmitting, and verifying
   additional information required by the CA is called remote
   attestation.  While work is currently underway to standardize various
   aspects of remote attestation, a variety of proprietary mechanisms
   have been in use for years, particularly regarding protection of
   private keys.

   This specification defines ASN.1 structures which may carry
   attestation data for PKCS#10 and Certificate Request Message Format
   (CRMF) messages.  Both standardized and proprietary attestation
   formats are supported by this specification.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-csr-attestation-32"/>
        </reference>
        <reference anchor="I-D.ounsworth-rats-privacy-framework">
          <front>
            <title>Privacy Framework for Remote ATtestation procedureS</title>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Cryptic Forest Software</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <author fullname="Guiliano Lehmann" initials="G." surname="Lehmann">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <date day="18" month="June" year="2026"/>
            <abstract>
              <t>   This document extends the RATS Architecture to consider "coercive
   uses of RATS" where a malicious Verifier or Relying Party uses RATS
   protocols to extract sensitive information from an Attester or a
   victim Verifier that it would not otherwise be inclined to disclose.
   This over-disclosure can include revealing sensitive measurements,
   stable identifiers, device fingerprints, vendor information, or
   conclusions derived from Evidence.  This document defines a privacy
   framework for Remote Attestation that identifies this threat
   surfaces; classifies claims produced by Attesters and Presenters;
   restricts sensitive Evidence disclosure to authorized Trusted
   Verifiers using confidentiality protection; and describes privacy-
   preserving Attestation Results based on data minimization, Selective
   Disclosure, and Zero-Knowledge Proofs.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ounsworth-rats-privacy-framework-00"/>
        </reference>
        <reference anchor="CNSA2.0" target="https://media.defense.gov/2025/May/30/2003728741/-1/-1/0/CSA_CNSA_2.0_ALGORITHMS.PDF">
          <front>
            <title>Commercial National Security Algorithm Suite 2.0</title>
            <author>
              <organization>National Security Agency</organization>
            </author>
            <date year="2022" month="September"/>
          </front>
        </reference>
        <reference anchor="CSBR" target="https://cabforum.org/working-groups/code-signing/documents/">
          <front>
            <title>Baseline Requirements for the Issuance and Management of Publicly-Trusted Code Signing Certificates Version 3.8</title>
            <author>
              <organization>CA/Browser Forum</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="ISO19790" target="https://www.iso.org/standard/52906.html">
          <front>
            <title>Information technology — Security techniques — Security requirements for cryptographic modules</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="ISO/IEC" value="19790:2012"/>
        </reference>
        <reference anchor="SP800-140B" target="https://csrc.nist.gov/pubs/sp/800/140/b/r1/final">
          <front>
            <title>Cryptographic Module Validation Program (CMVP) Security Policy Requirements: CMVP Validation Authority Updates to ISO/IEC 24759 and ISO/IEC 19790 Annex B</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="NIST SP" value="800-140B Rev. 1"/>
        </reference>
        <reference anchor="FIPS140-3-IG" target="https://csrc.nist.gov/csrc/media/Projects/cryptographic-module-validation-program/documents/fips%20140-3/FIPS%20140-3%20IG.pdf">
          <front>
            <title>Implementation Guidance for FIPS 140-3 and the Cryptographic Module Validation Program</title>
            <author>
              <organization>NIST and CCCS</organization>
            </author>
            <date year="2026" month="August" day="19"/>
          </front>
        </reference>
        <reference anchor="CMVP" target="https://csrc.nist.gov/projects/cryptographic-module-validation-program/validated-modules/search">
          <front>
            <title>Cryptographic Module Validation Program — Validated Modules</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="FIPS140-3" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-3.pdf">
          <front>
            <title>Security Requirements for Cryptographic Modules</title>
            <author>
              <organization>NIST, Information Technology Laboratory</organization>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="FIPS" value="140-3"/>
        </reference>
        <reference anchor="FIPS140-2" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf">
          <front>
            <title>Security Requirements for Cryptographic Modules</title>
            <author>
              <organization>NIST, Information Technology Laboratory</organization>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="FIPS" value="140-2"/>
        </reference>
        <reference anchor="CC2022P1" target="https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART1R1.pdf">
          <front>
            <title>Common Criteria for Information Technology Security Evaluation Part 1: Introduction and general model</title>
            <author>
              <organization>Common Criteria</organization>
            </author>
            <date year="2022" month="November"/>
          </front>
        </reference>
        <reference anchor="CC2022P5" target="https://www.commoncriteriaportal.org/files/ccfiles/CC2022PART5R1.pdf">
          <front>
            <title>Common Criteria for Information Technology Security Evaluation Part 5: Pre-defined packages of security requirements</title>
            <author>
              <organization>Common Criteria</organization>
            </author>
            <date year="2022" month="November"/>
          </front>
        </reference>
        <reference anchor="PKCS11" target="https://docs.oasis-open.org/pkcs11/pkcs11-spec/v3.1/cs01/pkcs11-spec-v3.1-cs01.html">
          <front>
            <title>PKCS #11 Specification Version 3.1</title>
            <author initials="D." surname="Bong" fullname="Dieter Bong">
              <organization/>
            </author>
            <author initials="T." surname="Cox" fullname="Tony Cox">
              <organization/>
            </author>
            <author>
              <organization>OASIS PKCS 11 TC</organization>
            </author>
            <date year="2022" month="August" day="11"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1793?>

<section anchor="samples">
      <name>Samples</name>
      <t>A reference implementation of this specification can be found at https://github.com/ietf-rats-wg/key-attestation</t>
      <t>It produces the following sample Evidence.</t>
      <t>All signatures throughout the samples chain to the following root certificate:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIB7TCCAZOgAwIBAgIUCVQUR87O+0eUARsetFqBRAHmAVcwCgYIKoZIzj0EAwIw
RDESMBAGA1UECgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1hdHRlc3Rh
dGlvbjEPMA0GA1UEAwwGUm9vdENBMB4XDTI2MTAzMDE3MjcyNloXDTM2MTAyNzE3
MjgyNlowRDESMBAGA1UECgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1h
dHRlc3RhdGlvbjEPMA0GA1UEAwwGUm9vdENBMFkwEwYHKoZIzj0CAQYIKoZIzj0D
AQcDQgAE2MKIigcMWyDufDBDbxgmGOaJznEcAaSu9i+6Vgvm6sCNVQwdM6hE/KmN
njzMFbS2DBAYV7ByT5lRvUoUNHkgv6NjMGEwDwYDVR0TAQH/BAUwAwEB/zAdBgNV
HQ4EFgQU8lE2CFDHeB8YHZ3qjTIGYLxdAhkwHwYDVR0jBBgwFoAU8lE2CFDHeB8Y
HZ3qjTIGYLxdAhkwDgYDVR0PAQH/BAQDAgIEMAoGCCqGSM49BAMCA0gAMEUCIQC7
Hmx5riaouDmr+UYm9yqlY3PmQZrPwRDF5uZPtSl9ygIgO61Lyo1RDu0HAgS6l8W5
qWI7VRoPR+IpmdnQyPHONvQ=
-----END CERTIFICATE-----
]]></artwork>
      <section anchor="simple-platform-evidence">
        <name>Simple Platform Evidence</name>
        <t>This example shows a minimal PKIX Evidence object with only transaction and platform elements and a single signature where the AK key is identified only by
its SHA1 hash KeyID. In other words, this Evidence describes only the HSM itself (rather than application keys stored within it), and it assumes
that the Verifier will be able to look up the AK key by its SHA1 hash.</t>
        <artwork><![CDATA[
-----BEGIN EVIDENCE-----
MIIDtDCCAUMCAQEwggE8MIGuBgkrBgEFBYdnAAAwgaAwFgYKKwYBBQWHZwEAAAQI3q2+
78r+ur4wHQYKKwYBBQWHZwEAARgPMjAyNjEwMzAxNzI4MjZaMGcGCisGAQUFh2cBAAIw
WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASGl3ih3OUF+U4DXTHNwwGpgFS6BQLdoOil
NYUIP+jlK5oPOJL44uNBLe273XycUkqxQ83tRWvk58jDmGgsyzbUMIGIBgkrBgEFBYdn
AAEwezAXBgorBgEFBYdnAQEADAlBY21lIENvcnAwFgYKKwYBBQWHZwEBAgQISFNNLTkw
MDAwEwYKKwYBBQWHZwEBAwwFMi4xLjAwDwYKKwYBBQWHZwEBCgEB/zAPBgorBgEFBYdn
AQEMAgEDMBEGCisGAQUFh2cBAQgCAwFRgDBwMG4wGKAWBBTo7I8jth5Qy1whJBzV6Bbh
6RduDjAKBggqhkjOPQQDAgRGMEQCIESnkVgBCqLh1Ztpf5V0pzLVbbe+m+QbgAzuUwXd
9FU6AiANfipxs3EeqYIDPfYMpGU+PTqOTYrH8nNE+WzCaUN/16CCAfcwggHzMIIB7zCC
AZWgAwIBAgIUdyk1efOS6JxuychsYSzI4t18e4AwCgYIKoZIzj0EAwIwRDESMBAGA1UE
CgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1hdHRlc3RhdGlvbjEPMA0GA1UE
AwwGUm9vdENBMB4XDTI2MTAzMDE3MjcyNloXDTM2MTAyNzE3MjgyNlowQzESMBAGA1UE
CgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1hdHRlc3RhdGlvbjEOMAwGA1UE
AwwFSW50Q0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASXy45a9FlTBpeE4r+6OG4e
qe8H7joYz7HyJw4xgc/RZJGS9HJgbqj+yzrOjlXcx5LJygIVG5L/YsKtHa5SWg8no2Yw
ZDASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBReG8zuaAyExkyCirv5Ou6tiPQN
3DAfBgNVHSMEGDAWgBTyUTYIUMd4HxgdneqNMgZgvF0CGTAOBgNVHQ8BAf8EBAMCAoQw
CgYIKoZIzj0EAwIDSAAwRQIhAPnma1HIqzHM3dOH7CYYTsKTqtAWrNzPZsURXX7dF/NY
AiBWx3BxXpMYo16ntvVJNM7+J8n2iEtXj+NxbKJk667JEw==
-----END EVIDENCE-----
]]></artwork>
        <t>Here is a pretty-print of the Evidence object:</t>
        <artwork><![CDATA[
Evidence:
  TbsEvidence:
    version: 1
    ReportedElement[0]: id-evidence-element-transaction
      Claim[0]: id-evidence-claim-transaction-nonce
              -> [OCTET STRING] deadbeefcafebabe
      Claim[1]: id-evidence-claim-transaction-timestamp
              -> [GeneralizedTime] 20261030172826Z
      Claim[2]: id-evidence-claim-transaction-ak-spki
              -> [SubjectPublicKeyInfo] 3059301306072a8648ce3d02...
    ReportedElement[1]: id-evidence-element-platform
      Claim[0]: id-evidence-claim-platform-vendor
              -> [UTF8String] Acme Corp
      Claim[1]: id-evidence-claim-platform-hwmodel
              -> [OCTET STRING] 48534d2d39303030
      Claim[2]: id-evidence-claim-platform-hwversion
              -> [UTF8String] 2.1.0
      Claim[3]: id-evidence-claim-platform-fipsboot
              -> [BOOLEAN] True
      Claim[4]: id-evidence-claim-platform-fipslevel
              -> [INTEGER] 3
      Claim[5]: id-evidence-claim-platform-uptime
              -> [INTEGER] 86400
  Signatures (1):
    SignatureBlock[0]:
      algorithm      : 1.2.840.10045.4.3.2
      signatureValue : 3044022044a79158010aa2e1...
      keyId          : e8ec8f23b61e50cb5c21241cd5e816e1e9176e0e
  Intermediate Certificates:  (1)
]]></artwork>
        <t>For completeness of the sample, the following AK and Intermediate CA certificates are required for verification:</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIICAjCCAamgAwIBAgIUfo0BU1lSG+5RYsfe83W8FR6x7TEwCgYIKoZIzj0EAwIw
QzESMBAGA1UECgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1hdHRlc3Rh
dGlvbjEOMAwGA1UEAwwFSW50Q0EwHhcNMjYxMDMwMTcyNzI2WhcNMzYxMDI3MTcy
ODI2WjBFMRIwEAYDVQQKDAlpZXRmLXJhdHMxHTAbBgNVBAsMFHBraXgta2V5LWF0
dGVzdGF0aW9uMRAwDgYDVQQDDAd0ZXN0LWFrMFkwEwYHKoZIzj0CAQYIKoZIzj0D
AQcDQgAEhpd4odzlBflOA10xzcMBqYBUugUC3aDopTWFCD/o5SuaDziS+OLjQS3t
u918nFJKsUPN7UVr5OfIw5hoLMs21KN5MHcwDAYDVR0TAQH/BAIwADAdBgNVHQ4E
FgQU6OyPI7YeUMtcISQc1egW4ekXbg4wHwYDVR0jBBgwFoAUXhvM7mgMhMZMgoq7
+TrurYj0DdwwDgYDVR0PAQH/BAQDAgeAMBcGA1UdJQEB/wQNMAsGCSsGAQUFBwOH
ZzAKBggqhkjOPQQDAgNHADBEAiA8aJ3XMJ1JfxuNHCwEkDH4Bg/GtGLR/UPsS2s7
PxpYMwIgFs9CbkSTSUegEWl8fT9NO8GHjFVjZCeiUfh6ywAQSIY=
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
MIIB7zCCAZWgAwIBAgIUdyk1efOS6JxuychsYSzI4t18e4AwCgYIKoZIzj0EAwIw
RDESMBAGA1UECgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1hdHRlc3Rh
dGlvbjEPMA0GA1UEAwwGUm9vdENBMB4XDTI2MTAzMDE3MjcyNloXDTM2MTAyNzE3
MjgyNlowQzESMBAGA1UECgwJaWV0Zi1yYXRzMR0wGwYDVQQLDBRwa2l4LWtleS1h
dHRlc3RhdGlvbjEOMAwGA1UEAwwFSW50Q0EwWTATBgcqhkjOPQIBBggqhkjOPQMB
BwNCAASXy45a9FlTBpeE4r+6OG4eqe8H7joYz7HyJw4xgc/RZJGS9HJgbqj+yzrO
jlXcx5LJygIVG5L/YsKtHa5SWg8no2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G
A1UdDgQWBBReG8zuaAyExkyCirv5Ou6tiPQN3DAfBgNVHSMEGDAWgBTyUTYIUMd4
HxgdneqNMgZgvF0CGTAOBgNVHQ8BAf8EBAMCAoQwCgYIKoZIzj0EAwIDSAAwRQIh
APnma1HIqzHM3dOH7CYYTsKTqtAWrNzPZsURXX7dF/NYAiBWx3BxXpMYo16ntvVJ
NM7+J8n2iEtXj+NxbKJk667JEw==
-----END CERTIFICATE-----
]]></artwork>
      </section>
      <section anchor="key-attestation-evidence">
        <name>Key Attestation Evidence</name>
        <t>This example shows a PKIX Evidence object that is attesting two different application keys held within the HSM.
For the purposes of this example, the Platform Element is kept short.
This example embeds the AK and Intermediate CA certificates in the Evidence object. It chains to the same root as above.</t>
        <artwork><![CDATA[
-----BEGIN EVIDENCE-----
MIIHKDCCAr0CAQEwggK2MIGuBgkrBgEFBYdnAAAwgaAwFgYKKwYBBQWHZwEAAAQIvu/K
/rq+3q0wHQYKKwYBBQWHZwEAARgPMjAyNjEwMzAxNzI4MjZaMGcGCisGAQUFh2cBAAIw
WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASGl3ih3OUF+U4DXTHNwwGpgFS6BQLdoOil
NYUIP+jlK5oPOJL44uNBLe273XycUkqxQ83tRWvk58jDmGgsyzbUMCUGCSsGAQUFh2cA
ATAYMBYGCisGAQUFh2cBAQIECEhTTS05MDAwMIIBCgYJKwYBBQWHZwACMIH8MDIGCisG
AQUFh2cBAgAMJDlhMjVmNjAzLWEyYzQtNGRhZC05ZWUwLWExYjRlNzcxZjJjMzBnBgor
BgEFBYdnAQIBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8yAUt2vEGx0XwzQmn5gt
Ye3Kg5fUuv0hNrP7e2M4Jve8Q1+lqkK61bAdxYIya0E6Q83AkhfSvIcLJvdLChR1zzAP
BgorBgEFBYdnAQICAQEAMA8GCisGAQUFh2cBAgQBAf8wDwYKKwYBBQWHZwECAwEB/zAP
BgorBgEFBYdnAQIFAQH/MBkGCisGAQUFh2cBAgcwCwYJKwYBBQWHZwIEMIHNBgkrBgEF
BYdnAAIwgb8wMgYKKwYBBQWHZwECAAwkODU3MDRiOTktNzA5Ny00YmNhLTkzYjYtMTMz
NTJmODY1YWNlMGcGCisGAQUFh2cBAgEwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATf
Nt6laDANcr0u11EuKCA4YV5eY3iWOqlieIe/oK2a93ICVgPZoImcQGoNEvbhpEuZJboS
cTbOozinR6yb/9EgMA8GCisGAQUFh2cBAgIBAf8wDwYKKwYBBQWHZwECAwEBADCCAmgw
ggJkMIICCqKCAgYwggICMIIBqaADAgECAhR+jQFTWVIb7lFix97zdbwVHrHtMTAKBggq
hkjOPQQDAjBDMRIwEAYDVQQKDAlpZXRmLXJhdHMxHTAbBgNVBAsMFHBraXgta2V5LWF0
dGVzdGF0aW9uMQ4wDAYDVQQDDAVJbnRDQTAeFw0yNjEwMzAxNzI3MjZaFw0zNjEwMjcx
NzI4MjZaMEUxEjAQBgNVBAoMCWlldGYtcmF0czEdMBsGA1UECwwUcGtpeC1rZXktYXR0
ZXN0YXRpb24xEDAOBgNVBAMMB3Rlc3QtYWswWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC
AASGl3ih3OUF+U4DXTHNwwGpgFS6BQLdoOilNYUIP+jlK5oPOJL44uNBLe273XycUkqx
Q83tRWvk58jDmGgsyzbUo3kwdzAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTo7I8jth5Q
y1whJBzV6Bbh6RduDjAfBgNVHSMEGDAWgBReG8zuaAyExkyCirv5Ou6tiPQN3DAOBgNV
HQ8BAf8EBAMCB4AwFwYDVR0lAQH/BA0wCwYJKwYBBQUHA4dnMAoGCCqGSM49BAMCA0cA
MEQCIDxondcwnUl/G40cLASQMfgGD8a0YtH9Q+xLazs/GlgzAiAWz0JuRJNJR6ARaXx9
P007wYeMVWNkJ6JR+HrLABBIhjAKBggqhkjOPQQDAgRIMEYCIQCtwXGkRngp40D1C2kk
BkHVxo4pnvkCiBAw1k8YRljq3gIhAICgWqPUpLFOduhkj1YaWoWtjppL7K5R+fBUecfW
/BzDoIIB9zCCAfMwggHvMIIBlaADAgECAhR3KTV585LonG7JyGxhLMji3Xx7gDAKBggq
hkjOPQQDAjBEMRIwEAYDVQQKDAlpZXRmLXJhdHMxHTAbBgNVBAsMFHBraXgta2V5LWF0
dGVzdGF0aW9uMQ8wDQYDVQQDDAZSb290Q0EwHhcNMjYxMDMwMTcyNzI2WhcNMzYxMDI3
MTcyODI2WjBDMRIwEAYDVQQKDAlpZXRmLXJhdHMxHTAbBgNVBAsMFHBraXgta2V5LWF0
dGVzdGF0aW9uMQ4wDAYDVQQDDAVJbnRDQTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IA
BJfLjlr0WVMGl4Tiv7o4bh6p7wfuOhjPsfInDjGBz9FkkZL0cmBuqP7LOs6OVdzHksnK
AhUbkv9iwq0drlJaDyejZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFF4b
zO5oDITGTIKKu/k67q2I9A3cMB8GA1UdIwQYMBaAFPJRNghQx3gfGB2d6o0yBmC8XQIZ
MA4GA1UdDwEB/wQEAwIChDAKBggqhkjOPQQDAgNIADBFAiEA+eZrUcirMczd04fsJhhO
wpOq0Bas3M9mxRFdft0X81gCIFbHcHFekxijXqe29Uk0zv4nyfaIS1eP43FsomTrrskT
-----END EVIDENCE-----
]]></artwork>
        <t>Here is a pretty-print of the Evidence object:</t>
        <artwork><![CDATA[
Evidence:
  TbsEvidence:
    version: 1
    ReportedElement[0]: id-evidence-element-transaction
      Claim[0]: id-evidence-claim-transaction-nonce
              -> [OCTET STRING] beefcafebabedead
      Claim[1]: id-evidence-claim-transaction-timestamp
              -> [GeneralizedTime] 20261030172826Z
      Claim[2]: id-evidence-claim-transaction-ak-spki
              -> [SubjectPublicKeyInfo] 3059301306072a8648ce3d02...
    ReportedElement[1]: id-evidence-element-platform
      Claim[0]: id-evidence-claim-platform-hwmodel
              -> [OCTET STRING] 48534d2d39303030
    ReportedElement[2]: id-evidence-element-key
      Claim[0]: id-evidence-claim-key-identifier
              -> [UTF8String] 9a25f603-a2c4-4dad-9ee0-...
      Claim[1]: id-evidence-claim-key-spki
              -> [SubjectPublicKeyInfo] 3059301306072a8648ce3d02...
      Claim[2]: id-evidence-claim-key-extractable
              -> [BOOLEAN] False
      Claim[3]: id-evidence-claim-key-never-extractable
              -> [BOOLEAN] True
      Claim[4]: id-evidence-claim-key-sensitive
              -> [BOOLEAN] True
      Claim[5]: id-evidence-claim-key-local
              -> [BOOLEAN] True
      Claim[6]: id-evidence-claim-key-purpose
              -> [KeyPurposes] id-evidence-key-capability-sign
    ReportedElement[3]: id-evidence-element-key
      Claim[0]: id-evidence-claim-key-identifier
              -> [UTF8String] 85704b99-7097-4bca-93b6-...
      Claim[1]: id-evidence-claim-key-spki
              -> [SubjectPublicKeyInfo] 3059301306072a8648ce3d02...
      Claim[2]: id-evidence-claim-key-extractable
              -> [BOOLEAN] True
      Claim[3]: id-evidence-claim-key-sensitive
              -> [BOOLEAN] False
  Signatures (1):
    SignatureBlock[0]:
      algorithm      : 1.2.840.10045.4.3.2
      signatureValue : 3046022100adc171a4467829...
      AK Certificate : present
  Intermediate Certificates:  (1)
]]></artwork>
      </section>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>This specification is the work of a design team created by the chairs
of the RATS working group. This specification has been developed
based on discussions in that design team and also with great amounts of
input taken from discussions on the RATS mailing list.</t>
      <t>We would like to thank Jeff Andersen for the review comments.</t>
      <t>We would like to thank Dave Thaler for his guidance.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
yNxFaahLiig66RyybWBbcGDtKAnpdTScIiKhm3bsV4ACjkmz4pV7lOcXBaZe
aihLlh1YALNRLFvE2qqq93O/TTCiOhpVnbmPEZ2yoamhdhjotVIWq+ZQHBfM
fRvpCMuEdZRtdQuXXKtFbRhjuvSqFFHhVs9iVFr6YXSn6qkI1V2pSklzUVUs
DNPirD7c+sCLBUF8dBScnACL6fo6WK45XTHLEFupWsSRQ79Na6qpK3EIqTN6
nmnqrEqB5KQmJZCqu2QhHnWCpq63JmDDobp57XLtTriDV5qTkCzBkU2GmvDo
regKIFE2t3Tx0lk8W8SWEALbYsLzAQIidpvDwgjNVEUCjlSFx8ht7ym1ZHgg
lHrG0Q2CBIun5GKk1WXyAGZjonKWAYLl/XuApSg1F/qxGZgwr5VMSuJr07D0
tQUswjMWiwIkbLRl9MHy0xwHEo8L1E5sZguqeOlW7kKFcUwZfd+PMyXY706v
/SK6QhfV/AOaRQWM+8ji/ATzSLRtzxjEEwNLaauqrewMBuZ55UuTDMW1vHR1
miZTdS384ENun1OtGsAiDg2nlVeIzjgvrKNUqFkTlSnaDjfIB0HQ3HRCBlww
C+jKzPnzVBePlpz4cvvytQnnA1VTB5tqr8RKA+/1utmdUjgUh5K35GjWb+n2
Xt6RRa3b1YO5EdZB1kgLdmtpcu0WFBjVlsDofPb51bkbhdW/HZXUGZeNJ0ui
eVHDLNc7XuwqucbF5Jp0K1vl74mFtJ5KfNUYt8IyprbOm7K6O2spILdbR8NV
qF8oJ+Q0EXWvhO677Wx59Q0FTddDVHOaHD+4L3OQKum8jL/rq2L1XyYJ453d
chxDb/QdYvNQwbig9EjTRyQXKZQztVqSDoh2qEMvuHOjmYkFmdDKKtaUSAth
G/jX6+7JppFXtZGF1bimNWKubD1Www8XrrVR23IoBt5MNKS+HBkJ74+dShi4
4iT5BDgtBTmcJ/MkjhcYm+bpVpUjJ6K+0L3QEkiMVz4nRLHGYqbM0029d5Uc
xNZvI5QaB8+P792ws4y90MFU2dcEWZDlK5YWDlz/gNabi6KiKlDlacLoNCnG
SOjU6D+WnP2jOwoMeVdRqGTa1SXNVO/x79uPJvTeSoGluKejeULgBQy+w9q6
fWRpiRi6SkzjZCaUh8lSVqANZEkaEJljymBZ0x9NE6xyfnlStuBCWGKh1DA3
cqOqG1ziygPlmAhumHR0OE7doqDXXMCcDrvqMgLtFzWlRQuBqjN2zVDex5AP
CWTjGs4ElLbgJamXryct87l8z8ICe0UrJoNvOoPi6G48dNzTfMO0KkLoWxvu
LTlf1Q1KctJY4nmGySI9yhhSrtufPUkSwQB/K+mB5xSzr+9ySb3lLNHJsvMp
cyEu7Ch2MY0d6gUOAEH7OHm9zFnUOOyUSmdxq9hU+KKKXKYmnpTI1vkA2Dsb
x0smHr2wH8w5T0IIZ8pV9+l9AyGSkKeCBiyVZJgjq2Cd8ir5ilcNb+Ekbi1N
6HMvhDxPbWyz9lb1nRw2u86s42G8BmS7SoMRXIONN1ebqrapqvJGjwywAk8w
1udx7fcias7tZq6tnqP9WRRQdGCq2drudNxvwLbtYYzP7axmyW7w+jXIbvC+
C8LmR7bT44loEa1ui0wtS2IiWbw3j8YDP18TdxbAnrWcYSDr2Xsjxx7Idykq
QP0bLL3Mcm9eriPGodkmNiKeIRjQW+G0ECcUgLuA6hfbKtS1Rp/6OMQqhuhp
KozPaksw9UzNRWL/xT1ZRQGYVGJ2AUrPQZTqruLuogCoZhnGr1ZYBDujvIWY
FyW0jY4QWyjrirws5TLFkZJGFmJPgkGoUdpsR/Ubmk9lXE6Jmk/dKgc2+fK0
Ok2pKYG4WRdooLTespSUKe2zeCQSOWZ80bhFbfRTTktHGB/E0l+hUKnIxKEI
FXDbHlCbPnGMTZf+tR1yoXVIKzu+nHKLs1HCfpkZacy0ecD1X9MVaf9iOsfI
AlVR99rmlpu6J5CLm3qR3GZetLi5bk5ICpxTQl33ReB0XUwyFck7dxlC6c2Q
YwiW0u4wqIKnvTm1lieyseAVownuR2bmAt157VNnvJk0M5cTARNQ3L+4IJVA
vM477/0kreNPuPSt+OHTaaMG/OmbkyjyH62zw7bfvWxeXHb/0/OQOdXUULWd
7Z19j4PPvsIO443GpolDHtTiZAQs+AtBZ2N3ExB2sPF0U6Jwwgye9lRcm4qT
2djftHIF8S8A5OeNZzguLm5j27zDn9TwARP2hkvauDw4PDk7hMXAXg7bR53T
zmXn7LTrtz+cH3danUv/svmqS/3kya0JJPXD+Rls0G8eH/s/w8U4oT9hpqai
Dgadv36r+hht37y8umjXmsevzi46l69PaFlHF2cn1jtGXIZ1AVOu1ZDB/xPD
Vl40dv7l/RDYLJA9BGICraBscds7G/vPCVq+37L5etm1NRtFZGi0pfHUv3eH
D0IKCyEaNdUQizZHqAAHC8vDuI5m0vc84vjFhCRCi3/zsm9n+DqBG1bUtGgI
FfcrSDDwlKw3J6GULx8XT5vje7CDM8E8mrfgaPoPJ0PrK20g66W+b1mSqrwt
bbjxzQvdzq9tf6NRr580P2xigpdLN/nNVcKR7/9z+19Oepj1rX92jpe2eazv
++ofBKLjxQf88xEBMR0tR8lL9guaoZ9nWrk96ztdRhH0Cr+WEQasTlmv1/1v
/rfcoO8oHO6sddm+BAp70Tl9pdZrr6RsxaRVEfQ0SbOH0bCTCcuY7z8b5mW9
gVI27Q62Ht74rS2//nPHWuKa011zgv4GPUPphq0zoMyngOtdBmpVIHF+0e7C
p988joNe8WwpHORVf/279p70G/6m51nXpOygVMXezull+1X7gkGoovzayjy0
+jpduI8ifuQ+KptVrEF24b8ipeC1iJhn/9y/Ggqqw7WYpFH4rduV6f+iWn2X
kKer0w6MznP/BRcIB0wg7348vWx+kBGARsMg5twpzVQeNxDg2L6S/dOmePe0
wjquaOMrPd8Ns2+bPD+Ho9KPPEbvWA9+/Yce6tsmbVi+yaXL6kmLbhz59o+S
701g8+pnVNiu+4Ru0S2ts1d8Sx1wV30pbWRXfy24u/oBaRC64ntuSLv623uG
l1auq77mDqqrvjWtp1c8oHpfrfv+LlwJWN1ea90D0mN0xROmb8XqJ9atUBWy
Xv29VeR79UO6g4/7hFtFs+TLEqTMVbEse0lV4ir5rlBSoeQZLt9W/Nyp9lS2
KKqjUPxCQrUUYwNCj3fcyqJZKV/xGw8VEeVpIyeukRFZZtv13YWovDPf/lkl
u/osAOpNbMNg9+SwPXQsvY5VYyrUesT69JiNFWOiTvvIPesxd/KAZJ38EdBr
lI7gAO/RRyKryANxXabZo0Z2Vnf/LCbp7PtnyR/euvyz75+l/DgdrPu+oyhf
fo7PfsdB6JWVn4LLqr9j4WaCe3Yg7P4HJti5bwIl7H7vBLv3TSBdw797gr31
E7DE8iNnsH/fBD8KoqfrJxCh6Qd28Gz9BCx2/QiInq+fQEtu3z3Bi/UTKMnv
By7aPVdZZMcfucr33GXTz/67Z7jnMhv59btnuOc2G/n3u2e45zqz/PxDJPWe
+6xk8B+Y4Z4L7Tbd/N5J7rnURgv47hmel/NlW3L7Xs5cjqnlZf4ft3xcXfld
Li/1//jRy+9xebn/x4++GjLFkv+PH738/paX/X/86OV3t7z0/+NHL7+35UX6
Hz96+Z0tL9T/+NHLL2t564LHj164qG61oe9C+AIirqsO9tAl59aVv6frSoV9
5xT5y7qubth3TnEPoJwiYt85Rf7arqso9p1T5O/uuvJi3zlF/gKvqzX2nVPk
b/H6wmPfOUn+Mq+rQ/adU+QF6nVFyb5zirxIva5C2fdePrzgqi5l0QLygOqU
ZZZ34zzIe9nWGUEeOZltxjcTcubcGJO2LtFSXTqnMok8ckbjFDDzlbrq9aR5
Q8YDJiz6GMxkV5dHz7vUDKVkCjZlPGYG5ae477gKxozHTGL8HY+YRunrj5vI
uDYeCDJt2njcPNoB88BpxMDxmEm0F+fBU3wPyNLHg0yZOh4zjfEpmUnEM1sy
g9g6HjOB9ko9ZHxj6njMFLZr6yGzaHvHYyax3GNmjoOzs+N283TFHMgkHzsF
e9geeODG6PHYaZSD66HgEsPHY6fR/r4HbsiygDxmKsdx+OCpHo0C2vv4EATQ
hpDHzaA9mA/ehm0Nedxcrjf0wRNqy8jjZrPcquunytkxHliF27zxoAkeKmNY
jt2HChZ5W8YDZ3H9vGtQzLVmPHQPlp/5nrGLtowHzlHmr75nLrZsPHB85eu+
Z0yxZzwY7OIJf4Cc+j+iOPwK48cD15OLCygFZfv0UEU5Y4WJ//RU5aJO87Tp
t5y8Mc87H1NBA2nQ7ld0Nc6KyWHB0LXpfNLjaj1cLp7yBjBlTip8SR415eFR
KLbwHF2ZmLPidEz2tyqvxxTsUb0OcAKvtAy0qkwjQ1vfmABpzoLINYvDJr8r
QqsrqkCHrnGE9ar6knRC2Y+V7knHtKbHRVBGk8Sad/QqKlK7DbB3o1HfrT+t
N+r78L9n9e3NPxc8mLWyGjyhCrflZG0Mt12RDSRg29msc7qhNVgZPFSeYMgA
eHOORaTye93dNF1W7FOolEQBcxoTrlvlg7TlbLD9jQJAkN6qEkIYTYk1WMMF
Tc0LKp7PiS5zin3X04qzxk2D2KYR1SDMsNAEpXxhQDVFsr707a1JHAs+cQoa
xEtf4RF+cmh2+tLEJbdV5j8u6nWQDKgvkl4qY1CK7+uCwy9NPVy8s/rZ/L39
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
jpdx4+Jwvv26Oeo+HT9/v+/9/r7z7N1FfH7xpDObDKZvl+evz07v3v7d9MAs
IC8Hk+rYjHOVMa/NjeyuUNwD20qSExIkwAlGY2HkoDE8MAcmDYW7M1hKFfmY
1PCO/wfVlenIqUNt5NfmG6Wf6HBGsZb3lh4aWLqvmw20D9ygLtg5rJc3E9Zr
NH0XdP8I4lRcyXgDKJDuulGQSlOQckUDi7BUs5iXKY4Hw8NSTzuFrBgbIEdo
r5Hy3OM4vkVGa+2NCymbjdTv6WsKBOcwOwSCcwUI9La9GI3az086r+YHo9vk
YNQ+Ovg4mDabzcUoaC6ORh/fvFl8PDh4+/71r4s2fPy2s/v7zhPv2fPkyTzZ
W7x+m3vgYnR+8gnowqf24uRL8/Ppl87eyadfg5NX/VetKH3VfHt1dLPTP2g2
gXK9v2xeHoz6v9/cfjo7f9uBazGS308ODhanrWaz+2q8G93snl0dPbnaO/xw
+foUKMJsdNR9evD2eBCfRWPv9ONV5/zJp/Gb/fj87Jfjvb356cFxuPNs98Oy
f3X7++e3z3ezi/d3t/vPPx1OXo3S5ZfeFWy3Y2/Xazbbi/BL88MBaGkaBm/b
zcPm+ODjTmPcaZ/e9acFeACxftvpHp2eHl/eLryTwyZSKPeBxeLoJNr7fPyp
ifTD+a41Ivpxbk8KlAxu+ah9eAJH5wDs7agF81+MDg8WJ6/2Fq/eNN8fHFzG
zzrPP2U3+2+XjcXNLwdf3j096N14Ty8G88NPzTcGoEg/Ll6dtN+2Ou3u9Pbd
6KD1+/FN49dsNtx/tz37cvyu1wufTJ687Y2aX+ZXiw8D78XR1dNm1DwdRrPP
6W47/P1j5/B8+PFk9urqyfnl72eXH5PXz6en7Sfvv7SCq9OtxlPAqWEf8On1
F2JqX1otr/nre83VBsvbRjg86z795fN82b9JP3YBObLG83CvWeBqNivxvoer
5VmJ91iuppja2y9/zkrOTpoLvZKj7vv97bfb7cUDrsCH5d5+8OJofHkwC9t7
yZOnZ6/2Qu/38PnrZ5/ij1+evV7+stj7POpvXfz6y6vui9e/jHq/f3qy/JKc
fRp/6H/eP/4FKP67V/vHWx/TN9nrYL/7fvR8Gu98XHi/Hja7yL1eX8AOh8/b
rUPYJ/AbQMDmyQEBbnA4eguIdhG+ev5lHjSX7c+3y1aU3O2fzZ9m0fnbU2/3
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
ciqEh0QRbOeuVYV4/g4xdfXzV4sBAA==

-->

</rfc>
