Toolonit
  1. 홈
  2. 암호화
  3. bcrypt 해시 검증

bcrypt 해시 검증

비밀번호를 bcrypt로 해시하고, 해시와 맞는지 검증합니다.

비밀번호 해시 만들기

72바이트 중 0바이트

비용(cost)

한 단계 올릴 때마다 시간이 두 배가 됩니다. 로그인용으로는 10–12가 흔합니다. 해시에 비용이 들어 있어서 검증할 때는 설정할 필요가 없습니다.

비밀번호를 입력하면 여기에 해시가 나타납니다.

비밀번호와 해시 대조

$2a$, $2b$, $2y$ 형식, 60자. 비용은 해시에서 읽습니다.

비밀번호와 해시를 입력하면 맞는지 확인합니다.

bcrypt는 일부러 느리게 만든 비밀번호 해시입니다. 서버는 비밀번호 대신 bcrypt 해시를 저장하고, 로그인할 때 입력한 비밀번호를 다시 해시해 비교합니다. 해시마다 무작위 솔트와 비용이 들어 있어서 같은 비밀번호라도 매번 다른 해시가 나오지만 모두 검증을 통과합니다. 설정 파일이나 테스트 계정에 넣을 해시를 만들거나, 저장된 해시와 비밀번호가 맞는지 확인할 때 쓰세요. 해시는 브라우저 안에서 계산하므로 비밀번호가 기기 밖으로 나가지 않으며, 무료이고 가입도 필요 없습니다.

bcrypt 해시 만들고 검증하는 방법

  1. 비밀번호를 입력하면 바로 해시와 이 기기에서 걸린 시간이 나타납니다.
  2. 시스템에 맞춰 비용 슬라이더를 조절합니다(기본값 10).
  3. $2b$ 해시를 복사하거나, 아래에서 검증을 눌러 검증되는 것을 확인합니다.
  4. 기존 해시를 확인하려면 비밀번호와 해시 대조에 비밀번호와 해시를 넣습니다. 일치 또는 불일치가 표시됩니다.

주요 기능

  • 해시마다 새 무작위 16바이트 솔트로 $2b$ 해시 생성
  • 비용 4–16(기본값 10), 이 기기에서 걸린 시간 표시
  • $2a$·$2b$·$2y$ 해시와 비밀번호 대조: 일치·불일치와 버전·비용 표시
  • bcrypt의 72바이트 한도를 세어 무시되는 글자를 경고
  • 백그라운드 워커에서 계산해 비용이 높아도 페이지가 멈추지 않음: 중지, 새 솔트로 다시 해시
  • Argon2 해시를 알아보고 Argon2 도구로 연결

개인정보는 안전한가요?

네. 해시 만들기와 대조는 브라우저 안에서 WebAssembly로, 백그라운드 워커에서 실행되며 비밀번호를 업로드하거나 저장하지 않습니다.

자주 묻는 질문

bcrypt 해시를 복호화할 수 있나요?

아니요. bcrypt는 되돌릴 수 없는 단방향 해시라서 비밀번호로 되돌리는 키가 없습니다. 비밀번호를 알아내려면 후보를 하나씩 해시해 봐야 하는데, bcrypt는 이를 일부러 느리게 만듭니다. 맞다고 생각하는 비밀번호는 비밀번호와 해시 대조에서 확인하세요.

같은 비밀번호인데 왜 해시가 매번 다른가요?

해시할 때마다 새 무작위 16바이트 솔트를 쓰고, 그 솔트는 해시 문자열 안에 함께 저장됩니다. 검증할 때 해시에서 솔트를 다시 읽기 때문에 어느 해시든 같은 비밀번호로 검증됩니다.

비용(cost)은 얼마로 해야 하나요?

한 단계 올릴 때마다 계산량이 두 배가 됩니다. 로그인용으로는 10–12가 흔하며, 서버가 로그인 한 번에 감당할 수 있는 가장 높은 값(보통 0.25–0.5초 정도)을 고릅니다. 여기 표시되는 시간은 지금 쓰는 기기 기준입니다.

긴 비밀번호의 뒷부분은 왜 무시되나요?

bcrypt는 비밀번호를 UTF-8로 바꾼 앞 72바이트만 읽습니다. 한글은 한 글자에 3바이트라서 24글자면 한도가 찹니다. 무시되는 글자가 있으면 도구가 알려 줍니다. 더 긴 문구가 필요하면 길이 제한이 없는 Argon2를 쓰세요.

$2a$, $2b$, $2y$는 무엇이 다른가요?

특정 구현의 오래된 버그를 고쳤다는 표시일 뿐, 일반적인 비밀번호에서는 같은 결과를 냅니다. 이 도구는 현재 OpenBSD 표기인 $2b$로 만들고 세 가지 모두 검증합니다. 여기서 만든 해시는 Python bcrypt 라이브러리와 리눅스 crypt()로 검증되는 것을 확인했습니다.

관련 도구