키 파생 함수
표준 KDF API를 사용하여 암호화 키를 파생합니다.
코드 비교
✕ Java 8
SecretKeyFactory factory =
SecretKeyFactory.getInstance(
"PBKDF2WithHmacSHA256");
KeySpec spec = new PBEKeySpec(
password, salt, 10000, 256);
SecretKey key =
factory.generateSecret(spec);
✓ Java 25
var kdf = KDF.getInstance("HKDF-SHA256");
SecretKey key = kdf.deriveKey(
"AES",
KDF.HKDFParameterSpec
.ofExtract()
.addIKM(inputKey)
.addSalt(salt)
.thenExpand(info, 32)
.build()
);
이 코드에 문제가 있나요? 알려주세요.
모던 방식이 더 나은 이유
깔끔한 API
어색한 KeySpec 생성자 대신 빌더 패턴.
HKDF 지원
PBKDF2와 함께 모던 HKDF 알고리즘을 지원합니다.
표준
모든 키 파생 알고리즘을 위한 통일된 API.
이전 방식
수동 PBKDF2
모던 방식
KDF API
JDK 버전
25
난이도
고급
JDK 지원
키 파생 함수
사용 가능
JDK 25 LTS에서 확정 (JEP 510, 2025년 9월).
동작 원리
KDF API는 키 파생 함수를 위한 표준 인터페이스를 제공합니다. PBKDF2와 HKDF를 지원하며 이전의 직접 KeySpec 생성자 사용을 대체합니다.
관련 문서