The AlgoVoi Canonicalisation Substrate
An open JCS (RFC 8785) canonicalisation layer and RFC 9421 signing base that turn an agent payment into a deterministic, recomputable, verifiable receipt — one anyone can re-derive from the disclosed fields, without trusting the operator's runtime.
Why canonicalisation is the foundation
If two systems serialise the same JSON differently, they hash to different bytes and a receipt cannot be independently verified. JSON Canonicalization Scheme (RFC 8785) fixes one byte sequence per object — lexicographic key order, no insignificant whitespace, normalised Unicode and number formatting. Over that, SHA-256 gives a stable, content-addressed reference. That is what makes a receipt checkable by a third party or a regulator, not only by the issuer.
What the substrate defines
action_ref—SHA-256(JCS({agent_id, action_type, scope, timestamp_ms})): a stable, content-addressed reference to a payment action, recomputable from the disclosed fields alone.- RFC 9421 proxy-chain signing base (
rfc9421_proxy_chain_v1) — the canonical signing input for HTTP message signatures across a proxy chain. - Compliance receipt & settlement attestation — signed (EdDSA JWS), fail-closed, no-PII evidence that an action was screened and settled, bound to the canonical payload.
- Payment evidence frame — the envelope that carries payment, action and verification evidence together.
Open, and cross-validated across eight languages
The conformance vectors are published open-source under Apache-2.0 and cross-validated byte-identical across eight independent implementations — Python, Node.js, Go, Rust, Java, PHP, .NET and Ruby. Anyone can import the set by digest and confirm their implementation produces the same bytes:
- Vectors & verifier: github.com/chopmob-cloud/algovoi-jcs-conformance-vectors
rfc9421_proxy_chain_v1signing-base digest:sha256:7e5e8f1012eabd6aaae52b0ae4e77e4c8b0392077b620d2d944002a0531901e8
Dated IETF Internet-Drafts
The derivations are written up as Independent-Submission, Informational Internet-Drafts on the IETF Datatracker:
draft-hopley-x402-canonicalisation-jcs-v1draft-hopley-x402-compliance-receiptdraft-hopley-x402-settlement-attestation
Where it runs
The substrate underpins AlgoVoi's compliance-aware payment gateway for the x402, AP2, A2A and MPP agent protocols, across seven blockchains. Full technical reference: docs.algovoi.co.uk/canonicalisation-substrate.
Adopt it
Building on agentic payments? Take the open base, confirm byte-parity, keep the attribution. Three steps:
- Install the reference implementation:
pip install algovoi-substrateornpm i @algovoi/substrate. - Verify byte-parity against the published conformance vectors: confirm your implementation reproduces the pinned digests.
- Reference the discipline by
urn:x402:canonicalisation:jcs-rfc8785-v1and keep the Apache-2.0 NOTICE. Then build your product on top.