From 0a721fb9b8e69f4bc42961eba887d0d9e0449db3 Mon Sep 17 00:00:00 2001
From: Michael Jones Securing JSON-LD VCs with COSE
for the COSE "typ
" (type) header parameter.
When using this approach, the content type (3)
- SHOULD be application/vc+ld+json
application/vc+ld+json
.
See Common COSE Header Parameters for additional details.
-See Concise - Binary Object Representation (CBOR) Tags for additional - details.
+See the IANA Concise Binary Object Representation (CBOR) Tags registry + for additional details.
@@ -410,24 +409,24 @@- When found in the Protected Header, or - the Protected Claimset, members present in - IANA Assignments for JSON Web Token (JWT) and - IANA Assignments for JSON Object Signing and Encryption (JOSE) - are to be interpreted according to the associated specifications referenced by IANA. + When present in + the JOSE Header or + the JWT Claims Set + members registered in + the IANA JSON Web Token Claims registry or + the IANA JSON Web Signature and Encryption Header Parameters registry + are to be interpreted as defined by the specifications referenced in the registries.
- Registered claims that are present in either - the Protected Header - or the Claimset can be used to help + These parameters and claims can be used to help verifiers discover verification keys.
- If kid
is present in the Protected Header,
+ If kid
is present in the JOSE Header,
a verifier can use this parameter
to obtain a JSON Web Key to use in the
verification process.
@@ -436,7 +435,7 @@
- If iss
is present in the Protected Header
+ If iss
is present in the JOSE Header
or the JWT Claims ,
a verifier can use this parameter
to obtain a JSON Web Key to use in the
@@ -450,7 +449,7 @@
If kid
is also present in the
- Protected Header, it is expected to be useful to
+ JOSE Header, it is expected to be useful to
distinguish the specific key used.
@@ -462,7 +461,7 @@
- If cnf
is present in the Protected Header
+ If cnf
is present in the JOSE Header
or the JWT Claims ,
a verifier can use this parameter
to obtain a JSON Web Key to use in the
@@ -470,7 +469,7 @@
If kid
is also present in the
- Protected Header, it is expected to be
+ JOSE Header, it is expected to be
useful to distinguish the specific key used.
The normative statements in Registered Header Parameter Names @@ -509,7 +508,7 @@
- The data model for the protected header is JSON + The data model for the JOSE Header is JSON (application/json), not JSON-LD (application/ld+json).
@@ -518,27 +517,25 @@
- When replicating claims from the claimset to the header, it is
- RECOMMENDED to use [[RFC7519]], IANA
- Assignments for Header Parameters, and IANA
- Assignments for JSON Web Token (JWT)
- to identify any reserved claims that might be confused with
- members of the [[VC-DATA-MODEL]. This includes but is not
+ When replicating claims from the JWT Claims Set to Header Parameters, it is
+ RECOMMENDED to use [[RFC7519]],
+ the IANA JSON Web Token Claims registry, or
+ the IANA JSON Web Signature and Encryption Header Parameters registry
+ to identify any claims that might be confused with
+ members defined by the [[VC-DATA-MODEL]. This includes but is not
limited to: iss
, kid
,
alg
, iat
,
- exp
and cnf
.
+ exp
, and cnf
.
- The registered claim names vc
and vp
+ The JWT Claim Names vc
and vp
MUST NOT be present as header parameters.
When present, members of the header are to be interpreted and - processed according to - IANA - Assignments for JSON Web Token (JWT) and - IANA - Assignments for JSON Object Signing and Encryption (JOSE). + processed according to the definitions referenced from + the IANA JSON Web Signature and Encryption Header Parameters registry and + the IANA JSON Web Token Claims registry.
Additional members may be present, if they are not understood, @@ -551,7 +548,7 @@
The describes the approach taken by JSON Web
- Tokens to secure claimsets as applying an
+ Tokens to secure JWT Claims Sets as applying an
external proof
.
The normative statements in Securing
@@ -615,23 +612,23 @@ Securing Verifiable Credentials
Requirements.
- Accordingly, Issuers, Holders and Verifiers MUST understand the
+ Accordingly, Issuers, Holders, and Verifiers MUST understand the
JSON Web Token header parameter
"alg": "none"
when securing the [[VC-DATA-MODEL]]
with JSON Web Tokens.
When content types from the [[VC-DATA-MODEL]] are secured using
- JSON Web Tokens, the header parameter "alg":
- "none"
, MUST be used to communicate that a claimset (a
+ JSON Web Tokens, the header parameter "alg": "none"
,
+ MUST be used to communicate that a JWT Claims Set (a
Verifiable Credential or a Verifiable Presentation) has no
integrity protection.
- When a JSON Web Token claimset (a Verifiable Credential or a
+ When a JWT Claims Set (a Verifiable Credential or a
Verifiable Presentation) contains
proof
, and the JSON Web Token header contains
- "alg": "none"
, the claimset MUST be considered to
+ "alg": "none"
, the JWT Claims Set MUST be considered to
have no integrity protection.
@@ -639,7 +636,7 @@
proof
member.
- Issuers, Holders and Verifiers MUST ignore all claimsets that +
Issuers, Holders, and Verifiers MUST ignore all JWT Claims Sets that have no integrity protection.
The following examples are taken from .
These example are from a work in progress draft.
- An issuer might start with a vc+ld+json
claimset, for example:
+ An issuer might start with a vc+ld+json
JWT Claims Set, for example:
{ @@ -1286,7 +1283,7 @@Selective Disclosure
}
- The issuer converts this claimset into the SD-JWT payload, and encodes the token, for example: + The issuer converts this JWT Claims Set into the SD-JWT payload, and encodes the token, for example:
eyJhbGciOiAiRVMyNTYifQ.eyJpc3MiOiAiaHR0cHM6Ly9leGFtcGxlLmNvbS9pc3N1Z @@ -1336,7 +1333,7 @@Selective Disclosure
Notice that, in the case of sd-jwt, the decoded payload - is different from the input claimset: + is different from the input JWT Claims Set:
{ From 99dac5038337e23728dc1a5c4d1088e3f5a0681e Mon Sep 17 00:00:00 2001 From: "Michael B. Jones"Date: Wed, 20 Sep 2023 14:41:32 -0700 Subject: [PATCH 2/5] Update index.html Co-authored-by: Ted Thibodeau Jr --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 01fc1cc3..f19c5d45 100644 --- a/index.html +++ b/index.html @@ -519,7 +519,7 @@ JOSE Header Parameters
When replicating claims from the JWT Claims Set to Header Parameters, it is RECOMMENDED to use [[RFC7519]], - the IANA JSON Web Token Claims registry, or + the IANA JSON Web Token Claims registry, and the IANA JSON Web Signature and Encryption Header Parameters registry to identify any claims that might be confused with members defined by the [[VC-DATA-MODEL]. This includes but is not From c3a64fac2521236b25a6d5cea72d2ec240ef9b7b Mon Sep 17 00:00:00 2001 From: "Michael B. Jones"
Date: Wed, 20 Sep 2023 14:42:07 -0700 Subject: [PATCH 3/5] Update index.html Co-authored-by: Ted Thibodeau Jr --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f19c5d45..e21a2f20 100644 --- a/index.html +++ b/index.html @@ -522,7 +522,7 @@ JOSE Header Parameters
the IANA JSON Web Token Claims registry, and the IANA JSON Web Signature and Encryption Header Parameters registry to identify any claims that might be confused with - members defined by the [[VC-DATA-MODEL]. This includes but is not + members defined by the [[VC-DATA-MODEL]. These include but are not limited to:iss
,kid
,alg
,iat
,exp
, andcnf
. From 73263ec3d2575d961afdf2b8c5ca0691ccccf4fe Mon Sep 17 00:00:00 2001 From: "Michael B. Jones"Date: Wed, 20 Sep 2023 14:42:24 -0700 Subject: [PATCH 4/5] Update index.html Co-authored-by: Ted Thibodeau Jr --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index e21a2f20..f6e7159c 100644 --- a/index.html +++ b/index.html @@ -533,7 +533,7 @@ JOSE Header Parameters
When present, members of the header are to be interpreted and - processed according to the definitions referenced from + processed according to the corresponding definitions found in the IANA JSON Web Signature and Encryption Header Parameters registry and the IANA JSON Web Token Claims registry.
From 439e94d05e56f867d0f6556dea5187844e4f4df2 Mon Sep 17 00:00:00 2001 From: "Michael B. Jones"Date: Wed, 20 Sep 2023 14:42:40 -0700 Subject: [PATCH 5/5] Update index.html Co-authored-by: Ted Thibodeau Jr --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f6e7159c..7a2c36eb 100644 --- a/index.html +++ b/index.html @@ -538,7 +538,7 @@ JOSE Header Parameters
the IANA JSON Web Token Claims registry.- Additional members may be present, if they are not understood, + Additional members may be present. If they are not understood, they MUST be ignored.