¿Qué Son las Funciones Hash?
Las funciones hash criptográficas son algoritmos matemáticos que transforman datos de cualquier tamaño en una salida de tamaño fijo llamada digest o hash. Son deterministas — la misma entrada siempre produce el mismo hash. Las buenas funciones hash son rápidas de calcular, imposibles de revertir y producen salidas drásticamente diferentes ante cambios mínimos en la entrada, propiedad conocida como efecto avalancha.
MD5 y SHA-1: Algoritmos Heredados
MD5 fue diseñado en 1991 y produce un hash de 128 bits. SHA-1 fue diseñado por la NSA y produce un hash de 160 bits. Ambos son vulnerables a ataques de colisión, donde dos entradas diferentes producen el mismo hash. No deben usarse para firmas digitales pero siguen siendo útiles para checksums no relacionados con seguridad y deduplicación de datos.
SHA-256 y SHA-512: Estándares Modernos
SHA-256 y SHA-512 son parte de la familia SHA-2. SHA-256 produce un hash de 256 bits y se usa en minería de Bitcoin, certificados TLS y firmas digitales. SHA-512 produce un hash de 512 bits y es preferido en sistemas de 64 bits donde puede ser más rápido que SHA-256. Ambos permanecen criptográficamente seguros sin ataques prácticos conocidos.
Aplicaciones Prácticas del Hashing
El hashing se usa en toda la informática moderna: almacenamiento de contraseñas (hashes con sal), firmas digitales, tecnología blockchain, verificación de integridad de archivos, deduplicación de datos y tablas hash en programación. Al almacenar contraseñas, siempre usa funciones especializadas como bcrypt o Argon2 con salting y key stretching.





