DRM-Anforderungen
In diesem Abschnitt werden die Anforderungen erläutert, die ein Audio-Miniporttreiber erfüllen muss, um DRM-Konformitätstests durch Microsoft Windows Hardware Quality Lab (WHQL) zu bestehen. Diese Anforderungen gelten speziell für WaveCyclic- und WavePci-Audio-Miniporttreiber, die hardwarespezifische Entsprechungen zu den WavePci- und WaveCyclic-Porttreibern in der Port Class Library (Portcls.sys) sind. DRM-Konformitätstests sind derzeit nicht für USB-Treiber verfügbar.
In Windows XP und höher können nur vertrauenswürdige Audiotreiber DRM-geschützte Inhalte wiedergeben. Windows identifiziert einen vertrauenswürdigen Treiber mithilfe einer DRM-spezifischen digitalen Signatur, die in den CAT-Dateien (Katalogdateien) des Treibers gespeichert ist. Microsoft stellt eine DRM-Signatur nur für einen Treiber aus, der den DRM-Konformitätstest im Rahmen der von WHQL verwalteten Hardwarekompatibilitätstests besteht.
Für Windows XP und höher ist der DRM-Konformitätstest jedoch ein erforderlicher Bestandteil von WHQL-Tests. Ein Treiber muss den DRM-Konformitätstest bestehen, um sich für das Logo "Designed for Windows XP" zu qualifizieren.
Für den DRM-Kompatibilitätstest ist ein vertrauenswürdiger Audiotreiber erforderlich, um Folgendes auszuführen:
Der Audio-Miniporttreiber muss die IDrmAudioStream-Schnittstelle in seinen Streamobjekten implementieren, die ein Objekt vom Typ IDrmAudioStream zurückgeben muss, wenn IID_IDrmAudioStream abgefragt wird.
Wenn Kopierschutz angefordert wird (DRMRIGHTS. CopyProtect = TRUE), muss der Audiotreiber die Fähigkeit zum Erfassen des aktuell wiedergegebenen Streams deaktivieren. Dies bedeutet, dass der Treiber die ungeschützten digitalen Inhalte nicht in irgendeiner Form von nicht flüchtigem Speicher speichern darf, einschließlich Festplatte, EEPROM, Speicher Karte und Speicherstick. Außerdem muss der Treiber den Capture-Multiplexer auf einem D/A-Ausgabekonverter deaktivieren und andernfalls das Loopback von digitalen Inhalten verhindern.
Wenn ein Audiotreiber aufgefordert wird, die digitale Audioausgabe auf dem Gerät zu deaktivieren (DRMRIGHTS. DigitalOutputDisable = TRUE) muss alle digitalen Audioausgaben deaktiviert werden, die Inhalte über eine Standardschnittstelle über ein Standardverbindungsschema übertragen können. Zu den digitalen Ausgängen gehören S/PDIF, IEEE 1394, parallele, serielle, Modem- und Netzwerkports. (Diese Anforderung gilt derzeit nicht für USB.)
Bei der Verarbeitung sicherer Inhalte darf ein Audiotreiber niemals einen nicht vertrauenswürdigen Treiber an seinen Stapel anfügen. Anders ausgedrückt: Der Audiotreiber darf sich nur auf andere Komponenten verlassen, die auch DRM-Signaturen enthalten. Der Treiber darf niemals die Übertragung von Audiodaten an komponenten ermöglichen, die keine DRM-Signatur besitzen. Wenn ein Treiber digitale Inhalte an eine andere Komponente übergibt, muss der Treiber die DRM-APIs im Kernel verwenden, um den DRMK-Systemtreiber darüber zu informieren.
Zusätzlich zum Bestehen des DRM-Konformitätstests dürfen das Audiogerät und der Treiber einem Benutzer nicht erlauben, einen Betriebsmodus auszuwählen, der die DRM-Komponenten im Kernel besiegt oder unterläuft. Insbesondere darf der Treiber keine Registrierungseinstellungen, Benutzersteuerelemente oder andere Möglichkeiten zum Deaktivieren der DRM-Funktionen bereitstellen.