Skip to content

Commit b18da55

Browse files
authored
Merge pull request #63 from ietf-rats-wg/fix-58
Addressing Usama's review from issue #56
2 parents 61a08d4 + ebbcef9 commit b18da55

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

draft-ietf-rats-reference-interaction-models.md

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ normative:
5757

5858
informative:
5959
I-D.birkholz-rats-tuda: TUDA
60+
I-D.tschofenig-rats-psa-token: psa-token
61+
I-D.ietf-rats-uccs: uccs
6062
DAA:
6163
title: Direct Anonymous Attestation
6264
author:
@@ -134,16 +136,21 @@ Analogously, a general overview about the information elements typically used by
134136
Remote ATtestation procedureS (RATS, {{-RATS}}) are workflows composed of roles and interactions, in which Verifiers create Attestation Results about the trustworthiness of an Attester's system component characteristics.
135137
The Verifier's assessment in the form of Attestation Results is produced based on Endorsements, Reference Values, Attestation Policies, and Evidence -- trustable and tamper-evident Claims Sets about an Attester's system component characteristics -- generated by an Attester.
136138
The roles *Attester* and *Verifier*, as well as the Conceptual Messages *Evidence* and *Attestation Results* are concepts defined by the RATS Architecture {{-RATS}}.
137-
This document defines interaction models that can be used in specific RATS-related solution documents.
138-
The primary focus of this document is the conveyance of attestation Evidence. The reference models defined can also be applied to the conveyance of other Conceptual Messages in RATS.
139+
This document illustrates three main interaction models that can be used in specific RATS-related solution documents:
140+
141+
1. Challenge/Response Remote Attestation
142+
2. Uni-Directional Remote Attestation
143+
3. Streaming Remote Attestation
144+
145+
As a basis to describe the interaction models is this document, the example of attestation Evidence conveyance is used to illustrate the usage scenarios.
146+
The reference models defined can also be applied to the conveyance of other Conceptual Messages in RATS.
139147
This document aims to:
140148

141149
1. prevent inconsistencies in descriptions of interaction models in other documents, which may occur due to text cloning and evolution over time, and to
142-
143150
2. highlight the exact delta/divergence between the core characteristics captured in this document and variants of these interaction models used in other specifications or solutions.
144151

145-
In summary, this document enables the specification and design of trustworthy and privacy-preserving conveyance methods for attestation Evidence from an Attester to a Verifier.
146-
While the conveyance of other Conceptual Messages is out of scope, the models described in this document may be adapted to apply to the conveyance of other Conceptual Messages, such as Endorsements or Attestation Results, or supplemental messages, such as Epoch Markers {{-epoch-markers}} or stand-alone event logs.
152+
In summary, this document enables the specification and design of trustworthy and privacy-preserving conveyance methods for RATS Conceptual Messages; specifically attestation Evidence conveyed from an Attester to a Verifier.
153+
While the exact details for conveyance of other Conceptual Messages is out of scope, the models described in this document may be adapted to apply to the conveyance of other Conceptual Messages, such as Endorsements or Attestation Results, or supplemental messages, such as Epoch Markers {{-epoch-markers}} or stand-alone event logs.
147154

148155
# Terminology
149156

@@ -159,8 +166,9 @@ A PKIX Certificate is an X.509v3 certificate as specified by {{-X509}}.
159166
"Remote Attestation" is a common expression often associated or connoted with certain properties.
160167
In the context of this document, the term "Remote" does not necessarily refer to a remote entity in the scope of network topologies or the Internet.
161168
It rather refers to decoupled systems or entities that exchange the Conceptual Message type called Evidence {{-RATS}}.
162-
This conveyance can also be "Local", if the Verifier role is part of the same entity as the Attester role, e.g., separate system components of the same Composite Device (a single RATS entity), or the Verifier and Relying Party roles are hosted by the same entity, for example in a cryptographic key Broker system.
163-
If an entity takes on two or more different roles, the functions they provide typically reside in isolated environments that are components of the same entity. Examples of such isolated environments include a Trusted Execution Environment (TEE), Baseboard Management Controllers (BMCs), as well as other physical or logical protected/isolated/shielded Computing Environments (e.g., embedded Secure Elements (eSE) or Trusted Platform Modules (TPM)). It is useful but not necessary for readers of this document to be familiar with the Concept Data/Message flows as described in {{Section 3.1 of -RATS}} and the definition of Attestation in general as described in {{-RIV}}. For the example of Evidence generation, it is also useful to be familiar the fact that Attesting Environment are layered (see {{turtles}} and Figure 1 in {{Section 2.1 of -rats-endorsements}}) and that the initial Attesting Environment ("layer 0") requires Endorsement from a trusted third party.
169+
This conveyance can also be "Local", if the Verifier role is part of the same entity as the Attester role, e.g., separate system components of the same Composite Device (a single RATS entity), or the Verifier and Relying Party roles are hosted by the same entity, for example in a cryptographic key Broker system (see {{Section 6 of -RATS}} for more details).
170+
If an entity takes on two or more different roles, the functions they provide typically reside in isolated environments that are components of the same entity.
171+
Examples of such isolated environments include a Trusted Execution Environment (TEE), Baseboard Management Controllers (BMCs), as well as other physical or logical protected/isolated/shielded Computing Environments (e.g., embedded Secure Elements (eSE) or Trusted Platform Modules (TPM)).
164172

