-
Notifications
You must be signed in to change notification settings - Fork 28
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
Use PSA Attestation Token as the format for initial attestation reports #131
Conversation
I would welcome feedback from @thomas-fossati @mathias-arm @SimonFrost-Arm @adrianlshaw @hannestschofenig |
@athoelke, thanks for the heads up!
Yes, I think so. Especially when the draft becomes an RFC (which should be "soon"), the referenced document will have very strong guarantees in terms of stability. RFCs are not live documents and cannot move one bit (except for Errata) once they are given a number in the series.
From the point of view of the API user, the only claim they can control is
Backwards compatibility is described in §4.6. The gist is:
A pointer to that section should be enough. |
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.
I agree with Thomas' replies to the general queries. I've made a couple of responses to the inline Issues.
Note that the API specification is important for implementers as well as users of the API. The v1.0 spec stated that the Instance ID claim must be constructed as My question regarding claim construction guidance, is partly triggered by this specific description of the Instance ID claim. Is the additional info in v1.0 (choose one):
|
Ah, thanks for the clarification. I thought this was only for the user side.
The double-hash construction of the ImplID for symmetric keys is still valid and should be documented here. |
Thank you. The follow-up to this specific query, is the generalised question that I originally posed (but with insufficient context to make clear):
|
It seems that a major concern for API users is how to securely use the challenge/nonce in the IAT to create chained attestation schemes. To help those who need to build the "Attestation End-Point (AEP)", it would be helpful to convert Section 7.3 of the PSM into actionable information. |
One thing that I forgot to mention previously is that users may be interested in checking the security & privacy considerations of the PSA token document. In particular: making sure they trust the challenger, and knowing what potentially privacy-sensitive info they are exposing by using the IAT. |
I think that this information could be part of the SRA? (see #132) |
The use cases section currently describes more of the high level ideas around attestation. Not sure if it would be better if this is more aligned with the discussion of the context in the PSA Attestation Token spec (or just defer to that description?)? I can see that providing more guidance on how the initial attestation API can be used as part of an attestation protocol, including chained schemes, could be beneficial here. I've tried capture the need to review that material in #133. |
Can anyone shed light on exactly what the second+third sentence actually means in:
RFC 2104 is the definition of HMAC. But this construction of Instance ID is not using HMAC. |
The thinking behind the double hashing was captured here. |
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.
LGTM, thanks!
67bd797
to
f3f88d9
Compare
The report is now formatted as specified in the IETF draft PSA Attestation Token
Provide rationale for differential construction for symmetric IAK
Co-authored-by: Thomas Fossati <[email protected]> Signed-off-by: Andrew Thoelke <[email protected]>
Oops. Broken rebase was force-pushed... but recovered now. |
Update the API to use the PSA attestation token, defined in https://datatracker.ietf.org/doc/draft-tschofenig-rats-psa-token.
The token and report format, CDDL definition, and example token are no longer required in this specification - these are all provided by the PSA Attestation Token specification.
Fixes #7