Partager via


structure D3DDDIENCRYPTED_BLOCK_INFO (d3dumddi.h)

La structure D3DDDIENCRYPTED_BLOCK_INFO décrit les parties d’une mémoire tampon chiffrées.

Syntaxe

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

Membres

[in] NumEncryptedBytesAtBeginning

Nombre d’octets chiffrés au début de la mémoire tampon.

[in] NumBytesInSkipPattern

Nombre d’octets dans la mémoire tampon qui sont ignorés du chiffrement avant le nouveau démarrage du chiffrement.

[in] NumBytesInEncryptPattern

Nombre d’octets dans la mémoire tampon chiffrés après le modèle d’évitement, que le membre NumBytesInSkipPattern spécifie. Le modèle skip et encrypt est ensuite répété jusqu’à la fin de la mémoire tampon. Pour plus d’informations sur le modèle skip-encrypt, consultez la section Remarques.

Remarques

Étant donné que la partie chiffrée de la mémoire tampon est spécifiée en octets, une application doit s’assurer que les blocs chiffrés correspondent à l’alignement des blocs de chiffrement du GPU.

Le runtime peut spécifier une structure de D3DDDIENCRYPTED_BLOCK_INFO remplie dans le bloc de mémoire vers lequel pointe le membre pEncryptedBlockInfo de la structure D3DDDIARG_DECRYPTIONBLT lorsque le runtime appelle la fonction DecryptionBlt du pilote pour écrire des données dans une surface protégée.

Les exemples suivants montrent comment le runtime peut partitionner le chiffrement d’une mémoire tampon.

  1. Les valeurs suivantes chiffrent les 100 premiers octets de la mémoire tampon et ignorent les données de mémoire tampon restantes :
    • NumEncryptedBytesAtBeginning = 100 ;
    • NumBytesInSkipPattern = 0 ;
    • NumBytesInEnycryptPattern = 0 ;
  2. Les valeurs suivantes chiffrent les 100 premiers octets de la mémoire tampon, ignorent les 20 octets suivants, puis chiffrent les blocs de 2 octets suivants. Le processus est ensuite répété où ces valeurs ignorent 20 octets et chiffrent 2 octets jusqu’à la fin de la mémoire tampon.
    • NumEncryptedBytesAtBeginning = 100 ;
    • NumBytesInSkipPattern = 20 ;
    • NumBytesInEnycryptPattern = 2 ;

Configuration requise

Condition requise Valeur
Client minimal pris en charge D3DDDIENCRYPTED_BLOCK_INFO est pris en charge à partir du système d’exploitation Windows 7.
En-tête d3dumddi.h (inclure D3dumddi.h)

Voir aussi

D3DDDIARG_DECRYPTIONBLT

DecryptionBlt