¡Descarga FUNCIONES HASH PARA LA CRIPTOGRAFIA y más Monografías, Ensayos en PDF de Criptografía y Seguridad del Sistema solo en Docsity!
Tema 4: Integridad y autenticación
Función de resumen (HASH)
UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS
Facultad de Ciencias y Tecnologías Computacionales
Función HASH
FCITEC|UCI An Overview of Cryptography Gary C. Kessler. 2019
- Una función HASH, también conocida como
resumen del mensaje ( message digest ) y
cifrado de un solo sentido, son algoritmos que,
en esencia, no usan llave de cifrado. Por el
contrario, un valor de longitud fija es el
resultado del texto original haciendo imposible
obtener el contenido o la longitud del texto en
claro.
Función HASH
Mensaje = M ⇒ Función Resumen = h(M)
Firma (rúbrica): 𝑟 = 𝐸𝑑𝐸 {ℎ(𝑀)}
FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
𝑑𝐸 es la clave privada del emisor que firmará h(M)
¿Cómo se comprueba la identidad en destino? Se descifra la
rúbrica r con la clave pública del emisor 𝑒
𝐸
. Al mensaje en claro
recibido M’ (si viniese cifrado, se descifra) se le aplica la misma
función hash que en emisión. Si los valores son iguales, la firma
es auténtica y el mensaje íntegro:
Calcula: 𝐸 𝑒𝐸 𝑟 = ℎ(𝑀), Compara: ℎ(𝑀’) = ℎ(𝑀)
Seguridad de las funciones HASH
h(M) será segura si tiene las siguientes características:
1. Unidireccionalidad: conocido un resumen h(M), debe ser
computacionalmente imposible encontrar M a partir de dicho
resumen.
2. Compresión: a partir de un mensaje de cualquier longitud, el
resumen h(M) debe tener una longitud fija. Lo normal es que
la longitud de h(M) sea menor que el mensaje M.
3. Facilidad de cálculo: debe ser fácil calcular h(M) a partir de
un mensaje M.
FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
Algoritmos
- MD5: Ron Rivest 1992. Mejoras al MD4 y MD2 (1990), es
más lento pero con mayor nivel de seguridad. Resumen de
128 bits.
- SHA-1: Del NIST, National Institute of Standards and
Technology, 1994. Similar a MD5 pero con resumen de 160
bits. Existen otras nuevas propuestas conocidas como SHA-
256 y SHA-512.
- RIPEMD: Comunidad Europea, RACE, 1992. Resumen de 160
bits.
- N-Hash: Nippon Telephone and Telegraph, 1990. Resumen:
128 bits.
FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
Algoritmos
- Snefru: Ralph Merkle, 1990. Resúmenes entre 128 y 256 bits. Ha sido criptoanalizado y es lento.
- Tiger: Ross Anderson, Eli Biham, 1996. Resúmenes de hasta 192 bits. Optimizado para máquinas de 64 bits (Alpha).
- Panama: John Daemen, Craig Clapp, 1998. Resúmenes de 256 bits de longitud. Trabaja en modo función hash o como cifrador de flujo.
- Haval: Yuliang Zheng, Josef Pieprzyk y Jennifer Seberry,
Admite 15 configuraciones diferentes. Hasta 256 bits. FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
MD
Algoritmo básico de mensaje digest 5
c) La salida de esta operación ( 128 bits) se
convierte en el nuevo conjunto de 4 vectores
A’B’C’D’ y se realiza la misma función con el
segundo bloque de 512 bits del mensaje, y así
hasta el último bloque del mensaje.
d) Al terminar, el algoritmo entrega un resumen
que corresponde a los últimos 128 bits de
estas operaciones.
FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
MD5. Vulnerabilidades
- El origen de la determinación del algoritmo de cifrado MD 5 como vulnerable o “oficialmente roto” data de 2004 , cuando Xiaoyun Wang y su equipo anunciaron el descubrimiento de colisiones de hash para MD 5. En función de este artículo, quedó demostrado que era posible encontrar una colisión a partir de dos mensajes de 1024 bits con un determinado valor inicial. FCITEC|UCI Artículo de Wang: http://merlot.usc.edu/csac-f06/papers/Wang05a.pdf Tomado de: https://empresas.blogthinkbig.com/md5-vulnerabilidades-y- evoluciones-y-ii/
SHA-1 (Secure Hash Algorithm)
- Es muy similar a MD5. También trata bloques de 512 bits de
mensaje con un total de 80 vueltas, pero en este caso el
vector inicial tiene una palabra más de 32 bits (E) por lo que
el resumen será de 160 bits. Fue declarado obsoleto por el
NIST en 2013.
FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre Un resumen de 128 bits (MD5) tiene una complejidad algorítmica de tan sólo 2 64 , un valor en la actualidad muy comprometido. En cambio la función SHA-1, Secure Hash Algorithm, entregará un resumen de 160 bits; con una complejidad algorítmica de 2 80 .
SHA- 2
- Incluye varias modificaciones y mejoras con respecto al SHA-1.
- El SHA-2 comprende 5 algoritmos: el SHA-224 (SHA-1+), SHA-256, SHA-384 y SHA-512 que pueden producir valores de 224, 256, 384 o 512 bits respectivamente.
- Se recomienda usar SHA-1, SHA-224 y SHA-256 para mensajes menores de 2 64 bits y bloques de 512. Para mensajes menores de 2 128 se recomienda usar SHA-384 y SHA-512 y bloques de 1024. FCITEC|UCI Curso de Criptografía Aplicada 2018 Dr. Jorge Ramió Aguirre
SHA- 3
- SHA-3 se basa en una estrategia llamada la construcción de
esponja. Esta técnica fue desarrollada por Bertoni, Daemen,
Peeters y Van Assche.
- En lugar de usar una función de compresión, el básico
“bloque de construcción”, es una función 𝑓 que mapea
cadenas de bits de longitud fija en cadenas de bits de la
misma longitud.
- La construcción de esponjas es versátil y puede ser usada
para construir varias herramientas criptográficas.
- Para las funciones HASH uno de sus usos es que puede
producir salidas de longitud arbitraria.
FCITEC|UCI Cryptography. Theory and practice. Paterson et al. 2019.
SHA- 3
- SHA- 3 consiste en cuatro funciones HASH (SHA 3 - 224 , SHA 3 - 256 , SHA 3 - 384 y SHA 3 - 512 ) donde los sufijos denotan la longitud del resumen del mensajes.
- SHA- 3 se deriva de la función Keccak que se propuso en la competencia SHA- 3. Actualmente es el estándar HASH del NIST.
- La función 𝑓 es una función biyectiva que opera sobre una cadena de bits de longitud 1600. Consiste en 24 rondas cada cual se compone de 5 sub-rondas.
- Existen 2 funciones adicionales incluidas en SHA- 3 (SHAKE 128 , SHAKE 256 ) que son funciones de salida extensible (en inglés XOF). La diferencia entre estas y una función HASH es que estas tienen salida variable. FCITEC|UCI Cryptography. Theory and practice. Paterson et al. 2019.
Tema 4: Integridad y autenticación
Función de resumen (HASH)
UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS
Facultad de Ciencias y Tecnologías Computacionales