Expand description
Rust SDK for the Label 309 Proof-of-Existence standard.
This crate is a byte-parity sibling of the TypeScript (@cardanowall/sdk-ts)
and Python (cardanowall-sdk) SDKs. It independently reproduces the exact
canonical-CBOR bytes, validation verdicts, and cryptographic outputs of those
implementations, proven against the same shared cross-implementation test
vectors.
The public surface mirrors the other SDKs: a standalone structural validator, a public verifier, a recipient verifier with sealed-PoE decryption, and a gateway-agnostic HTTP client. Nothing here trusts a publisher or an issuer server; a verifier needs only transaction metadata, optionally the content bytes, and a public blockchain explorer.
§Cargo features
client(default) — the gateway-agnostic HTTPclientnamespace, the production blocking-reqwesttransport, and the seed-backed recordSignerimplementation. This is the only feature that pulls in an HTTP stack.
Building with --no-default-features yields a transport-free crate that
keeps the entire structural validator, the pure verifier pipeline, the
SSRF / deny-host egress guards, and the cryptographic primitives. In that
configuration the verifier::verify_tx entry point has no built-in
transport: a caller injects its own
FetchTransport via
VerifyTxInput::fetch_outbound.
Modules§
- cbor
- Hand-rolled canonical CBOR encoder and strict canonical decoder.
- certificate
- Label 309 Inclusion Certificate — a self-contained, standalone-verifiable proof of inclusion.
- client
- Gateway-agnostic HTTP client for the Label 309 service surface.
- cose
- COSE_Sign1 construction and verification (RFC 9052) for Label 309 record signatures, plus the Ed25519 primitive the signatures ride on and the COSE_Key decoder used to resolve out-of-band signer keys.
- estimate
- A tight upper-bound estimator for the canonical-CBOR record size.
- hash
- Hash primitives: SHA-256, BLAKE2b-256, and dual-hash digests.
- hex
- Hexadecimal encode/decode helpers.
- ids
- Crockford base32 and prefixed resource identifiers.
- kdf
- HKDF-SHA256 key derivation (RFC 5869).
- merkle
- Binary Merkle tree root, inclusion proof, and verification (RFC 9162).
- poe_
standard - Label 309 v1 Proof-of-Existence record wire format.
- recipient
- Bech32 codec and
age/age1pqcrecipient string encode/decode. - sealed_
poe - The sealed-PoE construction (
enc.scheme: 1): multi-recipient and passphrase encryption for Proof-of-Existence content. - seed_
derive - Deterministic key derivation from a single 32-byte master seed.
- seed_
encoding - Checksummed string encoding for the 32-byte identity seed.
- unicode_
nfkc16 - Pinned Unicode 16.0.0 NFKC normalization.
- verifier
- Public and recipient verifiers over Cardano transaction metadata.