-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updates to Reference Value and Endorsed Values #170
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
update-triple-record = [ | ||
&(subj: 0) => $subject-type-choice | ||
& (mval: 1) => [+measurement-values-map] ; object of the update | ||
? &(authorized-by: 2) => [ + $crypto-key-type-choice ] | ||
&(action: 3) => $update-action-type-choice | ||
] | ||
|
||
$subject-type-choice /= [+environment-map] ; One or more environment that comprise the subject | ||
$subject-type-choice /= [+stateful-environment-record] ; One or more stateful-environments that comprise the subject | ||
|
||
$update-action-type-choice /= add ; The new triple causes a new revision identified by measurement-values-map , to be simply updated/added in Verifier | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The semantics are unclear. Does it mean if the Note: If the goal is to replace the triple that matched, including the parts used for matching, then the object seems insufficient (as it needs to replace the environment / stateful environment). Alternatively, a two-step approach could work, where an x-triple removes the triple to be updated and a new triple is added. Note, this operation should be done atomically since the matching condition in the x-triple represents the state / justification for adding the updated triple. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @nedmsmith : The goal of However, as we are using a (a) Specify what is that is been updated by specifying the type - RefVal/EndVal/CondEnd pertaining to the Subject (b) Rely on the Supply Chain to exactly issue the same Choice: Option - b: is I would request we focus on the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Maybe this part of the discussion should happen in issue #171 since the conclusion would affect the PR definition. |
||
$update-action-type-choice /= replaces ; The triple overwrites pre-existing reference-values/endorsements for the subject identified by $subject-type-choice |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
x-ref-endors-triple-record = [ | ||
&(subj: 0) => $subject-type-choice | ||
& (mval: 1) => [+measurement-values-map] | ||
&(reason: 2) => $reason-type-choice | ||
] | ||
|
||
$reason-type-choice /= obsolete | ||
$reason-type-choice /= insecure |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -1249,6 +1249,25 @@ applies to all measurements in the triple, including those in `measurement-value | |||||
{::include cddl/conditional-endorsement-triple-record.cddl} | ||||||
~~~ | ||||||
|
||||||
#### Update Triple {#sec-update-triple-rec} | ||||||
During supply chain lifecycle it is often necessary that the Verifier Reference-Values or Endorsed Values for a subject needs an update. The below semantics provides a generic mechanism to allow update to existing Reference-Values and Endorsed-Values. | ||||||
|
||||||
The CDDL below, provides a schema that describes the update flow. | ||||||
|
||||||
~~~ cddl | ||||||
{::include cddl/update-record.cddl} | ||||||
~~~ | ||||||
|
||||||
#### X-Triples {#sec-x-triple-rec} | ||||||
For the Supply Chain Systems where only incremental updates are possible, it is essential that obsolete or security vulnerable Reference Values and/or Endorsed Values must be removed using x-ref-endor-triple-record. | ||||||
|
||||||
The CCDL below, provides schema for remving Reference Values and/or Endorsed Values from a Verifier. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
|
||||||
~~~ cddl | ||||||
{::include cddl/x-triples-record.cddl} | ||||||
~~~ | ||||||
|
||||||
|
||||||
## Extensibility {#sec-extensibility} | ||||||
|
||||||
The base CORIM schema is described using CDDL {{-cddl}} that can be extended | ||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why call it
mval
if it means "object"?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
because that is triple speak? If not, that's a good question.