<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.12 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc tocdepth="4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>

<rfc ipr="trust200902" docName="draft-ietf-rats-tpm-based-network-device-attest-06" category="info">

  <front>
    <title abbrev="Network Device RIV">TPM-based Network Device Remote Integrity Verification</title>

    <author initials="G.C." surname="Fedorkow" fullname="Guy Fedorkow" role="editor">
      <organization>Juniper Networks, Inc.</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>US</country>
        </postal>
        <phone></phone>
        <email>gfedorkow@juniper.net</email>
      </address>
    </author>
    <author initials="E." surname="Voit" fullname="Eric Voit">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>US</country>
        </postal>
        <phone></phone>
        <email>evoit@cisco.com</email>
      </address>
    </author>
    <author initials="J." surname="Fitzgerald-McKay" fullname="Jessica Fitzgerald-McKay">
      <organization>National Security Agency</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>US</country>
        </postal>
        <phone></phone>
        <email>jmfitz2@nsa.gov</email>
      </address>
    </author>

    <date year="2020" month="December" day="07"/>

    <area>Security</area>
    <workgroup>RATS Working Group</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This document describes a workflow for remote attestation of the integrity of firmware and software
installed on network devices that contain Trusted Platform Modules <xref target="TPM1.2"/>, <xref target="TPM2.0"/>, as defined by 
the Trusted Computing Group (TCG).</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>There are many aspects to consider in fielding a trusted computing device,
from operating systems to applications.  Mechanisms to prove that
a device installed at a customer’s site is authentic (i.e., not counterfeit) and has
been configured with authorized software, all as part of a trusted supply chain, are just a few of the many aspects which need to be considered concurrently to have confidence that a device is truly trustworthy.</t>

<t>A generic architecture for remote attestation has been defined in <xref target="I-D.ietf-rats-architecture"/>.  Additionally, the use cases for remotely attesting networking devices are discussed within Section 6 of <xref target="I-D.richardson-rats-usecases"/>.  However, these documents do not provide sufficient guidance for network equipment vendors and operators to design, build, and deploy interoperable devices.</t>

<t>The intent of this document is to provide such guidance. It does this by outlining the Remote Integrity Verification (RIV) problem, and then identifies elements that are necessary to get the complete, scalable attestation procedure working with commercial networking products such as routers, switches and firewalls.   An underlying assumption will be the availability within the device of a Trusted Platform Module <xref target="TPM1.2"/>, <xref target="TPM2.0"/> compliant cryptoprocessor to enable the trustworthy remote assessment of the device’s software and hardware.</t>

<section anchor="terminology" title="Terminology">

<t>A number of terms are reused from <xref target="I-D.ietf-rats-architecture"/>.  These include: Appraisal Policy for Evidence, Attestation Result, Attester, Evidence, Reference Value, Relying Party, Verifier, and Verifier Owner.</t>

<t>Additionally, this document defines the following term:</t>

<t>Attestation: the process of generating, conveying and appraising
claims, backed by evidence, about device trustworthiness characteristics, including supply chain trust,
identity, device provenance, software configuration, device
composition, compliance to test suites, functional and assurance evaluations, etc.</t>

<t>The goal of attestation is simply to assure an administrator that the device configuration and software
that was launched when the device was last started is authentic and untampered-with.</t>

<t>Within the Trusted Computing Group (TCG) context, attestation is the process by
which an independent Verifier can obtain cryptographic proof as to the identity
of the device in question, and evidence of the integrity of software loaded on
that device when it started up, and then verify that what’s there matches the 
intended configuration.  For network equipment, a Verifier capability can
be embedded in a Network Management Station (NMS), a posture collection server,
or other network analytics tool (such as a software asset management solution,
or a threat detection and mitigation tool, etc.). While informally referred
to as attestation, this document focuses on a subset defined here as Remote
Integrity Verification (RIV).  RIV takes a network equipment centric perspective
that includes a set of protocols and procedures for determining whether a
particular device was launched with authentic software, starting from Roots
of Trust.  While there are many ways to accomplish attestation, RIV sets
out a specific set of protocols and tools that work in environments commonly
found in network equipment.  RIV does not cover other device characteristics
that could be attested (e.g., geographic location, connectivity; 
see <xref target="I-D.richardson-rats-usecases"/>), although it does provide evidence of a secure infrastructure
to increase the level of trust in other device characteristics attested
by other means (e.g., by Entity Attestation Tokens <xref target="I-D.ietf-rats-eat"/>).</t>

<t>In line with <xref target="I-D.ietf-rats-architecture"/> definitions, this document uses the term Endorser to refer to the 
role that signs identity and attestation certificates used by the Attester, while Reference Values are signed 
by a Reference Value Provider.  Typically, the manufacturer of an embedded device would be accepted as 
both the Endorser and Reference Value Provider, although the choice is ultimately up to the Verifier Owner.</t>

</section>
<section anchor="document-organization" title="Document Organization">

<t>The remainder of this document is organized into several sections:</t>

<t><list style="symbols">
  <t>The remainder of this section covers goals and requirements, plus a top-level description of RIV.</t>
  <t>The Solution Overview section outlines how Remote Integrity Verification works.</t>
  <t>The Standards Components section links components of RIV to normative standards.</t>
  <t>Privacy and Security shows how specific features of RIV contribute to the trustworthiness of the Attestation Result.</t>
  <t>Supporting material is in an appendix at the end.</t>
</list></t>

</section>
<section anchor="goals" title="Goals">

<t>Network operators benefit from a trustworthy attestation mechanism that provides
assurance that their network comprises authentic equipment, and has loaded software
free of known vulnerabilities and unauthorized tampering.  In line with the overall goal of assuring integrity, attestation can be used to assist in asset management, vulnerability and compliance
assessment, plus configuration management.</t>

<t>The RIV attestation workflow outlined in this document is intended to meet the following high-level goals:</t>

<t><list style="symbols">
  <t>Provable Device Identity - This specification requires that an Attester (i.e., the attesting device) includes
a cryptographic identifier unique to each device.  Effectively this means that the TPM
must be so provisioned during the manufacturing cycle.</t>
  <t>Software Inventory - A key goal is to identify the software release(s) installed
on the Attester, and to provide evidence that the software stored within hasn’t
been altered without authorization.</t>
  <t>Verifiability - Verification of software and configuration of the device shows
that the software that was authorized for installation by the administrator has actually been launched.</t>
</list></t>

<t>In addition, RIV is designed to operate either in a centralized environment, such as with a central authority that manages and configures a number of network devices, or ‘peer-to-peer’, where network devices independently verify one another to establish a trust relationship.  (See <xref target="peer-to-peer"/> below, and also <xref target="I-D.voit-rats-trusted-path-routing"/>)</t>

</section>
<section anchor="description-of-remote-integrity-verification-riv" title="Description of Remote Integrity Verification (RIV)">

<t>Attestation requires two interlocking mechanisms between the Attester network device and the Verifier:</t>

<t><list style="symbols">
  <t>Device Identity, the mechanism providing trusted identity, can reassure network
managers that the specific devices they ordered from authorized manufacturers for
attachment to their network are those that were installed, and that they continue to
be present in their network. As part of the mechanism for Device Identity,
cryptographic proof of the identity of the manufacturer is also provided.</t>
  <t>Software Measurement is the mechanism that reports the state of mutable software components
on the device, and can assure network managers that they have known, authentic
software configured to run in their network.</t>
</list></t>

<t>Using these two interlocking mechanisms, RIV is a component in a chain of procedures that can assure a network operator that the equipment in
their network can be reliably identified, and that authentic software of
a known version is installed on each device.  Equipment in the network includes
devices that make up the network itself, such as routers, switches and firewalls.</t>

<t>Software used to boot a device can be described as recording a chain
of measurements, anchored at the start by a Root of Trust for Measurement (see <xref target="root-of-trust"/>), each measuring the next stage,
that normally ends when the system software is loaded.
A measurement signifies the identity, integrity and version of each
software component registered with an Attester’s TPM <xref target="TPM1.2"/>, <xref target="TPM2.0"/>, so that a
subsequent verification stage can determine if the software
installed is authentic, up-to-date, and free of tampering.</t>

<t>RIV includes several major processes:</t>

<t><list style="numbers">
  <t>Generation of Evidence is the process whereby an Attester generates cryptographic
proof (Evidence) of claims about device properties. In particular, the
device identity and its software configuration are both of critical importance.</t>
  <t>Device Identification refers to the mechanism assuring the
Relying Party (ultimately, a network administrator) of the identity of devices that make up their network,
and that their manufacturers are known.</t>
  <t>Conveyance of Evidence
reliably transports the collected Evidence from Attester to a Verifier to allow a management station to perform
a meaningful appraisal in Step 4. The transport
is typically carried out via a management network. The channel must provide
integrity and authenticity, and, in some use cases, may also require confidentiality.</t>
  <t>Finally, Appraisal of Evidence occurs.  This is the process of verifying the Evidence received by
  a Verifier from the Attester, and using an Appraisal Policy to develop an
  Attestation Result, used to inform decision making.  In practice, this means comparing
  the Attester’s measurements reported as Evidence with the device configuration expected
  by the Verifier.  Subsequently the Appraisal Policy for Evidence might
  match Evidence found against Reference Values (aka Golden Measurements), which represent 
  the intended configured state of the connected device.</t>
</list></t>

<t>All implementations supporting this RIV specification require the support of the following three technologies:</t>

<t><list style="numbers">
  <t>Identity: Device identity MUST be based on IEEE 802.1AR Device Identity (DevID) <xref target="IEEE-802-1AR"/>,
coupled with careful supply-chain management by the manufacturer.  The
Initial DevID (IDevID) certificate contains a statement by the manufacturer that establishes
the identity of the device as it left the factory.  Some applications with
a more-complex post-manufacture supply chain (e.g., Value Added Resellers),
or with different privacy concerns, may want to use alternative mechanisms for platform
authentication (for example, TCG Platform Certificates <xref target="Platform-Certificates"/>, or 
post-manufacture installation of Local Device ID (LDevID)).</t>
  <t>Platform Attestation provides evidence of configuration of software elements
present in the device.  This form of attestation can be implemented
with TPM Platform Configuration Registers (PCRs), Quote and Log mechanisms, which provide cryptographically authenticated evidence
to report what software was started on the device through the boot cycle.  Successful attestation requires an 
unbroken chain from a boot-time root of trust through all layers of software needed to bring the device to an 
operational state, in which each stage measures components of the next stage, updates the attestation log, and 
extends hashes into a PCR.  The TPM can then report the hashes of all the measured hashes as signed evidence called a 
Quote (see <xref target="using-tpm"/> for an overview of TPM operation, or <xref target="TPM1.2"/> and <xref target="TPM2.0"/> for many more details).</t>
  <t>Signed Reference Values (aka Reference Integrity Measurements) must be conveyed from the Reference Value Provider (the entity accepted as the software authority,
often the manufacturer for embedded systems) to the Verifier.</t>
</list></t>

</section>
<section anchor="solution-requirements" title="Solution Requirements">

<t>Remote Integrity Verification must address the “Lying Endpoint”
problem, in which malicious software on an endpoint may subvert the
intended function, and also prevent the endpoint from reporting its compromised
status.  (See <xref target="security-cons"/> for further Security Considerations.)</t>

<t>RIV attestation is designed to be simple
to deploy at scale. RIV should work “out of the box” as far as possible,
that is, with the fewest possible provisioning steps or configuration databases
needed at the end-user’s site.  Network equipment is often required to “self-configure”,
to reliably reach out without manual intervention to prove its identity and
operating posture, then download its own configuration, a process which precludes pre-installation configuration. See <xref target="RFC8572"/> for an
example of Secure Zero Touch Provisioning.</t>

</section>
<section anchor="scope" title="Scope">

<t>The need for assurance of software integrity, addressed by Remote Attestation, is a very general problem that could apply to most network-connected computing devices.  However, this document includes several assumptions that limit the scope to network equipment (e.g., routers, switches and firewalls):</t>

