0% encontró este documento útil (0 votos)
37 vistas7 páginas

Algoritmos MD5, SHA-1 y SHA-2: Análisis

El documento presenta un análisis detallado de los algoritmos de hash MD5, SHA-1 y SHA-2, incluyendo su funcionamiento, seguridad y aplicaciones. MD5, aunque fue popular, presenta vulnerabilidades significativas y se recomienda su reemplazo por algoritmos más seguros como SHA-256. SHA-1 también es considerado obsoleto debido a ataques de colisión, mientras que SHA-2 y SHA-3 son recomendados para aplicaciones que requieren seguridad criptográfica.

Cargado por

martinsaski2
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
37 vistas7 páginas

Algoritmos MD5, SHA-1 y SHA-2: Análisis

El documento presenta un análisis detallado de los algoritmos de hash MD5, SHA-1 y SHA-2, incluyendo su funcionamiento, seguridad y aplicaciones. MD5, aunque fue popular, presenta vulnerabilidades significativas y se recomienda su reemplazo por algoritmos más seguros como SHA-256. SHA-1 también es considerado obsoleto debido a ataques de colisión, mientras que SHA-2 y SHA-3 son recomendados para aplicaciones que requieren seguridad criptográfica.

Cargado por

martinsaski2
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

SHA1-2, MD5

Grupo 01

Alex Rivas Machín , Borja Gómez Calvo y Martín López de Ipiña Muñoz
Índice
MD5​ 2
Funcionamiento del Algoritmo MD5​ 2
Seguridad y debilidades​ 3
Aplicaciones​ 3
SHA-1 y SHA-2​ 4
Características​ 4
Funcionamiento Base​ 4
Seguridad y debilidades​ 5
Aplicaciones​ 5
Bibliografía​ 6

1
MD5
El MD5 (Message-Digest Algorithm 5) es una función hash criptográfica diseñada para
generar un valor de longitud fija a partir de un mensaje de cualquier tamaño. A diferencia de los
algoritmos de cifrado, MD5 no utiliza ninguna clave en su operación.

Fue desarrollado en 1991 por Ronald Rivest, como una mejora de MD4, y se convirtió en un
estándar ampliamente adoptado en su momento debido a su rapidez y eficiencia.

Funcionamiento del Algoritmo MD5


MD5 es una función hash criptográfica que genera un resumen de 128 bits a partir de una
entrada de cualquier tamaño. Para ello, procesa los datos en bloques de 512 bits, aplicando una
serie de transformaciones matemáticas que incluyen permutaciones, operaciones lógicas y
adiciones modulares, hasta obtener un valor de longitud fija. Este proceso garantiza que incluso
un pequeño cambio en la entrada produzca un hash completamente diferente. El algoritmo
consta de cuatro etapas:

Preparación del mensaje. El algoritmo inicia con la preparación del mensaje original. Se
añaden bits de relleno hasta que la longitud sea 64 bits menor que un múltiplo de 512 bits, y
posteriormente se agregan 64 bits que representan la longitud original del mensaje.

Inicialización y Estructura de Buffers. El proceso utiliza cuatro buffers de 32 bits que se


inicializan con valores hexadecimales predeterminados:

●​ A = 0x67425301
●​ B = 0xEFCDAB89
●​ C = 0x98BADCFE
●​ D = 0x10325476

Procesamiento Principal. El algoritmo procesa el mensaje en bloques de 512 bits a través de


cuatro rondas. Cada ronda aplica una función matemática distinta (F, G, H, I) que emplea
operaciones lógicas fundamentales (OR, AND, XOR, NOT) sobre los buffers. Durante cada
operación:

1.​ Se aplica la función de ronda sobre los valores de B, C y D


2.​ El resultado se suma al valor de A mediante operación módulo 2³²
3.​ Se incorpora una porción del mensaje original y una constante predefinida
4.​ Se realizan desplazamientos y sumas modulares adicionales

Generación del Hash Final. Al completar el procesamiento de todos los bloques, los valores
finales de los cuatro buffers se combinan para generar el hash de 128 bits. Este diseño garantiza
que cualquier modificación en la entrada produzca un hash completamente diferente.

2
Seguridad y debilidades
Aunque MD5 fue ampliamente adoptado como estándar en sus inicios, actualmente presenta
vulnerabilidades significativas que lo hacen inadecuado para aplicaciones de seguridad críticas.
Sus principales debilidades son:

●​ Su bajo costo computacional, que permite realizar ataques de fuerza bruta de manera
eficiente
●​ Su vulnerabilidad a ataques de colisión, donde es posible encontrar dos mensajes
diferentes que produzcan el mismo valor hash

Debido a que MD5 se considera obsoleto, se recomienda utilizar algoritmos más seguros como
SHA-256 o SHA-3.

