Função BCryptDeriveKeyPBKDF2 (bcrypt.h)
A função BCryptDeriveKeyPBKDF2 deriva uma chave de um valor de hash usando o algoritmo de derivação de chave PBKDF2, conforme definido pelo RFC 2898.
Sintaxe
NTSTATUS BCryptDeriveKeyPBKDF2(
[in] BCRYPT_ALG_HANDLE hPrf,
[in, optional] PUCHAR pbPassword,
[in] ULONG cbPassword,
[in, optional] PUCHAR pbSalt,
[in] ULONG cbSalt,
[in] ULONGLONG cIterations,
[out] PUCHAR pbDerivedKey,
[in] ULONG cbDerivedKey,
[in] ULONG dwFlags
);
Parâmetros
[in] hPrf
O identificador de um provedor de algoritmos que fornece a função pseudo-aleatória. Esse deve ser um provedor de algoritmos que executa uma computação de Código de Autenticação de Mensagem . Quando você usa o provedor de algoritmo padrão da Microsoft, qualquer algoritmo de hash aberto usando o sinalizador BCRYPT_ALG_HANDLE_HMAC_FLAG pode ser usado.
[in, optional] pbPassword
Um ponteiro para um buffer que contém o parâmetro de senha para o algoritmo de derivação de chave PBKDF2.
[in] cbPassword
O comprimento, em bytes, dos dados no buffer apontados pelo parâmetro pbPassword .
[in, optional] pbSalt
Um ponteiro para um buffer que contém o argumento salt para o algoritmo de derivação de chave PBKDF2.
[in] cbSalt
O comprimento, em bytes, do argumento salt apontado pelo parâmetro pbSalt .
[in] cIterations
A contagem de iteração para o algoritmo de derivação de chave PBKDF2.
[out] pbDerivedKey
Um ponteiro para um buffer que recebe a chave derivada.
[in] cbDerivedKey
O comprimento, em bytes, da chave derivada retornada no buffer apontado pelo parâmetro pbDerivedKey .
[in] dwFlags
Esse parâmetro é reservado e deve ser definido como zero.
Retornar valor
Retorna um código status que indica o êxito ou a falha da função.
Os códigos de retorno possíveis incluem, mas não se limitam a, o seguinte.
Código de retorno | Descrição |
---|---|
|
A função foi bem-sucedida. |
|
O identificador no parâmetro hPrf não é válido. |
|
Um ou mais dos parâmetros não são válidos. |
|
Ocorreu uma falha de alocação de memória. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | bcrypt.h |
Biblioteca | Bcrypt.lib |
DLL | Bcrypt.dll |