<t><list style="symbols">
  <t>This solution is for use in non-privacy-preserving applications (for example,
networking, Industrial IoT), avoiding the need for a Privacy Certificate
Authority for attestation keys <xref target="AK-Enrollment"/> or TCG Platform
Certificates <xref target="Platform-Certificates"/>.</t>
  <t>This document assumes network protocols that are common in network equipment such as YANG <xref target="RFC7950"/> and NETCONF <xref target="RFC6241"/>,
but not generally used in other applications.</t>
  <t>The approach outlined in this document mandates the use of a compliant TPM <xref target="TPM1.2"/>, <xref target="TPM2.0"/>.</t>
</list></t>

<section anchor="out-of-scope" title="Out of Scope">

<t><list style="symbols">
  <t>Run-Time Attestation: The Linux Integrity Measurement Architecture attests each process launched
after a device is started (and is in scope for RIV), but continuous run-time attestation of Linux or 
other multi-threaded operating system processes after they’ve started considerably expands the scope of the problem.
Many researchers are working on that problem, but this document defers the problem of continuous, in-memory
run-time attestation.</t>
  <t>Multi-Vendor Embedded Systems: Additional coordination would be needed for
devices that themselves comprise hardware and software from multiple vendors,
integrated by the end user.  Although out of scope for this document, these
issues are accommodated in <xref target="I-D.ietf-rats-architecture"/>.</t>
  <t>Processor Sleep Modes: Network equipment typically does not “sleep”, so
sleep and hibernate modes are not considered.  Although out of scope
for RIV, Trusted Computing Group specifications do encompass sleep and hibernate
states.</t>
  <t>Virtualization and Containerization:  In a non-virtualized system, the host OS is
responsible for measuring each User Space file or process, but that’s the end of the
boot process.  For virtualized systems, the host OS must verify the hypervisor, 
which then manages its own chain of trust through the virtual machine.  Virtualization 
and containerization technologies are increasingly used in network equipment, but 
are not considered in this document.</t>
</list></t>

</section>
</section>
</section>
<section anchor="solution-overview" title="Solution Overview">

<section anchor="riv-software-configuration-attestation-using-tpm" title="RIV Software Configuration Attestation using TPM">

<t>RIV Attestation is a process which can be used to determine the identity of software running
on a specifically-identified device.  Remote Attestation is broken into two
phases, shown in Figure 1:</t>

<t><list style="symbols">
  <t>During system startup, each distinct software object is “measured” by the Attester.
The object’s identity, hash (i.e., cryptographic digest) and version information are recorded in a log.
Hashes are also extended, or cryptographically folded, into the TPM, in a way that can be used to validate the log entries.  The measurement process generally
follows the layered chain-of-trust model used in Measured Boot, where each stage
of the system measures the next one, and extends its measurement into the TPM,
before launching it.  See <xref target="I-D.ietf-rats-architecture"/>, section “Layered Attestation Environments,” for an architectural definition
of this model.</t>
  <t>Once the device is running and has operational network connectivity, a separate,
trusted Verifier will interrogate the network
device to retrieve the logs and a copy of the digests collected by hashing
each software object, signed by an attestation private key secured by, but never released by,
the TPM.  The YANG model described in <xref target="I-D.ietf-rats-yang-tpm-charra"/> facilitates this operation.</t>
</list></t>

<t>The result is that the Verifier can verify the device’s identity by checking
the Subject Field and signature of certificate containing the TPM’s attestation public key, and can
validate the software that was launched by verifying the correctness of the logs by comparing with the
signed digests from the TPM, and comparing digests in the log with
Reference Values.</t>

<t>It should be noted that attestation and identity are inextricably linked;
signed Evidence that a particular version of software was loaded is of little
value without cryptographic proof of the identity of the Attester producing
the Evidence.</t>

<figure title="Layered RIV Attestation Model" anchor="RIV-Attestation-Model"><artwork align="left"><![CDATA[
    +-------------------------------------------------------+
    | +--------+    +--------+   +--------+    +---------+  |
    | | BIOS   |--->| Loader |-->| Kernel |--->|Userland |  |
    | +--------+    +--------+   +--------+    +---------+  |
    |     |            |           |                        |
    |     |            |           |                        |
    |     +------------+-----------+-+                      |
    |                        Step 1  |                      |
    |                                V                      |
    |                            +--------+                 |
    |                            |  TPM   |                 |
    |                            +--------+                 |
    |   Router                       |                      |
    +--------------------------------|----------------------+
                                     |
                                     |  Step 2
                                     |    +-----------+
                                     +--->| Verifier  |
                                          +-----------+

    Reset---------------flow-of-time-during-boot--...------->
]]></artwork></figure>

<t>In Step 1, measurements are “extended”, or hashed, into the TPM as processes start, 
with the result that the PCR ends up containing a hash of all the measured hashes. In
Step 2, signed PCR digests are retrieved from the TPM for off-box analysis
after the system is operational.</t>

<section anchor="what-does-riv-attest" title="What Does RIV Attest?">

<t>TPM attestation is strongly focused on Platform Configuration Registers (PCRs), but those registers are only vehicles for certifying 
accompanying Evidence, conveyed in log entries.  It is the hashes in log entries that are extended into PCRs, where the final PCR values 
can be retrieved in the form of a structure called a Quote, signed by an Attestation key known only to the TPM.  The use of multiple PCRs serves only to 
provide some independence between different classes of object, so that one class of objects can be updated without changing the 
extended hash for other classes.  Although PCRs can be used for any purpose, this section outlines the objects within the 
scope of this document which may be extended into the TPM.</t>

<t>In general, assignment of measurements to PCRs is a policy choice made by the device manufacturer, selected to independently attest three classes of object:</t>

<t><list style="symbols">
  <t>Code, (i.e., instructions) to be executed by a CPU.</t>
  <t>Configuration - Many devices offer numerous options controlled by non-volatile configuration variables which can impact the device’s security posture.  These settings may have vendor defaults, but often can be changed by administrators, who may want to verify via attestation that the operational state of the settings match their intended state.</t>
  <t>Credentials - Administrators may wish to verify via attestation that public keys (and other credentials) outside the Root of Trust have not been subject to unauthorized tampering.  (By definition, keys protecting the root of trust can’t be verified independently.)</t>
</list></t>

<t>The TCG PC Client Platform Firmware Profile Specification <xref target="PC-Client-BIOS-TPM-2.0"/> gives considerable detail on what is to be 
measured during the boot phase of platform startup using a UEFI BIOS (www.uefi.org), but the goal is simply to measure every bit of 
code executed in the process of starting the device, along with any configuration information related to security posture, leaving 
no gap for unmeasured code to remain undetected, potentially subverting the chain.</t>

<t>For devices using a UEFI BIOS, <xref target="PC-Client-BIOS-TPM-2.0"/> gives detailed normative requirements for PCR usage.  For other 
platform architectures, the table in <xref target="Attested-Objects"/> gives non-normative guidance for PCR assignment that generalizes the specific 
details of <xref target="PC-Client-BIOS-TPM-2.0"/>.</t>

<t>By convention, most PCRs are assigned in pairs, which the even-numbered PCR used to measure executable code, and 
the odd-numbered PCR used to measure whatever data and configuration are associated with that code.  It is important 
to note that each PCR may contain results from dozens (or even thousands) of individual measurements.</t>

