이 도구에 대하여
Bcrypt 해시 생성기 & 검증기는 비밀번호를 서버로 전송하지 않고 bcrypt 비밀번호 해시를 생성하고 확인합니다. 1999년 Provos와 Mazières가 설계한 bcrypt는 Eksblowfish 키 스케줄을 적응형 작업 팩터로 감쌉니다: 코스트 파라미터는 2^cost 키 설정 라운드를 설정하므로, 코스트를 높이면 공격자에게는 모든 추측이 기하급수적으로 느려지면서 정당한 단일 로그인에는 저렴하게 유지됩니다. 생성 모드는 브라우저의 crypto.getRandomValues에서 16바이트의 무작위 솔트를 읽고, 선택한 코스트로 Eksblowfish 설정을 실행하며, 192비트 "OrpheanBeholderScryDoubt" 상수를 64번 암호화한 다음, 표준 Modular Crypt Format 문자열 $2b$NN$ + 22자 base64 솔트 + 31자 base64 다이제스트를 출력합니다.
알고리즘은 로컬로 로드된 eval 없는 WebAssembly bcrypt 빌드로 실행되므로, 아무것도 업로드되지 않고 한 번 로드된 후에는 오프라인에서 작동합니다. Bcrypt는 비밀번호의 처음 72바이트만 고려하며 — 도구는 입력이 그 한계를 초과하면 경고하므로 조용한 잘림에 놀랄 일이 없습니다. 코스트 팩터는 4부터 16까지 선택 가능합니다(기본값 10). 각 단계가 작업량을 두 배로 늘리므로 12는 10보다 4배 느립니다.
검증 모드는 기존 해시에서 $2b$/$2a$/$2y$ 접두어, 두 자리 코스트, 내장된 솔트를 파싱하고, 후보 비밀번호로 다이제스트를 재계산해 일치 또는 불일치를 보고합니다. 솔트와 코스트가 해시 문자열 자체 안에 담겨 있으므로, 로그인을 확인하려면 비밀번호와 저장된 해시만 있으면 됩니다. 모든 것이 페이지 내에서 계산됩니다 — 비밀번호는 100% 브라우저에서 해시되며 아무것도 업로드되지 않습니다.