Saltar al contenido
ecdsa.com

BLAKE2

Una familia de funciones hash rápidas (BLAKE2b para plataformas de 64 bits, con resúmenes de hasta 64 bytes, y BLAKE2s para las de 32 bits, con hasta 32 bytes), especificada en el RFC 7693 y usada en Argon2, WireGuard, PASETO y libsodium.
También se escribeBLAKE2bBLAKE2sRFC 7693

BLAKE2 deriva de BLAKE, finalista del concurso SHA-3, y usa una iteración de tipo HAIFA que resiste la extensión de longitud. Incorpora un modo con clave (un modo MAC sin HMAC), parámetros de sal y de personalización, y variantes de hash en árbol. Vector de prueba: el BLAKE2b-512 de la cadena vacía empieza por 786a02f742015903.

Aparece en Argon2 (el hash de contraseñas del RFC 9106 usa BLAKE2b internamente), WireGuard (BLAKE2s para calcular hashes y como MAC), los tokens locales de PASETO v4 (BLAKE2b con clave como MAC; v2 lo usa para derivar nonces), crypto_generichash de libsodium, Zcash y muchos almacenes direccionados por contenido. BLAKE3 (2020) es un sucesor distinto, más rápido y basado en árboles, con su propia especificación.

BLAKE2 no es un hash aprobado por el NIST, así que los módulos validados según FIPS no pueden usarlo para servicios aprobados. En software sin instrucciones de hash suele ser más rápido que SHA-256, pero en CPU con extensiones SHA la ventaja se invierte: en un núcleo de un Apple M4 Max, OpenSSL 3.6.5 procesa BLAKE2b-512 a unos 1,27 GB/s y SHA-256 a 2,85 GB/s.

Estándares y referencias

Todos los términos