BCrypt 온라인 비밀번호 해싱 도구

BCrypt 해시 생성

비밀번호와 해시 검증

도구 설명

BCrypt 대칭 암호 알고리즘을 기반으로 한 **비밀번호 해싱**(password hashing) 전용 적응형 함수입니다. MD5나 SHA 시리즈 같은 빠른 해시 함수와 달리, BCrypt의 핵심 보안 장점은 내재된 **'느린'**(slow) 특성에 있습니다. 이는 공격자의 암호 해독 비용을 극도로 증가시키는 것을 목표로 합니다.

보안 최선의 방법

BCrypt는 현재 업계에서 **비밀번호 저장**(password storage)을 위한 골드 스탠다드 중 하나입니다. 사용자 비밀번호를 저장할 때 **절대** MD5나 솔트(salt)가 없는 SHA 알고리즘을 사용하지 마세요. 반드시 BCrypt, Scrypt, Argon2과 같은 전용 느린 해시 알고리즘을 사용해야 합니다.

핵심 기능:

  • 해시 생성 (Generate Hash):사용자가 입력한 평문 비밀번호를 BCrypt 알고리즘을 통해 안전한 해시 문자열로 변환합니다. 생성된 문자열(예: $2a$10$N9qo8uLOickgx2ZMR9JGye...)에는 알고리즘 버전, 비용 팩터, 무작위 솔트, 해시 값 자체가 포함되어 있으며, 사용자 테이블의 데이터베이스에 직접 저장할 수 있습니다.
  • 비밀번호 검증 (Verify Password):사용자가 로그인을 시도할 때, 입력한 평문 비밀번호와 데이터베이스에 저장된 해시 값을 비교합니다. BCrypt의 비교 함수는 해시 문자열에서 자동으로 솔트와 비용 팩터를 추출하여 동일한 해시 계산을 수행하고, 결과를 안전하게 비교함으로써 비밀번호가 올바른지 검증합니다.
  • 비용 팩터 (Cost Factor): 이것은 BCrypt의 핵심 보안 파라미터입니다. 해시 계산의 반복 횟수(반복 횟수 = 2^cost)를 제어합니다. 값이 클수록 해시 계산이 더 느려지며, 무차별 대입 공격(brute-force attack)에 대한 저항력이 강해집니다. 현재 업계 추천 값은 일반적으로 **10에서 12 사이**입니다.