¿Qué es un Hash Criptográfico y para qué sirve?
Una función hash criptográfica transforma cualquier bloque de datos en una cadena de longitud fija llamada digest o huella digital. Su característica principal es que es unidireccional: es matemáticamente imposible obtener el texto original a partir del hash.
Casos de uso principales
- Verificación de integridad de archivos: Comprueba que un archivo descargado no ha sido modificado comparando su hash con el publicado por el autor.
- Almacenamiento seguro de contraseñas: Las bases de datos nunca almacenan contraseñas en texto plano, sino su hash (preferiblemente con bcrypt o Argon2).
- Firmas digitales y blockchain: SHA-256 es el algoritmo central de Bitcoin y de los certificados SSL/TLS.
- Detección de duplicados: Comparar hashes de archivos para encontrar duplicados sin leer el contenido completo.
¿Qué algoritmo debo usar?
- SHA-256: Estándar actual de la industria. Seguro para la inmensa mayoría de casos.
- SHA-512: Mayor seguridad, produce hashes más largos. Recomendado para datos muy sensibles.
- SHA-1 y MD5: Obsoletos e inseguros para contraseñas. Solo válidos para checksums rápidos no críticos.