알겠습니다. 다운로드했습니다.Have I Been Pwned의 모든 SHA-1 해시, 내 비밀번호 관리자의 모든 내용을 내보내고 한 줄에 하나의 비밀번호가 있는 파일로 처리했습니다. 이러한 파일을 효율적으로 일치시키려면 어떻게 해야 합니까?
답변1
전제 조건
7z
, 에 있어야합니다"p7zip" 패키지.sha1sum
및shred
"coreutils" 패키지에 있어야 합니다.grep
"grep" 패키지에서.
프로세스
고유한 대문자 비밀번호 해시가 포함된 파일과 비밀번호 및 해당 해시가 포함된 파일을 만듭니다.
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
다운로드한 파일의 모든 항목과 해시를 일치시킵니다.
7z e -so pwned-passwords-sha1-ordered-by-hash-v*.7z | \ cut -c 1-40 | \ grep -Fxf hashes.txt | \ tee matches.txt
잠시 기다려 주십시오. SSD가 있는 데스크탑에서는 이 작업이 거의 20분 정도 걸렸습니다!
컨테스트와 관련된 비밀번호 표시:
grep -Ff matches.txt passwords-with-hashes.txt | cut -f2
생성한 파일을 안전하게 삭제하세요.
shred --remove hashes.txt matches.txt passwords.txt passwords-with-hashes.txt