IOCTL_AACS_GENERATE_BINDING_NONCE IOCTL (ntddcdvd.h)

保護されたデータ領域に書き込むためのプロトコルの一部として、ディスク上の指定されたバイト オフセットから始まる Advanced Access Content System (AACS) バインディング nonce を読み取ります。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

Irp-AssociatedIrp.SystemBuffer> のバッファーには、DVD_SESSION_ID、開始論理ブロック アドレス、および論理ユニットがバインド nonce を生成する必要があるセクターの数を指定するAACS_READ_BINDING_NONCE型の構造体が含まれています。

入力バッファーの長さ

AACS_READ_BINDING_NONCEの長さ。

出力バッファー

Irp-AssociatedIrp.SystemBuffer> のバッファーには、バインディング nonce を指定するAACS_BINDING_NONCE型の値が含まれています。

出力バッファーの長さ

AACS_BINDING_NONCEの長さ。

ステータス ブロック

[ 情報 ] フィールドは、転送されたバイト数に設定されます。 [状態] フィールドは、STATUS_SUCCESSに設定されているか、場合によってはSTATUS_INSUFFICIENT_RESOURCES。

注釈

IOCTL_AACS_GENERATE_BINDING_NONCE要求は、保護されたデータ領域への書き込みを担当する AACS 認証プロトコルの部分に対応します。 このプロトコルの詳細については、「 Advanced Access Content System」、「Introduction and Common Cryptographic Elements 」の仕様を参照してください。詳細アクセス コンテンツ システム ライセンス管理者 (AACS LA) によって公開されています。

IOCTL_AACS_GENERATE_BINDING_NONCE要求では、処理中に使用可能な AGID が 1 つ必要であり、要求の完了後に AGID は自動的に解放 されません 。 AGID は、明示的に無効化されるまで、またはドライブで電源オン リセット、ハード リセット、またはメディアの取り出しイベントが生成されるまで有効なままです。 ただし、AGID を他の要求と共に再利用することはできません。

AGID でセキュリティで保護されたセッションを使用する他のすべての要求が完了するまで待ってから、IOCTL_AACS_GENERATE_BINDING_NONCE要求を行うことをお勧めします。

ファイル システムのサポートを使用しないクライアントでは、AACS_READ_BINDING_NONCEHandle メンバーをINVALID_HANDLE_VALUEに設定し、StartLBA メンバーと NumberOfSectors メンバーの明示的な値を指定する必要があります。

要件

要件
Header ntddcdvd.h (Ntddcdvd.h を含む)