Skip to content

Hashing

Un hash resume datos en un digest fijo. Sirve para integridad y para almacenar contraseñas (con sal + algoritmo lento).

AlgoritmoNotas prácticas
MD5Rápido; roto para seguridad (colisiones). Aún aparece en labs viejos y checksums legacy.
SHA-1También débil para firmas/colisiones. Evitar en diseño nuevo.
SHA-256 / SHA-512Uso habitual para integridad de archivos.
bcrypt / scrypt / Argon2Para passwords: lentos a propósito + sal.
Terminal window
md5sum archivo.bin
sha256sum archivo.bin
sha256sum -c checksums.sha256 # verificar lista

Comparar el digest con el publicado por el autor del ISO/paquete.

Dos inputs distintos con el mismo hash. En MD5/SHA-1 es factible en contextos de ataque; por eso no se usan para firmas ni autenticidad seria.

No guardes md5(password). Usa KDF (bcrypt/Argon2) con sal única. En pentest, si encuentras hashes, el tipo (formato John/Hashcat) marca cómo atacarlos en lab autorizado.

Terminal window
echo -n 'password' | md5sum
# 5f4dcc3b5aa765d61d8327deb882cf99 -
# mismo string → mismo digest; por eso hace falta sal + KDF lento