Informática
Generador de hash: MD5, SHA-1, SHA-256 y SHA-512
Escribe un texto o pega bytes en hexadecimal y obtén al instante las huellas con todos los algoritmos habituales. Pega un hash en el campo de verificación para saber si coincide y con qué algoritmo.
Qué es un hash y para qué sirve
Una función hash transforma datos de cualquier longitud en una huella de longitud fija: 128 bits para MD5, 256 para SHA-256. Basta cambiar una sola letra para que la huella cambie por completo, y es imposible volver a los datos a partir de la huella.
Por eso los hashes sirven para comprobar que una descarga está íntegra, para identificar datos sin guardarlos, para firmar documentos y, con algoritmos lentos y sal, para almacenar contraseñas. Git identifica cada versión con un SHA-1; Bitcoin se basa en SHA-256.
MD5 y SHA-1 ya no son seguros: se pueden construir a propósito dos archivos distintos con la misma huella. Siguen siendo útiles contra errores de transmisión, pero la seguridad requiere SHA-256 o superior.
Errores frecuentes
- Comparar un hash calculado sobre un texto con un salto de línea o un espacio de más: un carácter invisible lo cambia todo.
- Guardar contraseñas con MD5 o SHA-256 a secas: son demasiado rápidos de probar en masa. Hacen falta algoritmos lentos como bcrypt o Argon2.
- Pensar que un hash se puede descifrar: no es un cifrado. Las webs que lo 'invierten' solo lo buscan en tablas de hashes ya calculados.
Preguntas frecuentes
¿Puedo obtener el texto a partir del hash?
No. Una buena función hash no se invierte; solo se puede adivinar el texto y comparar. Por eso las contraseñas cortas o comunes se encuentran igualmente.
¿Cómo compruebo un archivo descargado?
Calcula el hash del archivo con una herramienta del sistema (sha256sum en Linux, Get-FileHash en Windows) y compáralo con el publicado. Si difiere un solo carácter, el archivo es distinto.
¿Por qué el mismo texto da hashes distintos en programas distintos?
Normalmente por la codificación o los finales de línea: un texto guardado con CRLF o en Latin-1 tiene bytes distintos del mismo texto en UTF-8 con LF, y por tanto otro hash.
Cómo funciona este cálculo
El texto se convierte primero en bytes con UTF-8. SHA-1, SHA-256, SHA-384 y SHA-512 se calculan con la API Web Crypto del navegador, según FIPS 180-4. MD5 sigue la RFC 1321: los datos se completan hasta un múltiplo de 512 bits con su longitud y cada bloque pasa por 64 pasos de sumas, rotaciones y funciones lógicas sobre cuatro palabras de 32 bits.
Cálculos relacionados
Seguridad de contraseñas
Entropía en bits y tiempo para adivinarla, con los patrones débiles detectados. Nada sale del navegador.
Conversor Base64
De texto, entero, hexadecimal o binario a Base64 y viceversa, con los grupos de 6 bits explicados.
Conversor de timestamp Unix
De timestamp Unix a fecha y hora y viceversa: segundos, milisegundos, UTC y hora local.
Checksum CRC32 y Adler-32
CRC-32, CRC-32C, cuatro variantes de CRC-16, CRC-8, Adler-32 y Fletcher-16 de un texto o de bytes hexadecimales.