Freigeben über


Sicheres Löschen von PlayReady

In PlayReady Version 4.0 eingeführt, ist PlayReady Secure Delete ein Feature, mit dem Dienstanbieter sichere Bestätigung erhalten können, wenn eine dauerhafte Lizenz von der App auf dem Client gelöscht wird. Früher wurden Dienstanbieter nicht benachrichtigt, wenn das Löschen einer Lizenz abgeschlossen war. Mit PlayReady Secure Delete sind die folgenden Vorgänge möglich.

Dienstanbieter können nachverfolgen, welche Lizenzen derzeit gespeichert sind und welche Lizenzen gelöscht wurden, auf einem bestimmten Clientcomputer. Dienstanbieter können eine bestimmte Anzahl persistenter Lizenzen für einen Client ausstellen und die Anzahl der Lizenzen auf dem Computer dieses Clients nachverfolgen. Das Feature "Sicheres Löschen" erfüllt auch die Spezifikationsanforderung für verschlüsselte Medienerweiterungen (Encrypted Media Extensions, EME), die im September 2017 definiert wurde, was angibt, dass beim Löschen der Lizenz ein Datensatz der Lizenzlöschung an den Server gesendet werden muss.

In der folgenden Abbildung ist ein Ablauf für sicheres Löschen dargestellt.

sicheres Löschen

Bevor sicheres Löschen erfolgt, instanziiert die Anwendung oder der Client zunächst ein PlayReady Content Decryption Module (CDM) und erwirbt eine persistente Lizenz vom Server (Schritte 1-7 in der abbildung oben).

Als Nächstes speichert PlayReady die Lizenz im Datenspeicher (HDS, Hashed Data Storage) zusammen mit einem Datensatz des Lizenzsitzungs-BLOB, der aus einem Sitzungsbezeichner (SessionId) und einem oder mehreren Schlüsselbezeichnern (KIDs) besteht. Wenn die Anwendung oder der Client eine Lizenzlöschanforderung initiiert, ruft sie die entsprechenden APIs auf, um die dem KID zugeordneten Lizenzen aus dem Datenspeicher zu entfernen. Während eines nicht sicheren Lösch-Lizenzentfernungsprozesses entfernt PlayReady die Lizenz(n) ohne weitere Maßnahmen aus dem Datenspeicher. Mit secure Delete entfernt PlayReady nicht nur die lizenzen, die mit dem KID verbunden sind, aus dem Datenspeicher, sondern generiert auch eine Abfrage zum sicheren Löschen, die die SessionId und KID(s) enthält (Schritte 12-13 in der abbildung oben).

Die Anwendung oder der Client sendet dann die Abfrage "Sicheres Löschen" an den Secure Delete Server, der dann die Herausforderung verarbeitet.

Nach der Verarbeitung der Abfrage "Sicheres Löschen" sendet der Secure Delete Server eine nicht verschlüsselte, nicht signierte Antwort für sicheres Löschen, die eine base64-codierte SessionId an die Anwendung (oder den Client) enthält.

Nachdem der Client die Antwort "Sicheres Löschen" empfängt, überprüft PlayReady, ob die in der Antwort "Sicheres Löschen" enthaltene SessionId mit der Sitzungs-ID übereinstimmt, die zum Generieren der Abfrage "Sicheres Löschen" verwendet wurde. Wenn die Überprüfung erfolgreich ist, entfernt PlayReady den Datensatz der Lizenzsitzung aus dem Datenspeicher.