Freigeben über


IOCTL_AACS_GENERATE_BINDING_NONCE IOCTL (ntddcdvd.h)

Liest die AACS-Bindungs-Nonce (Advanced Access Content System) ab dem angegebenen Byteoffset auf dem Datenträger als Teil des Protokolls zum Schreiben in einen geschützten Datenbereich.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Der Puffer bei Irp-AssociatedIrp.SystemBuffer> enthält eine Struktur vom Typ AACS_READ_BINDING_NONCE, die die DVD_SESSION_ID, die logische Startblockadresse und die Anzahl der Sektoren angibt, für die die logische Einheit eine Bindungs nonce generieren soll.

Länge des Eingabepuffers

Länge eines AACS_READ_BINDING_NONCE.

Ausgabepuffer

Der Puffer bei Irp-AssociatedIrp.SystemBuffer> enthält den Wert des Typs AACS_BINDING_NONCE, der die Bindungs nonce angibt.

Länge des Ausgabepuffers

Länge eines AACS_BINDING_NONCE.

Statusblock

Das Feld Information ist auf die Anzahl der übertragenen Bytes festgelegt. Das Feld Status ist auf STATUS_SUCCESS oder möglicherweise STATUS_INSUFFICIENT_RESOURCES festgelegt.

Hinweise

Die IOCTL_AACS_GENERATE_BINDING_NONCE-Anforderung entspricht dem Teil des AACS-Authentifizierungsprotokolls, der für das Schreiben in einen geschützten Datenbereich verantwortlich ist. Eine vollständige Beschreibung dieses Protokolls finden Sie in der Spezifikation Advanced Access Content System, Introduction and Common Cryptographic Elements , die von Advanced Access Content System Licensing Administrator (AACS LA) veröffentlicht wird.

Die IOCTL_AACS_GENERATE_BINDING_NONCE Anforderung erfordert während der Verarbeitung eine einzelne verfügbare AGID, und die AGID wird nach Abschluss der Anforderung nicht automatisch freigegeben. Die AGID bleibt gültig, bis sie explizit ungültig wird oder bis das Laufwerk ein Einschalt-, Hard Reset- oder Medienauswurfereignis generiert. Die AGID kann jedoch nicht mit anderen Anforderungen wiederverwendet werden.

Es wird empfohlen, auf den Abschluss aller anderen Anforderungen zu warten, die sichere Sitzungen mit AGIDs verwenden, bevor Sie eine IOCTL_AACS_GENERATE_BINDING_NONCE-Anforderung stellen.

Clients, die keine Dateisystemunterstützung verwenden, müssen das Handle-Element von AACS_READ_BINDING_NONCE auf INVALID_HANDLE_VALUE festlegen und explizite Werte für die Elemente StartLBA und NumberOfSectors angeben.

Anforderungen

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