Skip to content

Commit

Permalink
Merge branch 'main' into cf-help
Browse files Browse the repository at this point in the history
  • Loading branch information
thomas-fossati authored Jan 30, 2025
2 parents 83d03f2 + ba4ab94 commit 29b69e7
Show file tree
Hide file tree
Showing 15 changed files with 279 additions and 67 deletions.
6 changes: 5 additions & 1 deletion cddl/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,14 @@ SHELL := /bin/bash
include cddl-check-template.mk
include frags.mk

check:: check-cmw check-cmw-examples check-eat check-eat-examples check-collected-cddl
check:: check-cmw check-cmw-examples
check:: check-eat check-eat-examples
check:: check-collected-cddl check-signed-cbor-cmw check-signed-json-cmw

$(eval $(call cddl_check_template,cmw,$(CMW_FRAGS),$(CMW_CBOR_EXAMPLES),$(CMW_JSON_EXAMPLES)))
$(eval $(call cddl_check_template,eat,$(EAT_FRAGS),$(EAT_CBOR_EXAMPLES),$(EAT_JSON_EXAMPLES)))
$(eval $(call cddl_check_template,collected-cddl,$(COLLECTED_CDDL_FRAGS),$(unused),$(unused)))
$(eval $(call cddl_check_template,signed-cbor-cmw,$(SIGNED_CBOR_CMW_CDDL_FRAGS),$(unused),$(unused)))
$(eval $(call cddl_check_template,signed-json-cmw,$(SIGNED_JSON_CMW_CDDL_FRAGS),$(unused),$(unused)))

clean: ; rm -f $(CLEANFILES)
4 changes: 2 additions & 2 deletions cddl/cmw-collection.cddl
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
json-collection = {
? "__cmwc_t": ~uri / oid
+ &(label: text) => json-cmw / c2j-tunnel
+ &(label: text) => json-cmw
}

cbor-collection = {
? "__cmwc_t": ~uri / oid
+ &(label: (int / text)) => cbor-cmw / j2c-tunnel
+ &(label: (int / text)) => cbor-cmw
}
4 changes: 4 additions & 0 deletions cddl/cmw-example-2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[
"application/eat+cwt; eat_profile=\"tag:psacertified.org,2023:psa#tfm\"",
"I0faVQ"
]
2 changes: 0 additions & 2 deletions cddl/cmw-tunnel.cddl

This file was deleted.

5 changes: 3 additions & 2 deletions cddl/collection-example-2.diag
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
],
/ attester B / 1: 1668576935(h'2347da55'),
/ attester C / 2: [
"#cmw-j2c-tunnel",
'[ "application/eat+jwt", "Li4u", 8 ]'
"application/eat+jwt",
h'2e2e2e',
8
]
}
7 changes: 4 additions & 3 deletions cddl/collection-example-2.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@
"e30K",
4
],
"attester B (tunnelled)": [
"#cmw-c2j-tunnel",
"g3gYYXBwbGljYXRpb24vZWF0LXVjcytjYm9yQaAE"
"attester B": [
"application/eat-ucs+cbor",
"oA",
4
]
}
7 changes: 4 additions & 3 deletions cddl/eat-example-1.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@
"e30K",
4
],
"attester B (tunnelled)": [
"#cmw-c2j-tunnel",
"g3gYYXBwbGljYXRpb24vZWF0LXVjcytjYm9yQaAE"
"attester B": [
"application/eat-ucs+cbor",
"oA",
4
]
},
"iss": "evidence collection daemon",
Expand Down
30 changes: 27 additions & 3 deletions cddl/frags.mk
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ CMW_FRAGS := cmw-start.cddl
CMW_FRAGS += cmw-record.cddl
CMW_FRAGS += cmw-cbor-tag.cddl
CMW_FRAGS += cmw-collection.cddl
CMW_FRAGS += cmw-tunnel.cddl
CMW_FRAGS += common-types.cddl
CMW_FRAGS += rfc9193.cddl
# CBOR tags used in examples
Expand All @@ -18,14 +17,14 @@ CMW_CBOR_EXAMPLES += collection-example-1.diag
CMW_CBOR_EXAMPLES += collection-example-2.diag

