共用方式為


IOCTL_AACS_READ_MEDIA_KEY_BLOCK IOCTL (ntddc)

查詢媒體索引鍵區塊的邏輯單元 (MKB) 。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

Irp-AssociatedIrp.SystemBuffer> 上的緩衝區包含圖層的AACS_LAYER_NUMBER數目。 AACS_LAYER_NUMBER是範圍 0 到 255 的不帶正負號長整數值,指定命令所套用的媒體層。

typedef ULONG AACS_LAYER_NUMBER, *PAACS_LAYER_NUMBER;

輸入緩衝區長度

I/O 堆棧位置中的 Parameters.DeviceIoControl.InputBufferLength 表示緩衝區的大小,以位元組為單位,這必須是 >= sizeof (AACS_LAYER_NUMBER) 。

輸出緩衝區

Irp-AssociatedIrp.SystemBuffer> 上的緩衝區包含不透明的可變長度 MKB。 MKB 的大小一律是 32,768 (0x8000) 的倍數。

輸出緩衝區長度

可變長度 MKB 的長度。

狀態區塊

[資訊] 欄位元位會設定為傳輸的位元元組數目。 如果作業成功,[ 狀態 ] 字段會設定為STATUS_SUCCESS。 如果 Irp-AssociatedIrp.SystemBuffer> 為 NULL,或 Irp-AssociatedIrp.SystemBuffer > 上的緩衝區不足以包含完整的 MKB,則作業會失敗並傳回STATUS_BUFFER_TOO_SMALL的狀態,並在 IoStatus.Information 中傳回必要的緩衝區大小。

備註

儲存器堆疊會使用 READ DISC STRUCTURE 命令 (格式0x17) 搭配进阶 存取控制 系統 (AACS) 擴充功能來擷取 MKB。 如果邏輯單元中的媒體不受 AACS 保護,IOCTL_AACS_READ_MEDIA_KEY_BLOCK要求將無法運作。

不同於搭配 Content-Scrambling System (CSS) 加密使用的 MKB,AACS MB 會以數位簽名自我保護。 MKB 結構完整記載於 進階存取內容系統簡介和通用密碼編譯元素 規格中,進階存取內容系統授權系統管理員 (AACS LA) 。

IOCTL_AACS_READ_MEDIA_KEY_BLOCK要求會對應至 AACS (AACS) 驗證演算法 (AACS-Auth) 的其中一個步驟。 如需 AACS-Auth 的完整描述,請參閱 進階存取內容系統、簡介和通用密碼編譯元素 規格。

規格需求

需求
標頭 ntddc (包含 Ntddc)