DXGKMDT_OPM_GET_INFO_PARAMETERS構造体 (d3dkmdt.h)

DXGKMDT_OPM_GET_INFO_PARAMETERS構造体には、DxgkDdiOPMGetInformation 関数の呼び出しで保護された出力オブジェクトから情報を取得するために使用されるパラメーターが含まれています。

構文

typedef struct _DXGKMDT_OPM_GET_INFO_PARAMETERS {
  DXGKMDT_OPM_OMAC          omac;
  DXGKMDT_OPM_RANDOM_NUMBER rnRandomNumber;
  GUID                      guidInformation;
  ULONG                     ulSequenceNumber;
  ULONG                     cbParametersSize;
  BYTE                      abParameters[DXGKMDT_OPM_GET_INFORMATION_PARAMETERS_SIZE];
} DXGKMDT_OPM_GET_INFO_PARAMETERS, *PDXGKMDT_OPM_GET_INFO_PARAMETERS;

メンバー

omac

メッセージの信頼性を高める 1 キー暗号ブロック チェーン (CBC) モードのメッセージ認証コード (OMAC) を含む DXGKMDT_OPM_OMAC 構造。 OMAC の詳細については、 OMAC-1 アルゴリズムに関するページを参照してください。 OPM と COPP で使用される OMAC-1 パラメーターは次のとおりです。

E = AES (Advanced Encryption Standard)

t = 128 ビット

K = DxgkDdiOPMSetSigningKeyAndSequenceNumbers が呼び出されたときにディスプレイ ミニポート ドライバーが受け取る 128 ビット キー。

n = 128 ビット

AES の詳細については、 RSA ラボラトリー の Web サイトを参照してください。

rnRandomNumber

保護された出力オブジェクトの 128 ビット暗号でセキュリティで保護された乱数を含む DXGKMDT_OPM_RANDOM_NUMBER 構造体。 この乱数は、アプリケーションによって生成され、ドライバーの DxgkDdiOPMGetInformation 関数の呼び出しで rnRandomNumber のディスプレイ ミニポート ドライバーに提供されます。

guidInformation

情報の取得に使用される GUID。 guidInformation は、次のいずれかの GUID に設定できます。

  • DXGKMDT_OPM_GET_CURRENT_HDCP_SRM_VERSION
  • DXGKMDT_OPM_GET_CONNECTOR_TYPE
  • DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES
  • DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL
  • DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL
  • DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT
  • DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE
  • DXGKMDT_OPM_GET_DVI_CHARACTERISTICS。 Windows 7 以降のバージョンでサポートされています。
  • DXGKMDT_OPM_GET_OUTPUT_ID。 Windows 7 以降のバージョンでサポートされています。

ulSequenceNumber

シーケンス番号です。 DxgkDdiOPMGetInformation 関数が情報要求を処理するには、ulSequenceNumber の値が、ディスプレイ ミニポート ドライバーに格納されている現在の 4 バイトシーケンス番号と一致している必要があります。 一致が検出されない場合、 DxgkDdiOPMGetInformation はエラー コードを返します。 一致が検出された場合、 DxgkDdiOPMGetInformation は、返される前に格納されているシーケンス番号をインクリメントします。 最初の 4 バイト シーケンス番号は、DxgkDdiOPMSetSigningKeyAndSequenceNumbers 関数の EncryptedParameters パラメーターが指す 256 バイト配列の一部でした。

cbParametersSize

abParameters メンバーが指す有効なデータのサイズ (バイト単位)。

abParameters[DXGKMDT_OPM_GET_INFORMATION_PARAMETERS_SIZE]

guidInformation メンバーによって識別される情報要求に付随するデータを含む 4056 バイト配列。

DXGKMDT_OPM_GET_CONNECTOR_TYPE、DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES、DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT、DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE、DXGKMDT_OPM_GET_DVI_CHARACTERISTICS、DXGKMDT_OPM_GET_OUTPUT_ID、DXGKMDT_OPM_GET_CURRENT_HDCP_SRM_VERSIONの要求にデータは必要ありません。

DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL要求とDXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL要求には、保護レベルが要求される保護の種類を識別するデータが必要です。 したがって、これらの要求では、 abParameters 配列の最初の 4 バイトに保護の種類が含まれている必要があります。

注釈

DXGKMDT_OPM_GET_INFO_PARAMETERSの omac メンバーが署名された後のすべてのデータ。署名は OMAC であり、 omac メンバーに格納されます。 データは OMAC-1 アルゴリズムを使用して署名されます。

DXGKMDT_OPM_GET_INFO_PARAMETERSは COPP エミュレーションには使用されません。代わりに、 COPP にDXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS 構造が使用されます。

要件

要件
サポートされている最小のクライアント Windows Vista
Header d3dkmdt.h

こちらもご覧ください

DXGKMDT_OPM_OMAC

DXGKMDT_OPM_RANDOM_NUMBER

DxgkDdiOPMGetInformation

DxgkDdiOPMSetSigningKeyAndSequenceNumbers