Generador de hash

Genera hashes MD5, SHA-1, SHA-256, SHA-384 y SHA-512 de texto.

100 % privado — funciona totalmente en tu navegador. Tus datos se procesan en tu dispositivo y nunca se envían a Internet.
MD5
SHA-1
SHA-256
SHA-384
SHA-512

Acerca del generador de hash

Este generador de hash gratuito calcula los hashes MD5, SHA-1, SHA-256, SHA-384 y SHA-512 de cualquier texto, todos a la vez y en directo mientras escribe.

Los hashes se calculan en su navegador usando la API Web Crypto — su texto nunca se sube.

Qué es un hash

Una función hash toma una entrada de cualquier longitud y produce una huella de longitud fija. Déle un solo carácter o un libro entero; SHA-256 devuelve 64 caracteres hexadecimales en ambos casos.

Tres propiedades la hacen útil:

Determinista. La misma entrada da siempre el mismo hash. Siempre, en cualquier máquina, para siempre.

Efecto avalancha. Cambie un solo bit de la entrada y aproximadamente la mitad de los bits de salida se invierten. hello y hellp producen hashes sin ninguna relación visible. No existe el «casi» — un hash o coincide exactamente o no le dice nada.

De un solo sentido. No se puede trabajar hacia atrás desde un hash hasta la entrada. La función descarta información deliberadamente y no existe inversa.

Esa última propiedad es la clave, y es la razón por la que un hash no es cifrado.

Hacer hash no es cifrar

El cifrado es bidireccional: con la clave recupera el original. Ese es todo su propósito.

El hash es de un solo sentido por diseño. No hay clave ni camino de vuelta. Un documento de 500 páginas y una sola letra se convierten ambos en 64 caracteres — la mayor parte de la información simplemente ha desaparecido.

Así que la pregunta que responde un hash nunca es «¿qué era esto?» sino «¿es esto lo mismo que aquello?». Compare dos hashes: idénticos significa que las entradas eran idénticas; distintos significa que no lo eran.

De aquí surge un malentendido común. «Descifrar» un hash MD5 no existe. Lo que hacen realmente los sitios de búsqueda es calcular por adelantado el hash de miles de millones de entradas comunes y comprobar si la suya está en la tabla. No están invirtiendo la función; están reconociendo un valor que ya han visto. Cualquier cosa poco habitual no está en la tabla.

MD5 y SHA-1 están rotos — esto es lo que significa

Ambos siguen apareciendo por todas partes, y ambos son inseguros para fines de seguridad. Conviene saber exactamente en qué sentido.

Una colisión son dos entradas distintas que producen el mismo hash. Eso debería ser inviable. Para MD5 hoy es trivial — se pueden producir colisiones en segundos en un ordenador corriente. SHA-1 cayó en 2017, cuando Google demostró dos PDF distintos con el mismo hash SHA-1, y el ataque solo se ha abaratado desde entonces.

Por qué importa: si alguien puede construir dos archivos con hashes coincidentes, un hash deja de probar que un archivo es el que usted esperaba. Un documento firmado podría cambiarse por otro documento con la misma huella.

Dónde MD5 sigue valiendo: para detectar corrupción accidental. Si quiere saber si una descarga llegó intacta, o si dos archivos de su disco son duplicados, MD5 funciona y es rápido. La corrupción aleatoria no producirá una colisión.

Dónde no vale: en cualquier situación en la que alguien pueda estar intentando engañarle — verificar la autenticidad de una descarga, firmar o almacenar contraseñas.

Use SHA-256 para todo lo que importe. No tiene ningún ataque práctico de colisión conocido, es rápido y es el valor por defecto en los sistemas modernos. SHA-512 no es apreciablemente más seguro para la mayoría de los usos, aunque puede ser más rápido en hardware de 64 bits.

Nunca almacene contraseñas con un hash simple

Este es el mal uso de las funciones hash con consecuencias más graves, y provoca filtraciones reales.

Hacer el hash de una contraseña con SHA-256 y guardar el resultado no basta. El problema son los hashes rápidos: SHA-256 está diseñado para ser veloz, y el hardware moderno calcula miles de millones por segundo. Un atacante que robe su base de datos simplemente prueba cada contraseña probable hasta que los hashes coinciden.

Dos problemas adicionales lo empeoran. Contraseñas idénticas producen hashes idénticos, así que un atacante ve al instante qué cuentas comparten contraseña. Y las tablas precalculadas hacen que las contraseñas comunes se reconozcan sin ningún esfuerzo.

El enfoque correcto usa una función de hash de contraseñas construida para ser lenta y consumir memoria: bcrypt, scrypt o Argon2. Añaden una sal aleatoria única por contraseña, de modo que contraseñas idénticas se convierten en hashes distintos, y son deliberadamente costosas — ajustadas para que una sola comprobación tarde una fracción de segundo perceptible, lo que hace inviables miles de millones de intentos.

Use una biblioteca adecuada. El almacenamiento de contraseñas no es algo que se construya a partir de primitivas de hash.

