Функция BCryptDeriveKeyCapi (bcrypt.h)
Функция BCryptDeriveKeyCapi наследует ключ от хэш-значения.
Эта функция предоставляется в качестве вспомогательной функции, помогающей перенести устаревшие приложения на основе API шифрования (CAPI) для использования API шифрования следующего поколения (CNG). Функция BCryptDeriveKeyCapi выполняет наследование ключа способом, совместимым с функцией CAPI CryptDeriveKey .
Синтаксис
NTSTATUS BCryptDeriveKeyCapi(
[in] BCRYPT_HASH_HANDLE hHash,
[in, optional] BCRYPT_ALG_HANDLE hTargetAlg,
[out] PUCHAR pbDerivedKey,
[in] ULONG cbDerivedKey,
[in] ULONG dwFlags
);
Параметры
[in] hHash
Дескриптор хэш-объекта. Дескриптор получается путем вызова функции BCryptCreateHash . Завершив использование дескриптора, необходимо освободить его, вызвав функцию BCryptDeкислоумHash .
[in, optional] hTargetAlg
Дескриптор объекта алгоритма. Это может быть ALG_ID значение, совместимое с функцией CryptDeriveKey .
[out] pbDerivedKey
Указатель на буфер, получающий производный ключ.
[in] cbDerivedKey
Размер (в символах) производного ключа, на который указывает параметр pbDerivedKey .
[in] dwFlags
Этот параметр зарезервирован и должен иметь нулевое значение.
Возвращаемое значение
Возвращает код состояния, указывающий на успешное или неудачное выполнение функции.
Возможные коды возврата включают, помимо прочего, следующие.
Код возврата | Описание |
---|---|
|
Функция выполнена успешно. |
|
Дескриптор в параметре hHash или hTargetAlg недопустим. |
|
Значение в параметре cbDerivedKey больше чем в два раза превышает размер выходных данных хэш-функции. |
|
Произошел сбой выделения памяти. |
Комментарии
Эта функция не поддерживает функциональность соли PK функции CAPI CryptDeriveKey .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | bcrypt.h |
Библиотека | Bcrypt.lib |
DLL | Bcrypt.dll |