1. Inicio
  2. Herramientas para desarrolladores
  3. Generador de hash SHA

Generador de hash SHA-1, SHA-256, SHA-384 y SHA-512

Obtén la huella SHA-1, SHA-256, SHA-384 y SHA-512 de cualquier texto o archivo, en hexadecimal o Base64, y compárala con el checksum publicado. Activa HMAC si necesitas firmar con una clave secreta.

Cómo usar el generador de hash

  1. Escribe o pega el texto, o cambia a Archivo y arrastra el fichero (un ISO, un instalador, un PDF…).
  2. Los cuatro algoritmos se calculan a la vez. Cada resultado tiene su botón para copiarlo.
  3. Para verificar una descarga, pega el checksum oficial en Comparar: la herramienta indica qué algoritmo coincide, sin importar mayúsculas ni espacios.
  4. Si escribes una clave HMAC, el resultado pasa a ser HMAC-SHA-xxx con esa clave.

Todo se calcula con la Web Crypto API (crypto.subtle.digest y crypto.subtle.sign) dentro de tu navegador. Para archivos muy grandes (varios GB) la memoria del dispositivo puede ser el límite, porque la API necesita el archivo completo.

Qué es un hash y cómo funciona

Una función hash criptográfica transforma datos de cualquier tamaño en una huella de longitud fija con tres propiedades: es determinista (la misma entrada da siempre el mismo resultado), un cambio mínimo altera por completo la salida (efecto avalancha) y es inviable encontrar dos entradas con la misma huella o reconstruir la entrada a partir de ella.

AlgoritmoBitsCaracteres hexEstado
MD512832Roto: solo integridad no adversarial
SHA-116040Colisiones prácticas desde 2017
SHA-25625664Seguro; el estándar actual
SHA-38438496Seguro; usado en TLS y SRI
SHA-512512128Seguro; más rápido que SHA-256 en CPU de 64 bits

Ejemplos de referencia

Puedes comprobar que la herramienta funciona con estos valores conocidos (entrada en UTF-8, sin salto de línea final):

EntradaAlgoritmoHash
(vacío)SHA-256e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
abcSHA-1a9993e364706816aba3e25717850c26c9cd0d89d
abcSHA-256ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad

Si añades un espacio o un salto de línea tras «abc», el SHA-256 ya no se parece en nada. Ese es el motivo más frecuente de checksums que «no coinciden» al copiar texto desde la terminal: echo "abc" | sha256sum incluye el salto de línea; usa echo -n o printf.

Usos habituales

  • Verificar descargas: las distribuciones Linux y muchos proyectos publican un archivo SHA256SUMS. En la terminal: sha256sum archivo (Linux), shasum -a 256 archivo (macOS) o Get-FileHash archivo (PowerShell).
  • Subresource Integrity (SRI): el atributo integrity="sha384-…" lleva el SHA-384 del archivo en Base64; elige ese formato de salida.
  • Firmar webhooks y APIs: servicios de pago y plataformas como GitHub envían una cabecera con el HMAC-SHA-256 del cuerpo; recalcúlalo con tu secreto para comprobar que el mensaje es auténtico.
  • Deduplicar archivos: dos archivos con el mismo SHA-256 son, a efectos prácticos, idénticos.

Hash y contraseñas: un error común

Guardar SHA-256(contraseña) no es seguro: una GPU calcula miles de millones de SHA-256 por segundo, así que las contraseñas débiles caen por fuerza bruta. Para almacenar contraseñas usa funciones lentas y con sal diseñadas para ello: Argon2id, bcrypt o scrypt. Y para que la contraseña resista, que sea larga y aleatoria: puedes crearla con el generador de contraseñas. Si necesitas transportar el hash binario en texto, recuerda que la salida Base64 equivale a codificar los bytes con Base64.

Preguntas frecuentes

¿Se puede descifrar un hash SHA-256?

No. Un hash es una función de un solo sentido: no existe una clave que lo revierta. Lo único posible es probar entradas candidatas y comparar, por eso las contraseñas cortas o comunes se encuentran rápido aunque estén hasheadas.

¿Por qué mi hash no coincide con el de otra herramienta?

Casi siempre por la entrada: un salto de línea final, espacios, saltos de línea Windows (CRLF) frente a Unix (LF) o una codificación distinta de UTF-8. Un solo byte diferente cambia todo el resultado.

¿SHA-1 sigue siendo seguro?

No para firmas ni certificados: desde 2017 se conocen colisiones prácticas. Sigue sirviendo para detectar corrupción accidental o como identificador (Git lo usa), pero para seguridad usa SHA-256 o superior.

¿Qué es HMAC y cuándo lo necesito?

HMAC combina una clave secreta con el hash para que solo quien conoce la clave pueda generar o comprobar el resultado. Se usa para firmar webhooks, peticiones a APIs y tokens JWT HS256.

¿Mis archivos se suben a algún servidor?

No. El cálculo se hace con la Web Crypto API de tu navegador; el archivo se lee en memoria local y nunca sale de tu dispositivo.