Para qué sirven realmente los hashes

  • Verificar descargas — comparar la suma de comprobación publicada con el archivo recibido
  • Detectar archivos duplicados — hashes idénticos significan contenidos idénticos
  • Detección de cambios — ¿se ha modificado este archivo, registro o configuración?
  • Direccionamiento por contenido — Git nombra cada commit y cada objeto por su hash
  • Integridad de datos — confirmar que una transferencia o una copia de seguridad llegó sin corromperse
  • Claves de caché — un identificador corto y estable derivado de un contenido más largo
  • Firmas digitales — se calcula el hash del documento y después se firma el hash

Cómo usarlo

  • Escriba o pegue su texto
  • Los hashes se actualizan en directo para cada algoritmo
  • Copie cualquier hash con su botón de copia

Conviene saber

  • La longitud de salida es fija. MD5 da 32 caracteres hexadecimales, SHA-1 da 40, SHA-256 da 64 y SHA-512 da 128 — sea cual sea el tamaño de la entrada.
  • Todo cuenta. Un espacio final, un salto de línea al final de un archivo o un fin de línea distinto cambian el hash por completo. Esta es la razón habitual de que una suma de comprobación «debería» coincidir y no lo haga.
  • La codificación importa. Esta herramienta calcula el hash de su texto como UTF-8. Hacer el hash de los mismos caracteres en otra codificación da un resultado distinto.
  • Las mayúsculas son convención, no significado. Los hashes se muestran a menudo en mayúsculas o minúsculas; el valor es el mismo. Compare sin distinguir mayúsculas.
  • Una entrada vacía también tiene hash — una constante bien conocida para cada algoritmo.
  • Para archivos grandes es mejor usar las herramientas propias de su sistema operativo: certutil -hashfile en Windows, shasum -a 256 en macOS y Linux.

Preguntas frecuentes

¿Cuál es la diferencia entre hash y cifrado?

El cifrado es reversible — con la clave correcta recupera los datos originales, que es de lo que se trata. El hash es de un solo sentido por diseño: produce una huella de longitud fija y no hay camino de vuelta, porque la mayor parte de la información se descarta deliberadamente. El hash responde a «¿son idénticas estas dos cosas?», nunca a «¿qué era esto?».

¿Se puede descifrar o revertir un hash?

No. Lo que ofrecen los sitios de búsqueda no es reversión sino reconocimiento: han calculado por adelantado el hash de miles de millones de cadenas comunes y comprueban si la suya aparece en la tabla. Las contraseñas comunes y las palabras del diccionario se encuentran al instante; cualquier cosa poco habitual no está en la tabla ni lo estará nunca. La función en sí no puede invertirse.

¿Sigue siendo seguro usar MD5?

Solo para detectar corrupción accidental, como comprobar que una descarga llegó intacta o encontrar archivos duplicados. Está completamente roto frente a un ataque deliberado — dos archivos distintos con el mismo MD5 pueden crearse en segundos. SHA-1 también está roto, demostrado en 2017 con PDF en colisión. Use SHA-256 para cualquier cosa que implique confianza.

¿Qué algoritmo de hash debería usar?

SHA-256 para casi todo. Es rápido, está ampliamente soportado y no tiene ningún ataque práctico de colisión conocido. SHA-512 es una alternativa razonable y puede ser más rápido en sistemas de 64 bits, aunque en la práctica no es apreciablemente más seguro. Reserve MD5 y SHA-1 para la compatibilidad con sistemas existentes y para comprobaciones sin implicaciones de seguridad.

¿Puedo usar esto para hacer el hash de las contraseñas de mi sitio web?

Por favor, no. Los hashes rápidos como SHA-256 son la herramienta equivocada: el hardware puede calcular miles de millones por segundo, así que una base de datos robada se rompe por fuerza bruta rápidamente. Use bcrypt, scrypt o Argon2, que añaden una sal única por contraseña y son deliberadamente lentos. Utilice siempre una biblioteca consolidada en lugar de montar usted mismo el almacenamiento de contraseñas.

¿Por qué mi hash no coincide con el publicado en la web?

Casi siempre por una diferencia invisible en la entrada. Un espacio final, un salto de línea que falta o que sobra al final, o finales de línea de Windows en lugar de Unix cambiarán el hash por completo — es el efecto avalancha funcionando correctamente. Compruebe también que está comparando el mismo algoritmo, ya que una página puede listar varios.

¿Se envía mi texto a un servidor?

No. Los hashes SHA los calcula la implementación de Web Crypto integrada en su navegador y MD5 se calcula en JavaScript, ambos íntegramente en su dispositivo. No se transmite ni se almacena nada, y la herramienta funciona con la conexión apagada.

Herramientas relacionadas

Tutorial en vídeo

Añadimos herramientas nuevas con frecuencia — suscríbete en YouTube para enterarte de cada novedad.

Más herramientas

Ver todo

Aplicaciones recomendadas

Ver todo