Supply Chain Integrity, Transparency, and Trust (IETF SCITT)
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Upgrade to ocamlformat 0.29.0; fix csvt/sexpt streaming; reformat

- Update .ocamlformat to 0.29.0 across all 591 files
- csvt: reuse single Buffer.t for field reads (no alloc per field)
- sexpt: Obj members decoded from stream into Dict, typed Variant GADT
- Reformat all source files for 0.29.0

+28 -27
+1 -1
.ocamlformat
··· 1 - version = 0.28.1 1 + version = 0.29.0
+1
lexicons/.ocamlformat
··· 1 1 disable = true 2 + version = 0.29.0
+26 -26
lib/scitt.mli
··· 12 12 {2 Example} 13 13 14 14 {[ 15 - (* Create a transparency service with RFC 9162 VDS *) 16 - let vds = Scitt.Vds_rfc9162.in_memory () in 17 - let ts = 18 - Scitt.Transparency_service.v ~service_id:"my-ts" ~vds 19 - ~algorithm:Cose.Algorithm.ES256 20 - ~sign:(Scitt.Signer.of_key ts_private_key) 21 - clock 22 - in 15 + (* Create a transparency service with RFC 9162 VDS *) 16 + let vds = Scitt.Vds_rfc9162.in_memory () in 17 + let ts = 18 + Scitt.Transparency_service.v ~service_id:"my-ts" ~vds 19 + ~algorithm:Cose.Algorithm.ES256 20 + ~sign:(Scitt.Signer.of_key ts_private_key) 21 + clock 22 + in 23 23 24 - (* Register a signed statement *) 25 - let statement = 26 - Scitt.Statement.v ~issuer:"did:web:parsimoni.co" 27 - ~subject:"sha256:abcdef..." ~content_type:"application/spdx+json" 28 - ~payload:sbom_json 29 - in 30 - let signed = Scitt.Signed_statement.sign ~key:issuer_key statement in 31 - let receipt = Scitt.Transparency_service.register ts signed in 24 + (* Register a signed statement *) 25 + let statement = 26 + Scitt.Statement.v ~issuer:"did:web:parsimoni.co" 27 + ~subject:"sha256:abcdef..." ~content_type:"application/spdx+json" 28 + ~payload:sbom_json 29 + in 30 + let signed = Scitt.Signed_statement.sign ~key:issuer_key statement in 31 + let receipt = Scitt.Transparency_service.register ts signed in 32 32 33 - (* Create transparent statement *) 34 - let transparent = Scitt.Transparent_statement.v signed [ receipt ] in 33 + (* Create transparent statement *) 34 + let transparent = Scitt.Transparent_statement.v signed [ receipt ] in 35 35 36 - (* Verify offline *) 37 - match 38 - Scitt.Transparent_statement.verify 39 - ~ts_keys:(fun ~service_id:_ -> Some ts_public_key) 40 - ~issuer_key transparent 41 - with 42 - | Ok stmt -> Format.printf "Verified: %s\n" (Scitt.Statement.issuer stmt) 43 - | Error e -> Format.eprintf "Failed: %a\n" Scitt.pp_error e 36 + (* Verify offline *) 37 + match 38 + Scitt.Transparent_statement.verify 39 + ~ts_keys:(fun ~service_id:_ -> Some ts_public_key) 40 + ~issuer_key transparent 41 + with 42 + | Ok stmt -> Format.printf "Verified: %s\n" (Scitt.Statement.issuer stmt) 43 + | Error e -> Format.eprintf "Failed: %a\n" Scitt.pp_error e 44 44 ]} 45 45 46 46 {2 References}