Skip to content

Commit bb0e11b

Browse files
committed
Capitalise ecosystem
closes #345
1 parent fe65ee0 commit bb0e11b

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

openid4vc-high-assurance-interoperability-profile-1_0.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ Note that some optional parts of [@!FAPI2_Security_Profile] are not applicable w
172172

173173
Ecosystems SHOULD clearly indicate whether the Wallets and the Issuers need to support Issuer-initiated, Wallet-initiated Issuance or both, including how to send Credential Offer. If Issuer-initiated flows are supported, they MUST use the Credential Offer as defined in Section 4.1 of [@!OIDF.OID4VCI].
174174

175-
Note that ecosystems that aim for a stronger separation between the different Issuers and Wallets are expected to prefer the Issuer-initiated issuance flows and those with stronger integration into wallets (more wallet-centric ecosystems) will likely prefer the Wallet-initiated Issuance.
175+
Note that Ecosystems that aim for a stronger separation between the different Issuers and Wallets are expected to prefer the Issuer-initiated issuance flows and those with stronger integration into wallets (more wallet-centric Ecosystems) will likely prefer the Wallet-initiated Issuance.
176176

177177
If batch issuance is supported, the Wallet SHOULD use it rather than making consecutive requests for a single Credential of the same Credential Dataset. The Issuer MUST indicate whether batch issuance is supported by including or omitting the `batch_credential_issuance` metadata parameter. The Issuer’s decision may be influenced by various factors, including, but not limited to, trust framework requirements, regulatory constraints, applicable laws or internal policies.
178178

@@ -185,7 +185,7 @@ The Authorization Server MUST support metadata according to [@!RFC8414].
185185
The Credential Issuer MUST support metadata retrieval according to Section 12.2.2 of [@!OIDF.OID4VCI].
186186
The Credential Issuer metadata MUST include a scope for every Credential Configuration it supports.
187187

188-
When ecosystem policies require Issuer Authentication to a higher level than possible with TLS alone, signed Credential Issuer Metadata as specified in Section 11.2.3 in [@!OIDF.OID4VCI]
188+
When Ecosystem policies require Issuer Authentication to a higher level than possible with TLS alone, signed Credential Issuer Metadata as specified in Section 11.2.3 in [@!OIDF.OID4VCI]
189189
MUST be supported by both the Wallet and the Issuer. Key resolution to validate the signed Issuer
190190
Metadata MUST be supported using the `x5c` JOSE header parameter as defined in [@!RFC7515]. In this case, the X.509 certificate of the trust anchor MUST NOT be included in the `x5c` JOSE header of the signed request. The X.509 certificate signing the request MUST NOT be self-signed.
191191

@@ -197,7 +197,7 @@ If the Issuer supports Credential Configurations that require key binding, as in
197197

198198
* The Grant Type `authorization_code` MUST be supported as defined in Section 4.1.1 in [@!OIDF.OID4VCI]
199199
* For Grant Type `authorization_code`, the Issuer MUST include a scope value in order to allow the Wallet to identify the desired Credential Type. The Wallet MUST use that value in the `scope` Authorization parameter.
200-
* As a way to invoke the Wallet the custom URL scheme `haip-vci://` MAY be supported. Implementations MAY support other ways to invoke Wallets as agreed upon by trust frameworks/ecosystems/jurisdictions, including but not limited to using other custom URL schemes or claimed "https" scheme URIs.
200+
* As a way to invoke the Wallet the custom URL scheme `haip-vci://` MAY be supported. Implementations MAY support other ways to invoke Wallets as agreed upon by trust frameworks/Ecosystems/jurisdictions, including but not limited to using other custom URL schemes or claimed "https" scheme URIs.
201201

202202
Note: The Authorization Code flow does not require a Credential Offer from the Issuer to the Wallet. However, it is included in the feature set to allow for Issuer initiated Credential issuance.
203203

@@ -218,7 +218,7 @@ Note: Issuers SHOULD consider how long a refresh token is allowed to be used to
218218

219219
Wallets MUST use, and Issuers MUST require, an OAuth2 Client authentication mechanism at OAuth2 Endpoints that support client authentication (such as the PAR and Token Endpoints).
220220

