Cómo calcular el hash de un texto

Seis resúmenes y los mismos seis otra vez con clave: MD5, SHA-1, SHA-224, SHA-256, SHA-384 y SHA-512, cada uno también como HMAC. Todos los valores se comprobaron contra una implementación independiente: 36 resúmenes por idioma, 12 algoritmos sobre tres entradas, coincidiendo hasta el último carácter hexadecimal.

El resultado es hexadecimal en minúsculas y nada más: 32 caracteres para MD5, 40 para SHA-1, 56 para SHA-224, 64 para SHA-256, 96 para SHA-384 y 128 para SHA-512. El cálculo ocurre en la página, así que el texto no sale del navegador y la herramienta funciona sin conexión una vez cargada.

  1. Pega o escribe el texto en el cuadro. Se calcula como UTF-8 exactamente como está escrito: los espacios y los saltos de línea cuentan, y un salto final produce un resumen distinto.
  2. Pulsa uno de los seis botones verdes para obtener un resumen simple. El resultado aparece debajo como una cadena hexadecimal sin nombre de algoritmo ni separadores.
  3. Pulsa un botón azul de HMAC y aparecerá un campo de clave encima de los botones. Escribe la clave y vuelve a pulsar el mismo botón: el resumen solo se recalcula al pulsar.
  4. Copiar resultado lleva la cadena hexadecimal al portapapeles y Limpiar vacía el cuadro y el resultado.

Algoritmos, salida y el campo de clave

Qué produce cada algoritmo

MD5 y SHA-1 están para sumas de comprobación y para sistemas que aún los piden; SHA-256 y SHA-512 son los que conviene usar cuando el resumen va a algún sitio nuevo. SHA-224 y SHA-384 son las variantes truncadas de esos dos y están incluidos porque algunas bibliotecas y herramientas de certificados los nombran explícitamente.

Los doce son de un solo sentido —la página no tiene función inversa— y el resumen de un solo carácter ocupa lo mismo que el de un megabyte. El texto "abc" da 900150983cd24fb0d6963f7d28e17f72 en MD5 y ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad en SHA-256, lo mismo que devuelve una implementación independiente.

El campo de clave y HMAC

HMAC mezcla una clave secreta en el cálculo, así que el mismo texto da un resumen distinto para cada clave. El campo permanece oculto hasta que se pulsa un botón de HMAC y vuelve a ocultarse en cuanto se pulsa uno verde: un resumen simple nunca usa la clave, esté lo que esté escrito en ese campo.

Las claves más largas que el bloque de la función se hashean primero, como exige la RFC 2104, y se acepta una clave vacía: la página devuelve el resumen del texto con clave vacía en lugar de rechazar la operación. SHA-224 y SHA-384 truncan su salida, que es justo donde suelen fallar los ayudantes de HMAC en JavaScript; aquí los dos se comprobaron contra una implementación independiente y coinciden.

Qué es la salida y qué no

El cuadro de resultado contiene la cadena hexadecimal limpia: sin prefijo, sin separadores, sin nombre de algoritmo y sin salto de línea añadido. Eso entra directo en un archivo de sumas o en una línea de comandos, y también significa que emparejar el resumen con un nombre de archivo es un paso manual.

Esto es una calculadora de hash, no un esquema para almacenar contraseñas. Aplica la función elegida una sola vez, sin sal y sin número de iteraciones, y nada aquí guarda ni compara valores. Para contraseñas usa bcrypt, scrypt o Argon2 en lugar de un resumen SHA-256 desnudo.

Dónde se ejecuta y un límite

Las bibliotecas vienen del sitio y el cálculo ocurre en la página: tras cargarla, hashear no produjo ninguna petición y el texto nunca se sube. Una entrada de 4,8 MB se calculó con SHA-256 en unos 0,6 segundos, y una de 1 MB en unos 0,2 segundos.

La entrada es un cuadro de texto, así que la herramienta hashea texto como UTF-8 y los archivos binarios quedan fuera de su alcance: sus bytes tendrían que codificarse antes. Para archivos y comprimidos, compara el resumen que produce tu sistema con sha256sum o certutil, que leen bytes directamente.

Herramientas recientes: