Compartir a través de


IOCTL_AACS_READ_MEDIA_KEY_BLOCK IOCTL (ntddcdvd.h)

Consulta la unidad lógica del bloque de claves multimedia (MKB).

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

El búfer de Irp-AssociatedIrp.SystemBuffer> contiene el número AACS_LAYER_NUMBER de la capa. El AACS_LAYER_NUMBER es un valor entero largo sin signo del intervalo comprendido entre 0 y 255 inclusive que especifica la capa del medio al que se aplica un comando.

typedef ULONG AACS_LAYER_NUMBER, *PAACS_LAYER_NUMBER;

Longitud del búfer de entrada

Parameters.DeviceIoControl.InputBufferLength en la ubicación de la pila de E/S indica el tamaño, en bytes, del búfer, que debe ser >= sizeof(AACS_LAYER_NUMBER).

Búfer de salida

El búfer de Irp-AssociatedIrp.SystemBuffer> contiene un MKB opaco de longitud variable. El tamaño del MKB siempre es un múltiplo de 32 768 (0x8000).

Longitud del búfer de salida

Longitud de un MKB de longitud variable.

Bloque de estado

El campo Información se establece en el número de bytes transferidos. El campo Estado se establece en STATUS_SUCCESS si la operación se realiza correctamente. Si Irp-AssociatedIrp.SystemBuffer>es NULL o el búfer en Irp-AssociatedIrp.SystemBuffer> no es suficiente para contener el MKB completo, se produce un error en la operación y devuelve un estado de STATUS_BUFFER_TOO_SMALL y el tamaño de búfer necesario se devuelve en IoStatus.Information.

Comentarios

La pila de almacenamiento usa un comando READ DISC STRUCTURE (formato 0x17) con extensiones Advanced Access Control System (AACS) para recuperar el MKB. IOCTL_AACS_READ_MEDIA_KEY_BLOCK solicitud no funcionará si el medio de la unidad lógica no está protegido con AACS.

A diferencia del MKB que se usa con el cifrado content-Scrambling System (CSS), los MKB de AACS están autoprotegidos con firmas digitales. La estructura MKB está totalmente documentada en la especificación Advanced Access Content System, Introduction and Common Cryptographic Elements que publica advanced Access Content System Licensing Administrator (AACS LA).

La solicitud de IOCTL_AACS_READ_MEDIA_KEY_BLOCK corresponde a uno de los pasos del algoritmo de autenticación del Sistema de contenido de acceso avanzado (AACS) (AACS-Auth). Para obtener una descripción completa de AACS-Auth, vea advanced Access Content System, Introduction and Common Cryptographic Elements specification.

Requisitos

Requisito Valor
Header ntddcdvd.h (incluya Ntddcdvd.h)