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.
- 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 ;
- 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) |