Функция SslExportKeyingMaterial
Экспорт материала ключа согласно стандарту RFC 5705. Эта функция использует псевдослучайную функцию TLS для создания буфера байтов материала ключа. Он принимает ссылку на секрет master, неоднозначную метку ASCII, случайные значения клиента и сервера, а также при необходимости данные контекста приложения.
Синтаксис
SECURITY_STATUS WINAPI SslExportKeyingMaterial(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hMasterKey,
_In_ PCHAR sLabel,
_In_ PBYTE pbRandoms,
_In_ DWORD cbRandoms,
_In_opt_ PBYTE pbContextValue,
_In_ WORD cbContextValue,
_Out_ PBYTE pbOutput,
_In_ DWORD cbOutput,
_In_ DWORD dwFlags
);
Параметры
-
hSslProvider [in]
-
Дескриптор экземпляра поставщика протокола TLS.
-
hMasterKey [in]
-
Дескриптор объекта ключа master, который будет использоваться для создания экспортированного материала ключа.
-
sLabel [in]
-
строка метки ASCII, оканчиваемая NUL. Schannel удалит завершающий символ NUL, прежде чем передать его в псевдослучайную функцию.
-
pbRandoms [in]
-
Указатель на буфер, содержащий объединение client_random и server_random значений TLS-соединения.
-
cbRandoms [in]
-
Длина буфера pbRandoms в байтах .
-
pbContextValue [in, необязательный]
-
Указатель на буфер, содержащий контекст приложения. Если значение pbContextValue равно NULL, cbContextValue должно быть равно нулю.
-
cbContextValue [in]
-
Длина буфера pbContextValue в байтах.
-
pbOutput [out]
-
Адрес буфера, который получает экспортированные материалы ключей. Параметр cbOutput содержит размер этого буфера. Это значение не может иметь значение NULL.
-
cbOutput [in]
-
Длина буфера pbOutput в байтах. Должен быть больше нуля.
-
dwFlags [in]
-
Не используется. Необходимо задать нулевое значение.
Возвращаемое значение
Если функция завершается успешно, она возвращает ноль.
Если функция завершается сбоем, она возвращает ненулевое значение ошибки.
Возможные коды возврата включают, помимо прочего, следующие.
Возвращаемый код/значение | Описание |
---|---|
|
Один из предоставленных дескрипторов недопустим. |
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 10 [только классические приложения] |
Минимальная версия сервера |
Windows Server 2016 [только классические приложения] |
Заголовок |
|
DLL |
|