Skip to content

Commit 89ebeb1

Browse files
committed
Integrated Thomas Fossati's review from 2025-07-17 (RATS mailing list).
https://mailarchive.ietf.org/arch/msg/rats/ktS3-_RDHpN-jITeoqsy0p22oqw # S 1 * [x] Attestation Policies => Appraisal Policies * Renamed. * [x] It says "The reference models defined can also be applied to the conveyance of other Conceptual Messages in RATS" without explaining how. Please remove the sentence: there is already better prose for this in the last paragraph of this same section. * Removed the sentence * [x] It says: "privacy-preserving conveyance methods" -- what does "privacy-preserving" refer to? * Added reference to "Cryptographic Blinding" section in "Security Considerations" section. # S 2.2 * [x] Please remove the confusing parenthetical "(typically via layered attestation)", or place it more appropriately. * Removed it. # S 4 * [x] The term "implicit authentication" referring to digital signatures sounds a bit odd * Removed "implicit". * [x] It says: "(see [I-D.ietf-rats-uccs])" -- which section? * Added "see Sections 3 and 4 of". # Figure 2 * [x] Unsure why this needed to be changed, but noting that since you were at it, you could’ve moved the Verifier to the left of the Attester to avoid crossing the RP, which is visually confusing. * The thing is, in all the other diagrams, the Attester is on the left and the Verifier is on the right. We wanted to represent it in the same way here. * To make the diagram clearer, represented the crossings as *aasvg* "wire jumps/hops." # S 7.2.1 * [x] Unsure how “Synchronization Checks” would work in practice. * Added example showing how TUDA implements this. * Does this clarify the comment? # S 11.1 * [x] Why is RFC9683 normative? * Good point. Thanks. Made it informative.
1 parent 3f4c85b commit 89ebeb1

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

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

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,11 @@ normative:
5252
RFC7252: COAP
5353
BCP205:
5454
RFC9334: RATS
55-
RFC9683: RIV
5655
I-D.ietf-rats-epoch-markers: epoch-markers
5756

5857
informative:
5958
I-D.birkholz-rats-tuda: TUDA
59+
RFC9683: RIV
6060
RFC9783: psa-token
6161
RFC9781: uccs
6262
DAA:
@@ -134,7 +134,7 @@ Analogously, a general overview about the information elements typically used by
134134
# Introduction
135135

136136
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.
137-
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.
137+
The Verifier's assessment in the form of Attestation Results is produced based on Endorsements, Reference Values, Appraisal Policies, and Evidence -- trustable and tamper-evident Claims Sets about an Attester's system component characteristics -- generated by an Attester.
138138
The roles *Attester* and *Verifier*, as well as the Conceptual Messages *Evidence* and *Attestation Results* are concepts defined by the RATS Architecture {{-RATS}}.
139139
This document illustrates three main interaction models that can be used in specific RATS-related solution documents:
140140

@@ -148,13 +148,12 @@ This document illustrates three main interaction models that can be used in spec
148148
A persistent subscription-based model where Evidence is pushed continuously to interested Verifiers, optionally via a Broker.
149149

150150
As a basis to describe the interaction models is this document, the example of attestation Evidence conveyance is used to illustrate the usage scenarios.
151-
The reference models defined can also be applied to the conveyance of other Conceptual Messages in RATS.
152151
This document aims to:
153152

154153
1. prevent inconsistencies in descriptions of interaction models in other documents, which may occur due to text cloning and evolution over time, and to
155154
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.
156155

157-
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.
156+
In summary, this document enables the specification and design of trustworthy and privacy-preserving (see Section {{cryptographic-blinding}}) conveyance methods for RATS Conceptual Messages; specifically attestation Evidence conveyed from an Attester to a Verifier.
158157
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.
159158

