BLAKE2 dérive de BLAKE, finaliste du concours SHA-3, et utilise une itération de type HAIFA qui résiste à l’extension de longueur. Il intègre un mode avec clé (un mode MAC sans HMAC), des paramètres de sel et de personnalisation, ainsi que des variantes de hachage en arbre. Vecteur de test : le BLAKE2b-512 de la chaîne vide commence par 786a02f742015903.
On le trouve dans Argon2 (la fonction de hachage de mots de passe de la RFC 9106 utilise BLAKE2b en interne), WireGuard (BLAKE2s pour le hachage et comme MAC), les jetons locaux PASETO v4 (BLAKE2b avec clé comme MAC ; la v2 l’utilise pour dériver les nonces), crypto_generichash de libsodium, Zcash et de nombreux stockages adressés par le contenu. BLAKE3 (2020) est un successeur distinct, plus rapide, fondé sur un arbre et doté de sa propre spécification.
BLAKE2 n’est pas une fonction de hachage approuvée par le NIST : les modules validés FIPS ne peuvent donc pas l’utiliser pour des services approuvés. En logiciel, sans instructions de hachage, il est généralement plus rapide que SHA-256, mais sur les processeurs dotés des extensions SHA, l’avantage s’inverse : sur un cœur d’Apple M4 Max, OpenSSL 3.6.5 hache BLAKE2b-512 à environ 1,27 Go/s et SHA-256 à 2,85 Go/s.