CyberGlossary

Criptografia

Função de derivação de chaves (KDF)

Também conhecido como: KDF, Derivação de chaves

Definição

Função criptográfica que deriva uma ou mais chaves criptográficas robustas a partir de material secreto como uma palavra-passe, segredo partilhado ou chave-mestra.

Uma Key Derivation Function (KDF) recebe material secreto — uma palavra-passe, um segredo partilhado Diffie-Hellman ou uma chave-mestra existente — e produz uma ou mais chaves criptograficamente robustas de comprimento fixo. As KDFs dividem-se em duas famílias: KDFs baseadas em palavra-passe, propositadamente lentas e com custo de memória (Argon2id, scrypt, bcrypt, PBKDF2), e KDFs do tipo extract-and-expand para entradas de alta entropia (HKDF, RFC 5869). O HKDF é amplamente utilizado em TLS 1.3, Signal, WireGuard e Noise para derivar várias chaves de sessão a partir de um único segredo partilhado, usando HMAC. Uma boa KDF aceita um salt e uma string de contexto (info) opcional para separação de domínio entre chaves derivadas, garantindo que estas não são reutilizáveis nem correlacionáveis entre contextos.

Exemplos

  • O HKDF-Extract+Expand é usado em TLS 1.3 para derivar segredos de handshake e de tráfego.
  • O Argon2id deriva uma chave AES de 32 bytes a partir de uma passphrase para desbloquear um cofre cifrado.

Termos relacionados