PBKDF2(Password-Based Key Derivation Function 2)는 암호를 기반으로 하는 키 파생 함수로, 암호화 및 비밀번호 보안 강화에 널리 사용됩니다. 이 기술은 2000년에 RSA 연구소의 공개 키 암호화 표준 PKCS#5에서 정의되었으며, 현재 민감한 데이터를 보호하는 핵심 도구 중 하나입니다.
PBKDF2의 주요 기능은 비밀번호를 암호화 키로 변환하는 것입니다. 전통적인 단일 해시 함수와 달리, PBKDF2는 비밀번호와 솔트(Salt)를 결합하고 해시 함수를 여러 번 반복 적용하여 키를 생성합니다. 이 과정을 '키 강화'라고 하며, 비밀번호를 해독하는 데 필요한 계산 비용과 시간을 크게 증가시켜 무차별 공격 및 레인보우 테이블 공격을 효과적으로 방지합니다.
PBKDF2의 핵심 특징은 구성 가능성과 유연성입니다. 개발자는 해시 함수(SHA-256 또는 SHA-512 등)를 자유롭게 선택하고 반복 횟수를 설정하여 암호화 강도와 성능 요구 사항을 조절할 수 있습니다. 또한, 솔트 사용은 두 사용자가 동일한 비밀번호를 가지고 있더라도 생성된 키가 서로 다르게 되어 비밀번호의 고유성과 보안성을 증가시킵니다.
디지털 보안 분야에서 PBKDF2는 다양한 시나리오에서 광범위하게 사용됩니다. 예를 들어 파일 암호화, 데이터베이스 접근 제어, 온라인 계정 비밀번호 보호 등에 사용됩니다. 이는 단순히 암호화 도구를 넘어서 완전한 보안 프레임워크로, 민감한 데이터 처리에 강력한 보호를 제공합니다.