IOCTL_AACS_GENERATE_BINDING_NONCE IOCTL (ntddcdvd.h)

读取从光盘上指定字节偏移量开始的高级访问内容系统 (AACS) 绑定 nonce,作为写入受保护数据区域的协议的一部分。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

Irp-AssociatedIrp.SystemBuffer> 的缓冲区包含一个类型AACS_READ_BINDING_NONCE的结构,该结构指定DVD_SESSION_ID、起始逻辑块地址以及逻辑单元应为其生成绑定 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 身份验证协议的一部分。 有关此协议的完整说明,请参阅高级 访问内容系统、简介和通用加密元素 规范,该规范由高级访问内容系统许可管理员 (AACS LA) 发布。

IOCTL_AACS_GENERATE_BINDING_NONCE请求在处理过程中需要单个可用的 AGID,并且请求完成后 不会 自动释放 AGID。 AGID 在显式失效或驱动器生成开机重置、硬重置或媒体弹出事件之前保持有效。 但是,不能与其他请求重复使用 AGID。

建议在发出IOCTL_AACS_GENERATE_BINDING_NONCE请求之前,等待使用 AGID 的安全会话的所有其他请求完成。

不使用文件系统支持的客户端必须将AACS_READ_BINDING_NONCE的 Handle 成员设置为 INVALID_HANDLE_VALUE ,并为 StartLBANumberOfSectors 成员指定显式值。

要求

   
Header ntddcdvd.h (包括 Ntddcdvd.h)