Partager via


IOCTL_AACS_GENERATE_BINDING_NONCE IOCTL (ntddcdvd.h)

Lit le nonce de liaison AACS (Advanced Access Content System) à partir du décalage d’octet spécifié sur le disque, dans le cadre du protocole d’écriture dans une zone de données protégée.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d'entrée

La mémoire tampon sur Irp-AssociatedIrp.SystemBuffer> contient une structure de type AACS_READ_BINDING_NONCE qui spécifie le DVD_SESSION_ID, l’adresse de bloc logique de départ et le nombre de secteurs pour lesquels l’unité logique doit générer un nonce de liaison.

Longueur de la mémoire tampon d’entrée

Longueur d’un AACS_READ_BINDING_NONCE.

Mémoire tampon de sortie

La mémoire tampon dans Irp-AssociatedIrp.SystemBuffer> contient la valeur de type AACS_BINDING_NONCE qui spécifie le nonce de liaison.

Longueur de la mémoire tampon de sortie

Longueur d’un AACS_BINDING_NONCE.

Bloc d’état

Le champ Informations est défini sur le nombre d’octets transférés. Le champ État est défini sur STATUS_SUCCESS ou éventuellement STATUS_INSUFFICIENT_RESOURCES.

Remarques

La demande IOCTL_AACS_GENERATE_BINDING_NONCE correspond à la partie du protocole d’authentification AACS qui est responsable de l’écriture dans une zone de données protégée. Pour obtenir une description complète de ce protocole, consultez la spécification Advanced Access Content System, Introduction and Common Cryptographic Elements publiée par l’Administrateur de licences du système de contenu d’accès avancé (AACS LA).

La demande IOCTL_AACS_GENERATE_BINDING_NONCE nécessite un seul AGID disponible pendant son traitement, et l’AGID n’est pas automatiquement libéré une fois la demande terminée. L’AGID reste valide jusqu’à ce qu’il soit explicitement invalidé ou jusqu’à ce que le lecteur génère un événement de réinitialisation, de réinitialisation matérielle ou d’éjection multimédia. Toutefois, l’AGID ne peut pas être réutilisé avec d’autres demandes.

Il est recommandé d’attendre la fin de toutes les autres demandes qui utilisent des sessions sécurisées avec des AGID avant d’effectuer une demande de IOCTL_AACS_GENERATE_BINDING_NONCE.

Les clients qui n’utilisent pas la prise en charge du système de fichiers doivent définir le membre Handle de AACS_READ_BINDING_NONCE pour INVALID_HANDLE_VALUE et spécifier des valeurs explicites pour les membres StartLBA et NumberOfSectors .

Configuration requise

Condition requise Valeur
En-tête ntddcdvd.h (inclure Ntddcdvd.h)