Freigeben über


IOCTL_AACS_READ_MEDIA_KEY_BLOCK IOCTL (ntddcdvd.h)

Fragt die logische Einheit für den Media Key Block (MKB) ab.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Der Puffer bei Irp-AssociatedIrp.SystemBuffer> enthält die AACS_LAYER_NUMBER Nummer der Ebene. Die AACS_LAYER_NUMBER ist ein ganzzahliger Wert ohne Vorzeichen im Bereich von 0 bis einschließlich 255, der die Medienschicht angibt, auf die ein Befehl angewendet wird.

typedef ULONG AACS_LAYER_NUMBER, *PAACS_LAYER_NUMBER;

Eingabepufferlänge

Parameters.DeviceIoControl.InputBufferLength im E/A-Stapelspeicherort gibt die Größe des Puffers in Bytes an, die = sizeof(AACS_LAYER_NUMBER) sein >muss.

Ausgabepuffer

Der Puffer bei Irp-AssociatedIrp.SystemBuffer> enthält eine undurchsichtige MKB mit variabler Länge. Die Größe der MKB ist immer ein Vielfaches von 32.768 (0x8000).

Länge des Ausgabepuffers

Länge eines MKB mit variabler Länge.

Statusblock

Das Feld Information ist auf die Anzahl der übertragenen Bytes festgelegt. Das Feld Status ist auf STATUS_SUCCESS festgelegt, wenn der Vorgang erfolgreich ist. Wenn Irp-AssociatedIrp.SystemBuffer>NULL ist oder der Puffer bei Irp-AssociatedIrp.SystemBuffer> nicht ausreicht, um die vollständige MKB zu enthalten, schlägt der Vorgang fehl und gibt eine status von STATUS_BUFFER_TOO_SMALL zurück, und die erforderliche Puffergröße wird in IoStatus.Information zurückgegeben.

Hinweise

Der Speicherstapel verwendet einen READ DISC STRUCTURE-Befehl (Format 0x17) mit AACS-Erweiterungen (Advanced Access Control System), um die MKB abzurufen. IOCTL_AACS_READ_MEDIA_KEY_BLOCK Anforderung funktioniert nicht, wenn die Medien in der logischen Einheit nicht AACS-geschützt sind.

Im Gegensatz zur MKB, die mit der CSS-Verschlüsselung (Content-Scrambling System) verwendet wird, sind AACS MKBs selbst mit digitalen Signaturen geschützt. Die MKB-Struktur ist vollständig in der Spezifikation Advanced Access Content System, Introduction and Common Cryptographic Elements dokumentiert, die vom Advanced Access Content System Licensing Administrator (AACS LA) veröffentlicht wird.

Die IOCTL_AACS_READ_MEDIA_KEY_BLOCK Anforderung entspricht einem der Schritte des Authentifizierungsalgorithmus (Advanced Access Content System, AACS) (AACS-Auth). Eine vollständige Beschreibung von AACS-Auth finden Sie unter Advanced Access Content System, Introduction and Common Cryptographic Elements specification.

Anforderungen

Anforderung Wert
Header ntddcdvd.h (include Ntddcdvd.h)