Draft: draft-ietf-rats-architecture

Commentary: Please feel free to bash . This is a basis for discussion . 
 To be defined 
 does this .
Paragraph (version B):
Another example is that of a Composite Devices: Composite Devices are
defined below, and are inherently composed of multiple nested
environments.
Paragraph (version B):
A very common example is elaborated on to illustrate Layered
Attestation.
Paragraph (version B):
The very first Attesting Environment has to ensure the integrity of
the (U)EFI / BIOS / Firmware [FIXME] that initially boots up a
composite device (e.g., a cell phone).  These Claims have to be
measured securely.  At this stage of the boot-cycle of a composite
device, the Claims collected typically cannot be composed into
Evidence.
Paragraph (version B):
The very first Attesting Environment in this example can be a
hardware component that is a Static Code Root of Trust.  As in any
other scenario, this hardware component is the first Attesting
Environment.  It collects a rather concise number of Claims about the
Target Environment.  The Target Environment in this example is the
(U)EFI / BIOS / Firmware [FIXME] After the boot sequence started, the
Target Environment conducts the most important and defining feature
of layered attestation: The successfully measured environment that is
the (U)EFI / BIOS / Firmware now becomes the Attesting Environment.
Analogously, the Attesting Environment hands off its duty to one of
its Target Environments.  This procedure in Layered Attestation is
called Staging.
Paragraph (version B):
Now, the duties have been transferred and Layered Attestation takes
place.  The initial Attesting Environment relinquishes its duties to
the Target Environment.  It is important to note that the new
Attesting Environment cannot alter the content about its own
measurements.  If the Attesting Environment would be able to do that,
Layered Attestation would become unfeasible.
Paragraph (version B):
In this example the duty of being the Attesting Environment is now
taken over by the (U)EFI / BIOS / Firmware that was the Attested
Environment before.  This transfer of duty is the essential part of
Layered Attestation.  The (U)EFI / BIOS / Firmware now is the
Attesting Environment.  The next Target Environment is, in this
example, a bootloader.  There are potentially multiple kernels to
boot, the decision is up to the bootloader.  Only a bootloader with
intact integrity will make an appropriate decision.  Therefore,
Claims about the integrity of a bootloader are now collected by the
freshly appointed Attesting Environment that is the (U)EFI / BIOS /
Firmware.  Collected Claims have to be stored by the current
Attesting Environment in a similar shielded and secured manner, so
that the next Attesting Environment is not capable of altering the
collection of claims stored.
Paragraph (version B):
Continuing with this example, the bootloader is now in charge of
collecting Claims about the next execution environment.  The next
execution environment in this example is the kernel to be booted up.
Analogously, the next transfer of duties in this Layered Attestation
example occurs: The duty of being an Attesting Environment is
transferred to a successfully measured kernel [Henk: we might have to
define what successful means in this example and beyond].  In this
sequence, the kernel is now collecting additional Claims and is
storing them in a secure and shielded manner.
Paragraph (version B):
The essence of this example is a cascade of staged boot environments.
Each environment (after the initial one that is a root-of-trust) has
the duty of measuring its next environment before it is started.
Therefore, creating a layered boot sequence and correspondingly
enabling Layered Attestation.