<figure title="Attested Objects" anchor="Attested-Objects"><artwork align="left"><![CDATA[
+------------------------------------------------------------------+
|                                            |    Assigned PCR #   |
| Function                                   | Code | Configuration|
--------------------------------------------------------------------
| Firmware Static Root of Trust, (i.e.,      |  0   |    1         |
| initial boot firmware and drivers)         |      |              |
--------------------------------------------------------------------
| Drivers and initialization for optional    |  2   |    3         |
| or add-in devices                          |      |              |
--------------------------------------------------------------------
| OS Loader code and configuration, (i.e.,   |  4   |    5         |
| the code launched by firmware) to load an  |      |              |
| operating system kernel. These PCRs record |      |              |
| each boot attempt, and an identifier for   |      |              |
| where the loader was found                 |      |              |
--------------------------------------------------------------------
| Vendor Specific Measurements during boot   |  6   |    6         |
--------------------------------------------------------------------
| Secure Boot Policy.  This PCR records keys |      |    7         |
| and configuration used to validate the OS  |      |              |
| loader                                     |      |              |
--------------------------------------------------------------------
| Measurements made by the OS Loader         |  8   |    9         |
| (e.g GRUB2 for Linux)                      |      |              |
--------------------------------------------------------------------
| Measurements made by OS (e.g., Linux IMA)  |  10  |    10        |
+------------------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="notes-on-pcr-allocations" title="Notes on PCR Allocations">

<t>It is important to recognize that PCR[0] is critical.  The first measurement into PCR[0] is taken by the Root of Trust for 
Measurement, code which, by definition, cannot be verified by measurement.  This measurement 
establishes the chain of trust for all subsequent measurements.  If the PCR[0] measurement cannot be trusted, the 
validity of the entire chain is put into question.</t>

<t>Distinctions Between PCR[0], PCR[2], PCR[4] and PCR[8] are summarized below:</t>

<t><list style="symbols">
  <t>PCR[0] typically represents a consistent view of rarely-changed Host Platform boot components, allowing Attestation policies to be defined using the less changeable components of the transitive trust chain. This PCR 
typically provides a consistent view of the platform regardless of user selected options.</t>
  <t>PCR[2] is intended to represent a “user configurable” environment where the user has the ability to alter the 
components that are measured into PCR[2]. This is typically done by adding adapter cards, etc., into user-accessible 
PCI or other slots.  In UEFI systems these devices may be configured by Option ROMs measured into PCR[2] and 
executed by the BIOS.</t>
  <t>PCR[4] is intended to represent the software that manages the transition between the platform’s Pre-Operating System 
start and the state of a system with the Operating System present.  This PCR, along with PCR[5], identifies the initial 
operating system loader (e.g., GRUB for Linux).</t>
  <t>PCR[8] is used by the OS loader (e.g. GRUB) to record measurements of the various components of the operating system.</t>
</list></t>

<t>Although the TCG PC Client document specifies the use of the first eight PCRs very carefully to ensure interoperability 
among multiple 
UEFI BIOS vendors, it should be noted that embedded software vendors may have considerably more flexibility.  Verifiers 
typically need to know which log entries are consequential and which are not (possibly controlled by local policies) but 
the Verifier may not need to know what each log entry means or why it was assigned to a particular PCR.   Designers must
recognize that some PCRs may cover log entries that a particular Verifier considers critical and other log entries that
are not considered important, so differing PCR values may not on their own constitute a check for authenticity.  For example, in a UEFI system, some administrators may consider booting an image from a removable drive, something recorded in a PCR, to be a security violation, while others might consider that operation an authorized recovery procedure.</t>

<t>Designers may allocate particular events to specific PCRs in order to achieve a particular objective with local 
attestation, (e.g., allowing a procedure to execute, or releasing a paricular decryption key, only if a given PCR is in a given state).  It may also be important 
to designers to consider whether streaming notification of PCR updates is required (see <xref target="I-D.birkholz-rats-network-device-subscription"/>).  Specific 
log entries can only be validated if the Verifier receives every log entry affecting the relevant PCR, so (for example) 
a designer might want to separate rare, high-value events such as configuration changes, from high-volume, routine 
measurements such as IMA <xref target="IMA"/> logs.</t>

</section>
</section>
<section anchor="riv-keying" title="RIV Keying">

<t>RIV attestation relies on two credentials:</t>

<t><list style="symbols">
  <t>An identity key pair and matching certificate is required to certify the identity of the Attester itself.
RIV specifies the use of an IEEE 802.1AR Device Identity (DevID) <xref target="IEEE-802-1AR"/>,
signed by the device manufacturer, containing the device serial number.</t>
  <t>An Attestation key pair and matching certificate is required to sign the Quote generated by the TPM to report evidence
of software configuration.</t>
</list></t>

<t>In TPM application, both the Attestation private key and the DevID private key MUST be protected by the TPM.
Depending on other TPM configuration procedures,
the two keys are likely be different; some of the considerations are outlined in TCG
“TPM 2.0 Keys for Device Identity and Attestation” <xref target="Platform-DevID-TPM-2.0"/>.</t>

<t>The TCG TPM 2.0 Keys document <xref target="Platform-DevID-TPM-2.0"/> specifies further conventions for these keys:</t>

<t><list style="symbols">
  <t>When separate Identity and Attestation keys are used, the Attestation
Key (AK) and its X.509 certificate should parallel the DevID, with the same
device ID information as the DevID certificate (that is, the same Subject Name
and Subject Alt Name, even though the key pairs are different).  This allows
a quote from the device, signed by an AK, to be linked directly to the
device that provided it, by examining the corresponding AK certificate.  If the
Subject and Subject Alt Names in the AK certificate don’t match the corresponding DevID certifcate, or 
they’re  signed by differing authorities the Verifier may signal the detection of an Asokan-style man-in-the-middle attack (see <xref target="mitm"/>).</t>
  <t>Network devices that are expected to use secure zero touch provisioning as
specified in <xref target="RFC8572"/>)
MUST be shipped by the manufacturer with pre-provisioned keys (Initial DevID and Initial AK,
called IDevID and IAK).  IDevID and IAK certificates MUST both be signed by the Endorser 
(typically the device manufacturer).  Inclusion of an IDevID and IAK by a vendor does not
preclude a mechanism whereby an administrator can define Local Identity and
Attestation Keys (LDevID and LAK) if desired.</t>
</list></t>

</section>
<section anchor="riv-information-flow" title="RIV Information Flow">

<t>RIV workflow for network equipment is organized around a simple use case
where a network operator wishes to verify the integrity of software installed
in specific, fielded devices.  This use case implies several components:</t>

<t><list style="numbers">
  <t>The Attester, the device which the network operator wants to examine.</t>
  <t>A Verifier (which might be a network management station) somewhere separate
  from the Device that will retrieve the signed evidence and measurement logs, and analyze them to pass
  judgment on the security posture of the device.</t>
  <t>A Relying Party, which can act on Attestation Results.  Interaction between the Relying Party and the
  Verifier is considered out of scope for RIV.</t>
  <t>Signed Reference Integrity Manifests (RIMs),
containing Reference Values, can
  either be created by the device manufacturer
  and shipped along with the device as part of its software image, or alternatively,
  could be obtained several other ways (direct to the Verifier from the
  manufacturer, from a third party, from the owner’s observation of what’s
  thought to be a “known good system”, etc.).  Retrieving RIMs from the device
  itself allows attestation to be done in systems that may not have access
  to the public internet, or by other devices that are not management stations
  per se (e.g., a peer device; see <xref target="RIM-policy"/>).  If Reference Values are obtained from
  multiple sources, the Verifier may need to evaluate the relative level of
  trust to be placed in each source in case of a discrepancy.</t>
</list></t>

<t>These components are illustrated in <xref target="RIV-Reference-Configuration"/>.</t>

<t>A more-detailed taxonomy of terms is given in <xref target="I-D.ietf-rats-architecture"/></t>

<figure title="RIV Reference Configuration for Network Equipment" anchor="RIV-Reference-Configuration"><artwork align="left"><![CDATA[
+----------------+        +-------------+        +---------+--------+
|Reference Value |        | Attester    | Step 1 | Verifier|        |
|Provider        |        | (Device     |<-------| (Network| Relying|
|(Device         |        | under       |------->| Mngmt   | Party  |
|Manufacturer    |        | attestation)| Step 2 | Station)|        |
|or other        |        |             |        |         |        |
|authority)      |        |             |        |         |        |
+----------------+        +-------------+        +---------+--------+
       |                                             /\
       |                  Step 0                      |
       -----------------------------------------------

]]></artwork></figure>

<t><list style="symbols">
  <t>In Step 0, The Reference Value Provider (the device manufacturer or other authority) makes 
one or more Reference Integrity Manifests (RIMs), corresponding to the software image expected to be found on the device, signed by the Reference Value Provider, available to the Verifier 
(see <xref target="RIM-policy"/> for “in-band” and “out of band” ways to make this happen).</t>
  <t>In Step 1, 
the Verifier (Network Management Station), on behalf of a Relying Party, requests Identity,
Measurement Values, and possibly RIMs, from the Attester.</t>
  <t>In Step 2, the
Attester responds to the request by providing a DevID, quotes (measured values, signed by the Attester),
and optionally RIMs.</t>
</list></t>

<t>To achieve interoperability, the following standards components SHOULD be used:</t>

<t><list style="numbers">
  <t>TPM Keys MUST be configured according to <xref target="Platform-DevID-TPM-2.0"/>, or <xref target="Platform-ID-TPM-1.2"/>.</t>
  <t>For devices using UEFI and Linux, measurements of firmware and bootable modules SHOULD be taken according to TCG PC Client <xref target="PC-Client-BIOS-TPM-1.2"/> or <xref target="PC-Client-BIOS-TPM-2.0"/>, and Linux IMA <xref target="IMA"/></t>
  <t>Device Identity MUST be managed as specified in IEEE 802.1AR Device Identity certificates <xref target="IEEE-802-1AR"/>, with keys protected by TPMs.</t>
  <t>Attestation logs SHOULD be formatted according to the Canonical Event Log format <xref target="Canonical-Event-Log"/>, although other specialized formats may be used.  UEFI-based systems MAY use the TCG UEFI BIOS event log <xref target="EFI-TPM"/>.</t>
  <t>Quotes are retrieved from the TPM according to TCG TAP Information Model <xref target="TAP"/>.  While the TAP IM gives a protocol-independent description of the data elements involved, it’s important to note that quotes from the TPM are signed inside the TPM, so MUST be retrieved in a way that does not invalidate the signature, as specified in <xref target="I-D.ietf-rats-yang-tpm-charra"/>, to preserve the trust model.  (See <xref target="security-cons"/> Security Considerations).</t>
  <t>Reference Values SHOULD be encoded as SWID or CoSWID tags, as defined in
  the TCG RIM document <xref target="RIM"/>, compatible with NIST IR 8060 <xref target="NIST-IR-8060"/> and the IETF CoSWID draft <xref target="I-D.ietf-sacm-coswid"/>.  See <xref target="RIM-section"/>.</t>
</list></t>

</section>
<section anchor="riv-simplifying-assumptions" title="RIV Simplifying Assumptions">

<t>This document makes the following simplifying assumptions to reduce complexity:</t>

<t><list style="symbols">
  <t>The product to be attested MUST be shipped with an IEEE 802.1AR Device Identity and an Initial
Attestation Key (IAK) with certificate.  The IAK certificate MUST contain the same identity
information as the DevID (specifically, the same Subject Name and Subject
Alt Name, signed by the manufacturer), but it’s a type of key that can be
used to sign a TPM Quote, but not other objects (i.e., it’s marked as a TCG “Restricted” key; 
this convention is described in 
“TPM 2.0 Keys for Device Identity and Attestation” <xref target="Platform-DevID-TPM-2.0"/>). For network equipment, which is generally non-privacy-sensitive, shipping
a device with both an IDevID and an IAK already provisioned substantially
simplifies initial startup. Privacy-sensitive applications may use the TCG
Platform Certificate or other procedures to install identity credentials
into the device after manufacture.</t>
  <t>The product MUST be equipped with a Root of Trust for Measurement (RTM), Root of Trust
for Storage and Root of Trust for Reporting (as defined in <xref target="SP800-155"/>) that are
capable of conforming to TCG Trusted Attestation Protocol (TAP) Information Model <xref target="TAP"/>.</t>
  <t>The authorized software supplier MUST make available Reference Values
in the form of signed SWID or CoSWID tags <xref target="I-D.ietf-sacm-coswid"/>, <xref target="SWID"/>,
as described in TCG Reference Integrity Measurement Manifest Information Model <xref target="RIM"/>.</t>
</list></t>

<section anchor="RIM-section" title="Reference Integrity Manifests (RIMs)">

<t><xref target="I-D.ietf-rats-yang-tpm-charra"/> focuses on collecting and transmitting evidence in
the form of PCR measurements and attestation logs.  But the critical part
of the process is enabling the Verifier to decide whether the measurements
are “the right ones” or not.</t>

<t>While it must be up to network administrators to decide what they want on
their networks, the software supplier should supply the Reference Values, in 
signed Reference Integrity Manifests, that
may be used by a Verifier to determine if evidence shows known good, known
bad or unknown software configurations.</t>

<t>In general, there are two kinds of reference measurements:</t>

<t><list style="numbers">
  <t>Measurements of early system startup (e.g., BIOS, boot loader, OS kernel)
are essentially single-threaded, and executed exactly once, in a known sequence,
before any results could be reported.  In this case, while the method for
computing the hash and extending relevant PCRs may be complicated, the net
result is that the software (more likely, firmware) vendor will have one
known good PCR value that “should” be present in the relevant PCRs after the box has
booted.  In this case, the signed reference measurement could simply list the
expected hashes for the given version.  However, a RIM that contains the
intermediate hashes can be useful in debugging cases where the expected final hash
is not the one reported.</t>
  <t>Measurements taken later in operation of the system, once an OS has started
(for example, Linux IMA <xref target="IMA"/>), may be more complex, with unpredictable “final”
PCR values.  In this case, the Verifier must have enough information to reconstruct
the expected PCR values from logs and signed reference measurements from
a trusted authority.</t>
</list></t>

<t>In both cases, the expected values can be expressed as signed SWID or CoSWID tags,
but the SWID structure in the second case is somewhat more complex, as reconstruction of the extended hash in a PCR may involve thousands of files and other objects.</t>

<t>TCG has published an information model defining elements of Reference Integrity
Manifests under the title TCG Reference Integrity Manifest Information Model <xref target="RIM"/>.  This information model outlines how SWID tags should be structured to allow attestation, and defines “bundles” of SWID tags that may be needed to describe a complete software release.  The RIM contains metadata relating to the software release it belongs to, plus hashes for each individual file or other object that could be attested.</t>

<t>TCG has also published the PC Client Reference Integrity Measurement specification <xref target="PC-Client-RIM"/>, which focuses on a SWID-compatible format suitable for expressing expected measurement values in the specific case of a UEFI-compatible BIOS, where the SWID focus on files and file systems is not a direct fit.  While the PC Client RIM is not directly applicable to network equipment, many vendors do use a conventional UEFI BIOS to launch their network OS.</t>

</section>
<section anchor="attestation-logs" title="Attestation Logs">

<t>Quotes from a TPM can provide evidence of the state of a device up to the time
the evidence was recorded, but to make sense of the quote in most cases an
event log that identifies which software modules contributed which values to the quote
during startup MUST also be provided.  The log MUST contain enough information
to demonstrate its integrity by allowing exact reconstruction of the digest
conveyed in the signed quote (that is, calculating the hash of all the hashes in the
log should produce the same values as contained in the PCRs; if they don’t match, the log
may have been tampered with.  See <xref target="using-tpm"/>).</t>

<t>There are multiple event log formats which may be supported as viable formats of Evidence between the Attester and Verifier:</t>

<t><list style="symbols">
  <t>IMA Event log file exports <xref target="IMA"/></t>
  <t>TCG UEFI BIOS event log (TCG EFI Platform Specification for TPM Family 1.1 or
1.2, Section 7) <xref target="EFI-TPM"/></t>
  <t>TCG Canonical Event Log <xref target="Canonical-Event-Log"/></t>
</list></t>

<t>Attesters which use UEFI BIOS and Linux SHOULD use TCG Canonical Event Log <xref target="Canonical-Event-Log"/> and TCG UEFI BIOS event log <xref target="EFI-TPM"/>, although the CHARRA YANG model <xref target="I-D.ietf-rats-yang-tpm-charra"/> has no dependence on the format of the log.</t>

</section>
</section>
</section>
<section anchor="standards-components" title="Standards Components">

<section anchor="prerequisites-for-riv" title="Prerequisites for RIV">

<t>The Reference Interaction Model for Challenge-Response-based Remote Attestation (<xref target="I-D.birkholz-rats-reference-interaction-model"/>)
is based on the standard roles defined in <xref target="I-D.ietf-rats-architecture"/>.  However additional prerequisites have been established to allow for interoperable RIV use case implementations.  These prerequisites are intended to provide sufficient context information so that the Verifier can acquire and evaluate measurements collected by the Attester.</t>

<section anchor="unique-device-identity" title="Unique Device Identity">

<t>A secure Device Identity (DevID) in the form of an IEEE 802.1AR DevID certificate <xref target="IEEE-802-1AR"/> MUST be provisioned in the Attester’s TPMs.</t>

</section>
<section anchor="keys" title="Keys">

<t>The Attestation Key (AK) and certificate MUST also be provisioned on the Attester according to <xref target="Platform-DevID-TPM-2.0"/>, <xref target="PC-Client-BIOS-TPM-1.2"/>, or <xref target="Platform-ID-TPM-1.2"/>.</t>

<t>The Attester’s TPM Keys MUST be associated with the DevID on the Verifier (see <xref target="Platform-DevID-TPM-2.0"/> and <xref target="security-cons"/> Security Considerations, below).</t>

</section>
<section anchor="RIM-policy" title="Appraisal Policy for Evidence">

<t>The Verifier MUST obtain trustworthy Reference Values (encoded as SWID or CoSWID tags <xref target="I-D.birkholz-yang-swid"/>). These reference measurements will eventually be compared to signed PCR Evidence (‘quotes’) acquired from an Attester’s TPM using Attestation Policies chosen by the administrator or owner of the device.</t>

<t>This document does not specify the format or contents for the Appraisal Policy for Evidence, but Reference Values may be acquired in one of two ways:</t>

<t><list style="numbers">
  <t>a Verifier may obtain reference measurements directly from an Reference Value Provider chosen by the Verifier administrator (e.g., through a web site).</t>
  <t>Signed reference measurements may be distributed by the Reference Value Provider to the Attester, as part of a software update.  From there, the reference measurement may be acquired by the Verifier.</t>
</list></t>

<t>In either case, the Verifier Owner MUST select the source of trusted Reference Values through the Appraisal Policy for Evidence.</t>

<figure title="Appraisal Policy for Evidence Prerequisites" anchor="Appraisal-Prerequisites"><artwork align="left"><![CDATA[
******************         .-------------.         .-----------.
*Reference Value *         | Attester    |         | Verifier/ |
*Provider        *         |             |         | Relying   |
*(Device         *----2--->| (Network    |----2--->| Party     |
*config          *         |  Device)    |         |(Ntwk Mgmt |
*Authority)      *         |             |         |  Station) |
******************         '-------------'         '-----------'
        |                                             ^
        |                                             |
        '----------------1----------------------------'
]]></artwork></figure>

<t>In either case the Reference Values must be generated, acquired and delivered in a secure way, including reference measurements of firmware and bootable modules taken according to TCG PC Client <xref target="PC-Client-BIOS-TPM-2.0"/> and Linux IMA <xref target="IMA"/>.  Reference Values MUST be encoded as SWID or CoSWID tags, signed by the device manufacturer, as defined in the TCG RIM document <xref target="RIM"/>, compatible with NIST IR 8060 <xref target="NIST-IR-8060"/> or the IETF CoSWID draft <xref target="I-D.ietf-sacm-coswid"/>.</t>

</section>
</section>
<section anchor="reference-model-for-challenge-response" title="Reference Model for Challenge-Response">

<t>Once the prerequisites for RIV are met, a Verifier is able to acquire Evidence from an Attester.  The following diagram illustrates a RIV information flow between a Verifier and an Attester, 
derived from Section 8.1 of <xref target="I-D.birkholz-rats-reference-interaction-model"/>.  Event times shown correspond to the time types described within Appendix A of <xref target="I-D.ietf-rats-architecture"/>:</t>

<figure title="IETF Attestation Information Flow" anchor="IETF-Attestation-Information-Flow"><artwork align="left"><![CDATA[
.----------.                            .--------------------------.
| Attester |                            | Relying Party / Verifier |
'--------- '                            '--------------------------'
   time(VG)                                                    |
valueGeneration(targetEnvironment)                             |
     | => claims                                               |
     |                                                         |
     | <-----------requestEvidence(nonce, PcrSelection)----time(NS)
     |                                                         |
   time(EG)                                                    |
evidenceGeneration(nonce, PcrSelection, collectedClaims)       |
     | => SignedPcrEvidence(nonce, PcrSelection)               |
     | => LogEvidence(collectedClaims)                         |
     |                                                         |
     | returnSignedPcrEvidence-------------------------------> |
     | returnLogEvidence-------------------------------------> |
     |                                                         |
     |                                                  time(RG,RA)
     |    evidenceAppraisal(SignedPcrEvidence, eventLog, refClaims)
     |                                    attestationResult <= |
     ~                                                         ~
     |                                                     time(RX)
]]></artwork></figure>

<t><list style="symbols">
  <t>Step 1 (time(VG)): One or more Attesting Network Device PCRs are extended with measurements.  RIV provides no direct link between 
the time at which the event takes place and the time that it’s attested, although streaming attestation as in <xref target="I-D.birkholz-rats-network-device-subscription"/> could.</t>
  <t>Step 2 (time(NS)): The Verifier generates a unique random nonce (“number used once”), and makes a request attestation data for one or more PCRs from an Attester.  For interoperability, this MUST be accomplished via a YANG <xref target="RFC7950"/> interface that implements the TCG TAP model (e.g., YANG Module for Basic Challenge-Response-based Remote Attestation Procedures <xref target="I-D.ietf-rats-yang-tpm-charra"/>).</t>
  <t>Step 3 (time(EG)): On the Attester, measured values are retrieved from the Attester’s TPM. This requested PCR evidence,
along with the Verifier’s nonce, called a Quote, is signed by the Attestation Key (AK) associated with the DevID.  Quotes are retrieved according to TCG TAP Information Model <xref target="TAP"/>.  At the same time, the Attester collects log evidence showing the values have been extended into that PCR.  <xref target="using-tpm"/> gives more detail on how this works.</t>
  <t>Step 4: Collected Evidence is passed from the Attester to the Verifier</t>
  <t>Step 5 (time(RG,RA)): The Verifier reviews the Evidence and takes action as needed.  As the interaction between Relying Party and Verifier is out of scope for RIV, this can be described as one step.  <list style="symbols">
      <t>If the signature covering TPM Evidence is not correct, the device SHOULD NOT be trusted.</t>
      <t>If the nonce in the response doesn’t match the Verifier’s nonce, the response may be a replay, and device SHOULD NOT be trusted.</t>
      <t>If the signed PCR values do not match the set of log entries which have extended a particular PCR, the device SHOULD NOT be trusted.</t>
      <t>If the log entries that the Verifier considers important do not match known good values, the device SHOULD NOT be trusted.  We note that the process of collecting and analyzing the log can be omitted if the value in the relevant PCR is already a known-good value.</t>
      <t>If the set of log entries are not seen as acceptable by the Appraisal Policy for Evidence, the device SHOULD NOT be trusted.</t>
      <t>If time(RG)-time(NS) is greater than the Appraisal Policy for Evidence’s threshold for assessing freshness, the Evidence is considered stale and SHOULD NOT be trusted.</t>
    </list></t>
</list></t>

<section anchor="transport-and-encoding" title="Transport and Encoding">

<t>Network Management systems may retrieve signed PCR based Evidence as shown in <xref target="IETF-Attestation-Information-Flow"/>, and can be accomplished via NETCONF or RESTCONF, with XML, JSON, or CBOR encoded Evidence.</t>

<t>Implementations that use NETCONF MUST do so over a TLS or SSH secure tunnel.
Implementations that use RESTCONF transport MUST do so over a TLS or SSH secure tunnel.</t>

<t>Retrieval of Log Evidence SHOULD be done via log interfaces specified in <xref target="I-D.ietf-rats-yang-tpm-charra"/>).</t>

