블로그로 돌아가기
Security 2026-04-28

bcrypt vs Argon2: 2026년 비밀번호 해싱

올바른 비밀번호 해싱 알고리즘 선택과 프로덕션 매개변수 튜닝.

평문 비밀번호 저장은 상상할 수 없습니다. MD5/SHA-256으로 저장하는 것도 별로입니다.

의도적으로 느린 이유

GPU 농장은 초당 수십억 SHA-256 후보를 해싱합니다. bcrypt/Argon2 같은 느린 해시는 이를 하드웨어 1달러당 초당 수천으로 제한합니다.

bcrypt: 신뢰할 수 있는 베테랑

const hash = await bcrypt.hash(password, 12);

비용 인자(2026년 12) 증가마다 작업 두 배. 제한: 72바이트 입력 캡.

Argon2: 모던 승자

const hash = await argon2.hash(password, {

type: argon2.argon2id,

memoryCost: 2 16,

timeCost: 3,

parallelism: 1

});

메모리 하드: GPU/ASIC 공격이 훨씬 어려워집니다.

OWASP 2026 파라미터

  • Argon2id: m=64MB, t=3, p=1
  • bcrypt: cost 12

선택 가이드

  • 신규 → Argon2id
  • 기존 bcrypt → 유지, 마이그레이션 시 다음 로그인에 재래핑

직접 구현 금지

표준 라이브러리 래퍼를 사용하세요.