160159
# Terminology {#terminology}
@@ -177,7 +176,7 @@ Examples of such isolated environments include a Trusted Execution Environment (
177176

178177
## Boot Time Integrity
179178

180-
Boot time integrity refers to the trustworthiness of the platform during its boot sequence, typically covering firmware, BIOS/UEFI, initial bootloaders, and core operating system components up until a stable runtime environment is reached (typically via layered attestation).
179+
Boot time integrity refers to the trustworthiness of the platform during its boot sequence, typically covering firmware, BIOS/UEFI, initial bootloaders, and core operating system components up until a stable runtime environment is reached.
181180
This may apply equally to physical devices and virtual machines.
182181

183182
## Runtime Integrity
@@ -220,7 +219,7 @@ Integrity:
220219
: 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, such as a COSE Sign algorithm like ECDSA.
221220

222221
Authentication:
223-
: 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}}) that includes authentication.
222+
: 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 authentication using a digital signature over the Attestation Evidence, which does not require additional protocol steps, or by using a secure channel (see Sections 3 and 4 of {{-uccs}}) that includes authentication.
224223

225224
# Normative Prerequisites
226225

@@ -407,7 +406,7 @@ For example, when performing a boot integrity evaluation, a Verifier may only re
407406
With the Handle, the Attestation Key IDs, and the Collected Claims, the Attester produces signed Evidence. That is, it digitally signs the Handle and the Collected Claims with a cryptographic secret identified by the Attestation Key ID. This is done once per Attesting Environment which is identified by the particular Attestation Key ID. The Attester communicates the signed Evidence as well as all accompanying Event Logs back to the Verifier.
408407

409408
The Claims, the Handle, and the Attester Identity information (i.e., the Authentication Secret) MUST be cryptographically bound to the signature of Evidence. These MAY be presented obfuscated, encrypted, or cryptographically blinded.
410-
For further reference see section {{security-and-privacy-considerations}}.
409+
For further reference see Section {{security-and-privacy-considerations}}.
411410

412411
Upon receiving the Evidence and Event Logs, the Verifier validates the signature, Attester Identity, and Handle, and then appraises the Claims.
413412
Claim appraisal is driven by Policy and takes Reference Values and Endorsements as input.
@@ -440,7 +439,7 @@ In the second step, the Attester presents the Attestation Result (and possibly a
440439
generateClaims(attestingEnvironment) | |
441440
| => {claims, ?eventLogs} | |
442441
| | |
443-
|<---------------------------------------------- requestEvidence(
442+
|<----------------------------------(----------- requestEvidence(
444443
| | handle,
445444
| | ?attEnvIDs,
446445
| | ?claimSelection)
@@ -452,7 +451,7 @@ In the second step, the Attester presents the Attestation Result (and possibly a
452451
?attEnvIDs, collectedClaims) | |
453452
| => evidence | |
454453
| | |
455-
| {evidence, ?eventLogs} ---------------------------------->|
454+
| {evidence, ?eventLogs} -----------)---------------------->|
456455
| | |
457456
==========================[Evidence Appraisal]==========================
458457
| | |
@@ -464,7 +463,7 @@ In the second step, the Attester presents the Attestation Result (and possibly a
464463
| | |
465464
=============[Attestation Result Conveyance and Appraisal]==============
466465
| | |
467-
| <------------------------------------ {attestationResult} |
466+
| <---------------------------------(-- {attestationResult} |
468467
| | |
469468
| | |
470469
| {evidence, attestationResult} --->| |
@@ -631,6 +630,7 @@ To manage this complexity, it is essential to define a clear policy for handle v
631630

632631
* *Synchronization Checks*:
633632
Implement periodic synchronization checks between the Handle Distributor and both Attesters and Verifiers to ensure that handles are updated consistently across all participants.
633+
For example, in TUDA {{-TUDA}}, synchronization checks can be realized by cryptographically binding local timestamps from Attesters and Verifiers to fresh Epoch Handles issued by a trusted Time Stamp Authority (TSA), thereby proving that both entities share a consistent notion of time.
634634

635635
* *Grace Periods*:
636636
Define grace periods during which a newly issued handle starts being accepted, and the old handle stops being valid.
@@ -969,6 +969,7 @@ This document outlines three interaction models for remote attestation procedure
969969
While the subsequent sections address additional security and privacy considerations, the security considerations from {{Section 12 of -RATS}} must also be adhered to.
970970
Additionally, for TPM-based remote attestation, the security considerations outlined in {{Section 5 of -RIV}} should be taken into account.
971971

972+
{: #cryptographic-blinding}
972973
## Cryptographic Blinding
973974

974975
In a remote attestation procedure, both the Verifier and the Attester may choose to cryptographically blind certain attributes to enhance privacy.

0 commit comments

Comments
 (0)