</section>
</section>
<section anchor="peer-to-peer" title="Centralized vs Peer-to-Peer">

<t><xref target="IETF-Attestation-Information-Flow"/> above assumes that the Verifier is trusted, while the Attester is not.  In a Peer-to-Peer application such as two routers negotiating a trust relationship <xref target="I-D.voit-rats-trusted-path-routing"/>, the two peers can each ask the other to prove software integrity.  In this application, the information flow is the same, but each side plays a role both as an Attester and a Verifier.  Each device issues a challenge, and each device responds to the other’s challenge, as shown in <xref target="Peer-to-peer-Information-Flow"/>.  Peer-to-peer challenges, particularly if used to establish a trust relationship between routers, require devices to carry their own signed reference measurements (RIMs).  Devices may also have to carry Appraisal Policy for Evidence for each possible peer device so that each device has everything needed for remote attestation, without having to resort to a central authority.</t>

<figure title="Peer-to-Peer Attestation Information Flow" anchor="Peer-to-peer-Information-Flow"><artwork align="left"><![CDATA[
+---------------+                            +---------------+
| RefVal        |                            | RefVal        |
| Provider A    |                            | Provider B    |
| Firmware      |                            | Firmware      |
| Configuration |                            | Configuration |
| Authority     |                            | Authority     |
|               |                            |               |
+---------------+                            +---------------+
      |                                             |
      |       +------------+        +------------+  |
      |       |            | Step 1 |            |  |   \
      |       | Attester   |<------>| Verifier   |  |   |
      |       |            |<------>|            |  |   |  Router B
      +------>|            | Step 2 |            |  |   |- Challenges
       Step 0A|            |        |            |  |   |  Router A
              |            |------->|            |  |   |
              |- Router A -| Step 3 |- Router B -|  |   /
              |            |        |            |  |
              |            |        |            |  |
              |            | Step 1 |            |  |   \
              | Verifier   |<------>| Attester   |<-+   |  Router A
              |            |<------>|            |      |- Challenges
              |            | Step 2 |            |      |  Router B
              |            |        |            |      |
              |            |<-------|            |      |
              +------------+ Step 3 +------------+      /

]]></artwork></figure>

<t>In this application, each device may need to be equipped with signed RIMs to act as an Attester, and also an Appraisal Policy for Evidence and a selection of trusted X.509 root certificates, to allow the device to act as a Verifier.   An existing link layer protocol such as 802.1X <xref target="IEEE-802.1X"/> or 802.1AE <xref target="IEEE-802.1AE"/>, with Evidence being enclosed over a variant of EAP <xref target="RFC3748"/> or LLDP <xref target="LLDP"/> are suitable methods for such an exchange.</t>

</section>
</section>
<section anchor="privacy-considerations" title="Privacy Considerations">

<t>Network equipment, such as routers, switches and firewalls, has a key role to play in guarding the privacy of individuals using the network.  Network equipment generally adheres to several rules to protect privacy:</t>

<t><list style="symbols">
  <t>Packets passing through the device must not be sent to unauthorized destinations.  For example:  <list style="symbols">
      <t>Routers often act as Policy Enforcement Points, where individual subscribers may be checked for
authorization to access a network.  Subscriber login information must not be released to unauthorized parties.</t>
      <t>Network equipment is often called upon to block access to protected resources from unauthorized users.</t>
    </list></t>
  <t>Routing information, such as the identity of a router’s peers, must not be leaked to unauthorized neighbors.</t>
  <t>If configured, encryption and decryption of traffic must be carried out reliably, while protecting keys and credentials.</t>
</list></t>

<t>Functions that protect privacy are implemented as part of each layer of hardware and software that
makes up the networking device.
In light of these requirements for protecting the privacy of users of the network, the network equipment
must identify itself, and its boot configuration and measured device state (for example, PCR values),
to the equipment’s administrator, so there’s no uncertainty as to what function each device and
configuration is configured to carry out. Attestation is a component that allows the administrator to ensure that the network
provides individual and peer privacy guarantees, even though the device itself may not have a 
right to keep its identity secret.</t>

<t>RIV specifically addresses the collection of information from enterprise network devices by authorized 
agents of the enterprise.  As such, privacy is a fundamental concern for those deploying this solution, given EU
GDPR, California CCPA, and many other privacy regulations.  The enterprise SHOULD implement
and enforce their duty of care.</t>

<t>See <xref target="NetEq"/> for more context on privacy in networking devices.</t>

</section>
<section anchor="security-cons" title="Security Considerations">

<t>Attestation Evidence from the RIV procedure are subject to a number of attacks:</t>

