DRM (Digital Restrictions Management)

By Wolfgang Keller
Originally written 2021-06-11
Based on a text originally written 2020-04-17
Last modified 2021-06-11

Ich rate dringend von Streaming-Diensten ab, wenn diese DRM (offiziell: Digital Rights Management; eigentlich richtiger: Digital Restrictions Management) benutzen (Digitale Rechteverwaltung – Wikipedia [published 2021-04-26T11:04Z]). Die Verwendung von DRM bedeutet nämlich, dass man sich als Nutzer Schadsoftware auf den Rechner installieren muss, um diese nutzen zu können, die man nicht kontrollieren kann.

Ich glaube, ich muss nicht erwähnen, dass sowohl Netflix als auch Amazon Prime aufgrund der Verträge mit den Rechteinhabern der Filme DRM verwenden. Präziser: Netflix und Amazon Prime verwenden Widevine als DRM-System. Widevine definiert drei Levels: L1, L2 und L3.

Ein gerne gebrachtes Argument, welches gerne verwendet wird, um DRM zu verharmlosen, ist, dass sich die Verschlüsselung mit nicht allzu komplizierten Methoden entfernen lasse, sowie dass die Entschlüsselung doch „nur“ in der Software zum Abspielen implementiert sei.

Dies trifft für Widewine nur auf das Level L3 (das niedrigste) zu; siehe Right, and it's also worth highlighting here the meaning of these "protection" l... | Hacker News [published 2019-01-05; visited 2021-06-06T18:35:03Z].

In Level L2 finden die kryptographischen Operationen und in Level L1 die komplette Verarbeitung innerhalb eines Trusted Execution Environment (TEE) statt.

Was hat es mit dem TEE auf sich? In der IT-Sicherheit bezeichnet man ein System als „trusted“ (das „T“ in TEE), wenn es in der Lage ist, Sicherheitsmaßnahmen durchzusetzen (siehe Trusted System – Wikipedia [published 2014-01-30T18:54Z; visited 2021-06-06T18:44:01Z]). Was so harmlos klingt, ist brandgefährlich: Das Durchsetzen von Sicherheitsmaßnahmen bedeutet nämlich ein Durchsetzen gegen dem Nutzer, dem wir nämlich misstrauen.

Wie wird dies implementiert?

Der „Trick“ ist, dass moderne Prozessoren ein „Execution Environment“ besitzen, welches nicht einmal das Betriebssystem in der Lage ist, zu kontrollieren: Unter Intel wird das TEE für Widevine durch Intel SGX (Software Guard Extensions – Wikipedia [published 2021-04-21T07:07Z; visited 2021-06-11T11:38:17Z]; Software Guard Extensions – Wikipedia [published 2020-12-29T04:26Z; visited 2021-06-11T11:37:37Z]) implementiert, auf AMD-Prozessoren, wenn ich mich nicht täusche, durch „AMD Secure Processor“/„AMD Platform Security Processor (AMD PSP)“/„AMD Secure Technology“ (da haben sich die Bezeichnungen in der Vergangenheit mehrfach geändert):

Kurzum: Moderne Prozessoren besitzen Betriebsmodi, in denen Software außerhalb der Kontrolle des Betriebssystems oder gar des Hypervisors (falls man Virtualisierung verwendet) und damit außerhalb der Kontrolle des Nutzers ausgeführt werden kann (neben besagten Modi gibt es noch zahlreiche anderer solcher Modi; darüber könnte ich viel schreiben, aber würde weit vom Thema abschweifen).

Somit wird dem Nutzer (dank der Unterstüzung des Prozessors) die komplette Kontrolle über die Ausführung der DRM-Software Widevine in den Levels L2 und L1 entzogen.