Funções de Derivação de Chaves
Derive chaves criptográficas usando a API padrão KDF.
Comparação de Código
✕ 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()
);
Viu um problema com este código? Nos avise.
Por que a forma moderna ganha
API limpa
Padrão builder no lugar de construtores KeySpec desajeitados.
Suporte a HKDF
Algoritmo moderno HKDF junto com PBKDF2.
Padronizado
API unificada para todos os algoritmos de derivação de chaves.
Abordagem Antiga
PBKDF2 manual
Abordagem Moderna
API KDF
Desde o JDK
25
Dificuldade
Avançado
Suporte JDK
Funções de Derivação de Chaves
Disponível
Finalizado no JDK 25 LTS (JEP 510, setembro de 2025).
Como funciona
A API KDF fornece uma interface padrão para funções de derivação de chaves, incluindo HKDF. Ela substitui o padrão desajeitado de SecretKeyFactory + PBEKeySpec por uma API limpa com builder.
Documentação Relacionada