<t><list style="symbols">
  <t>Keys may be compromised.</t>
  <t>A counterfeit device may attempt to impersonate (spoof) a known authentic device.</t>
  <t>Man-in-the-middle attacks may be used by a counterfeit device to attempt to deliver
responses that originate in an actual authentic device.</t>
  <t>Replay attacks may be attempted by a compromised device.</t>
</list></t>

<section anchor="keys-used-in-riv" title="Keys Used in RIV">
<t>Trustworthiness of RIV attestation depends strongly on the validity of keys used for identity
and attestation reports.  RIV takes full advantage of TPM capabilities to ensure that evidence can be trusted.</t>

<t>Two sets of key-pairs are relevant to RIV attestation:</t>

<t><list style="symbols">
  <t>A DevID key-pair is used to certify the identity of the device in which the TPM is installed.</t>
  <t>An Attestation Key-pair (AK) key is used to certify attestation Evidence (called ‘quotes’ in TCG documents),
used to provide evidence for integrity of the software on the device</t>
</list></t>

<t>TPM practices usually require that these keys be different, as a way of ensuring that a general-purpose
signing key cannot be used to spoof an attestation quote.</t>

<t>In each case, the private half of the key is known only to the TPM, and cannot be
retrieved externally, even by a trusted party.  To ensure that’s the case,
specification-compliant private/public key-pairs are generated inside the TPM, where they’re never
exposed, and cannot be extracted (See <xref target="Platform-DevID-TPM-2.0"/>).</t>

<t>Keeping keys safe is a critical enabler of trustworthiness, but it’s just part of attestation security; knowing which keys are bound
to the device in question is just as important in an environment where private keys are never exposed.</t>

<t>While there are many ways to manage keys in a TPM (see <xref target="Platform-DevID-TPM-2.0"/>), RIV includes
support for “zero touch” provisioning (also known as zero-touch onboarding) of fielded
devices (e.g., Secure ZTP, <xref target="RFC8572"/>), where keys which have predictable trust properties are
provisioned by the device vendor.</t>

<t>Device identity in RIV is based on IEEE 802.1AR Device Identity (DevID). This specification provides several elements:</t>

<t><list style="symbols">
  <t>A DevID requires a unique key pair for each device, accompanied by an X.509 certificate,</t>
  <t>The private portion of the DevID key is to be stored in the device, in a manner that provides confidentiality (Section 6.2.5 <xref target="IEEE-802-1AR"/>)</t>
</list></t>

<t>The X.509 certificate contains several components:</t>

<t><list style="symbols">
  <t>The public part of the unique DevID key assigned to that device allows a challenge of identity.</t>
  <t>An identifying string that’s unique to the manufacturer of the device.  This is normally the
serial number of the unit, which might also be printed on a label on the device.</t>
  <t>The certificate must be signed by a key traceable to the manufacturer’s root key.</t>
</list></t>

<t>With these elements, the device’s manufacturer and serial number can be identified by analyzing the
DevID certificate plus the chain of intermediate certificates leading back to the manufacturer’s root
certificate.  As is conventional in TLS or SSH connections, a random nonce must be signed by the device
in response to a challenge,
proving possession of its DevID private key.</t>

<t>RIV uses the DevID to validate a TLS or SSH connection to the device as the attestation session begins.  Security of
this process derives from TLS or SSH security, with the DevID providing proof that the session terminates on
the intended device. See <xref target="RFC8446"/>, <xref target="RFC4253"/>.</t>

<t>Evidence of software integrity is delivered in the form of a quote signed by the TPM
itself.  Because the contents of the quote are signed inside the TPM, any external
modification (including reformatting to a different data format) after measurements have been taken will be detected
as tampering.  An unbroken chain of trust is essential to ensuring that blocks of code that are taking
measurements have been verified before execution (see <xref target="RIV-Attestation-Model"/>).</t>

<t>Requiring measurements of the operating software to be signed by a key known only to the TPM also
removes the need to trust the device’s operating software (beyond the first measurement in the RTM; see below); any
changes to the quote, generated and signed by the TPM itself, made by malicious device software, or in
the path back to the Verifier, will invalidate the signature on the quote.</t>

<t>A critical feature of the YANG model described in <xref target="I-D.ietf-rats-yang-tpm-charra"/> is the ability to carry TPM data structures in their native format, without requiring any changes to the structures as they were signed and delivered by the TPM.  While alternate methods of conveying TPM quotes could compress out redundant information, or add an additional layer of signing using external keys, the implementation MUST preserve the TPM signing, so that tampering anywhere in the path between the TPM itself and the Verifier can be detected.</t>

</section>
<section anchor="mitm" title="Prevention of Spoofing and Man-in-the-Middle Attacks">

<t>Prevention of spoofing attacks against attestation systems is also important.  There are two cases to consider:</t>

<t><list style="symbols">
  <t>The entire device could be spoofed. If the Verifier goes to appraise a specific Attester, it might be redirected to a different Attester.  Use of the 802.1AR Device Identity (DevID) in the TPM ensures that the Verifier’s TLS or SSH session is in fact terminating on the right device.</t>
  <t>A device with a compromised OS could return a fabricated quote providing spoofed attestation Evidence.</t>
</list></t>

<t>Protection against spoofed quotes from a device with valid identity is a bit more complex.
An identity key must be available to sign any kind of nonce or hash offered by the Verifier,
and consequently, could be used to sign a fabricated quote.  To block a spoofed Attestation
Result, the quote generated inside the TPM must be signed by
a key that’s different from the DevID, called an Attestation Key (AK).</t>

<t>Given separate Attestation and DevID keys, the
binding between the AK and the same device must also be proven to
prevent a man-in-the-middle attack (e.g., the ‘Asokan Attack’ <xref target="RFC6813"/>).</t>

<t>This is accomplished in RIV through use of an AK certificate with the same elements as the DevID
(same manufacturer’s serial number, signed by the same manufacturer’s key), but containing
the device’s unique AK public key instead of the DevID public key.</t>

<t>The TCG document TPM 2.0 Keys for Device Identity and Attestation <xref target="Platform-DevID-TPM-2.0"/> specifies
OIDs for Attestation Certificates that allow the CA to mark a key as specifically known to be 
an Attestation key.</t>

<t>These two key-pairs and certificates are used together:</t>

<t><list style="symbols">
  <t>The DevID is used to validate a TLS connection terminating on the device with a known serial number.</t>
  <t>The AK is used to sign attestation quotes, providing proof that the attestation
evidence comes from the same device.</t>
</list></t>

</section>
<section anchor="replay-attacks" title="Replay Attacks">

<t>Replay attacks, where results of a previous attestation are submitted in response to subsequent requests,
are usually prevented by inclusion of a random nonce in the request to the TPM
for a quote.  Each request from the Verifier includes a new random number (a nonce). The resulting
quote signed by the TPM contains the same nonce, allowing the Verifier to determine
freshness, (i.e., that the resulting quote was generated in response to the Verifier’s specific request).
Time-Based Uni-directional Attestation <xref target="I-D.birkholz-rats-tuda"/> provides an alternate mechanism
to verify freshness without requiring a request/response cycle.</t>

</section>
<section anchor="owner-signed-keys" title="Owner-Signed Keys">

<t>Although device manufacturers MUST pre-provision devices with easily verified DevID and AK certificates
if zero-touch provisioning such as described in <xref target="RFC8572"/> is to be supported,
use of those credentials is not mandatory.  IEEE 802.1AR incorporates the idea of an Initial Device ID
(IDevID), provisioned by the manufacturer, and a Local Device ID (LDevID) provisioned by the owner of
the device.  RIV and <xref target="Platform-DevID-TPM-2.0"/> extends that concept by defining an Initial Attestation Key (IAK) and Local Attestation
Key (LAK) with the same properties.</t>

<t>Device owners can use any method to provision the Local credentials.</t>

<t><list style="symbols">
  <t>TCG document <xref target="Platform-DevID-TPM-2.0"/> shows how the initial Attestation
keys can be used to certify LDevID and LAK keys.  Use of the LDevID and LAK allows the device owner
to use a uniform identity structure across device types from multiple manufacturers (in the same way
that an “Asset Tag” is used by many enterprises to identify devices they own).  TCG document
<xref target="Provisioning-TPM-2.0"/> also contains guidance on provisioning Initial and Local identity keys in TPM 2.0.</t>
  <t>Device owners, however, can use any other mechanism they want to assure themselves that local identity
certificates are inserted into the intended device, including physical inspection and programming
in a secure location, if they prefer to avoid placing trust in the manufacturer-provided keys.</t>
</list></t>

<t>Clearly, local keys can’t be used for secure Zero Touch provisioning; installation of the local keys
can only be done by some process that runs before the device is installed for network operation.</t>

<t>On the other end of the device life cycle, provision should be made to wipe local keys when a device
is decommissioned, to indicate that the device is no longer owned by the enterprise.  The manufacturer’s
Initial identity keys must be preserved, as they contain no information that’s not already printed on
the device’s serial number plate.</t>

</section>
<section anchor="other-factors-for-trustworthy-operation" title="Other Factors for Trustworthy Operation">

<t>In addition to trustworthy provisioning of keys, RIV depends on a number of other factors for trustworthy operation.</t>

<t><list style="symbols">
  <t>Secure identity depends on mechanisms to prevent per-device secret keys from being compromised.  The TPM
provides this capability as a Root of Trust for Storage.</t>
  <t>Attestation depends on an unbroken chain of measurements, starting from the very first 
measurement.  See <xref target="using-tpm"/> for background on TPM practices.</t>
  <t>That first measurement is made by code called the Root of Trust for Measurement, typically done by trusted
firmware stored in boot flash.  Mechanisms for maintaining the trustworthiness of the RTM are out of
scope for RIV, but could include immutable firmware, signed updates, or a vendor-specific hardware
verification technique.    See <xref target="root-of-trust"/> for background on roots of trust.</t>
  <t>The device owner SHOULD provide some level of physical defense for the device.  If a TPM that has already been programmed
with an authentic DevID is stolen and inserted into a counterfeit device, attestation of that counterfeit
device may become indistinguishable from an authentic device.</t>
</list></t>

<t>RIV also depends on reliable Reference Values, as expressed by the RIM <xref target="RIM"/>.  The definition of
trust procedures for RIMs is out of scope for RIV, and the device owner is free to use any policy to validate
a set of reference measurements.  RIMs may be conveyed out-of-band or in-band, as part of the attestation
process (see <xref target="RIM-policy"/>).  But for embedded devices, where software is usually shipped as a self-contained
package, RIMs signed by the manufacturer and delivered in-band may be more convenient for the device owner.</t>

<t>The validity of RIV attestation results is also influenced by procedures used to create Reference Values:</t>

<t><list style="symbols">
  <t>While the RIM itself is signed, supply-chains SHOULD be carefully scrutinized to ensure that the values are 
not subject to unexpected manipulation prior to signing.  Insider-attacks against code bases and build chains
are particularly hard to spot.</t>
  <t>Designers SHOULD guard against hash collision attacks.  Reference Integrity Manifests often give hashes for large objects
of indeterminate size; if one of the measured objects can be replaced with an implant engineered to produce
the same hash, RIV will be unable to detect the substitution.  TPM1.2 uses SHA-1 hashes only, which have been
shown to be susceptible to collision attack.  TPM2.0 will produce quotes with SHA-256, which so far has resisted
such attacks.  Consequently, RIV implementations SHOULD use TPM2.0.</t>
</list></t>

</section>
</section>
<section anchor="conclusion" title="Conclusion">

<t>TCG technologies can play an important part in the implementation of Remote
Integrity Verification.  Standards for many of the components needed for
implementation of RIV already exist:</t>

<t><list style="symbols">
  <t>Platform identity can be based on IEEE 802.1AR Device Identity, coupled with
careful supply-chain management by the manufacturer.</t>
  <t>Complex supply chains can be certified using TCG Platform Certificates <xref target="Platform-Certificates"/>.</t>
  <t>The TCG TAP mechanism couple with <xref target="I-D.ietf-rats-yang-tpm-charra"/> can be used to retrieve attestation evidence.</t>
  <t>Reference Values must be conveyed from the software authority (e.g.,
the manufacturer) in Reference Integrity Manifests, to the system in which verification will take place.  IETF and TCG
SWID and CoSWID work (<xref target="I-D.birkholz-yang-swid"/>, <xref target="RIM"/>)) forms the basis for this function.</t>
</list></t>

