"Hash" es una de esas palabras que aparecen en seguridad, blockchain y desarrollo, y que mucha gente usa sin tener claro qué significan. En esta guía verás qué es una función hash, en qué se diferencia del cifrado y para qué se usa de verdad, con ejemplos concretos.
Qué es una función hash
Una función hash toma una entrada de cualquier tamaño (un texto, un archivo) y produce una cadena de longitud fija, su hash o resumen. Por ejemplo, SHA-256 siempre produce 64 caracteres hexadecimales, da igual si la entrada es una letra o un libro entero.
Sus propiedades clave:
- Determinista: la misma entrada produce siempre el mismo hash.
- Rápida de calcular en un sentido.
- Irreversible: del hash no puedes recuperar la entrada original.
- Efecto avalancha: cambiar un solo carácter produce un hash completamente distinto.
- Resistente a colisiones: es prácticamente imposible encontrar dos entradas con el mismo hash (en los algoritmos modernos).
Hash NO es cifrado
Este es el malentendido más común. Cifrar es reversible: con la clave correcta recuperas el texto original. Hashear es de un solo sentido: no hay "clave" para deshacerlo. Por eso:
- El cifrado sirve para proteger datos que necesitas recuperar (mensajes, archivos).
- El hash sirve para verificar datos sin guardarlos (contraseñas, integridad).
Si alguien dice "voy a hashear esto para luego descifrarlo", está confundido.
Para qué se usa un hash de verdad
1. Guardar contraseñas
Las webs serias nunca guardan tu contraseña, guardan su hash. Cuando inicias sesión, hashean lo que escribes y comparan con el hash almacenado. Así, si les roban la base de datos, no tienen tu contraseña. (Para esto se usan hashes específicos y lentos como bcrypt, no SHA a secas.)
2. Verificar integridad de archivos
Cuando descargas un programa, a veces el sitio publica su hash SHA-256. Calculas el hash de lo que descargaste y, si coincide, sabes que el archivo no se ha corrompido ni manipulado.
3. Huellas digitales (fingerprints)
Certificados, commits de Git, bloques de blockchain… todos usan hashes como identificadores únicos y a prueba de manipulación.
Los algoritmos más comunes
- MD5: rápido pero roto para seguridad (se pueden generar colisiones). Solo válido para checksums no críticos.
- SHA-1: también obsoleto para seguridad. Evítalo.
- SHA-256 / SHA-512: el estándar actual. Seguros y ampliamente usados.
Regla práctica: para cualquier cosa de seguridad, usa SHA-256 o superior. MD5 solo para comprobaciones rápidas de integridad sin valor de seguridad.
Cómo generar un hash
- Escribe o pega tu texto.
- Elige el algoritmo (MD5, SHA-1, SHA-256…).
- Obtienes el hash al instante.
Puedes hacerlo gratis con el generador de hash de esta web, que usa la Web Crypto API del navegador: tu texto nunca se sube a ningún servidor.
Preguntas frecuentes
¿Se puede "descifrar" un hash? No, es irreversible. Lo que existen son tablas de hashes precalculados de contraseñas comunes; por eso las contraseñas deben ser largas y únicas.
¿Por qué dos archivos distintos no tienen el mismo hash? Por la resistencia a colisiones. En MD5 ya se han encontrado colisiones; en SHA-256 no.
¿MD5 sirve para algo hoy? Solo como checksum rápido de integridad no crítica. Nunca para contraseñas ni seguridad.
¿Se sube mi texto al generar el hash? No, si usas un generador local. Se calcula en tu navegador.
Genera hashes MD5, SHA-1 y SHA-256 al instante con el generador de hash gratis, con la Web Crypto API y sin que tu texto salga del navegador.