IOCTL_DVD_READ_KEY IOCTL (ntddcdvd.h)

Возвращает ключ защиты копирования указанного типа: ключ вызова, ключ шины, ключ заголовка, чтение ключа RPC, установка ключа RPC или ключа диска. Ключ вызова или ключ шины отправляется на устройство, чтобы выполнить соответствующий шаг в последовательности проверки подлинности DVD. После завершения последовательности проверки подлинности ключ заголовка используется для шифрования и расшифровки пользовательских данных, передаваемых с DVD-диска, а ключ диска используется для шифрования и расшифровки данных ключа заголовка. Если область диска не была задана ранее (если она по-прежнему находится на фабрике по умолчанию) и если вставленный носитель имеет регион, регион устройства будет установлен в текущем регионе мультимедиа.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Буфер в Irp->AssociatedIrp.SystemBuffer содержит структуру DVD_COPY_PROTECT_KEY, которая указывает идентификатор сеанса сеанса DVD-сеанса и тип возвращаемого ключа.

Длина входного буфера

Parameters.DeviceIoControl.OutputBufferLength указывает размер буфера в байтах, который должен быть >= размер одного из следующих: DVD_CHALLENGE_KEY_LENGTH, DVD_BUS_KEY_LENGTH, DVD_TITLE_KEY_LENGTH, DVD_RPC_KEY_LENGTH, DVD_SET_RPC_KEY_LENGTH или DVD_DISK_KEY_LENGTH.

Выходной буфер

Драйвер возвращает данные DVD_COPY_PROTECT_KEY в буфере по Irp->AssociatedIrp.SystemBuffer.

Длина выходного буфера

Длина DVD_COPY_PROTECT_KEY.

Блок состояния

Поле сведений задано для количества передаваемых байтов. Поле состояния имеет значение STATUS_SUCCESS или, возможно, STATUS_INSUFFICIENT_RESOURCES.

Требования

Требование Ценность
заголовка ntddcdvd.h (include Ntddcdvdd.h)

См. также

DVD_COPY_PROTECT_KEY