Saltar al contenido
ecdsa.com

SHAKE128 y SHAKE256

Las funciones de salida extensible (XOF) de FIPS 202, que producen una salida de la longitud que se pida a partir de la esponja Keccak, con una seguridad de 128 y 256 bits respectivamente si la salida es lo bastante larga.
También se escribeSHAKE128SHAKE256XOFextendable-output function

A diferencia de un hash con un resumen de longitud fija, a una XOF se le piden d bits de salida; su resistencia a colisiones es min(d/2, capacidad/2) y su resistencia a preimágenes, min(d, capacidad/2). SHAKE128 tiene una capacidad de 256 bits y SHAKE256, una de 512. Pedir a SHAKE256 32 o 64 bytes da prefijos del mismo flujo, así que quien la invoque debe aplicar separación de dominio entre usos distintos; cSHAKE (SP 800-185) añade cadenas de personalización explícitas.

SHAKE está en todas partes en la criptografía poscuántica: ML-KEM y ML-DSA expanden sus matrices públicas con SHAKE128 y derivan otros valores con SHAKE256 (FIPS 203 y FIPS 204 las llaman XOF, H, J y G), SLH-DSA tiene conjuntos de parámetros SHAKE y Ed448 calcula sus hashes con SHAKE256. FIPS 186-5 también permite SHAKE como función hash y de máscara en RSASSA-PSS.

Identificadores: los OID 2.16.840.1.101.3.4.2.11 (SHAKE128) y …2.12 (SHAKE256); shake128 y shake256 de OpenSSL con -xoflen; hashlib.shake_256(data).digest(n) de Python.

Estándares y referencias

Todos los términos