codexproof

glossary / BLAKE3

a cryptographic hash function from 2020, built on the BLAKE2 lineage, that is extremely fast on ordinary CPUs because it hashes in a tree and can use SIMD lanes and threads.

cidschnorr lineagewasm
BLAKE3 - BLAKE3's seat in the pipeline - the amber stage where exact bytes become the 32-byte name, nearly for free

BLAKE3's seat in the pipeline - the amber stage where exact bytes become the 32-byte name, nearly for free.

Hand-authored SVG for this glossary, 2026. Pipeline stages verified against node.rs (canonical_bytes, line 133) and cid.rs.

Etymology and backstory

BLAKE was a finalist in the NIST SHA-3 competition (2008 to 2012) - it lost to Keccak but was widely admired for speed and simplicity. BLAKE2 (2013) became the practical favorite for performance-sensitive systems. BLAKE3 (2020, by Jack O'Connor, Jean-Philippe Aumasson, and collaborators) restructured the compression into an internal Merkle tree, which is why it parallelizes and why it doubles as an extendable-output function. The family borrows core design DNA from Daniel Bernstein's ChaCha stream cipher.

Ecosystem

adopted where hashing sits on the hot path - package managers, dedup systems, the Bao verified-streaming project. Its 32-byte default output matches the size of an Ed25519 public key, which keeps codexproof's arithmetic tidy: names, keys, and link targets are all the same width.

In codexproof

BLAKE3 hashes the canonical bytes of every provenance node to produce the cid. It was chosen because sealing sits on the capture path - within the measured ~15us of sealing per node, the hash is nearly free (the ~11us in that budget is the Ed25519 signature, not the digest).

"BLAKE3 is the hash you pick when hashing is on the hot path - SHA-3-competition credentials, and it disappears into the noise at our envelope sizes."

All terms · Questions & answers · The verifier