функция обратного вызова DXGKDDI_OPM_GET_RANDOM_NUMBER (dispmprt.h)

Функция DxgkDdiOPMGetRandomNumber извлекает 128-разрядное криптографически безопасное случайное число заданного объекта вывода.

Синтаксис

DXGKDDI_OPM_GET_RANDOM_NUMBER DxgkddiOpmGetRandomNumber;

NTSTATUS DxgkddiOpmGetRandomNumber(
  [in]  PVOID MiniportDeviceContext,
  [in]  HANDLE ProtectedOutputHandle,
  [out] PDXGKMDT_OPM_RANDOM_NUMBER RandomNumber
)
{...}

Параметры

[in] MiniportDeviceContext

Дескриптор для блока контекста, связанного с видеоадаптером. Ранее функция DxgkDdiAddDevice драйвера мини-порта дисплея предоставляла этот дескриптор подсистеме ядра графики DirectX.

[in] ProtectedOutputHandle

Дескриптор защищенного выходного объекта. Функция DxgkDdiOPMCreateProtectedOutput создает защищенный выходной объект и возвращает дескриптор объекту .

[out] RandomNumber

Указатель на структуру DXGKMDT_OPM_RANDOM_NUMBER , которая получает 128-разрядное криптографически безопасное случайное число объекта защищенного вывода, если dxgkDdiOPMGetRandomNumber возвращает успешно.

Если DxgkDdiOPMGetRandomNumber завершается сбоем, значение, на которое указывает RandomNumber , не изменяется.

Каждый защищенный выходной объект должен иметь другое 128-разрядное криптографически безопасное случайное число, связанное с ним.

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

DxgkDdiOPMGetRandomNumber возвращает STATUS_SUCCESS в случае успешного выполнения. В противном случае возвращается один из кодов ошибок, определенных в ntstatus.h.

Комментарии

DxgkDdiOPMGetRandomNumber вызывается только один раз для каждого защищенного вывода и никогда не вызывается после вызова функции DxgkDdiOPMSetSigningKeyAndSequenceNumbers .

Дополнительные сведения о криптографически защищенных случайных числах см. в разделе 2.8 статьи Applied Cryptography, Second Edition.

DxgkDdiOPMGetRandomNumber следует сделать страничной.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dispmprt.h (включая Dispmprt.h)
IRQL PASSIVE_LEVEL (см. раздел "Примечания")

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

DXGKMDT_OPM_RANDOM_NUMBER

DxgkDdiAddDevice

DxgkDdiOPMCreateProtectedOutput

DxgkDdiOPMSetSigningKeyAndSequenceNumbers