Qué son los hashes criptográficos y cómo funcionan
Una función hash criptográfica toma cualquier entrada y produce una huella digital de longitud fija (el hash) única para esa entrada. Cambia un solo bit de la entrada y el hash cambia completamente. Esta propiedad, llamada efecto avalancha, hace que los hashes sean ideales para verificar la integridad de datos: si el hash de un archivo descargado coincide con el hash publicado, el archivo llegó sin corrupción.
Las funciones hash son unidireccionales: dado un hash, no hay forma matemática de obtener el input original. También son deterministas: el mismo input siempre produce el mismo hash. Estas dos propiedades hacen de los hashes la base del almacenamiento de contraseñas, firmas digitales, blockchain y verificación de integridad.
MD5, SHA-1 y SHA-256 comparados
MD5 produce un hash de 128 bits (32 caracteres hex). Es rápido pero criptográficamente roto — los ataques de colisión son prácticos. No uses MD5 para propósitos sensibles a la seguridad. Sigue siendo útil para checksums no sensibles: verificación de descargas, detección de corrupción accidental.
SHA-1 produce un hash de 160 bits (40 caracteres hex). Formalmente roto en 2017 (ataque SHAttered). SHA-256 produce un hash de 256 bits (64 caracteres hex). Es el estándar actual para aplicaciones de seguridad: certificados TLS, firma JWT, blockchain. No existen ataques prácticos.
Usos prácticos de esta herramienta
Verifica la integridad de un archivo hasheando su contenido y comparándolo con el checksum publicado. Genera un identificador reproducible para un texto (clave de caché, ID de contenido). Aprende cómo se ve el output de un hash antes de usar una librería de hashing en código. Compara dos textos para confirmar que son idénticos byte por byte.