Hi, all,
On Thu, May 15, 2025 at 04:54:37PM +0100, rfc-edi...@rfc-editor.org wrote:
Authors,
While reviewing this document during AUTH48, please resolve (as
necessary) the following questions, which are also in the XML file.
1) <!-- [rfced] Please insert any keywords (beyond those that appear
in the title) for use on https://www.rfc-editor.org/search. -->
Remote Attestation
EAT profile
Evidence
RATS
IoT
2) <!-- [rfced] The sentence below seems to be missing a verb (such as
designed, used, etc.). May we rephrase the sentence as follows to
improve readability?
Original:
The Arm Platform Security Architecture (PSA) is a family of
hardware and firmware security specifications, as well as
open-source reference implementations, to help device makers and
chip manufacturers build best-practice security into products.
Perhaps:
The Arm Platform Security Architecture (PSA) is a family of
hardware and firmware security specifications, as well as
open-source reference implementations, that is designed to help
device makers and chip manufacturers build best-practice security
into products.
-->
While we are at it, we could improve the whole Abstract a bit.
Abstract
OLD:
The Arm Platform Security Architecture (PSA) is a family of hardware and
firmware security specifications, as well as open-source reference
implementations, to help device makers and chip manufacturers build
best-practice security into products. Devices that are PSA compliant can
produce attestation tokens as described in this memo, which are the
basis for many different protocols, including secure provisioning and
network access control. This document specifies the PSA attestation
token structure and semantics.
The PSA attestation token is a profile of the Entity Attestation Token
(EAT). This specification describes what claims are used in an
attestation token generated by PSA compliant systems, how these claims
get serialized to the wire, and how they are cryptographically
protected.
NEW:
The Arm Platform Security Architecture (PSA) is a family of hardware and
firmware security specifications, along with open-source reference
implementations, aimed at helping device makers and chip manufacturers
integrate best-practice security into their products. Devices that
comply with PSA can generate attestation tokens as described in this
memo, which serve as the foundation for various protocols, including
secure provisioning and network access control. This document specifies
the structure and semantics of the PSA attestation token.
The PSA attestation token is a profile of the Entity Attestation Token
(EAT). This specification describes the claims used in an attestation
token generated by PSA-compliant systems, how these claims are
serialized for transmission, and how they are cryptographically
protected.
3) <!-- [rfced] Is the Application domain specified as the security
domain outside the SPE in the definition for NSPE? Please clarify.
Original:
NSPE:
Non Secure Processing Environment, the security domain outside of
the SPE, the Application domain, typically containing the
application firmware, real-time operating systems, applications
and general hardware.
Perhaps:
Non-Secure Processing Environment (NSPE):
The security domain (Application domain) outside of the SPE that
typically contains the application firmware, real-time operating
systems, applications, and general hardware.
-->
The proposed rewrite looks correct.
4) <!-- [rfced] Is "them" and "it" referring to "PSA claims" in this
sentence?
Original:
The Attesting Environment is responsible for collecting the
information to be represented in PSA claims and to assemble them
into Evidence. It is made of two cooperating components:
Perhaps:
The Attesting Environment is responsible for collecting the
information to be represented in PSA claims and assembling them
into Evidence. PSA claims are made of two cooperating components:
-->
"them" refers to "PSA claims", "It" refers to "The Attesting
Environment". So:
Perhaps-bis:
The Attesting Environment is responsible for collecting the
information to be represented in PSA claims and to assemble them into
Evidence. The Attesting Environment is made of two cooperating
components:
5) <!-- [rfced] May we rephrase the following sentence for clarity?
Original:
It MUST be represented as a string made of nineteen numeric
characters: a thirteen-digit [EAN-13], followed by a dash "-",
followed by the five-digit versioning information described in
[PSA-Cert-Guide].
Perhaps:
It MUST be represented as a string made of nineteen numeric
characters: a thirteen-digit [EAN-13], followed by a dash "-",
followed by the five-digit versioning information described in
[PSA-Cert-Guide].
-->
"Original" and "Perhaps" look exactly the same :-)
6) <!-- [rfced] We have updated the following sentence for clarity.
Please review and let us know any objections.
Original:
The following claims are part of the PSA token (and therefore still
Evidence) but aim to help receivers, including relying parties,
with the processing of the received attestation Evidence.
Current:
The following claims are part of the PSA token (and are therefore
still Evidence). However, they aim to help receivers, including
Relying parties, with the processing of the received attestation
Evidence.
-->
"Current" is a step up from "Original," but there's still a bit more
info we need.
Perhaps:
The following claims, although part of Evidence, do not reflect the
internal state of the Attester. Instead, they aim to help receivers,
including Relying Parties, in processing the received attestation
Evidence.
7) <!-- [rfced] Please review whether any of the notes in this
document should be in the <aside> element. It is defined as "a
container for content that is semantically less important or
tangential to the content that surrounds it"
(https://authors.ietf.org/en/rfcxml-vocabulary#aside).
-->
All the "note" instances seem semantically relevant.
8) <!-- [rfced] We have updated "certs" in the sentence below to
"certifications" for consistency. The use of "certs" has also been
updated throughout the rest of the document. Please let us know any
objections.
Original:
Certified public keys require the manufacturer to run the
certification authority (CA) that issues X.509 certs for the IAKs.
Current:
Certified public keys require the manufacturer to run the
certification authority (CA) that issues X.509 certifications for
the IAKs.
-->
It should be "X.509 certificates" rather than "X.509 certifications".
(And "Certification Authority" rather than "certification authority".)
9) <!-- [rfced] To clarify, are the reference values described below
registered with the Verifier? Or are the claims in this profile
compared to reference values in addition to being registered with the
Verifier?
Original:
In addition, the Verifier will typically operate a policy where
values of some of the claims in this profile can be compared to
reference values, registered with the Verifier for a given
deployment, in order to confirm that the device is endorsed by the
manufacturer supply chain.
Perhaps:
In addition, the Verifier will typically operate a policy where
values of some of the claims in this profile can be compared to
reference values and registered with the Verifier for a given
deployment in order to confirm that the device is endorsed by the
manufacturer supply chain.
Or:
In addition, the Verifier will typically operate a policy where
values of some of the claims in this profile can be compared to
reference values that are registered with the Verifier for a given
deployment in order to confirm that the device is endorsed by the
manufacturer supply chain.
-->
"Or" seems the most correct, although a bit too long / verbose.
Or-bis:
The Verifier typically has a policy where it compares some claims in
this profile to reference values registered with it for a given
deployment. This verification process serves to confirm that the
device is endorsed by the manufacturer supply chain.
10) <!-- [rfced] Should "verification key material to the Verifier" be
rewritten as follows for clarity?
Original:
[PSA-Endorsements] defines a protocol based on the [RATS-CoRIM]
data model that can be used to convey PSA Endorsements, Reference
Values and verification key material to the Verifier.
Perhaps:
[PSA-Endorsements] defines a protocol based on the data model
described in [RATS-CoRIM] that can be used to convey PSA
Endorsements and Reference Values, and to verify key material to
the Verifier.
-->
Not really. [PSA-Endorsements] provides a way to tell PSA Verifiers
about:
* Reference Values,
* Endorsed Values, and
* verification key material (i.e., public keys associated with PSA
devices).
The "Original" looks correct.
11) <!-- [rfced] Reference-related questions:
a) The following reference appears to be a code repository that was
last updated in August 2023. "iat-verifier" only appears on the page
as a link;
is the goal to point readers to the iat-verifier tree? Please review.
Yes, Since iat-verifier is not released separately from the TF-M tools
(e.g., as a pypi package), the goal is to give the reader a pointer into
the relevant codebase.
Currently, we have updated the document as described below to follow
the RFC style guidance (see
https://www.rfc-editor.org/styleguide/part2/#ref_repo). We may make
more updates depending on the answer to the question above.
Original:
[IAT-VERIFIER]
Linaro, "iat-verifier", 2023,
<https://git.trustedfirmware.org/TF-M/tf-m-tools.git/tree/
iat-verifier>.
Current:
[IAT-VERIFIER]
Trusted Firmware, "iat-verifier", commit:
0b49b00195b7733d6fe74e8f42ed4d7b81242801, 18 August 2023,
<https://git.trustedfirmware.org/TF-M/tf-m-tools.git/tree/iat-verifier>.
We should reference the main branch rather than master:
https://git.trustedfirmware.org/plugins/gitiles/TF-M/tf-m-tools/+/refs/heads/main/iat-verifier/
b) Please review the following reference. The URL provided for [PSA]
redirects to the following link:
https://www.arm.com/architecture/security-features. We found
https://developer.arm.com/documentation/101892/0100/Security-Platform-Security-Architecture?lang=en
(please note that the actual URL contains three hyphens between
"/Security" and "Platform", but XML comments break when more than two
hyphens appear consecutively in a URL). If there are no objections, we
will update the reference as follows.
Original:
[PSA] Arm, "Platform Security Architecture Resources", 2022,
<https://developer.arm.com/architectures/security-
architectures/platform-security-architecture/
documentation>.
Perhaps:
[PSA] Arm, "Security - Platform Security Architecture",
<https://developer.arm.com/architectures/security-
architectures/platform-security-architecture/
documentation>.
OK
c) Note that we have updated the title of the following reference, as
the title of the webpage appears to have changed since 2022. If
another page is preferred, please let us know.
Original:
[PSACertified]
PSA Certified, "PSA Certified IoT Security Framework",
2022, <https://psacertified.org>.
Current:
[PSACertified]
PSA Certified, "Expert IoT Security Framework and
Certification", <https://psacertified.org>.
The title remained quite similar despite the different graphics and
slight reorganisation of the previous content on the web page. An
inspection of the HTML shows:
<head>
<title>PSA Certified: IoT Security Framework and Certification</title>
</head>
So, Perhaps:
[PSACertified]
PSA Certified, "PSA Certified: IoT Security Framework and Certification",
<https://psacertified.org>.
d) It appears as though the goal is to refer to the most recent I-D
prior to deprecation of the "private use range" values. As such, we
have updated the reference to refer to version -08. Please review and
let us know if any updates are needed.
Original:
[PSA-OLD] Tschofenig, H., Frost, S., Brossard, M., Shaw, A. L.,
and T. Fossati, "Arm's Platform Security Architecture (PSA)
Attestation Token", Work in Progress, Internet-Draft,
draft-tschofenig-rats-psa-token-07, 1 February 2021,
<https://datatracker.ietf.org/doc/html/draft-tschofenig-
rats-psa-token-07>.
-->
No, here we want to reference the last version of the document which
defined PSA_IO_PROFILE_1, that is -07.
(Aside: the "Work in Progress" sounds a bit misleading because in this
case we are referring to a very specific version which is frozen in
time.)
12) <!-- [rfced] We have updated the reference for [STD96] to include
entries for both of the RFCs (9052 and 9338) that comprise the STD.
Please review consider whether the text should specifically refer to
RFC 9052 only or if the current update is acceptable.
Original:
COSE_Sign1 is used for digital signatures and COSE_Mac0 for
MACs, as defined in the COSE specification [STD96].
[STD96] Schaad, J., "CBOR Object Signing and Encryption (COSE):
Structures and Process", STD 96, RFC 9052,
DOI 10.17487/RFC9052, August 2022,
<https://www.rfc-editor.org/rfc/rfc9052>.
Current:
COSE_Sign1 is used for digital signatures and COSE_Mac0 for
MACs as defined in the COSE specification [STD96].
[STD96] Internet Standard 96,
<https://www.rfc-editor.org/info/std96>.
At the time of writing, this STD comprises the
following:
Schaad, J., "CBOR Object Signing and Encryption (COSE):
Structures and Process", STD 96, RFC 9052,
DOI 10.17487/RFC9052, August 2022,
<https://www.rfc-editor.org/info/rfc9052>.
Schaad, J., "CBOR Object Signing and Encryption (COSE):
Countersignatures", STD 96, RFC 9338,
DOI 10.17487/RFC9338, December 2022,
<https://www.rfc-editor.org/info/rfc9338>.
Perhaps:
COSE_Sign1 is used for digital signatures and COSE_Mac0 for
MACs as defined in the COSE specification [RFC9052].
-->
Both "Current" and "Perhaps" would be OK.
13) <!-- [rfced] Please review each artwork element and let us know if
any should be marked as sourcecode (or another element) instead.
All the CDDL snippets, e.g.:
```
<artwork><![CDATA[
psa-nonce = (
nonce-label => psa-hash-type
)]]></artwork>
```
should probably be marked as 'sourcecode type="cddl"' instead of
artwork.
In addition, review the updates to sourcecode with type="cddl". If
<sourcecode> is used elsewhere in the document, please consider
whether the type should be set. The current list of preferred values
for "type" is available at
<https://www.rfc-editor.org/rpc/wiki/doku.php?id=sourcecode-types>.
If the current list does not contain an applicable type, feel free to
suggest additions for consideration. Note that it is also acceptable
to leave the "type" attribute not set. -->
In the examples, there are a couple of JSON and CBOR-DIAG instances that
could be tagged as such.
14) <!-- [rfced] Terminology
a) We note that <tt> tags are used with a few terms
throughout the document. We also note that these terms also appear
without <tt> tags. Please consider whether updates are needed for
consistency. The pattern of use is unclear to us.
<tt>bootseed</tt> vs. bootseed
<tt>eat_profile</tt> vs. eat_profile
<tt>nonce</tt> vs. nonce
WRT claim names (including those listed above), our preference is to
align with the convention established in RFC9711 (EAT), i.e., quoted.
<tt>hardware</tt> vs. hardware
<tt>configuration</tt> vs. configuration
WRT to AR4SI Trustworthiness Vector claims (including those listed
above), our preference is to use the same convention as the one used in
EAT, i.e., quoted.
b) Please let us know how we should update the following terms for
consistency throughout the document.
EAT nonce claim vs. nonce claim vs. Nonce claim
"EAT nonce claim" as in RFC9711
Arm's Platform Security Architecture vs. The Arm Platform Security
Architecture
Boot Seed vs. bootseed
Boot Seed or "bootseed" (quoted) are good.
claims-set vs. claims sets (Appendix A)
PSA-token claims-set vs. PSA claims-set (Appendix A)
-->
claims set (without hyphen), as per RFC9711.
Also, "relying party" should be "Relying Party", as per RFC9334.
15) <!-- [rfced] FYI - We have added expansions for abbreviations upon
first use per Section 3.6 of RFC 7322 ("RFC Style Guide"). The
abbreviated form of each term is used thereafter. Please review each
expansion in the document carefully to ensure correctness.
-->
OK
16) <!-- [rfced] Please review the "Inclusive Language" portion of the
online Style Guide
<https://www.rfc-editor.org/styleguide/part2/#inclusive_language> and
let us know if any changes are needed. Updates of this nature
typically result in more precise language, which is helpful for
readers. Note that our script did not flag any words in particular,
but this should still be reviewed as a best practice. -->
OK
Thank you.
Thank you!
Adrian, Hannes, Mathias, Simon, Thomas.
--
auth48archive mailing list -- auth48archive@rfc-editor.org
To unsubscribe send an email to auth48archive-le...@rfc-editor.org