</section>
<section anchor="IANA" title="IANA Considerations">

<t>This memo includes no request to IANA.</t>

</section>
<section anchor="acknowledgements" title="Acknowledgements">

<t>The authors wish to thank numerous reviewers for generous assistance, including William Bellingrath, Mark Baushke, Ned Smith,
Henk Birkholz, Tom Laffey, Dave Thaler, Wei Pan, Michael Eckel, Thomas Hardjono, Bill Sulzen, Monty Wiseman,
Kathleen Moriarty, Nancy Cam-Winget and Shwetha Bhandari</t>

</section>
<section anchor="appendix" title="Appendix">

<section anchor="using-tpm" title="Using a TPM for Attestation">

<t>The Trusted Platform Module and surrounding ecosystem provide three interlocking capabilities to enable secure collection 
of evidence from a remote device, Platform Configuration Registers (PCRs), a Quote mechanism, and a standardized Event Log.</t>

<t>Each TPM has at least eight and at most twenty-four PCRs (depending on the profile and vendor choices), each one large 
enough to hold one hash value (SHA-1, SHA-256, and other hash algorithms can 
be used, depending on TPM version).  PCRs can’t be accessed directly from outside the chip, but the TPM 
interface provides a way to “extend” a new security measurement hash into any PCR, a process by which the existing value 
in the PCR is hashed with the new security measurement hash, and the result placed back into the same PCR.  The result 
is a composite fingerprint of all the security measurements extended into each PCR since the system was reset.</t>

<t>Every time a PCR is extended, an entry should be added to the corresponding Event Log.  Logs contain the security 
measurement hash plus informative fields offering hints as to which event generated the security measurement. 
The Event Log itself is protected against accidental manipulation, but it is implicitly tamper-evident – any 
verification process can read the security measurement hash from the log events, compute the composite value 
and compare that to what ended up in the PCR.   If there’s no discrepancy, the logs do provide an accurate 
view of what was placed into the PCR.</t>

<t>Note that the composite hash-of-hashes recorded in PCRs is order-dependent, resulting in different PCR values for different 
ordering of the same set of events (e.g. Event A followed by Event B yields a different PCR value than B followed by A).
For single-threaded code, where both the events and their order are fixed, a Verifier may validate a single PCR value, and use the log only to diagnose a mismatch from Reference Values.  However, operating system code is usually 
non-deterministic, meaning that there may never be a single “known good” PCR value.  In this case, the Verifier may have
to verify that the log is correct, and then analyze each item in the log to determine if it represents an authorized event.</t>

<t>In a conventional TPM Attestation environment, the first measurement must be made and extended into the TPM by trusted 
device code (called the Root of Trust for Measurement, RTM).  That first measurement should cover the segment of 
code that is run immediately after the RTM, which then measures the next code segment before running it, and so on, 
forming an unbroken chain of trust.  See <xref target="TCGRoT"/> for more on Mutable vs Immutable roots of trust.</t>

<t>The TPM provides another mechanism called a Quote that can read the current value of the PCRs and package them, 
along with the Verifier’s nonce, into a TPM-specific data structure signed by an Attestation private key, known 
only to the TPM.</t>

<t>As noted above in <xref target="security-cons"/> Security Considerations, it’s important to note that the Quote data structure is signed inside the TPM.  The trust model is preserved by retrieving the Quote in a way that does not invalidate the signature, 
as specified in <xref target="I-D.ietf-rats-yang-tpm-charra"/>.</t>

<t>The Verifier uses the Quote and Log together.  The Quote contains the composite hash of the complete sequence 
of security measurement hashes, signed by the TPM’s private Attestation Key.  The Log contains a record of each
measurement extended into the TPM’s PCRs.  By computing the composite hash of all the measurements, the Verifier
can verify the integrity of the Event Log, even though the Event Log itself is not signed.  Each hash in the validated 
Event Log can then be compared to corresponding expected values in the set of Reference Values to 
validate overall system integrity.</t>

<t>A summary of information exchanged in obtaining quotes from TPM1.2 and TPM2.0 can be found in <xref target="TAP"/>, Section 4.
Detailed information about PCRs and Quote data structures can be found in <xref target="TPM1.2"/>, <xref target="TPM2.0"/>.  Recommended log 
formats include <xref target="PC-Client-BIOS-TPM-2.0"/> and <xref target="Canonical-Event-Log"/>.</t>

</section>
<section anchor="root-of-trust" title="Root of Trust for Measurement">

<t>The measurements needed for attestation require that the device being attested
is equipped with a Root of Trust for Measurement, that is, some trustworthy
mechanism that can compute the first measurement in the chain of trust required
to attest that each stage of system startup is verified, a Root of Trust for Storage (i.e., 
the TPM PCRs) to record the results, and a Root of Trust
for Reporting to report the results <xref target="TCGRoT"/>, <xref target="SP800-155"/>, <xref target="SP800-193"/>.</t>

<t>While there are many complex aspects of a Root of Trust, two aspects that
are important in the case of attestation are:</t>

<t><list style="symbols">
  <t>The first measurement computed by the Root of Trust for Measurement, and stored
in the TPM’s Root of Trust for Storage, must be assumed to be correct.</t>
  <t>There must not be a way to reset the Root of Trust for Storage without re-entering
the Root of Trust for Measurement code.</t>
</list></t>

<t>The first measurement must be computed by code that is implicitly trusted; if that
first measurement can be subverted, none of the remaining measurements can
be trusted. (See <xref target="SP800-155"/>)</t>

<t>It’s important to note that the trustworthiness of the RTM code cannot be assured by 
the TPM or TPM supplier – code or procedures external to the TPM must guarantee the 
security of the RTM.</t>

</section>
<section anchor="layering-model-for-network-equipment-attester-and-verifier" title="Layering Model for Network Equipment Attester and Verifier">

<t>Retrieval of identity and attestation state uses one protocol stack, while
retrieval of Reference Values uses a different set of protocols.  Figure
5 shows the components involved.</t>

<figure title="RIV Protocol Stacks" anchor="RIV-Protocol-Stacks"><artwork align="left"><![CDATA[
+-----------------------+              +-------------------------+
|                       |              |                         |
|       Attester        |<-------------|        Verifier         |
|       (Device)        |------------->|   (Management Station)  |
|                       |      |       |                         |
+-----------------------+      |       +-------------------------+
                               |
           -------------------- --------------------
           |                                        |
-------------------------------    ---------------------------------
|Reference Values             |    |         Attestation           |
-------------------------------    ---------------------------------

********************************************************************
*         IETF Attestation Reference Interaction Diagram           *
********************************************************************

    .......................            .......................
    . Reference Integrity .            .  TAP (PTS2.0) Info  .
    .      Manifest       .            . Model and Canonical .
    .                     .            .     Log Format      .
    .......................            .......................

    *************************  .............. **********************
    * YANG SWID Module      *  . TCG        . * YANG Attestation   *
    * I-D.birkholz-yang-swid*  . Attestation. * Module             *
    *                       *  . MIB        . * I-D.ietf-rats-     *
    *                       *  .            . * yang-tpm-charra    *
    *************************  .............. **********************

    *************************  ************ ************************
    * XML, JSON, CBOR (etc) *  *    UDP   * * XML, JSON, CBOR (etc)*
    *************************  ************ ************************

    *************************               ************************
    *   RESTCONF/NETCONF    *               *   RESTCONF/NETCONF   *
    *************************               ************************

    *************************               ************************
    *       TLS, SSH        *               *       TLS, SSH       *
    *************************               ************************

]]></artwork></figure>

<t>IETF documents are captured in boxes surrounded by asterisks. TCG documents
are shown in boxes surrounded by dots.</t>

</section>
<section anchor="implementation-notes" title="Implementation Notes">

<t><xref target="Component-Status"/> summarizes many of the actions needed to complete an Attestation
system, with links to relevant documents.  While documents are controlled
by several standards organizations, the implied actions required for
implementation are all the responsibility of the manufacturer of the device,
unless otherwise noted.  It should be noted that, while the YANG model is 
RECOMMENDED for attestation, this table identifies an optional SNMP MIB as 
well, <xref target="Attest-MIB"/>.</t>

<figure title="Component Status" anchor="Component-Status"><artwork align="left"><![CDATA[
+------------------------------------------------------------------+
|             Component                           |  Controlling   |
|                                                 | Specification  |
--------------------------------------------------------------------
| Make a Secure execution environment             |   TCG RoT      |
|   o Attestation depends on a secure root of     |   UEFI.org     |
|     trust for measurement outside the TPM, as   |                |
|     well as roots for storage and reporting     |                |
|     inside the TPM.                             |                |
|   o  Refer to TCG Root of Trust for Measurement.|                |
|   o  NIST SP 800-193 also provides guidelines   |                |
|      on Roots of Trust                          |                |
--------------------------------------------------------------------
| Provision the TPM as described in       |[Platform-DevID-TPM-2.0]|
|   TCG documents.                                | TCG Platform   |
|                                                 |   Certificate  |
--------------------------------------------------------------------
| Put a DevID or Platform Cert in the TPM         | TCG TPM DevID  |
|    o Install an Initial Attestation Key at the  | TCG Platform   |
|      same time so that Attestation can work out |   Certificate  |
|      of the box                                 |-----------------
|    o Equipment suppliers and owners may want to | IEEE 802.1AR   |
|      implement Local Device ID as well as       |                |
|      Initial Device ID                          |                |
--------------------------------------------------------------------
| Connect the TPM to the TLS stack                | Vendor TLS     |
|    o  Use the DevID in the TPM to authenticate  | stack (This    |
|       TAP connections, identifying the device   | action is      |
|                                                 | simply         |
|                                                 | configuring TLS|
|                                               | to use the DevID |
|                                               | as its client    |
|                                               | certificate)     |
--------------------------------------------------------------------
| Make CoSWID tags for BIOS/LoaderLKernel objects | IETF CoSWID    |
|    o  Add reference measurements into SWID tags | ISO/IEC 19770-2|
|    o  Manufacturer should sign the SWID tags    | NIST IR 8060   |
|    o  The TCG RIM-IM identifies further         |                |
|       procedures to create signed RIM           |                |
|       documents that provide the necessary      |                |
|       reference information                     |                |
--------------------------------------------------------------------
|  Package the SWID tags with a vendor software   | Retrieve tags  |
|  release                                        | with           |
|    o  A tag-generator plugin such      | draft-birkholz-yang-swid|
|     as [SWID-Gen] can be used                   |----------------|
|                                                 | TCG PC Client  |
|                                                 | RIM            |
--------------------------------------------------------------------
|  Use PC Client measurement definitions          | TCG PC Client  |
|  to define the use of PCRs                      | BIOS           |
|  (although Windows  OS is rare on Networking    |                |
|  Equipment, UEFI BIOS is not)                   |                |
--------------------------------------------------------------------
|  Use TAP to retrieve measurements               |                |
|    o  Map TAP to SNMP                           | TCG SNMP MIB   |
|    o  Map to YANG                               | YANG Module for|
|  Use Canonical Log Format                       |   Basic        |
|                                                 |   Attestation  |
|                                                 | TCG Canonical  |
|                                                 |   Log Format   |
--------------------------------------------------------------------
| Posture Collection Server (as described in IETF |                |
|  SACMs ECP) should request the                  |                |
|  attestation and analyze the result             |                |
| The Management application might be broken down |                |
|  to several more components:                    |                |
|    o  A Posture Manager Server                  |                |
|       which collects reports and stores them in |                |
|       a database                                |                |
|    o  One or more Analyzers that can look at the|                |
|       results and figure out what it means.     |                |
--------------------------------------------------------------------
]]></artwork></figure>

