
Bien, ya lo he descargado.todos los hashes SHA-1 de Have I Been Pwned, exporté todo desde mi administrador de contraseñas y lo procesé en un archivo con una contraseña por línea. ¿Cómo puedo hacer coincidir estos archivos de manera efectiva?
Respuesta1
Requisitos previos
7z
, que debería estar enel paquete "p7zip".sha1sum
yshred
, que debería estar en el paquete "coreutils".grep
del paquete "grep".
Proceso
Cree un archivo con hashes de contraseñas en mayúsculas únicos y un archivo con contraseñas y sus correspondientes hashes:
sort -u passwords.txt | while read -r password do hash="$(printf '%s' "$password" | \ sha1sum | \ cut -d' ' -f1 | \ tr 'a-f' 'A-F')" printf '%s\n' "$hash" >> hashes.txt printf '%s\t%s\n' "$hash" "$password" >> passwords-with-hashes.txt done
Haga coincidir sus hashes con todas las entradas del archivo descargado:
7z e -so pwned-passwords-sha1-ordered-by-hash-v*.7z | \ cut -c 1-40 | \ grep -Fxf hashes.txt | \ tee matches.txt
Tenga paciencia: ¡esto tomó casi 20 minutos en una máquina de escritorio con SSD!
Mostrar las contraseñas relacionadas con los partidos:
grep -Ff matches.txt passwords-with-hashes.txt | cut -f2
Elimina de forma segura los archivos que has creado:
shred --remove hashes.txt matches.txt passwords.txt passwords-with-hashes.txt