Cryptography
MerkleProof2019
The Blockcerts v3 proof suite — a Linked Data Proof that commits a credential to a blockchain-anchored Merkle root.
MerkleProof2019 is the Linked Data Proof suite used by Blockcerts v3. A proof object declares type: "MerkleProof2019" and carries a compact proofValue that encodes the credential's Merkle path and the blockchain anchor transaction.
How it works: the issuer canonicalizes the credential with URDNA2015, hashes it to get a leaf, builds a Merkle tree over all credentials in a batch, writes the Merkle root to a blockchain transaction, and signs each credential's proofValue containing the path from the credential's leaf to the root plus the anchor transaction reference.
Verification is the inverse: canonicalize, hash, walk the proof path by repeatedly hashing with siblings, land on the root, check that the root is actually in the anchor transaction on the declared blockchain. Signature check plus path check plus anchor check equals verified.
Every LearnCoin credential uses MerkleProof2019 and anchors on Base — Ethereum L2. The proof.verificationMethod points to the tenant-specific key in the LearnCoin DID document.
Related terms