</section>
</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<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="RFC8572" target='https://www.rfc-editor.org/info/rfc8572'>
<front>
<title>Secure Zero Touch Provisioning (SZTP)</title>
<author initials='K.' surname='Watsen' fullname='K. Watsen'><organization /></author>
<author initials='I.' surname='Farrer' fullname='I. Farrer'><organization /></author>
<author initials='M.' surname='Abrahamsson' fullname='M. Abrahamsson'><organization /></author>
<date year='2019' month='April' />
<abstract><t>This document presents a technique to securely provision a networking device when it is booting in a factory-default state.  Variations in the solution enable it to be used on both public and private networks.  The provisioning steps are able to update the boot image, commit an initial configuration, and execute arbitrary scripts to address auxiliary needs.  The updated device is subsequently able to establish secure connections with other systems.  For instance, a device may establish NETCONF (RFC 6241) and/or RESTCONF (RFC 8040) connections with deployment-specific network management systems.</t></abstract>
</front>
<seriesInfo name='RFC' value='8572'/>
<seriesInfo name='DOI' value='10.17487/RFC8572'/>
</reference>



<reference  anchor="RFC8446" target='https://www.rfc-editor.org/info/rfc8446'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<date year='2018' month='August' />
<abstract><t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t><t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t></abstract>
</front>
<seriesInfo name='RFC' value='8446'/>
<seriesInfo name='DOI' value='10.17487/RFC8446'/>
</reference>



<reference  anchor="RFC4253" target='https://www.rfc-editor.org/info/rfc4253'>
<front>
<title>The Secure Shell (SSH) Transport Layer Protocol</title>
<author initials='T.' surname='Ylonen' fullname='T. Ylonen'><organization /></author>
<author initials='C.' surname='Lonvick' fullname='C. Lonvick' role='editor'><organization /></author>
<date year='2006' month='January' />
<abstract><t>The Secure Shell (SSH) is a protocol for secure remote login and other secure network services over an insecure network.</t><t>This document describes the SSH transport layer protocol, which typically runs on top of TCP/IP.  The protocol can be used as a basis for a number of secure network services.  It provides strong encryption, server authentication, and integrity protection.  It may also provide compression.</t><t>Key exchange method, public key algorithm, symmetric encryption algorithm, message authentication algorithm, and hash algorithm are all negotiated.</t><t>This document also describes the Diffie-Hellman key exchange method and the minimal set of algorithms that are needed to implement the SSH transport layer protocol.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4253'/>
<seriesInfo name='DOI' value='10.17487/RFC4253'/>
</reference>



<reference  anchor="RFC7950" target='https://www.rfc-editor.org/info/rfc7950'>
<front>
<title>The YANG 1.1 Data Modeling Language</title>
<author initials='M.' surname='Bjorklund' fullname='M. Bjorklund' role='editor'><organization /></author>
<date year='2016' month='August' />
<abstract><t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols.  This document describes the syntax and semantics of version 1.1 of the YANG language.  YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification.  There are a small number of backward incompatibilities from YANG version 1.  This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t></abstract>
</front>
<seriesInfo name='RFC' value='7950'/>
<seriesInfo name='DOI' value='10.17487/RFC7950'/>
</reference>



<reference  anchor="RFC6241" target='https://www.rfc-editor.org/info/rfc6241'>
<front>
<title>Network Configuration Protocol (NETCONF)</title>
<author initials='R.' surname='Enns' fullname='R. Enns' role='editor'><organization /></author>
<author initials='M.' surname='Bjorklund' fullname='M. Bjorklund' role='editor'><organization /></author>
<author initials='J.' surname='Schoenwaelder' fullname='J. Schoenwaelder' role='editor'><organization /></author>
<author initials='A.' surname='Bierman' fullname='A. Bierman' role='editor'><organization /></author>
<date year='2011' month='June' />
<abstract><t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices.  It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages.  The NETCONF protocol operations are realized as remote procedure calls (RPCs).  This document obsoletes RFC 4741.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6241'/>
<seriesInfo name='DOI' value='10.17487/RFC6241'/>
</reference>



<reference anchor="I-D.ietf-rats-yang-tpm-charra">
<front>
<title>A YANG Data Model for Challenge-Response-based Remote Attestation Procedures using TPMs</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='M' surname='Eckel' fullname='Michael Eckel'>
    <organization />
</author>

<author initials='E' surname='Voit' fullname='Eric Voit'>
    <organization />
</author>

<author initials='S' surname='Bhandari' fullname='Shwetha Bhandari'>
    <organization />
</author>

<author initials='B' surname='Sulzen' fullname='Bill Sulzen'>
    <organization />
</author>

<author initials='L' surname='Xia' fullname='Liang Xia'>
    <organization />
</author>

<author initials='T' surname='Laffey' fullname='Tom Laffey'>
    <organization />
</author>

<author initials='G' surname='Fedorkow' fullname='Guy Fedorkow'>
    <organization />
</author>

<date month='September' day='30' year='2020' />

<abstract><t>This document defines a YANG RPC and a minimal datastore required to retrieve attestation evidence about integrity measurements from a device following the operational context defined in [I-D.ietf-rats-tpm-based-network-device-attest].  Complementary measurement logs are also provided by the YANG RPC originating from one or more roots of trust of measurement.  The module defined requires at least one TPM 1.2 or TPM 2.0 and corresponding Trusted Software Stack included in the device components of the composite device the YANG server is running on.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-rats-yang-tpm-charra-03' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-rats-yang-tpm-charra-03.txt' />
</reference>



<reference anchor="I-D.birkholz-yang-swid">
<front>
<title>Software Inventory YANG module based on Software Identifiers</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<date month='October' day='23' year='2018' />

<abstract><t>This document provides a YANG module definition that enables a computing context to provide detailed information about installed software components.  The structure of the module is based on the Concise Software Identifier draft and therefore also strongly related to the ISO 19770-2:2015 Software Identifiers standard.  Both standards provide no interface to transport the SWID tag information between system entities and this document leverages the wide adoption of YANG based management interfaces.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birkholz-yang-swid-02' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birkholz-yang-swid-02.txt' />
</reference>



<reference anchor="I-D.ietf-sacm-coswid">
<front>
<title>Concise Software Identification Tags</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='J' surname='Fitzgerald-McKay' fullname='Jessica Fitzgerald-McKay'>
    <organization />
</author>

<author initials='C' surname='Schmidt' fullname='Charles Schmidt'>
    <organization />
</author>

<author initials='D' surname='Waltermire' fullname='David Waltermire'>
    <organization />
</author>

<date month='November' day='2' year='2020' />

<abstract><t>ISO/IEC 19770-2:2015 Software Identification (SWID) tags provide an extensible XML-based structure to identify and describe individual software components, patches, and installation bundles.  SWID tag representations can be too large for devices with network and storage constraints.  This document defines a concise representation of SWID tags: Concise SWID (CoSWID) tags.  CoSWID supports a similar set of semantics and features as SWID tags, as well as new semantics that allow CoSWIDs to describe additional types of information, all in a more memory efficient format.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-sacm-coswid-16' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-sacm-coswid-16.txt' />
</reference>


<reference anchor="IEEE-802-1AR" >
  <front>
    <title>802.1AR-2018 - IEEE Standard for Local and Metropolitan Area Networks - Secure Device Identity, IEEE Computer Society</title>
    <author initials="M." surname="Seaman">
      <organization>IEEE Computer Society</organization>
    </author>
    <date year="2018" month="August"/>
  </front>
</reference>
<reference anchor="TAP" target="https://trustedcomputinggroup.org/resource/tcg-tap-information-model/">
  <front>
    <title>TCG Trusted Attestation Protocol (TAP) Information Model for TPM Families 1.2 and 2.0 and DICE Family 1.0, Version 1.0, Revision 0.36</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="October"/>
  </front>
</reference>
<reference anchor="Canonical-Event-Log" >
  <front>
    <title>DRAFT Canonical Event Log Format Version: 1.0, Revision: .12</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="October"/>
  </front>
</reference>
<reference anchor="PC-Client-BIOS-TPM-2.0" target="https://trustedcomputinggroup.org/pc-client-specific-platform-firmware-profile-specification">
  <front>
    <title>PC Client Specific Platform Firmware Profile Specification Family "2.0", Level 00 Revision 1.04</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2019" month="June"/>
  </front>
</reference>
<reference anchor="PC-Client-BIOS-TPM-1.2" target="https://trustedcomputinggroup.org/resource/pc-client-work-group-specific-implementation-specification-for-conventional-bios/">
  <front>
    <title>TCG PC Client Specific Implementation Specification for Conventional BIOS, Specification Version 1.21 Errata, Revision 1.00</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2012" month="February"/>
  </front>
</reference>
<reference anchor="RIM" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG_RIM_Model_v1-r13_2feb20.pdf">
  <front>
    <title>DRAFT: TCG Reference Integrity Manifest Information Model</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2019" month="June"/>
  </front>
</reference>
<reference anchor="PC-Client-RIM" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG_PC_Client_RIM_r0p15_15june2020.pdf">
  <front>
    <title>DRAFT: TCG PC Client Reference Integrity Manifest Specification, v.09</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2019" month="December"/>
  </front>
</reference>
<reference anchor="Platform-DevID-TPM-2.0" target="https://trustedcomputinggroup.org/resource/tpm-2-0-keys-for-device-identity-and-attestation/">
  <front>
    <title>TPM 2.0 Keys for Device Identity and Attestation, Specification Version 1.0, Revision 2</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2020" month="September"/>
  </front>
</reference>
<reference anchor="Platform-ID-TPM-1.2" target="https://trustedcomputinggroup.org/resource/tpm-keys-for-platform-identity-for-tpm-1-2-2/">
  <front>
    <title>TPM Keys for Platform Identity for TPM 1.2, Specification Version 1.0, Revision 3</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2015" month="August"/>
  </front>
</reference>
<reference anchor="SWID" target="https://www.iso.org/standard/65666.html">
  <front>
    <title>Information Technology Software Asset Management Part 2: Software Identification Tag, ISO/IEC 19770-2</title>
    <author >
      <organization>The International Organization for Standardization/International Electrotechnical Commission</organization>
    </author>
    <date year="2015" month="October"/>
  </front>
</reference>


    </references>

    <references title='Informative References'>





<reference  anchor="RFC6813" target='https://www.rfc-editor.org/info/rfc6813'>
<front>
<title>The Network Endpoint Assessment (NEA) Asokan Attack Analysis</title>
<author initials='J.' surname='Salowey' fullname='J. Salowey'><organization /></author>
<author initials='S.' surname='Hanna' fullname='S. Hanna'><organization /></author>
<date year='2012' month='December' />
<abstract><t>The Network Endpoint Assessment (NEA) protocols are subject to a subtle forwarding attack that has become known as the NEA Asokan Attack. This document describes the attack and countermeasures that may be mounted.  This document is not an Internet Standards Track specification; it is published for informational purposes.</t></abstract>
</front>
<seriesInfo name='RFC' value='6813'/>
<seriesInfo name='DOI' value='10.17487/RFC6813'/>
</reference>



<reference  anchor="RFC3748" target='https://www.rfc-editor.org/info/rfc3748'>
<front>
<title>Extensible Authentication Protocol (EAP)</title>
<author initials='B.' surname='Aboba' fullname='B. Aboba'><organization /></author>
<author initials='L.' surname='Blunk' fullname='L. Blunk'><organization /></author>
<author initials='J.' surname='Vollbrecht' fullname='J. Vollbrecht'><organization /></author>
<author initials='J.' surname='Carlson' fullname='J. Carlson'><organization /></author>
<author initials='H.' surname='Levkowetz' fullname='H. Levkowetz' role='editor'><organization /></author>
<date year='2004' month='June' />
<abstract><t>This document defines the Extensible Authentication Protocol (EAP), an authentication framework which supports multiple authentication methods.  EAP typically runs directly over data link layers such as Point-to-Point Protocol (PPP) or IEEE 802, without requiring IP.  EAP provides its own support for duplicate elimination and retransmission, but is reliant on lower layer ordering guarantees.  Fragmentation is not supported within EAP itself; however, individual EAP methods may support this.  This document obsoletes RFC 2284.  A summary of the changes between this document and RFC 2284 is available in Appendix A.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3748'/>
<seriesInfo name='DOI' value='10.17487/RFC3748'/>
</reference>



<reference anchor="I-D.ietf-rats-architecture">
<front>
<title>Remote Attestation Procedures Architecture</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='D' surname='Thaler' fullname='Dave Thaler'>
    <organization />