CMW_JSON_EXAMPLES := cmw-example-1.json
CMW_JSON_EXAMPLES += cmw-example-2.json
CMW_JSON_EXAMPLES += collection-example-1.json
CMW_JSON_EXAMPLES += collection-example-2.json

EAT_FRAGS := eat-start.cddl
EAT_FRAGS += cmw-start.cddl
EAT_FRAGS += cmw-record.cddl
EAT_FRAGS += cmw-collection.cddl
EAT_FRAGS += cmw-tunnel.cddl
EAT_FRAGS += common-types.cddl
EAT_FRAGS += rfc9193.cddl

Expand All @@ -35,6 +34,31 @@ COLLECTED_CDDL_FRAGS := cmw-start.cddl
COLLECTED_CDDL_FRAGS += cmw-record.cddl
COLLECTED_CDDL_FRAGS += cmw-cbor-tag.cddl
COLLECTED_CDDL_FRAGS += cmw-collection.cddl
COLLECTED_CDDL_FRAGS += cmw-tunnel.cddl
COLLECTED_CDDL_FRAGS += common-types.cddl
COLLECTED_CDDL_FRAGS += rfc9193.cddl
COLLECTED_CDDL_FRAGS += signed-cbor-cmw.cddl
COLLECTED_CDDL_FRAGS += signed-cbor-cmw-headers.cddl
COLLECTED_CDDL_FRAGS += signed-json-cmw.cddl
COLLECTED_CDDL_FRAGS += signed-json-cmw-headers.cddl

SIGNED_CBOR_CMW_CDDL_FRAGS := signed-cbor-cmw.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += signed-cbor-cmw-headers.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += cmw-start.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += cmw-record.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += cmw-cbor-tag.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += cmw-collection.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += cmw-tunnel.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += common-types.cddl
SIGNED_CBOR_CMW_CDDL_FRAGS += rfc9193.cddl

SIGNED_JSON_CMW_CDDL_FRAGS += signed-json-cmw.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += signed-json-cmw-headers.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += cmw-start.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += cmw-record.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += cmw-cbor-tag.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += cmw-collection.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += cmw-tunnel.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += common-types.cddl
SIGNED_JSON_CMW_CDDL_FRAGS += rfc9193.cddl


2 changes: 1 addition & 1 deletion cddl/rfc9193.cddl
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ tchar = "!" / "#" / "$" / "%" / "&" / "\'" / "*"
/ DIGIT / ALPHA
quoted-string = %x22 *( qdtext / quoted-pair ) %x22
qdtext = SP / %x21 / %x23-5B / %x5D-7E
quoted-pair = "\" ( SP / VCHAR )
quoted-pair = "\\" ( SP / VCHAR )

Media-Type-Name = type-name "/" subtype-name

Expand Down
12 changes: 12 additions & 0 deletions cddl/signed-cbor-cmw-headers.cddl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
signed-cbor-cmw-protected-hdr = {
1 => int ; alg
2 => "application/cmw+cbor" ; cty
* cose.label => cose.values
}

signed-cbor-cmw-unprotected-hdr = {
* cose.label => cose.values
}

cose.label = int / text
cose.values = any
6 changes: 6 additions & 0 deletions cddl/signed-cbor-cmw.cddl
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
signed-cbor-cmw = [
protected: bytes .cbor signed-cbor-cmw-protected-hdr
unprotected: signed-cbor-cmw-unprotected-hdr
payload: bytes .cbor cbor-cmw
signature: bytes
]
9 changes: 9 additions & 0 deletions cddl/signed-json-cmw-headers.cddl
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
signed-json-cmw-protected-hdr = {
"alg": text
"cty": "application/cmw+json"
* text => text
}

signed-json-cmw-unprotected-hdr = {
* text => text
}
6 changes: 6 additions & 0 deletions cddl/signed-json-cmw.cddl
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
signed-json-cmw = {
"protected": text .b64u (text .json signed-json-cmw-protected-hdr)
? "header": text .b64u (text .json signed-json-cmw-unprotected-hdr)
"payload": text .b64u (text .json json-cmw)
"signature": text .b64u bytes
}
Loading

0 comments on commit 29b69e7

Please sign in to comment.