221-
Ecosystems that desire wallet-issuer interoperability on the level of Wallet Attestations SHOULD require Wallets to support the authentication mechanism and Wallet Attestation format specified in Annex E of [@!OIDF.OID4VCI]. When doing so, they might need to define additional ecosystem-specific claims contained in the attestation. Alternatively, ecosystems MAY choose to rely on other Wallet Attestation formats.
221+
Ecosystems that desire wallet-issuer interoperability on the level of Wallet Attestations SHOULD require Wallets to support the authentication mechanism and Wallet Attestation format specified in Annex E of [@!OIDF.OID4VCI]. When doing so, they might need to define additional Ecosystem-specific claims contained in the attestation. Alternatively, Ecosystems MAY choose to rely on other Wallet Attestation formats.
222222

223223
Additional rules apply when using the format defined in Annex E of [@!OIDF.OID4VCI]:
224224

@@ -243,7 +243,7 @@ When using the format specified in Appendix D of [@!OIDF.OID4VCI]:
243243
* The X.509 certificate signing the key attestation MUST NOT be self-signed.
244244
* The X.509 certificate profiles to be used are out of scope of this specification.
245245

246-
Alternatively, ecosystems MAY choose to rely on other key attestation formats, meaning they would need to use a proof type other than `attestation`, define a new proof type, or expand the `jwt` proof type to support other key attestation formats.
246+
Alternatively, Ecosystems MAY choose to rely on other key attestation formats, meaning they would need to use a proof type other than `attestation`, define a new proof type, or expand the `jwt` proof type to support other key attestation formats.
247247

248248
If batch issuance is used and the Credential Issuer has indicated (via `cryptographic_binding_methods_supported` metadata parameter) that cryptographic holder binding is required, all public keys used in Credential Request SHOULD be attested within a single key attestation.
249249

@@ -263,13 +263,13 @@ The following requirements apply to OpenID for Verifiable Presentations, irrespe
263263