</author>

<author initials='M' surname='Richardson' fullname='Michael Richardson'>
    <organization />
</author>

<author initials='N' surname='Smith' fullname='Ned Smith'>
    <organization />
</author>

<author initials='W' surname='Pan' fullname='Wei Pan'>
    <organization />
</author>

<date month='October' day='16' year='2020' />

<abstract><t>In network protocol exchanges, it is often the case that one entity (a Relying Party) requires evidence about a remote peer to assess the peer's trustworthiness, and a way to appraise such evidence.  The evidence is typically a set of claims about its software and hardware platform.  This document describes an architecture for such remote attestation procedures (RATS).</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-rats-architecture-07' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-rats-architecture-07.txt' />
</reference>



<reference anchor="I-D.birkholz-rats-reference-interaction-model">
<front>
<title>Reference Interaction Models for Remote Attestation Procedures</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='M' surname='Eckel' fullname='Michael Eckel'>
    <organization />
</author>

<author initials='C' surname='Newton' fullname='Christopher Newton'>
    <organization />
</author>

<author initials='L' surname='Chen' fullname='Liqun Chen'>
    <organization />
</author>

<date month='July' day='7' year='2020' />

<abstract><t>This document describes interaction models for remote attestation procedures (RATS).  Three conveying mechanisms - Challenge/Response, Uni-Directional, and Streaming Remote Attestation - are illustrated and defined.  Analogously, a general overview about the information elements typically used by corresponding conveyance protocols are highlighted.  Privacy preserving conveyance of Evidence via Direct Anonymous Attestation is elaborated on for each interaction model, individually.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birkholz-rats-reference-interaction-model-03' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birkholz-rats-reference-interaction-model-03.txt' />
</reference>



<reference anchor="I-D.richardson-rats-usecases">
<front>
<title>Use cases for Remote Attestation common encodings</title>

<author initials='M' surname='Richardson' fullname='Michael Richardson'>
    <organization />
</author>

<author initials='C' surname='Wallace' fullname='Carl Wallace'>
    <organization />
</author>

<author initials='W' surname='Pan' fullname='Wei Pan'>
    <organization />
</author>

<date month='November' day='2' year='2020' />

<abstract><t>This document details mechanisms created for performing Remote Attestation that have been used in a number of industries.  The document initially focuses on existing industry verticals, mapping terminology used in those specifications to the more abstract terminology used by the IETF RATS Working Group.  The document aspires to describe possible future use cases that would be enabled by common formats.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-richardson-rats-usecases-08' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-richardson-rats-usecases-08.txt' />
</reference>



<reference anchor="I-D.birkholz-rats-tuda">
<front>
<title>Time-Based Uni-Directional Attestation</title>

<author initials='A' surname='Fuchs' fullname='Andreas Fuchs'>
    <organization />
</author>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='I' surname='McDonald' fullname='Ira McDonald'>
    <organization />
</author>

<author initials='C' surname='Bormann' fullname='Carsten Bormann'>
    <organization />
</author>

<date month='July' day='13' year='2020' />

<abstract><t>This documents defines the method and bindings used to conduct Time- based Uni-Directional Attestation (TUDA) between two RATS (Remote ATtestation procedureS) entities over the Internet.  TUDA does not require a challenge-response handshake and thereby does not rely on the conveyance of a nonce to prove freshness of remote attestation Evidence.  Conversely, TUDA enables the creation of Secure Audit Logs that can constitute Evidence about current and past operational states of an Attester.  Every RATS entity requires access to a trustable and synchronized time-source.  A Handle Distributor takes on the corresponding role of a Time Stamp Authority (TSA) to provide Time Stamp Tokens (TST) to all RATS entities.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birkholz-rats-tuda-03' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birkholz-rats-tuda-03.txt' />
</reference>



<reference anchor="I-D.voit-rats-trusted-path-routing">
<front>
<title>Trusted Path Routing</title>

<author initials='E' surname='Voit' fullname='Eric Voit'>
    <organization />
</author>

<date month='June' day='10' year='2020' />

<abstract><t>There are end-users who believe encryption technologies like IPSec alone are insufficient to protect the confidentiality of their highly sensitive traffic flows.  These end-users want their flows to traverse devices which have been freshly appraised and verified. This specification describes Trusted Path Routing.  Trusted Path Routing protects sensitive flows as they transit a network by forwarding traffic to/from sensitive subnets across network devices recently appraised as trustworthy.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-voit-rats-trusted-path-routing-02' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-voit-rats-trusted-path-routing-02.txt' />
</reference>



<reference anchor="I-D.birkholz-rats-network-device-subscription">
<front>
<title>Attestation Event Stream Subscription</title>

<author initials='H' surname='Birkholz' fullname='Henk Birkholz'>
    <organization />
</author>

<author initials='E' surname='Voit' fullname='Eric Voit'>
    <organization />
</author>

<author initials='W' surname='Pan' fullname='Wei Pan'>
    <organization />
</author>

<date month='October' day='6' year='2020' />

<abstract><t>This document defines how to subscribe to an Event Stream of attestation related Evidence on TPM-based network devices.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birkholz-rats-network-device-subscription-01' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birkholz-rats-network-device-subscription-01.txt' />
</reference>



<reference anchor="I-D.ietf-rats-eat">
<front>
<title>The Entity Attestation Token (EAT)</title>

<author initials='G' surname='Mandyam' fullname='Giridhar Mandyam'>
    <organization />
</author>

<author initials='L' surname='Lundblade' fullname='Laurence Lundblade'>
    <organization />
</author>

<author initials='M' surname='Ballesteros' fullname='Miguel Ballesteros'>
    <organization />
</author>

<author initials='J' surname='O&apos;Donoghue' fullname='Jeremy O&apos;Donoghue'>
    <organization />
</author>

<date month='December' day='2' year='2020' />

<abstract><t>An Entity Attestation Token (EAT) provides a signed (attested) set of claims that describe state and characteristics of an entity, typically a device like a phone or an IoT device.  These claims are used by a relying party to determine how much it wishes to trust the entity.  An EAT is either a CWT or JWT with some attestation-oriented claims. To a large degree, all this document does is extend CWT and JWT.  Contributing  TBD</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-rats-eat-06' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-rats-eat-06.txt' />
<format type='PDF'
        target='http://www.ietf.org/internet-drafts/draft-ietf-rats-eat-06.pdf' />
</reference>


<reference anchor="TPM1.2" target="https://trustedcomputinggroup.org/resource/tpm-main-specification/">
  <front>
    <title>TPM Main Specification Level 2 Version 1.2, Revision 116</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2011" month="March"/>
  </front>
</reference>
<reference anchor="TPM2.0" target="https://trustedcomputinggroup.org/resource/tpm-library-specification/">
  <front>
    <title>Trusted Platform Module Library Specification, Family “2.0”, Level 00, Revision 01.59</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2019" month="November"/>
  </front>
</reference>
<reference anchor="EFI-TPM" target="https://trustedcomputinggroup.org/resource/tcg-efi-platform-specification/">
  <front>
    <title>TCG EFI Platform Specification for TPM Family 1.1 or 1.2, Specification Version 1.22, Revision 15</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2014" month="January"/>
  </front>
</reference>
<reference anchor="Platform-Certificates" target="https://trustedcomputinggroup.org/resource/tcg-platform-attribute-credential-profile/">
  <front>
    <title>TCG Platform Attribute Credential Profile, Specification Version 1.0, Revision 16</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="January"/>
  </front>
</reference>
<reference anchor="Provisioning-TPM-2.0" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG-TPM-v2.0-Provisioning-Guidance-Published-v1r1.pdf">
  <front>
    <title>TCG TPM v2.0 Provisioning Guidance, Version 1.0, Revision 1.0</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2015" month="March"/>
  </front>
</reference>
<reference anchor="Attest-MIB" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG_SNMP_MIB_for_TPM-Based_Attestation_v0.8r2_PUBLIC_REVIEW.pdf">
  <front>
    <title>SNMP MIB for TPM-Based Attestation, Version 0.8Revision 0.02</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="May"/>
  </front>
</reference>
<reference anchor="IEEE-802.1X" target="https://standards.ieee.org/standard/802_1X-2020.html">
  <front>
    <title>802.1X-2020 - IEEE Standard for Local and Metropolitan Area Networks--Port-Based Network Access Control</title>
    <author >
      <organization>IEEE Computer Society</organization>
    </author>
    <date year="2020" month="February"/>
  </front>
</reference>
<reference anchor="IEEE-802.1AE" target="https://1.ieee802.org/security/802-1ae/">
  <front>
    <title>802.1AE MAC Security (MACsec)</title>
    <author initials="M." surname="Seaman">
      <organization>IEEE Computer Society</organization>
    </author>
    <date year="2018"/>
  </front>
</reference>
<reference anchor="LLDP" target="https://standards.ieee.org/standard/802_1AB-2016.html">
  <front>
    <title>802.1AB-2016 - IEEE Standard for Local and metropolitan area networks - Station and Media Access Control Connectivity Discovery</title>
    <author >
      <organization>IEEE Computer Society</organization>
    </author>
    <date year="2016" month="March"/>
  </front>
</reference>
<reference anchor="IMA" target="https://sourceforge.net/p/linux-ima/wiki/Home/">
  <front>
    <title>Integrity Measurement Architecture</title>
    <author surname="dsafford">
      <organization></organization>
    </author>
    <author surname="kds_etu">
      <organization></organization>
    </author>
    <author surname="mzohar">
      <organization></organization>
    </author>
    <author surname="reinersailer">
      <organization></organization>
    </author>
    <author surname="serge_hallyn">
      <organization></organization>
    </author>
    <date year="2019" month="June"/>
  </front>
</reference>
<reference anchor="TCGRoT" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG_Roots_of_Trust_Specification_v0p20_PUBLIC_REVIEW.pdf">
  <front>
    <title>DRAFT: TCG Roots of Trust Specification</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="October"/>
  </front>
</reference>
<reference anchor="SP800-193" target="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-193.pdf">
  <front>
    <title>NIST Special Publication 800-193: Platform Firmware Resiliency Guidelines</title>
    <author >
      <organization>National Institute for Standards and Technology</organization>
    </author>
    <date year="2018" month="April"/>
  </front>
</reference>
<reference anchor="SP800-155" target="https://csrc.nist.gov/csrc/media/publications/sp/800-155/draft/documents/draft-sp800-155_dec2011.pdf">
  <front>
    <title>BIOS Integrity Measurement Guidelines (Draft)</title>
    <author >
      <organization>National Institute of Standards and Technology</organization>
    </author>
    <date year="2011" month="December"/>
  </front>
</reference>
<reference anchor="NetEq" target="https://trustedcomputinggroup.org/resource/tcg-guidance-securing-network-equipment/">
  <front>
    <title>TCG Guidance for Securing Network Equipment, Version 1.0, Revision 29</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2018" month="January"/>
  </front>
</reference>
<reference anchor="NIST-IR-8060" target="https://nvlpubs.nist.gov/nistpubs/ir/2016/NIST.IR.8060.pdf">
  <front>
    <title>Guidelines for the Creation of Interoperable Software Identification (SWID) Tags</title>
    <author >
      <organization>National Institute for Standards and Technology</organization>
    </author>
    <date year="2016" month="April"/>
  </front>
</reference>
<reference anchor="AK-Enrollment" target="https://trustedcomputinggroup.org/resource/tcg-infrastructure-working-group-a-cmc-profile-for-aik-certificate-enrollment/">
  <front>
    <title>TCG Infrastructure Working Group - A CMC Profile for AIK Certificate Enrollment Version 1.0, Revision 7</title>
    <author >
      <organization>Trusted Computing Group</organization>
    </author>
    <date year="2011" month="March"/>
  </front>
</reference>
<reference anchor="SWID-Gen" target="https://github.com/Labs64/swid-maven-plugin">
  <front>
    <title>SoftWare IDentification (SWID) Tags Generator (Maven Plugin)</title>
    <author >
      <organization>Labs64, Munich, Germany</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>



  </back>

<!-- ##markdown-source:
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
VgEA

-->

</rfc>

