makadeade
home about archive (feed)

Choosing a hash function for 2030 and beyond: SHA-2 vs SHA-3 vs BLAKE3

Published: July 5th 2026 (week 27 of 2026) in programming

An interesting blog post about SHA-256, SHA-512, and BLAKE3. Same as the author of that post, I have made BLAKE3 my hash function of choice for my personal projects wherever and whenever possible.

BLAKE3 is the successor to the BLAKE2 hash function (and a member of the BLAKE family of hash functions). See the informational IETF submission for the BLAKE3 Hashing Framework for extra fun.

I continue to use BLAKE2, the BLAKE2b variety, wherever BLAKE3 is not available. For example, I use BLAKE2b as the checksum function in btrfs, because BLAKE3 is not supported by btrfs.

Configure btrfs to use BLAKE2b as the checksum function
mkfs.btrfs --csum blake2 /dev/foo

Another example is my Viua VM project, which runs on Linux, FreeBSD, and OpenBSD. Viua's linker offers several choices of the hash function used to create the .note.gnu.build-id ELF section, but Linux is the only platform that has BLAKE3 available by default. The last time I looked it was a pain in the ass to get BLAKE3 on either FreeBSD or OpenBSD.

Tags

Next: Control your monitor with ddcutil

Previous: Micron: WTF?