Aplicaciones
A pesar de sus vulnerabilidades conocidas, MD5 mantiene su utilidad en contextos que no
requieren garantías criptográficas estrictas. Su principal uso actual se centra en la verificación
de integridad de archivos durante las descargas, donde sirve para confirmar que un archivo se
ha transferido correctamente. También se emplea en sistemas de almacenamiento para la
detección de duplicados y en bases de datos para la indexación rápida de archivos.

3
SHA-1 y SHA-2
Los algoritmos de hash seguro (Secure Hash Algorithm) son funciones hash criptográficas
diseñadas para generar valores resumen de longitud fija. Al igual que el algoritmo MD5, no
utilizan ninguna clave en sus operaciones.

SHA-1 fue publicado en 1995 por la NSA como un Estándar Federal de Procesamiento de la
Información (FIPS) de [Link], sucesor de SHA-0 (1993). Posteriormente, el Instituto Nacional de
Estándares y Tecnología (NIST) publicó en 2001 el conjunto de funciones hash criptográficas
SHA-2.

Características

SHA-1 produce un resumen de 160 bits (20 bytes). SHA-2 es una familia que incluye seis
funciones hash con tamaños de resumen de 224, 256, 384 o 512 bits, siendo SHA-256 y SHA-512
las variantes más utilizadas.

Funcionamiento Base

Ambos algoritmos siguen una estructura similar a MD5, procesando los mensajes en bloques
(512 bits para SHA-1 y SHA-256, 1024 bits para SHA-512) y aplicando una serie de operaciones
matemáticas. El proceso consta de cuatro etapas principales:

Preparación del mensaje. El mensaje se rellena de manera similar a MD5, añadiendo bits hasta
que la longitud sea apropiada para el procesamiento en bloques.

Inicialización de Buffers. Los algoritmos utilizan buffers que se inicializan con valores
constantes:

●​ SHA-1: Cinco buffers de 32 bits


●​ SHA-256: Ocho buffers de 32 bits
●​ SHA-512: Ocho buffers de 64 bits

Procesamiento Principal. El procesamiento se realiza en rondas:

●​ SHA-1: 80 rondas utilizando cuatro funciones diferentes


●​ SHA-256: 64 rondas con operaciones más complejas
●​ SHA-512: 80 rondas con operaciones sobre palabras de 64 bits

Durante cada ronda, se aplican operaciones bitwise (AND, OR, XOR), rotaciones y adiciones
modulares.

Generación del Hash Final. Los valores finales de los buffers se concatenan para producir el
hash resultante.

4
Seguridad y debilidades

SHA-1 se considera criptográficamente roto desde 2005, y en 2017 se demostró el primer


ataque de colisión práctico. Sus principales debilidades son:

●​ Vulnerabilidad a ataques de colisión prácticos


●​ Vulnerabilidad a ataques de prefijo elegido, donde un atacante puede generar dos
mensajes con el mismo hash a partir de un prefijo común predeterminado, lo que
compromete especialmente la seguridad en firmas digitales y certificados.

SHA-1 está obsoleto y su uso está desaconsejado, especialmente en aplicaciones criptográficas.


En 2010, múltiples organizaciones recomendaron su sustitución, y el Instituto Nacional de
Estándares y Tecnología (NIST) lo desaconsejó formalmente en 2011, prohibiendo su uso para
firmas digitales en 2013 y estableciendo su eliminación completa para 2030.

Se recomienda migrar a SHA-256 o superior para aplicaciones que requieran seguridad


criptográfica. El último miembro de la familia, SHA-3, fue publicado por NIST en 2015 y, aunque
comparte estándares con sus predecesores, difiere significativamente de la estructura tipo MD5
de SHA-1 y SHA-2. SHA-3 no busca reemplazar a SHA-2, que sigue siendo seguro y ampliamente
utilizado, sino ofrecer una alternativa con un enfoque distinto.

Aplicaciones

SHA-256 es actualmente el estándar de facto para muchas aplicaciones:

●​ Firmas digitales
●​ Certificados SSL/TLS
●​ Criptomonedas (Bitcoin utiliza SHA-256)
●​ Almacenamiento seguro de contraseñas
●​ Verificación de integridad de archivos

5
Bibliografía
IBM i 7.5 (2024). Available at:
[Link]

¿Qué es el algoritmo de hashing MD5 y cómo funciona? ¿Qué es el algoritmo de hashing MD5 y
cómo funciona? Available at: [Link]

Rivest, R.L. (1992) The MD5 Message-Digest Algorithm. Request for Comments RFC 1321.
Internet Engineering Task Force. Available at: [Link]

What is the MD5 Algorithm? ([Link]+00:00) GeeksforGeeks. Available at:


[Link]

‘MD5’ (2025) Wikipedia. Available at:


[Link]

‘Secure Hash Algorithm’ (2025) Wikipedia. Available at:

[Link]

‘SHA-1’ (2025) Wikipedia. Available at:

[Link]

‘SHA-2’ (2025) Wikipedia. Available at:

[Link]

‘SHA-3’ (2025) Wikipedia. Available at:

[Link]

También podría gustarte