Структура D3DCONTENTPROTECTIONCAPS (d3d9caps.h)
Описывает возможности защиты содержимого драйвера дисплея. Чтобы получить возможности, вызовите IDirect3DDevice9Video::GetContentProtectionCaps.
Синтаксис
typedef struct _D3DCONTENTPROTECTIONCAPS {
DWORD Caps;
GUID KeyExchangeType;
UINT BufferAlignmentStart;
UINT BlockAlignmentSize;
ULONGLONG ProtectedMemorySize;
} D3DCONTENTPROTECTIONCAPS;
Члены
Caps
Побитовое ИЛИ с нулевым или более флагами.
Значение | Значение |
---|---|
|
Шифрование реализуется в программном обеспечении драйвером. |
|
Шифрование реализуется на оборудовании с помощью GPU. |
|
Защита содержимого всегда применяется к защищенной поверхности Direct3D, независимо от того, включает ли приложение защиту содержимого явным образом. |
|
Драйвер может использовать частично зашифрованные буферы. Если эта возможность отсутствует, весь буфер должен быть зашифрован или очищен. |
|
Драйвер может шифровать данные с помощью отдельного ключа содержимого, зашифрованного с помощью ключа сеанса. Дополнительные сведения см. в разделе IDirect3DCryptoSession9::D ecryptionBlt. |
|
Драйвер может обновить сеансовый ключ без повторного согласования ключа. Чтобы обновить ключ сеанса, вызовите метод IDirect3DCryptoSession9::StartSessionKeyRefresh. |
|
Драйвер может считывать зашифрованные данные с защищенной поверхности с помощью метода IDirect3DCryptoSession9::EncryptionBlt . |
|
Драйверу требуется отдельный ключ для чтения зашифрованных данных с защищенной поверхности. Чтобы получить этот второй ключ, вызовите IDirect3DCryptoSession9::GetEncryptionBltKey. |
|
Если тип шифрования D3DCRYPTOTYPE_AES128_CTR, приложение должно использовать последовательный счетчик в структуре DXVA2_AES_CTR_IV . Дополнительные сведения см. в примечаниях для DXVA2_AES_CTR_IV. |
KeyExchangeType
Указывает тип обмена ключами, необходимый для согласования сеансового ключа. Определены следующие идентификаторы GUID.
BufferAlignmentStart
Выравнивание памяти, необходимое для буферов, используемых подсистемой шифрования GPU. Если приложение использует буфер системной памяти для передачи зашифрованного содержимого в GPU или для чтения зашифрованного содержимого из GPU, начальный адрес буфера должен быть кратным этому значению.
BlockAlignmentSize
Выравнивание блоков, необходимое для криптографического модуля GPU. Размер зашифрованных данных должен быть кратным этому значению.
ProtectedMemorySize
Общий объем памяти, который можно использовать для хранения защищенных поверхностей.
Требования
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Верхняя часть | d3d9caps.h (включая D3d9.h) |