POR QUÉ ALGUNOS ALGORITMOS DEJAN DE SER SEGUROS (MD5, SHA-1, DES…)
Introducción
Durante años, nombres como MD5, SHA-1 o DES sonaban a “seguro”.
Muchos sistemas, productos y normativas los recomendaban.
Hoy son considerados obsoletos y peligrosos en la mayoría de contextos.
¿Qué ha pasado?
¿La criptografía estaba mal desde el principio?
¿Hay que desconfiar de todo lo que usamos hoy?
Vamos a poner orden: por qué se deprecan algoritmos, qué significa eso en la práctica y cómo decidir cuándo migrar.
Los algoritmos no son eternos
Un algoritmo criptográfico (hash, cifrado, firma…) se considera seguro porque, con la tecnología y el conocimiento actual, romperlo es inviable en un tiempo razonable.
Pero el tiempo y la investigación científica cambian el panorama:
- Se descubren ataques teóricos más eficientes.
- Aumenta la capacidad de cálculo (CPU, GPU, ASIC, cloud).
- Aparecen colisiones prácticas (dos entradas distintas con el mismo hash).
Lo que ayer era “suficiente”, hoy puede ser fácilmente explotable.
Ejemplos de algoritmos deprecados
MD5
- Función de hash muy popular durante años.
- Hoy se pueden generar colisiones de manera práctica.
- No debe usarse para integridad de seguridad ni mucho menos para contraseñas.
SHA-1
- También se han demostrado colisiones prácticas.
- Se desaconseja para firmas, integridad crítica o nuevas implementaciones.
DES
- Algoritmo de cifrado simétrico con clave de 56 bits.
- Hoy es trivial de romper con hardware moderno.
- Fue sustituido por 3DES y posteriormente por AES.
Qué implica que un algoritmo “ya no sea seguro”
Depende del uso:
- Si usas MD5/SHA-1 para checksums informales (descargas no críticas), el riesgo es bajo.
- Si los usas para firmas, certificados o integridad crítica, el riesgo es inaceptable.
- Si usas DES o claves cortas para cifrado, estás dando una falsa sensación de seguridad.
Recomendaciones prácticas de migración
- Para hash de integridad: usar SHA-256 o superior.
- Para hash de contraseñas: usar bcrypt, scrypt, Argon2 (no “SHA-256 a pelo”).
- Para cifrado simétrico: usar AES (con claves de 128, 192 o 256 bits) en modos seguros.
- Para firmas: usar SHA-256+ con RSA/ECC según contexto.
Cómo saber si estás usando algo obsoleto
- Revisa documentación de tus librerías, frameworks y productos.
- Analiza logs y configuraciones de TLS, VPN, base de datos, etc.
- Consulta guías actualizadas (NIST, ANSSI, CCN-STIC, CIS Benchmarks).
Errores comunes
- Seguir usando algoritmos rotos “porque siempre han estado ahí”.
- Actualizar versiones de software sin revisar qué algoritmos siguen activos.
- Pensar que “como está cifrado, ya da igual el algoritmo”.
- No tener política de revisión periódica de configuraciones criptográficas.
Checklist rápida
- ¿Sigues viendo MD5 o SHA-1 en tu entorno para algo más que checksums informales?
- ¿Tus cifrados usan AES (u otro algoritmo moderno) con claves suficientes?
- ¿Tus contraseñas se gestionan con funciones específicas (bcrypt, Argon2...), no con hash genérico?
- ¿Tienes documentada una política de algoritmos aprobados y no aprobados?
Conclusión
La criptografía no “se rompe de repente”: se erosiona con el tiempo, la investigación y la potencia de cálculo. Ignorar esa evolución es seguir anclado en una seguridad que dejó de existir hace años.
En Gondor te ayudamos a revisar, actualizar y gobernar tus decisiones criptográficas para que lo que pone “seguro” en la documentación lo sea también en la realidad.