Repository navigation
Releases: SemanticDataCharter/sdcreceipt
Releases · SemanticDataCharter/sdcreceipt
Release list
sdcreceipt 4.3.0
Receipt 1.1: the same content signed twice, ES256 and ML-DSA-65 (FIPS 204,
post-quantum), by the issuer over the same 32-byte digest. Receipt 1.0 is
unchanged and verifies exactly as before. The issuer's design is in SDCStudio
design_docs/vsl/receipt-1.1-post-quantum-PRD.md.
Added
verifyaccepts Receipt 1.1. Every listed signature must verify with
the algorithm itsalgnames; a signature this tool does not implement, or
one the version does not allow, is a failure, not a skip. A new check,
signatures.algorithms, fails a Receipt that says1.1without both an
ES256and anML-DSA-65signature, even when no schema is passed.- ML-DSA-65 keys load from a key document. The issuer publishes a second
key (algML-DSA-65) beside the P-256 one;--keysadmits it, and a
signature whose key is the wrong type for itsalgis reported on that
signature. ML-DSA-65 signatures are decoded as strictly as ES256 ones: 4412
unpadded base64url characters, 3309 bytes, nothing else. - Five 1.1 conformance vectors (sixteen in all) and the 1.1 schema, from
the issuer's kit.
Changed
cryptography>=50.0(was 42): ML-DSA-65 verification arrived in 48.0.0.
Install: pip install sdcreceipt==4.3.0 (PyPI). Earlier versions are listed in CHANGELOG.md.