165173
# Scope and Intent
166174

@@ -189,10 +197,10 @@ Similarly, deviations from the generic model described in this document can be i
189197
In order to ensure appropriate conveyance of Evidence, the following requirements MUST be fulfilled:
190198

191199
Integrity:
192-
: Information provided by an Attester MUST NOT have been altered since it was created. This may be achieved through a digital signature over Attestation Evidencewhich may be symmetric, like an HMAC, or asymmetric, like ECDSA.
200+
: Information provided by an Attester MUST NOT have been altered since it was created. This may be achieved via symmetric cryptography, e.g., using COSE Mac0 as in PSA TF-M profile ({{Section 5.2 of -psa-token}}), or asymmetric, like ECDSA.
193201

194202
Authentication:
195-
: The information provided by the Attester MUST be authentic. To do this, the Attester should authenticate itself to the Verifier. This can be done through implicit authentication using a digital signature over the Attestation Evidence, which does not require additional protocol steps, or by using a confidential channel with encryption.
203+
: The information provided by the Attester MUST be authentic. To do this, the Attester should authenticate itself to the Verifier. This can be done through implicit authentication using a digital signature over the Attestation Evidence, which does not require additional protocol steps, or by using a secure channel (see {{-uccs}}) including authentication.
196204

197205
# Normative Prerequisites
198206

@@ -220,15 +228,13 @@ Attestation Evidence Authenticity:
220228

221229
: In order to provide a proof of authenticity, Attestation Evidence can be cryptographically associated with an identity document (e.g., a PKIX certificate or trusted key material, or a randomized DAA credential {{DAA}}), or could include a correct, unambiguous, and stable reference to an accessible identity document.
222230

231+
: Authenticity includes the protection of Evidence in a tamper-evident manner (e.g., either by signatures or by protection mechanisms implemented at both ends of a Secure Channel; see Authentication above).
232+
223233
Evidence Freshness:
224234

225235
: Evidence MUST include an indicator about its freshness that can be understood by a Verifier (See also {{Section 10 of -RATS}}).
226236
This enables interaction models to support the conveyance of proofs of freshness in a way that is useful to Verifiers and their appraisal procedures.
227237

228-
Evidence Protection:
229-
230-
: Evidence MUST be a set of well-formatted and well-protected Claims that an Attester can create and convey to a Verifier in a tamper-evident manner.
231-
232238
# Generic Information Elements
233239

234240
This section describes the essential information elements for the interaction models described in {{interaction-models}}.
@@ -914,15 +920,11 @@ This document outlines three interaction models for remote attestation procedure
914920
While the subsequent sections address additional security and privacy considerations, the security considerations from {{Section 12 of -RATS}} must also be adhered to.
915921
Additionally, for TPM-based remote attestation, the security considerations outlined in {{Section 5 of -RIV}} should be taken into account.
916922

917-
## Cryptographic Blinding and Scrambling
923+
## Cryptographic Blinding
918924

919925
In a remote attestation procedure, both the Verifier and the Attester may choose to cryptographically blind certain attributes to enhance privacy.
920926
For example, specific information can be included in the signature after being processed through a one-way function, such as a hash function.
921927

922-
Additionally, there is an option to scramble the Nonce or Attester Identity using other information that is known to both parties.
923-
A common example is the IP address of the Attester, which is typically accessible to both the Attester and the Verifier.
924-
This additional information can be utilized to scramble the Nonce, thereby mitigating certain types of relay attacks.
925-
926928
## Trust Assumptions on the Handle Distributor
927929

928930
The handle distributor, as a third party in remote attestation scenarios, holds a critical position similar to that of a Trusted Third Party (TTP).

0 commit comments

Comments
 (0)