Cómo usar el generador de hash
- Escribe o pega el texto que quieres convertir en hash.
- Los resúmenes (digest) MD5, SHA-1, SHA-256, SHA-384 y SHA-512 se calculan mientras escribes y se muestran en hexadecimal.
- Para comprobar un valor, pega el hash esperado en el campo de comparación; la herramienta te dice si coincide.
Los hashes se calculan en tu navegador con la Web Crypto API y JavaScript; el texto que introduces nunca se sube ni se almacena.
Qué es un hash criptográfico
Una función hash convierte una entrada de cualquier longitud en una huella de longitud fija, llamada resumen (digest). Un buen hash criptográfico es:
- Determinista: la misma entrada produce siempre el mismo resumen.
- Unidireccional: no es viable recuperar la entrada a partir del resumen.
- Resistente a colisiones: no es viable encontrar dos entradas distintas con el mismo resumen.
- Sensible: cambiar un solo bit de la entrada cambia aproximadamente la mitad de los bits de la salida.
SHA-256("hello") = 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
SHA-256("hello\n")= 5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03
Cómo elegir un algoritmo
| Algoritmo | Tamaño del resumen | Estado |
|---|---|---|
| MD5 | 128 bits | Roto: se pueden generar colisiones rápidamente con un hardware normal. Solo para sumas de comprobación sin fines de seguridad. |
| SHA-1 | 160 bits | Roto en cuanto a resistencia a colisiones: se han demostrado públicamente colisiones prácticas. Se está retirando. |
| SHA-256 | 256 bits | Seguro y la opción moderna más habitual. |
| SHA-384 / SHA-512 | 384 / 512 bits | Seguros; SHA-512 puede ser más rápido que SHA-256 en CPU de 64 bits. |
Para cualquier cosa relacionada con la seguridad (firmas, certificados, integridad de descargas de réplicas que no son de confianza) usa SHA-256 o más fuerte. MD5 y SHA-1 siguen siendo aceptables solo para detectar corrupción accidental cuando nadie intenta falsificar una coincidencia.
Errores habituales
Hacer un hash no es cifrar
El cifrado es reversible con una clave; el hash no es reversible en absoluto. No se puede «descifrar» un hash. Aun así, las entradas cortas o comunes pueden encontrarse adivinando: un atacante simplemente calcula el hash de valores candidatos hasta que uno coincide, y por eso existen tablas de búsqueda con el MD5 de palabras comunes.
Nunca guardes contraseñas con un hash rápido simple
MD5, SHA-1 e incluso SHA-256 están diseñados para ser rápidos, lo que permite a los atacantes probar enormes cantidades de contraseñas por segundo con GPU. Guarda las contraseñas con una función de hash de contraseñas específica, deliberadamente lenta y con sal: Argon2id, scrypt o bcrypt. Estas añaden una sal única por contraseña y un factor de trabajo ajustable.
# No lo hagas
stored = sha256(password)
# Hazlo así (Python, argon2-cffi)
from argon2 import PasswordHasher
stored = PasswordHasher().hash(password)
Diferencias invisibles en la entrada
Un salto de línea final, un final de línea de Windows (\r\n) o una normalización Unicode distinta producen un hash completamente diferente. echo hello | sha256sum calcula el hash de hello\n; usa printf 'hello' o echo -n para igualar el resultado de arriba. Esta herramienta calcula el hash de los bytes UTF-8 de exactamente lo que has escrito.
Verificar sumas de comprobación de archivos
Las descargas de software suelen publicar una suma de comprobación SHA-256. Calcula el hash del archivo que has descargado y compáralo con el valor publicado:
| Sistema | Comando |
|---|---|
| Linux | sha256sum file.iso |
| macOS | shasum -a 256 file.iso |
| Windows PowerShell | Get-FileHash file.iso -Algorithm SHA256 |
| Windows cmd | certutil -hashfile file.iso SHA256 |
En Linux, sha256sum -c SHA256SUMS comprueba todos los archivos que figuran en un archivo de sumas de comprobación. Una suma de comprobación demuestra que el archivo coincide con lo que calculó el editor; solo demuestra autenticidad si la propia suma procede de una fuente de confianza, como un archivo firmado o una página HTTPS. Puedes confirmar el certificado de un sitio con el comprobador de certificados SSL.
2CF24DBA... y 2cf24dba... son el mismo hash. Algunas herramientas dan la salida en Base64 en lugar de hexadecimal; convierte con Codificar y decodificar Base64 antes de comparar.Preguntas frecuentes
¿Se puede revertir o descifrar un hash?
No. Las funciones hash descartan información por diseño. Las entradas cortas o comunes pueden recuperarse adivinando y comparando, pero no invirtiendo la función.
¿Sigue siendo seguro usar MD5?
No para seguridad. Producir colisiones es trivial, así que MD5 no debe usarse para firmas, certificados ni contraseñas. Sigue siendo válido para detectar corrupción accidental de archivos o como clave de caché.
¿Qué hash debo usar para contraseñas?
Ninguno de los de esta página. Usa Argon2id, scrypt o bcrypt mediante una biblioteca mantenida, que se encarga de la sal y de los factores de trabajo por ti.
¿Por qué mi hash es distinto del de otra herramienta?
Normalmente porque la entrada es distinta: un salto de línea o un espacio de más, otra codificación de caracteres, o calcular el hash de un archivo frente al de su contenido de texto. Compara los bytes exactos de los que se calcula el hash.
Actualizado