도구스개발

bcrypt 비용계수(cost) 계산기

bcrypt의 cost(work factor)를 1 올릴 때마다 정확히 2배 느려진다는 관계로 다른 cost의 예상 소요시간을 추정합니다.

ms

서버에서 bcrypt.hash()를 한 번 재서 걸린 시간을 넣으세요. 이 값이 없으면 정확한 예측이 불가능합니다 — 하드웨어마다 속도가 다르기 때문입니다.

cost 12 예상 소요시간

260ms

cost 10 대비 4배

기준cost 10 · 65ms
OWASP 최소 권고cost 10 이상

cost별 예상 시간

cost예상 시간배율
41.02ms×0.016
52.03ms×0.031
64.06ms×0.063
78.13ms×0.125
816ms×0.25
933ms×0.5
10 (OWASP 최소)65ms×1
11130ms×2
12260ms×4
13520ms×8
141.04초×16
152.08초×32
164.16초×64
178.32초×128
1816.6초×256
1933.3초×512
201.1분×1,024
212.2분×2,048
224.4분×4,096
238.9분×8,192
2417.7분×16,384
2535.5분×32,768
261.2시간×65,536
272.4시간×131,072
284.7시간×262,144
299.5시간×524,288
3018.9시간×1,048,576
311.6일×2,097,152

느린 해시가 막아주는 것 — 전수조사 시간 어림

cost 12로 해싱하며 다 시도하면

43.3분

경우의 수 10,000가지 × 해시 1회 260ms (한 대·직렬 기준)

cost를 1 올리면 계산량이 정확히 2배가 됩니다. bcrypt가 Blowfish 키 스케줄을 2^cost번 되풀이하도록 정의돼 있기 때문입니다. 다만 cost=X가 실제로 몇 ms 걸리는지는 하드웨어마다 달라 절대 상수가 없어, 이 도구는 여러분이 잰 기준값에서 상대적으로 추정합니다.
전수조사 시간은 "한 대·직렬" 기준 상한선입니다. 실제 공격은 여러 대나 GPU로 병렬화되므로 이 값보다 훨씬 짧게 걸릴 수 있습니다. 그래도 cost를 올릴수록 병렬화한 공격 비용도 같은 배율로 늘어난다는 점은 그대로입니다 — cost는 방어자와 공격자 모두의 비용을 함께 올리는 손잡이입니다.

사용 방법

  1. 1서버에서 bcrypt.hash()를 한 번 재서 걸린 시간(ms)과 그때 쓴 cost를 넣습니다.
  2. 2알고 싶은 cost를 고르면 예상 소요시간이 나옵니다.
  3. 3전수조사 어림 섹션에서 그 cost가 브루트포스를 얼마나 늦추는지 감을 잡습니다.

자주 묻는 질문

bcrypt는 내부적으로 Blowfish 키 스케줄을 2^cost번 되풀이하도록 정의돼 있습니다. cost가 10이면 2^10=1024번, 11이면 2^11=2048번으로 정확히 2배입니다. 이 배율 관계는 하드웨어와 무관하게 항상 성립하는 알고리즘 정의 자체입니다.

cost=X가 실제로 몇 ms 걸리는지는 CPU 성능·bcrypt 구현체·서버 부하에 따라 크게 달라 절대 기준값이 없기 때문입니다. 그래서 이 도구는 여러분이 자신의 서버에서 한 번 측정한 기준값을 입력받아, 2배 관계만으로 다른 cost의 시간을 상대적으로 추정합니다.

OWASP Password Storage Cheat Sheet는 "work factor는 10 이상, 서버 성능이 허락하는 한 크게"를 공식 권고로 제시합니다(2026-09-02 확인). 로그인 한 번에 100~300ms 안팎이 걸리는 선에서 서버가 버틸 수 있는 가장 큰 cost를 고르는 것이 일반적인 접근입니다. 다만 이 목표 시간대 자체는 관행이지 표준 수치는 아닙니다.

이 계산기의 값은 "한 대의 컴퓨터로, 하나씩 순서대로" 시도한다고 가정한 상한선입니다. 실제 공격자는 여러 대나 GPU로 병렬화해 훨씬 빠르게 시도할 수 있습니다. 다만 cost를 올리면 병렬화한 공격의 비용도 같은 배율로 늘어나므로, cost는 방어자와 공격자의 계산 비용을 함께 밀어 올리는 손잡이라는 점은 변하지 않습니다.

이 도구는 bcrypt의 cost 관계만 다룹니다. Argon2·scrypt 같은 최신 알고리즘은 메모리 사용량까지 조절할 수 있어 GPU 병렬 공격에 더 강하다고 알려져 있지만, bcrypt도 여전히 OWASP가 인정하는 선택지 중 하나입니다. 알고리즘 자체의 선택은 이 계산기의 범위 밖입니다.

알아두면 좋은 점

  • cost 1당 정확히 2배라는 관계는 bcrypt 정의 자체입니다. 절대 시간(ms)은 여러분이 입력한 기준값에서 추정한 상대값입니다.
  • OWASP 최소 권고(cost 10 이상)는 Password Storage Cheat Sheet 기준입니다(2026-09-02 확인). 시간이 지나면 권고가 바뀔 수 있습니다.
  • 전수조사 시간은 한 대·직렬 기준 상한선입니다. 실제 공격 시간의 추정치가 아닙니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 2일 · 결과는 참고용 추정치입니다.