CoderTools

PBKDF2 키 파생

비밀번호에서 안전한 암호화 키 생성

🔒 100% 로컬 처리입력하신 데이터는 브라우저에서 완전히 처리되며, 서버로 전송되지 않습니다.
OWASP 2023은 SHA-256에 대해 최소 310,000회 반복을 권장합니다. 반복 횟수가 많을수록 = 보안 강화, 성능 저하.
출력 옵션

PBKDF2 문서

PBKDF2 (Password-Based Key Derivation Function 2)는 RFC 8018에 정의된 암호화 표준입니다. 반복 해싱을 통해 비밀번호를 안전한 암호화 키로 변환하여 무차별 대입 공격을 계산적으로 비용이 많이 들게 만듭니다.

PBKDF2는 WPA2 WiFi 암호화, iOS 데이터 보호, macOS FileVault 및 수많은 엔터프라이즈 비밀번호 저장 시스템을 포함한 보안 프로토콜에서 널리 채택되었습니다. NIST 승인 상태로 인해 규정 준수가 중요한 애플리케이션의 최우선 선택이 되었습니다.

PBKDF2 작동 원리

PBKDF2는 의사 난수 함수(기본적으로 HMAC-SHA256)를 반복 적용하여 파생 키를 생성합니다:

  • 비밀번호, 솔트, 반복 횟수 및 원하는 키 길이를 입력으로 받음
  • 비밀번호를 키로, 솔트 + 카운터를 메시지로 HMAC 적용
  • 지정된 반복 횟수만큼 HMAC 작업 반복
  • 중간 결과를 연결하여 최종 파생 키 생성

OWASP 권장 반복 횟수 (2023)

Open Web Application Security Project (OWASP)는 해시 알고리즘 강도에 따른 최소 반복 지침을 제공합니다. 이러한 값은 현대 하드웨어 공격에 대한 적절한 보호를 보장하도록 조정되었습니다:

해시 알고리즘 최소 반복 권장
PBKDF2-SHA256 310,000 600,000+
PBKDF2-SHA384 210,000 500,000+
PBKDF2-SHA512 120,000 210,000+
PBKDF2-SHA1 1,300,000 비권장

일반적인 사용 사례

  • 사용자 비밀번호에서 AES/ChaCha20 암호화 키 파생
  • 인증 시스템에서의 비밀번호 저장 및 검증
  • 마스터 비밀번호에서 결정론적 키 생성 (비밀번호 관리자)
  • 디스크 암호화 및 보안 컨테이너를 위한 키 파생

KDF 비교: PBKDF2 vs Bcrypt vs Argon2

기능 PBKDF2 Bcrypt Argon2
표준 RFC 8018 OpenBSD RFC 9106
메모리 하드 아니오 제한적 (4KB)
GPU 저항성 낮음 보통 높음
최적 사용 사례 FIPS/NIST 규정 준수 레거시 시스템 새로운 애플리케이션

보안 모범 사례

  • 항상 최소 16바이트(128비트)의 암호학적으로 무작위한 솔트 사용
  • 솔트는 파생 키와 함께 저장 - 비밀이 아님
  • 하드웨어 발전에 맞춰 매년 반복 횟수 증가
  • GPU 공격에 대한 메모리 하드 보호가 필요한 새 시스템에는 Argon2id 고려

기술 참조

관련 도구

빠른 메뉴

최근 사용 도구 없음