264264
Additional requirements for OpenID4VP are defined in (#oid4vp-redirects), (#oid4vp-dc-api), (#oid4vp-credential-formats), (#crypto-suites) and (#hash-algorithms).
265265

266-
Note that while this specification does not define profiles for X.509 certificates used in Verifier authentication (e.g., with the `x509_hash` Client Identifier Prefix), ecosystems are encouraged to select suitable certificate issuing policies and certificate profiles (for example, an mDL ecosystem can use the Reader Authentication Certificate profile defined in Annex B of ISO/IEC 18013-5 with `x509_hash`), or define new ones if there is a good reason to do so. Such policies and profiles MAY specify how information in the certificate corresponds to information in the presentation flows. For example, an ecosystem might require that the Wallet verifies that the `redirect_uri`, `response_uri`, `origin`, or `expected_origin` request parameters match with information contained in the Verifier's end-entity certificate (e.g., its DNS name).
266+
Note that while this specification does not define profiles for X.509 certificates used in Verifier authentication (e.g., with the `x509_hash` Client Identifier Prefix), Ecosystems are encouraged to select suitable certificate issuing policies and certificate profiles (for example, an mDL Ecosystem can use the Reader Authentication Certificate profile defined in Annex B of ISO/IEC 18013-5 with `x509_hash`), or define new ones if there is a good reason to do so. Such policies and profiles MAY specify how information in the certificate corresponds to information in the presentation flows. For example, an Ecosystem might require that the Wallet verifies that the `redirect_uri`, `response_uri`, `origin`, or `expected_origin` request parameters match with information contained in the Verifier's end-entity certificate (e.g., its DNS name).
267267

268268
## OpenID for Verifiable Presentations via Redirects {#oid4vp-redirects}
269269

270270
The following requirements apply to OpenID for Verifiable Presentations via redirects:
271271

272-
* As a way to invoke the Wallet, the custom URL scheme `haip-vp://` MAY be supported by the Wallet and the Verifier. Implementations MAY support other ways to invoke the Wallets as agreed upon by trust frameworks/ecosystems/jurisdictions, including but not limited to using other custom URL schemes or claimed "https" scheme URIs.
272+
* As a way to invoke the Wallet, the custom URL scheme `haip-vp://` MAY be supported by the Wallet and the Verifier. Implementations MAY support other ways to invoke the Wallets as agreed upon by trust frameworks/Ecosystems/jurisdictions, including but not limited to using other custom URL schemes or claimed "https" scheme URIs.
273273
* Signed Authorization Requests MUST be used by utilizing JWT-Secured Authorization Request (JAR) [@!RFC9101] with the `request_uri` parameter.
274274
* Response encryption MUST be used by utilizing response mode `direct_post.jwt`, as defined in Section 8.3 of [@!OIDF.OID4VP]. Security considerations in Section 14.3 of [@!OIDF.OID4VP] MUST be applied.
275275
* Verifiers and Wallets MUST support the "same-device" flow. Verifiers are RECOMMENDED to use only the "same-device" flow unless the Verifier does not rely on session binding for phishing resistance, e.g. in a proximity scenario. If "same-device" flow is used, then:
@@ -330,7 +330,7 @@ Each Credential MUST have its own unique, unpredictable status list index, even
330330

331331
Note: For guidance on preventing linkability by colluding parties, such as Issuer/Verifier pairs, multiple Verifiers, or repeated interactions with the same Verifier, see Section 15.4.1 of [@!OIDF.OID4VCI] and Section 15.5 of [@!OIDF.OID4VP].
332332

333-
Note: If there is a requirement to communicate information about the verification status and identity assurance data of the claims about the subject, the syntax defined by [@!OIDF.ekyc-ida] SHOULD be used. It is up to each jurisdiction and ecosystem, whether to require it to the implementers of this specification.
333+
Note: If there is a requirement to communicate information about the verification status and identity assurance data of the claims about the subject, the syntax defined by [@!OIDF.ekyc-ida] SHOULD be used. It is up to each jurisdiction and Ecosystem, whether to require it to the implementers of this specification.
334334

335335
Note: If there is a requirement to provide the Subject’s identifier assigned and maintained by the Issuer, the `sub` claim MAY be used. There is no requirement for a binding to exist between the `sub` and `cnf` claims. See the Implementation Considerations section in [@!I-D.ietf-oauth-sd-jwt-vc].
336336

@@ -353,7 +353,7 @@ Issuers, Verifiers, and Wallets MUST, at a minimum, support ECDSA with P-256 and
353353
- Wallet Attestations (including PoP) when Annex E of [@!OIDF.OID4VCI] is used;
354354
- Key Attestations when Annex D of [@!OIDF.OID4VCI] is used.
355355
- Verifiers
356-
- the signature of the Verifiable Presentation, e.g., KB-JWT of an SD-JWT VC, or `deviceSignature` CBOR structure in case of ISO mdocs. Verifiers are assumed to determine in advance the cryptographic suites supported by the ecosystem, e.g. mDL Issuers/Verifiers implementing ISO mdocs.
356+
- the signature of the Verifiable Presentation, e.g., KB-JWT of an SD-JWT VC, or `deviceSignature` CBOR structure in case of ISO mdocs. Verifiers are assumed to determine in advance the cryptographic suites supported by the Ecosystem, e.g. mDL Issuers/Verifiers implementing ISO mdocs.
357357
- the status information of the Verifiable Credential or Wallet Attestation.
358358
- Wallets
359359
- signed presentation requests.
@@ -383,7 +383,7 @@ Wallet implementations using the key attestation format specified in Annex D of
383383

384384
## Ecosystem Implementation Considerations
385385

386-
This specification intentionally leaves certain extensions for ecosystems to define, in order to enable broad compatibility across differing or even conflicting requirements. Below are the extension points listed in this specification:
386+
This specification intentionally leaves certain extensions for Ecosystems to define, in order to enable broad compatibility across differing or even conflicting requirements. Below are the extension points listed in this specification:
387387

388388
- Which flow(s) to adopt: presentation, issuance, or both (see (#scope))
389389
- For presentation, whether to use the W3C Digital Credentials API, Redirects with custom URL schemes, and/or Redirects with claimed `https` scheme URIs (see (#scope))
@@ -397,11 +397,11 @@ This specification intentionally leaves certain extensions for ecosystems to def
397397

398398
### Non-normative Examples of Ecosystem-specific Extensions of this Specification
399399

400-
Below are two non-normative examples illustrating how an ecosystem may define the above elements to achieve its specific goals and preferences.
400+
Below are two non-normative examples illustrating how an Ecosystem may define the above elements to achieve its specific goals and preferences.
401401

402402
#### Example 1: Baseline Interoperability without pre-existing relationships
403403

404-
An Ecosystem that prioritizes interoperability among all Wallets, Issuers and Verifiers, without requiring any pre-existing relationships, could define the following ecosystem-specific extensions of this specification:
404+
An Ecosystem that prioritizes interoperability among all Wallets, Issuers and Verifiers, without requiring any pre-existing relationships, could define the following Ecosystem-specific extensions of this specification:
405405

406406
- Use this specification for both presentation and issuance with the following requirements:
407407
- No additional cryptographic suites and hash algorithms are defined.
@@ -415,11 +415,11 @@ An Ecosystem that prioritizes interoperability among all Wallets, Issuers and Ve
415415
- Wallets use DC API where possible and when they have credentials available. As a fallback mechanism when DC API is not available, Wallets register for the `haip-vp://` custom scheme, where possible.
416416
- No additional X.509 certificate profile is defined.
417417

418-
Making these choices maximizes interoperability between the parties in the ecosystem while minimizing the burden on Issuers and Verifiers. This comes at the expense of an increased burden on Wallets as well as the potential privacy and security issues in (#interop-key-attestations).
418+
Making these choices maximizes interoperability between the parties in the Ecosystem while minimizing the burden on Issuers and Verifiers. This comes at the expense of an increased burden on Wallets as well as the potential privacy and security issues in (#interop-key-attestations).
419419

420420
#### Example 2: Achieving Compatibility with Existing Deployments of ISO/IEC 18013-5
421421

422-
An Ecosystem that prioritizes achieving compatibility with existing deployments could define the following ecosystem-specific extensions of this specification:
422+
An Ecosystem that prioritizes achieving compatibility with existing deployments could define the following Ecosystem-specific extensions of this specification:
423423

424424
- Use this specification only for presentation with the following requirements:
425425
- Wallets and Verifiers support only the mdoc Credential Format.
@@ -726,9 +726,9 @@ The technology described in this specification was made available from contribut
726726
-05
727727

728728
* mandate support for same device flow for redirect-based OpenID4VP
729-
* add ecosystem guidance section
729+
* add Ecosystem guidance section
730730
* change wallet attestation format from mandatory to recommended
731-
* update crypto suites to require at least ECDSA w/ P-256 and SHA-256 for verifying signed artificats; and made ecosystem-specific exceptions for crypto suites and hash algorithms if certain criteria is not met
731+
* update crypto suites to require at least ECDSA w/ P-256 and SHA-256 for verifying signed artificats; and made Ecosystem-specific exceptions for crypto suites and hash algorithms if certain criteria is not met
732732
* removed intent_to_retain mandatory
733733
* add small note about signed requests
734734
* clarify batch issuance requirements
@@ -738,7 +738,7 @@ The technology described in this specification was made available from contribut
738738
* remove requirement that SD-JWT `iss` is a https url
739739
* add section about the OIDF conformance tests
740740
* add implementation considers around browser/OS limitations
741-
* combine text about ecosystem profiling of X.509 certifications
741+
* combine text about Ecosystem profiling of X.509 certifications
742742
* add guidance around key sizes
743743
* require wallets (that render images from credential metadata) to support png and svg, and data: and https: urls
744744
* clarity text around flows that are defined in this specification
@@ -754,8 +754,8 @@ The technology described in this specification was made available from contribut
754754
* update etsi tl and DC API references
755755
* update VP & VCI references to be to 1.0 Final
756756
* add separate custom url schemes for issuance and presentation to replace the haip:// scheme
757-
* support for haip-vp:// and haip-vci:// custom url schemes is now an ecosystem decision
758-
* allow ecosystems the option to use key attestations other than those defined in Annex D of [@!OIDF.OID4VCI] in some cases
757+
* support for haip-vp:// and haip-vci:// custom url schemes is now an Ecosystem decision
758+
* allow Ecosystems the option to use key attestations other than those defined in Annex D of [@!OIDF.OID4VCI] in some cases
759759
* clarify nonce endpoint must be present when cryptographic_binding_methods_supported is
760760
* remove various requirements around claims present in SD-JWT VC as upstream spec covers them
761761
* require ephemeral encryption keys in VP

0 commit comments

Comments
 (0)