D3DCONTENTPROTECTIONCAPS 構造体 (d3d9caps.h)

ディスプレイ ドライバーのコンテンツ保護機能について説明します。 機能を取得するには、 IDirect3DDevice9Video::GetContentProtectionCaps を呼び出します。

構文

typedef struct _D3DCONTENTPROTECTIONCAPS {
  DWORD     Caps;
  GUID      KeyExchangeType;
  UINT      BufferAlignmentStart;
  UINT      BlockAlignmentSize;
  ULONGLONG ProtectedMemorySize;
} D3DCONTENTPROTECTIONCAPS;

メンバー

Caps

0 個以上のフラグのビットごとの OR

意味
D3DCPCAPS_SOFTWARE
0x00000001
暗号化は、ドライバーによってソフトウェアに実装されます。
D3DCPCAPS_HARDWARE
0x00000002
暗号化は、GPU によってハードウェアに実装されます。
D3DCPCAPS_PROTECTIONALWAYSON
0x00000004
コンテンツ保護は、アプリケーションが明示的にコンテンツ保護を有効にするかどうかに関係なく、保護された Direct3D サーフェスに常に適用されます。
D3DCPCAPS_PARTIALDECRYPTION
0x00000008
ドライバーは、部分的に暗号化されたバッファーを使用できます。 この機能が存在しない場合は、バッファー全体を暗号化するかクリアする必要があります。
D3DCPCAPS_CONTENTKEY
0x00000010
ドライバーは、セッション キーを使用して暗号化された別のコンテンツ キーを使用してデータを暗号化できます。 詳細については、「 IDirect3DCryptoSession9::D ecryptionBlt」を参照してください。
D3DCPCAPS_FRESHENSESSIONKEY
0x00000020
ドライバーは、キーを再ネゴシエーションせずにセッション キーを更新できます。 セッション キーを更新するには、 IDirect3DCryptoSession9::StartSessionKeyRefresh を呼び出します。
D3DCPCAPS_ENCRYPTEDREADBACK
0x00000040
ドライバーは、 IDirect3DCryptoSession9::EncryptionBlt メソッドを使用して、保護されたサーフェスから暗号化されたデータを読み取ることができます。
D3DCPCAPS_ENCRYPTEDREADBACKKEY
0x00000080
ドライバーには、保護されたサーフェスから暗号化されたデータを読み取るために別のキーが必要です。 この 2 番目のキーを取得するには、 IDirect3DCryptoSession9::GetEncryptionBltKey を呼び出します。
D3DCPCAPS_SEQUENTIAL_CTR_IV
0x00000100
暗号化の種類が D3DCRYPTOTYPE_AES128_CTRされている場合、アプリケーションでは 、DXVA2_AES_CTR_IV 構造体でシーケンシャルカウントを使用する必要があります。 詳細については、 DXVA2_AES_CTR_IVに関する解説を参照してください。

KeyExchangeType

セッション キーのネゴシエートに必要なキー交換の種類を指定します。 次の GUID が定義されています。

意味
D3DKEYEXCHANGE_RSAES_OAEP
デコーダーは、RSA 暗号化スキーム - 最適な非対称暗号化パディング (RSAES-OAEP) を使用してセッション キーを暗号化します。
D3DKEYEXCHANGE_DXVA
DirectX ビデオ アクセラレーション 2 (DXVA-2) に定義されているキー交換メカニズムを使用します。

BufferAlignmentStart

GPU 暗号化エンジンで使用されるバッファーに必要なメモリアラインメント。 アプリケーションでシステム メモリ バッファーを使用して暗号化されたコンテンツを GPU に渡す場合、または GPU から暗号化されたコンテンツを読み取り戻す場合、バッファーの開始アドレスはこの値の倍数である必要があります。

BlockAlignmentSize

GPU 暗号化エンジンに必要なブロックアラインメント。 暗号化するデータのサイズは、この値の倍数である必要があります。

ProtectedMemorySize

保護されたサーフェスを保持するために使用できるメモリの合計量。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
Header d3d9caps.h (D3d9.h を含む)

関連項目

Direct3D ビデオ構造

IDirect3DDevice9Video::GetContentProtectionCaps