Функция DrtCreateDerivedKey (drt.h)

Функция DrtCreateDerivedKey создает ключ, который может использоваться DrtRegisterKey , когда DRT использует поставщик безопасности производных ключей.

Синтаксис

HRESULT DrtCreateDerivedKey(
  [in]  PCCERT_CONTEXT pLocalCert,
  [out] DRT_DATA       *pKey
);

Параметры

[in] pLocalCert

Указатель на сертификат, который является "локальной" частью цепочки. Корень этой цепочки должен соответствовать корню, заданному pRootCert в DrtCreateDerivedKeySecurityProvider. Этот сертификат используется для создания ключа, который используется для регистрации и подтверждения владения ключом в DRT.

[out] pKey

Указатель на созданный ключ.

Возвращаемое значение

Эта функция возвращает S_OK при успешном выполнении. Другие возможные значения:

Код возврата Описание
E_INVALIDARG
  • pLocalCert имеет значение NULL.
  • pKey имеет значение NULL.
  • Элемент pb в структуре DRT_DATA имеет значение NULL.
  • Член CB в структуре DRT_DATA не равен 32 байтам.
DRT_E_CAPABILITY_MISMATCH
  • Запрошенные алгоритмы безопасности недоступны ( т. е. BCRYPT_SHA256_ALGORITHM или BCRYPT_AES_ALGORITHM).
  • Сбой операции BCryptOpenAlgorithmProvider .
  • Параметр dwProvType указывает, что поставщик сертификатов не поддерживает AES.

Требования

Требование Значение
Минимальная версия клиента Windows 7 Профессиональная [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header drt.h
Библиотека Drtprov.lib
DLL Drt.dll

См. также раздел

DrtCreateDerivedKeySecurityProvider

DrtDeleteDerivedKeySecurityProvider

DrtRegisterKey