{"slug": "blake3-servil", "title": "BLAKE3-Servil", "summary": "Zooko announced BLAKE3-Servil on 2026-10-26, a new fork of the BLAKE3 secure hash function codebase that keeps the upstream implementation's speed and adds formally proven assembly kernels. BLAKE3 has a thicker security margin than SHA256 — no known attacks faster than brute force break more than 2 of BLAKE3's 7 rounds, versus up to 39 of SHA256's 64 — and is already used for build-ids in Android, Chrome, ChromeOS and Fuchsia and in Mesa, Ceph, OpenZFS, Solana, Nix, Bazel and rustc. The fork's assembly inner loops come with proofs that they compute the algorithm correctly, access memory safely and run in constant time.", "body_md": "By Zooko, 2026-10-26\n\n*AI content disclosure: no AI-generated content here! Human-generated text all the way. Please read\nit with your human eyeballs! Robots are welcome to read this, too.*\n\n`BLAKE3-Servil` is a new fork of the `BLAKE3` codebase, and it is *awesome*.\n\n`BLAKE3` is a secure hash function. It comes with [a high-quality implementation](https://blake3.io)\nby the original authors. Much of the awesomeness of this new fork is actually due to them and to\nthat upstream implementation (see [README.md](https://github.com/johnservil/BLAKE3/blob/servil/README.md#what-comes-from-official-blake3)).\n\nSecure hash functions are a critical linchpin of digital infrastructure. They are embedded into every piece of our infrastructure—every operating system, network protocol, and cryptographic algorithm—and the security of each piece depends on the security of its secure hash function.\n\nSecure hash functions are also the primary tool for building cryptographic systems that can survive attack by quantum computers. The recent advances in quantum computation have intensified attention on secure hash functions.\n\nBLAKE3 has a thicker security margin than SHA256 does. There are no known attacks faster than brute force that break more than 2 out of 7 of BLAKE3's rounds. In contrast, there are known attacks faster than brute force that break up to 39 out of 64 of SHA256's rounds.\n\n(Source: [https://hashsma.sh](https://hashsma.sh), screenshotted 2026-10-25.)\n\n`BLAKE3` has quietly become the de facto standard secure hash function [for systems\ninfrastructure](https://github.com/johnservil/BLAKE3/blob/servil/docs/who-uses-blake3.md#systems-infrastructure): compilers, linkers, file systems,\nGPU drivers, build systems, storage back ends, etc. The build-id in Android, Chrome, ChromeOS, and\nFuchsia binaries is a BLAKE3 hash. It's in Mesa (every Linux GPU driver), Ceph, Hugging Face's\nBuckets / IETF XET, Meta's new source control tool Sapling/Mononoke, Google's TensorStore, Unreal\nEngine, OpenZFS, Solana, Nix, Bazel, Buck2, Wasmer, the Swift compiler, rustc, cargo, and\niroh. These projects needed a hash function that was both fast and secure, and chose the one that\nwas both. BLAKE3's immediate ancestor, BLAKE2, is used in WireGuard and the Linux kernel.\n\nBLAKE3 is a leading contender to become the de facto standard secure hash function [in the next\ngeneration of post-quantum zero-knowledge\nproofs](https://github.com/johnservil/BLAKE3/blob/servil/docs/who-uses-blake3.md#post-quantum-zero-knowledge-proofs). It is in Plonky3, SP1, stwo,\nJolt, WHIR, Miden, Winterfell, Aztec, Binius64, Flock. BLAKE2 is used in Zcash and a large number of\nother systems.\n\nIt is fast. Like 10 *times* as fast, or more, as the competitors in many cases. (See\n[benchmarks](https://johnservil.github.io/bench-hashes).) This could be a big improvement for a lot\nof use cases, where you need to ensure data integrity and user security, and you have to do it\nefficiently.\n\nFor example, [install the `b3sum` executable from this release](https://github.com/johnservil/BLAKE3/blob/servil/b3sum/README.md#installation) and\nrun `time b3sum $FILES` on some files that you want to calculate a secure hash of. Then compare its\nperformance to `md5sum` and `sha256sum`. Then post screenshots of your comparison on Twitter or\nbsky. :-)\n\nHow is it so fast? Three ways:\n\n- \nIt takes advantage of multithreading, which it can do because it is a Merkle Tree under the hood, unlike other secure hash functions, which are a linear chain.\n- \nIt takes advantage of Single Instruction Multiple Data (SIMD) vector computation.\n- \nIt is implemented in assembly language! Well, not all of it, but all of the inner loops are.\n\nIt comes with excellent quality assurance:\n\n- \nAll of the assembly language parts are *proven correct* . They come with a proof that they\ncalculate their part of the BLAKE3 algorithm, correctly access memory, and also that they are\nconstant-time. I am super excited that it is now practical to*prove* that substantial\nprograms—like these assembly kernels—are bug-free! This is a fundamental improvement in software\nengineering, after 75 years of endlessly battling against bugs.\n- \nThe parts that aren’t covered by correctness proofs are thoroughly tested. And not *just* thorough as in “100% code coverage”, but even*more* thorough than that. We use a technique\ncalled “mutation testing” (using`cargo-mutants` ) where during the tests, we*insert* a bug into\nthe code and then run the tests to see if they catch the bug, and then automatically do that more\nthan 2000 times, each time trying a different possible bug that could be added to each line of\nthe code.\n- \nIn addition to all of that, we use several other quality-assurance tools: \n  - Guard pages\n  - A self-test on startup\n  - `Shuttle` , which uses a clever method of randomized thread scheduling to uncover concurrency bugs\n- \nIt has extremely thorough and precise [benchmarks](https://johnservil.github.io/bench-hashes/) that exercise many different cases that could practically impact performance for real users.\n- \nFor more information, please read [QUALITY.md](https://github.com/johnservil/BLAKE3/blob/servil/QUALITY.md) .\n\nAnd here’s one reason you might *not* want to use BLAKE3-Servil right away:\n\nI have been intimately involved every step of the way with the requirements, architecture, strategy, quality assurance processes, API design, and managing the AIs, but I haven’t written or read one line of this code. I just told my AIs to write correctness proofs and thorough mutation tests, and to review one another’s work. I employed three of them for this, and I've been actively working together with them on this, day and night for the last month.\n\nPeople have been using AIs to make source code since last December. Less than a year!\n\nAnd a problem is that the AIs can produce slop code.\n\nSo, in this project I had the AIs make three different things: benchmarks that measure the\nperformance of the code, *correctness proofs* that prove that the code has no bugs, and then the\ncode itself. The code itself can then be written in assembly language! Assembly language is faster\nthan modern \"high-level\" programming languages like Rust and Python, but it isn't much used because\nmost human programmers don't know how to write it, and it is easy to write bugs in assembly\nlanguage. But AIs can write assembly language, and the correctness proofs allow us to verify that\nthere are no bugs!\n\nSo in addition to being the best implementation of the best secure hash function, this is also a demonstration of a better way to make software!\n\nThis is the future of software engineering, and I’d like to improve our security and safety\ntechniques even better than this. I—and my AIs—have learned a lot from this project and we’ll try to\nuse what we learned to do even better. For the next step, I’d like to create an update to\nBLAKE3-Servil that makes the correctness proofs and/or memory safety *complete*. Then I’d feel even\nbetter about recommending that people rely on it.\n\nIn the meantime, please try this out, and give feedback and contributions. I feel proud of it, and I hope it serves you well.\n\nP.S. What does \"Servil\" mean? I don't know. I made it up, to be the last name of my AI.", "url": "https://wpnews.pro/news/blake3-servil", "canonical_source": "https://github.com/johnservil/BLAKE3/blob/servil/ANNOUNCE.md", "published_at": "2026-10-29 17:57:52+00:00", "updated_at": "2026-10-29 18:17:45.490351+00:00", "lang": "en", "topics": ["artificial-intelligence"], "entities": ["BLAKE3", "BLAKE3-Servil", "Zooko", "SHA256", "BLAKE2", "b3sum", "Hugging Face"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/blake3-servil", "markdown": "https://wpnews.pro/news/blake3-servil.md", "text": "https://wpnews.pro/news/blake3-servil.txt", "jsonld": "https://wpnews.pro/news/blake3-servil.jsonld"}}