Skip to content

Commit 5ccc8bf

Browse files
committed
Integrated @gmandyam's comments/review on streaming remote attestation.
* [x] **a)** Evidence verification failures & unsubscribe: * @gmandyam's concern: * What happens when Evidence (or delta Evidence) fails verification? * Should the Verifier be able to unsubscribe? * A description of how unsubscribe works might be useful in streaming mode. * @henkbirkholz's reply: * Unsubscribe is out of scope of this doc, since it is already covered by standards track work (e.g., [draft-ietf-rats-network-device-subscription](https://datatracker.ietf.org/doc/draft-ietf-rats-network-device-subscription/)). * It's a protocol detail, not part of the reference model. * ➡️ Added clarifying sentence at the end of Section 7.3. * [x] **b)** Definition of delta evidence: * @gmandyam's concern: * Current definition (“only changed claims and new event logs”) is too narrow. * Example: Attester goes to sleep, detects a change and reversion, and should still report that sequence, even if the final state looks unchanged. * @henkbirkholz's reply: * Agree, propose adding text to cover this. * ➡️ Improved definition of delta evidence in Section 7.2.1. * ➡️ Referenced this definition in 7.3 (Streaming). Signed-off-by: Michael Eckel <michael.eckel@sit.fraunhofer.de>
1 parent 3f4c85b commit 5ccc8bf

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

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

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ informative:
121121
name: Butler Lampson
122122
date: 2006
123123
I-D.ietf-rats-endorsements: rats-endorsements
124+
I-D.ietf-rats-network-device-subscription: rats-network-device-subscription
124125
...
125126

126127
--- abstract
@@ -616,7 +617,7 @@ This binding provides a proof of synchronization that MUST be included in all pr
616617
This model provides proof that Evidence generation happened after the Handle generation phase.
617618
The Verifier can always determine whether the received Evidence includes a fresh Handle, i.e., one corresponding to the current Epoch.
618619

619-
### Handle Lifecycle and Propagation Delays
620+
### Handle Lifecycle and Propagation Delays {#handle-lifecycle-and-propagation-delays}
620621

621622
The lifecycle of a handle is a critical aspect of ensuring the freshness and validity of attestation Evidence.
622623
When a new handle is generated by the Handle Distributor, it effectively supersedes the previous handle.
@@ -639,8 +640,10 @@ To manage this complexity, it is essential to define a clear policy for handle v
639640
Implementing these measures will help mitigate the risks associated with the handle lifecycle, particularly in environments where propagation delays are significant.
640641
This careful management ensures that the integrity and trustworthiness of the attestation process are maintained.
641642

642-
While periodically pushing Evidence to the Verifier, the Attester only needs to generate and convey evidence generated from Claim values that have changed and new Event Log entries since the previous conveyance.
643-
These updates reflecting the differences are called "delta" in the sequence diagram above.
643+
While periodically pushing Evidence to the Verifier, the Attester only needs to generate and convey updates since the previous conveyance.
644+
These updates, referred to as "delta" in the sequence diagrams, are not limited to net changes of Claim values.
645+
They MUST include all state changes detected since the previous conveyance, even if values later revert to their prior state.
646+
For example, if an Attester goes through a sleep or hibernation cycle and a Claim value changes and then reverts, both transitions MUST be reported to the Verifier as soon as possible after resuming operation.
644647

645648
Effectively, the Uni-Directional model allows for a series of Evidence to be pushed to multiple Verifiers simultaneously.
646649
Methods to detect excessive time drift that would mandate a fresh Handle to be received by the Handle Distributor as well as timing of Handle distribution are out-of-scope of this document.
@@ -734,6 +737,9 @@ Handles provided by a specific subscribing Verifier MUST be used in Evidence gen
734737
The streaming model without a Broker uses the same information elements as the Challenge/Response and the Uni-Directional model.
735738
Methods to detect excessive time drift that would render Handles stale and mandate a fresh Handles to be conveyed via another subscribe operation are out-of-scope of this document.
736739

740+
If Evidence or delta Evidence repeatedly fails to verify, a Verifier may terminate the subscription.
741+
The detailed mechanisms for unsubscribe and re-subscribe are protocol-specific and out of scope for this document; for example, subscription lifecycle management is defined in {{rats-network-device-subscription}}.
742+
737743
### Streaming Remote Attestation with a Broker {#streaming-with-broker}
738744

739745
This model includes a Broker to facilitate the distribution of messages between RATS roles, such as Attesters and Verifiers.
@@ -877,6 +883,7 @@ Exactly as in the Challenge/Response and Uni-Directional interaction models, the
877883
In the Publish-Subscribe model above, the Attester publishes Evidence to the topic "AttEv" (= Attestation Evidence) on the PubSub server, to which a Verifier subscribed before.
878884
The PubSub server notifies Verifiers, accordingly, by forwarding the attestation Evidence.
879885
Although the above diagram depicts only full attestation Evidence and Event Logs, later attestations may use "deltas' for Evidence and Event Logs.
886+
The definition of delta Evidence is provided in {{handle-lifecycle-and-propagation-delays}}.
880887
Verifiers appraise the Evidence and publish the Attestation Result to topic "AttRes" (= Attestation Result) on the PubSub server.
881888

882889
#### Attestation Result Generation

0 commit comments

Comments
 (0)