Una función hash convierte cualquier entrada (una palabra, un documento, una imagen de disco de 4 GB) en una huella digital corta y de longitud fija. Esta herramienta calcula algoritmos comunes (CRC-32, MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA3-256, Keccak-256) y crea HMAC, todo en su navegador. Esta guía explica para qué sirven los hashes, cuáles son seguros en 2026 y la diferencia entre hash, cifrado y almacenamiento de contraseñas.
Para qué sirven los hashes
Calcular hashes sirve para dos tareas cotidianas: comprobar la integridad mi identificar datos. Al descargar un programa y comparar su SHA-256 con el valor publicado por el editor, comprueba que los bytes llegaron intactos. Cuando una confirmación de Git, una caché basada en contenido o un sistema de deduplicación necesita una identificación breve y estable para un bloque de datos, se puede usar un hash. La propiedad clave es el determinismo: la misma entrada siempre produce el mismo resumen, mientras que cualquier cambio —incluso invertir un bit— produce un resultado muy distinto. Puedes observar el efecto avalancha en la huella digital de arriba.
Qué algoritmos son seguros en 2026
CRC-32 sirve para detectar errores (por ejemplo, en archivos ZIP), no para proteger la seguridad. MD5 (1991) y SHA-1 (1995) ya no son seguros criptográficamente: se han demostrado colisiones reales (dos archivos distintos con el mismo hash). No deben usarse cuando un atacante pueda falsificar una coincidencia, como en firmas, certificados o detección de manipulaciones. Siguen siendo útiles para detectar daños accidentales o deduplicar archivos.
La familia SHA-2 (SHA-256, SHA-384, SHA-512) y SHA-3 / Keccak-256 no tiene colisiones prácticas conocidas y es una opción adecuada para aplicaciones sensibles a la seguridad. En hardware de 64 bits, SHA-512 suele ser más rápido que SHA-256; una salida más larga no implica un cálculo más lento.
El hash no es cifrado ni sirve para almacenar contraseñas
El cifrado es reversible con una clave; el cálculo de hashes es unidireccional por diseño, así que no existe una operación inversa para recuperar la entrada. Por eso los hashes no sirven para mantener la información confidencial, pero sí para verificarla.
Las contraseñas requieren un tratamiento especial. Los hashes rápidos sin procesar (incluso SHA-256) son una mala opción: su velocidad permite a los atacantes probar miles de millones de posibilidades por segundo en una base de datos robada. Los sistemas modernos de almacenamiento de contraseñas usan una función de derivación de claves (bcrypt, scrypt o Argon2), diseñada para ser lenta e incorporar una sal por usuario. Si vas a proteger contraseñas, elige una de estas funciones, no los algoritmos de esta herramienta.
HMAC: cómo demostrar quién envió un mensaje
Un hash simple demuestra que un mensaje no se modificó, pero cualquiera puede volver a calcularlo; por tanto, no permite demostrar quién lo envió. Un HMAC resuelve ese problema al incorporar una clave secreta compartida al hash. El remitente calcula HMAC(clave, mensaje) y lo adjunta; el destinatario vuelve a calcularlo con la misma clave. Si coincide, demuestra integridad y autenticidad. Este mecanismo se usa en las firmas de webhooks (Stripe, GitHub, Slack), la firma de solicitudes de AWS y los tokens JWT 'HS256'. Utilice una clave aleatoria larga y compare los HMAC en el servidor mediante una verificación de tiempo constante.