Compartilhar via


estrutura D3DDDIENCRYPTED_BLOCK_INFO (d3dumddi.h)

A estrutura D3DDDIENCRYPTED_BLOCK_INFO descreve as partes de um buffer criptografados.

Sintaxe

typedef struct _D3DDDIENCRYPTED_BLOCK_INFO {
  [in] UINT NumEncryptedBytesAtBeginning;
  [in] UINT NumBytesInSkipPattern;
  [in] UINT NumBytesInEncryptPattern;
} D3DDDIENCRYPTED_BLOCK_INFO;

Membros

[in] NumEncryptedBytesAtBeginning

O número de bytes no início do buffer criptografado.

[in] NumBytesInSkipPattern

O número de bytes no buffer que são ignorados da criptografia antes que a criptografia seja iniciada novamente.

[in] NumBytesInEncryptPattern

O número de bytes no buffer criptografados após o padrão skip, que o membro NumBytesInSkipPattern especifica. O padrão ignorar e criptografar é repetido até que o buffer termine. Para obter mais informações sobre o padrão skip-encrypt, consulte a seção Comentários.

Comentários

Como a parte criptografada do buffer é especificada em bytes, um aplicativo deve garantir que os blocos criptografados correspondam ao alinhamento do bloco de criptografia da GPU.

O runtime pode especificar uma estrutura de D3DDDIENCRYPTED_BLOCK_INFO preenchida no bloco de memória que o membro pEncryptedBlockInfo da estrutura D3DDDIARG_DECRYPTIONBLT aponta para quando o runtime chama a função DecryptionBlt do driver para gravar dados em uma superfície protegida.

Os exemplos a seguir mostram como o runtime pode particionar a criptografia de um buffer.

  1. Os seguintes valores criptografam os primeiros 100 bytes do buffer e ignoram os dados restantes do buffer:
    • NumEncryptedBytesAtBeginning = 100;
    • NumBytesInSkipPattern = 0;
    • NumBytesInEnycryptPattern = 0;
  2. Os valores a seguir criptografam os primeiros 100 bytes do buffer, ignoram os próximos 20 bytes e criptografam os próximos 2 blocos de bytes. Em seguida, o processo é repetido em que esses valores ignoram 20 bytes e criptografam 2 bytes até o final do buffer.
    • NumEncryptedBytesAtBeginning = 100;
    • NumBytesInSkipPattern = 20;
    • NumBytesInEnycryptPattern = 2;

Requisitos

Requisito Valor
Cliente mínimo com suporte D3DDDIENCRYPTED_BLOCK_INFO tem suporte a partir do sistema operacional Windows 7.
Cabeçalho d3dumddi.h (inclua D3dumddi.h)

Confira também

D3DDDIARG_DECRYPTIONBLT

DecryptionBlt