Struttura D3DCONTENTPROTECTIONCAPS (d3d9caps.h)
Descrive le funzionalità di protezione del contenuto di un driver di visualizzazione. Per ottenere le funzionalità, chiama IDirect3DDevice9Video::GetContentProtectionCaps.
Sintassi
typedef struct _D3DCONTENTPROTECTIONCAPS {
DWORD Caps;
GUID KeyExchangeType;
UINT BufferAlignmentStart;
UINT BlockAlignmentSize;
ULONGLONG ProtectedMemorySize;
} D3DCONTENTPROTECTIONCAPS;
Members
Caps
OR bit per bit pari a zero o più flag.
Valore | Significato |
---|---|
|
La crittografia viene implementata nel software dal driver. |
|
La crittografia viene implementata nell'hardware dalla GPU. |
|
La protezione del contenuto viene sempre applicata a una superficie Direct3D protetta, indipendentemente dal fatto che l'applicazione consenta in modo esplicito la protezione del contenuto. |
|
Il driver può usare buffer parzialmente crittografati. Se questa funzionalità non è presente, l'intero buffer deve essere crittografato o deselezionato. |
|
Il driver può crittografare i dati usando una chiave simmetrica separata crittografata usando la chiave di sessione. Per altre informazioni, vedere IDirect3DCryptoSession9::D ecryptionBlt. |
|
Il driver può aggiornare la chiave di sessione senza rinegoziare la chiave. Per aggiornare la chiave di sessione, chiama IDirect3DCryptoSession9::StartSessionKeyRefresh. |
|
Il driver può leggere i dati crittografati da una superficie protetta usando il metodo IDirect3DCryptoSession9::EncryptionBlt . |
|
Il driver richiede una chiave separata per leggere i dati crittografati da una superficie protetta. Per ottenere questa seconda chiave, chiama IDirect3DCryptoSession9::GetEncryptionBltKey. |
|
Se il tipo di crittografia è D3DCRYPTOTYPE_AES128_CTR, l'applicazione deve usare un conteggio sequenziale nella struttura DXVA2_AES_CTR_IV . Per altre informazioni, vedere le osservazioni per DXVA2_AES_CTR_IV. |
KeyExchangeType
Specifica il tipo di scambio di chiavi necessario per negoziare la chiave di sessione. Vengono definiti i GUID seguenti.
BufferAlignmentStart
Allineamento della memoria necessario per i buffer usati dal motore di crittografia GPU. Se l'applicazione usa un buffer di memoria di sistema per passare contenuto crittografato alla GPU o per leggere il contenuto crittografato dalla GPU, l'indirizzo iniziale del buffer deve essere un multiplo di questo valore.
BlockAlignmentSize
Allineamento del blocco richiesto dal motore di crittografia GPU. Le dimensioni dei dati da crittografare devono essere un multiplo di questo valore.
ProtectedMemorySize
Quantità totale di memoria che può essere utilizzata per contenere superfici protette.
Requisiti
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Intestazione | d3d9caps.h (include D3d9.h) |