структура DXGKMDT_OPM_GET_INFO_PARAMETERS (d3dkmdt.h)
Структура DXGKMDT_OPM_GET_INFO_PARAMETERS содержит параметры, используемые для получения информации из защищенного выходного объекта в вызове функции DxgkDdiOPMGetInformation.
Синтаксис
typedef struct _DXGKMDT_OPM_GET_INFO_PARAMETERS {
DXGKMDT_OPM_OMAC omac;
DXGKMDT_OPM_RANDOM_NUMBER rnRandomNumber;
GUID guidInformation;
ULONG ulSequenceNumber;
ULONG cbParametersSize;
BYTE abParameters[DXGKMDT_OPM_GET_INFORMATION_PARAMETERS_SIZE];
} DXGKMDT_OPM_GET_INFO_PARAMETERS, *PDXGKMDT_OPM_GET_INFO_PARAMETERS;
Члены
omac
Структура DXGKMDT_OPM_OMAC, содержащая код проверки подлинности сообщений в режиме CBC (OMAC) с одно ключом. Дополнительные сведения об OMAC см. в алгоритме OMAC-1. Параметры OMAC-1, используемые OPM и COPP, являются следующими:
E = AES (расширенный стандарт шифрования)
t = 128 бит
K = 128-разрядный ключ, получаемый драйвером мини-порта отображения при вызовеDxgkDdiOPMSetSigningKeyAndSequenceNumbers.
n = 128 бит
Дополнительные сведения об AES см. на веб-сайте лабораторий RSA.
rnRandomNumber
Структура DXGKMDT_OPM_RANDOM_NUMBER, содержащая 128-разрядное криптографическое число защищенного выходного объекта. Это случайное число создается приложением и предоставляется драйверу мини-порта отображения в rnRandomNumber в вызове функции dxgkDdiOPMGet Information.
guidInformation
GUID, используемый для получения сведений. guidInformation можно задать для одного из следующих идентификаторов GUID:
- DXGKMDT_OPM_GET_CURRENT_HDCP_SRM_VERSION
- DXGKMDT_OPM_GET_CONNECTOR_TYPE
- DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES
- DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL
- DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL
- DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT
- DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE
- DXGKMDT_OPM_GET_DVI_CHARACTERISTICS. Поддерживается в Windows 7 и более поздних версиях.
- DXGKMDT_OPM_GET_OUTPUT_ID. Поддерживается в Windows 7 и более поздних версиях.
ulSequenceNumber
Порядковый номер. Чтобы функция DxgkDdiOPMGetInformation для обработки запроса информации, значение в ulSequenceNumber должно соответствовать текущему 4-байтового порядкового номера, в котором хранится драйвер мини-порта отображения. Если совпадение не обнаружено, DxgkDdiOPMGetInformation возвращает код ошибки. Если обнаружено совпадение, DxgkDdiOPMGetInformation увеличивает хранимый номер последовательности перед возвратом. Начальный 4-байтовый порядковый номер был частью массива 256-байтов, на который указывает функция EncryptedParametersdxgkDdiOPMSetSigningKeyAndSequenceNumbers.
cbParametersSize
Размер в байтах допустимых данных, на которые указывает abParameters член.
abParameters[DXGKMDT_OPM_GET_INFORMATION_PARAMETERS_SIZE]
Массив 4056-байтов, содержащий данные, сопровождающие запрос информации, который определяется элементом guidInformation .
Данные не требуются для запросов DXGKMDT_OPM_GET_CONNECTOR_TYPE, DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES, DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE, DXGKMDT_OPM_GET_DVI_CHARACTERISTICS, DXGKMDT_OPM_GET_OUTPUT_ID и DXGKMDT_OPM_GET_CURRENT_HDCP_SRM_VERSION.
Для запросов DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL и DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL требуются данные, определяющие тип защиты, для которых запрашивается уровень защиты. Поэтому эти запросы требуют, чтобы первые 4 байта в массиве abParameters содержат тип защиты.
Замечания
Все данные после подписания элемента omac в DXGKMDT_OPM_GET_INFO_PARAMETERS; подпись — это OMAC и хранится в элементе omac. Данные подписаны с помощью алгоритма OMAC-1.
DXGKMDT_OPM_GET_INFO_PARAMETERS не используется для эмуляции COPP; Вместо этого для COPP используется структура DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
заголовка | d3dkmdt.h |