структура D3DDDIENCRYPTED_BLOCK_INFO (d3dumddi.h)
Структура D3DDDIENCRYPTED_BLOCK_INFO описывает зашифрованные части буфера.
Синтаксис
typedef struct _D3DDDIENCRYPTED_BLOCK_INFO {
[in] UINT NumEncryptedBytesAtBeginning;
[in] UINT NumBytesInSkipPattern;
[in] UINT NumBytesInEncryptPattern;
} D3DDDIENCRYPTED_BLOCK_INFO;
Члены
[in] NumEncryptedBytesAtBeginning
Число зашифрованных байтов в начале буфера.
[in] NumBytesInSkipPattern
Количество байтов в буфере, пропущенных из шифрования перед повторным запуском шифрования.
[in] NumBytesInEncryptPattern
Число байтов в буфере, зашифрованных после шаблона пропуска, указанного элементом NumBytesInSkipPattern . Затем шаблон пропуска и шифрования повторяется до окончания буфера. Дополнительные сведения о шаблоне skip-encrypt см. в разделе Примечания.
Комментарии
Так как зашифрованная часть буфера указана в байтах, приложение должно убедиться, что зашифрованные блоки соответствуют выравниванию блоков шифрования GPU.
Среда выполнения может указать заполненную D3DDDIENCRYPTED_BLOCK_INFO структуру в блоке памяти, на которую указывает элемент pEncryptedBlockInfoструктуры D3DDDIARG_DECRYPTIONBLT , когда среда выполнения вызывает функцию DecryptionBlt драйвера для записи данных в защищенную поверхность.
В следующих примерах показано, как среда выполнения может секционирования шифрования буфера.
- Следующие значения шифруют первые 100 байт буфера и пропускают оставшиеся данные буфера:
- NumEncryptedBytesAtBeginning = 100;
- NumBytesInSkipPattern = 0;
- NumBytesInEnycryptPattern = 0;
- Следующие значения шифруют первые 100 байт буфера, пропускают следующие 20 байт, а затем шифруют следующие 2 байтовых блока. Затем процесс повторяется, когда эти значения пропускают 20 байт и шифруют 2 байта до конца буфера.
- NumEncryptedBytesAtBeginning = 100;
- NumBytesInSkipPattern = 20;
- NumBytesInEnycryptPattern = 2;
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | D3DDDIENCRYPTED_BLOCK_INFO поддерживается начиная с операционной системы Windows 7. |
Верхняя часть | d3dumddi.h (включая D3dumddi.h) |