Familia de funciones hash criptográficas
Los Algoritmos Hash Seguros son una familia de funciones hash criptográficas publicadas por el Instituto Nacional de Estándares y Tecnología (NIST) como Estándar Federal de Procesamiento de Información (FIPS) de EE. UU. , que incluyen:
- SHA-0 : retrónimo aplicado a la versión original de la función hash de 160 bits publicada en 1993 con el nombre "SHA". Fue retirado poco después de su publicación debido a un "defecto importante" no revelado y reemplazado por la versión ligeramente revisada SHA-1.
- SHA-1 : una función hash de 160 bits que se parece al algoritmo MD5 anterior . Este fue diseñado por la Agencia de Seguridad Nacional (NSA) para ser parte del Algoritmo de Firma Digital . Se descubrieron debilidades criptográficas en SHA-1 y el estándar ya no fue aprobado para la mayoría de los usos criptográficos después de 2010.
- SHA-2 : Una familia de dos funciones hash similares, con diferentes tamaños de bloque, conocidas como SHA-256 y SHA-512 . Se diferencian en el tamaño de las palabras; SHA-256 usa palabras de 32 bits mientras que SHA-512 usa palabras de 64 bits. También existen versiones truncadas de cada estándar, conocidas como SHA-224 , SHA-384 , SHA-512/224 y SHA-512/256 . Estos también fueron diseñados por la NSA.
- SHA-3 : una función hash anteriormente llamada Keccak , elegida en 2012 después de una competencia pública entre diseñadores que no pertenecen a la NSA. Admite las mismas longitudes de hash que SHA-2 y su estructura interna difiere significativamente del resto de la familia SHA.
Los estándares correspondientes son FIPS PUB 180 (SHA original), FIPS PUB 180-1 (SHA-1), FIPS PUB 180-2 (SHA-1, SHA-256, SHA-384 y SHA-512). NIST ha actualizado el borrador de la publicación FIPS 202, estándar SHA-3 separado del estándar Secure Hash (SHS).
Comparación de funciones SHA
En la siguiente tabla, estado interno significa la "suma hash interna" después de cada compresión de un bloque de datos.
Validación
Todos los algoritmos de la familia SHA, como funciones de seguridad aprobadas por FIPS, están sujetos a la validación oficial del CMVP (Programa de validación de módulos criptográficos), un programa conjunto dirigido por el Instituto Nacional Estadounidense de Estándares y Tecnología (NIST) y el Establecimiento Canadiense de Seguridad de las Comunicaciones . (CSE).
Referencias
- ^ "Tabla de medidas". banca.cr.yp.to .
- ^ Tao, Xie; Liu, Fanbao; Feng, Dengguo (2013). Ataque de colisión rápida en MD5 (PDF) . Archivo ePrint de criptología (Informe técnico). IACR .
- ^ Stevens, Marc ; Bursztein, Elie ; Karpman, Pedro; Albertini, Ángel; Markov, Yarik. La primera colisión para SHA-1 completo (PDF) (Informe técnico). Investigación de Google .
- Marc Stevens; Elie Bursztein; Pierre Karpman; Ángel Albertini; Yarik Markov; Álex Petit Bianco; Clément Baisse (23 de febrero de 2017). "Anuncio de la primera colisión SHA1". Blog de seguridad de Google .
- ^ Sin truncamiento, se conoce el estado interno completo de la función hash, independientemente de la resistencia a la colisión. Si la salida se trunca, se debe buscar y encontrar la parte eliminada del estado antes de que se pueda reanudar la función hash, permitiendo que el ataque continúe.
- ^ "La familia de funciones de esponjas Keccak" . Consultado el 27 de enero de 2016 .