PatentDe  


Dokumentenidentifikation DE602004006042T2 27.12.2007
EP-Veröffentlichungsnummer 0001465426
Titel Skalierbares und fehlerfestes Verwalten von digitalen Rechten für skalierbares Medium
Anmelder Microsoft Corp., Redmond, Wash., US
Erfinder Zhu, Bin, Edina Minnesota 55436, US;
Yuan, Chun, Computer Dept. Beijing, CN;
Li, Shipeng, Redmond Washington 98053, US
Vertreter Grünecker, Kinkeldey, Stockmair & Schwanhäusser, 80538 München
DE-Aktenzeichen 602004006042
Vertragsstaaten AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HU, IE, IT, LI, LU, MC, NL, PL, PT, RO, SE, SI, SK, TR
Sprache des Dokument EN
EP-Anmeldetag 18.03.2004
EP-Aktenzeichen 040066110
EP-Offenlegungsdatum 06.10.2004
EP date of grant 25.04.2007
Veröffentlichungstag im Patentblatt 27.12.2007
IPC-Hauptklasse H04N 7/167(2006.01)A, F, I, 20051017, B, H, EP
IPC-Nebenklasse H04N 7/24(2006.01)A, L, I, 20051017, B, H, EP   H04L 9/00(2006.01)A, L, I, 20051017, B, H, EP   

Beschreibung[de]
TECHNISCHES GEBIET

Diese Erfindung bezieht sich im Allgemeinen auf den Schutz von Multimedia (-daten), und spezieller auf ein skalierbares, fehlerausfallsicheres Rechtemanagement für skalierbare Medien.

HINTERGRUND

Digitales Rechtemanagement (DRM) für Multimediadaten ist zu einer gängigen Art und Weise geworden, um geistiges Eigentum der Besitzer von Medieninhalten (media content) zu schützen. Der MPEG-4-Fine-Granularity-Scalability-Videocodierungsstandard (Fine Granularity Scalability – FGS; feinkörnige Skalierbarkeit), z. B., ermöglicht eine direkte und flexible Anpassung eines Multimediadatenstromes an verschiedene Übertragungs- und Anwendungsbedürfnisse. DRM spielt eine wichtige Rolle im Schutz von urheberrechtlich geschützten Multimediaelementen, wie z. B. Musik und Filmen. Auf dem Markt gibt es einen wachsenden Bedarf für DRM-Services. DRM ist bereits in MICRO-SOFT®-Produkte implementiert worden, wie z. B. das WINDOWS MEDIATM-Format und EBOOKSTM (Microsoft Corporation, Redmond, Washington, USA). Es werden aber neue DRM-Schemata benötigt, die für neue skalierbare Multimediaformate optimiert sind. Diese neuen Multimediaformate und DRMs ermöglichen das Wachstum von neuen Geschäfts- und Servicemodellen.

Skalierbares Videocodieren hat eine weite Akzeptanz aufgrund seiner Flexibilität und einfachen Anpassung an einen weiten Bereich von Anwendungserfordernissen und -umgebungen erreicht. "Scalable media adaptation and robust transport" (SMART und SMART ++; skalierbare Medienanpassung und stabile Übertragung) ist ein Beispiel eines skalierbaren Mulitmediaschemas (siehe z. B. http://research.microsoft.com/im/, Microsoft Corporation, Redmond, Washington; Feng Wu, Shipeng Li, Va-Qin Zhang, "A framework for efficient progressive fine granular scalable video coding" (ein Framework für effizientes, progressives, feinkörnig skalierbares Videokodieren), IEEE Trans. on Circuits and Systems for Video Technology, Vol. 11, Nr. 3, S. 332–344, 2001; Xiaoyan Sun, Feng Wu, Shipeng Li, Wen Gao, Va-Qin Zhang, "Macroblock-based temporal-SNR progressive fine granularity scalable video coding" (Makroblock-basierendes zeitliches SNR, progressives, feinkörnig skalierbares Videokodieren), IEEE International Conference on Image Processing (ICIP), S. 1025–1028, Thessaloniki, Griechenland, Oktober 2001; und Yuwen He, Feng Wu, Shipeng Li, Yuzhuo Zhong, Shiqiang Yang, "H.26L-based fine granularity scalable video coding" (H.26L-basiertes, feinkörnig skalierbares Viedokodieren), ISCAS 2002, Vol. 4, S. 548–551, Phoenix, USA, Mai 2002).

In dem MPEG-4-FGS skalierbaren Multimediaprofil wird ein Videodatenstrom in zwei Layer geteilt, den Basislayer und den Erweiterungslayer. Der Basislayer ist eine nicht skalierbare Kodierung des Videos mit einer geringen Bitrate, z. B., der geringsten Bitrate, die in einer Anwendung verwendet wird. Der Rest von jedem Frame wird in dem Erweiterungslayer in einer skalierbaren Weise kodiert: die diskreten Kosinustransformationskoeffizienten (discrete cosine transformation – DCT) eines Restes eines Frames werden Bit-Ebenenweise (bit-plane wise) von dem höchstwertigen Bit (most significant bit) zu dem niedrigstwertigem Bit (least significant bit) komprimiert. Ein Video wird durch MPEG-4-FGS nur einmal komprimiert. Wenn es über ein Netzwerk übermittelt wird, kann ein Server die Erweiterungslayerdaten zugehörig zu dem/den niedrigstwertigen Bit(s) ausschalten, sollte dem übermittelnden Netzwerk die erforderliche Bandbreite fehlen. Andere Raten-formenden Funktionen können ebenso auf den FGS-komprimierten Daten direkt ausgeführt werden, ohne entweder auf die Komprimierung oder Dekomprimierung zurückzugreifen.

Ein Multimediaverschlüsselungsalgorithmus, entweder für skalierbare oder nicht skalierbare Codecs (Kodierer-Dekodierer), hat idealerweise diese Merkmale: hohe Sicherheit, geringe Komplexität, geringen Komprimierungs-Overhead, Fehlerauswahlsicherheit, Raten-Formungs-Anpassbarkeit, und die Möglichkeit zur zufälligen Wiedergabe. Sicherheit ist ein essentielles Erfordernis für Multimediaverschlüsselung. Verglichen mit anderen Verschlüsselungstypen für kritischere, militärische und Banken-Anwendungen hat Multimediaverschlüsselung seine eigenen speziellen Probleme, einschließlich der relativ ungeheueren Weite der zu verschlüsselnden Videodaten und des gewöhnlicherweise geringen Wertes der zu verschlüsselnden Informationen, verglichen mit Informationen, die, z. B., für militärische und Banken-Anwendungen verschlüsselt werden.

Geringe Komplexität ist ein Thema, weil irgendein Verschlüsselungs- oder Entschlüsselungsprozess einen Verarbeitungs-Overhead hinzufügt. Weil ein Multimediadatenstrom eine relativ große Menge an Daten hat, ist es wünschenswert oder zwingend, dass in vielen Anwendungen die Komplexität eines Verschlüsselungssystems sehr gering ist, speziell während des Entschlüsselns, weil viele Anwendungen eine Realtime-Entschlüsselung der großen Menge an Multimediadaten erfordern, und gewöhnlicherweise auf einem Benutzerequipment laufen, das beschränkte Ressourcen hat.

Komprimierungs-Overhead ist ebenso ein Thema, weil die Verschlüsselung zwangsläufig die Komprimierungseffizienz entweder durch die Reduzierung der Kodierungseffizienz des Komprimierungsalgorithmusses (direkt) oder durch das Hinzufügen von Bytes zu der bereits komprimierten Datei beeinflusst. Deshalb sollte der Komprimierungs-Overhead idealerweise für Multimediaverschlüsselungsalgorithmen minimiert sein.

Fehlerausfallsicherheit ist wichtig, weil Störungen während der Multimediaspeicherung und -übertragung auftreten. Kabellose Netzwerke sind offenkundig für Übermittlungsfehler. Datenpakete können während der Übertragung aufgrund von Datenstau, Pufferüberlauf und anderen Netzwerkstörstellen verloren gehen. Verschlüsselungsschemata sind idealerweise belastbar gegenüber Bitfehlern und Paketverlusten. Sie sollten ebenso eine schnelle Wiederherstellung nach Bitfehlern und eine schnelle Wiedersynchronisierung nach Paketverlusten erlauben, um eine extensive Fehlerausweitung zu verhindern. Multimediaverschlüsselungsalgorithmen, die üblicherweise unter perfekten Übertragungsumgebungen (meistens) entwickelt werden, verbreiten eine große wahrzunehmende Verschlechterung mit der Zeit, wenn Bitfehler oder Paketverluste während einer Multimediaübertragung passieren.

Ratenformung beschreibt die Fähigkeit, die Datenübertragungsbitraten (Anzahl an Bits in einer Sekunde eines Datenstromes) zu variieren, um verschiedenen Bedingungen zu genügen. Während der Lieferung eines Multimediadatenstromes von dem Inhaltebesitzer zu dem Benutzer verarbeiten viele dazwischen liegende Stationen (middle stages) üblicherweise die Daten. Codeumwandlung (transcoding) z. B. kann die Bitrate verändern, um sie auf eine Fluktuation der Datenübertragungsbandbreite oder selbst Anwendungserfordernissen anzupassen. Wenn die Daten verschlüsselt sind, müssen diese dazwischen liegenden Stationen üblicherweise die Verschlüsselungs- und Entschlüsselungsschlüssel abrufen und anschließend Verschlüsselungs- und Entschlüsselungszyklen ausführen, um die Daten zu bearbeiten. Dies steigert den Verarbeitungs-Overhead und reduziert die Sicherheit, weil Verschlüsselungsgeheimnisse mit diesen dazwischen liegenden Stationen geteilt werden müssen.

Benutzer sind es gewohnt, Audio- und Videomultimediadaten im schnellen Vorlauf, Rücklauf und mit zufälligem Zugriff abzuspielen. Ein ideales DRM-System sollte dem Benutzer diese Möglichkeiten nicht vorenthalten. Das bedeutet, dass ein Verschlüsselungsalgorithmus, der in DRM verwendet wird, in der Lage sein sollte, zufälliges Abspielen innerhalb von Ketten-verschlüsselten Daten zu handhaben, oder sollte in der Lage sein, für den Fall, dass die Daten für ein zufälliges Zugreifen nicht Ketten-verschlüsselt sind, eine Sicherheitsverletzbarkeit durch ein "Lexikon" und andere Attacken auf die Verschlüsselung zu verhindern.

Während es viele Verschlüsselungsalgorithmen gibt, die für nicht-skalisierbare Multimediaformate gedacht sind, sind nur wenige speziell für skalierbare Multimediaformate entwickelt. Wee, et al., hat ein sicheres skalierbares Streaming-Schema (SSS-Schema) vorgeschlagen, das Transcoding ohne Entschlüsselung erlaubt (S.J. Wee und J.G. Apostolopoulos, "Secure Scalable Streaming Enabling Transcoding Without Decryption", IEEE Int. Conf. Image Processing, 2001, Vol. 1, S. 437–440). Für MPEG-4-FGS verschlüsselt der Ansatz Videodaten sowohl in Basis- als auch Erweiterungslayern, ausgenommen der Kopfdaten (header data). Hinweise für RD-optimale (rate distortionoptimal – Ratenverformungsoptimale) Trennpunkte müssen in die unverschlüsselten Header (Datenköpfe) für eine dazwischen liegende Station eingefügt werden, um eine RD-optimale Bitratenreduzierung durchzuführen. Die Verschlüsselungsgranularität hängt von der Art und Weise, wie ein Videodatenstrom verpackt (packetized) ist, ab. Genauer gesagt, wird die Verschlüsselung auf jedes Paket angewendet. Keine Veränderungen der Paketgröße sind erlaubt, nachdem die Verschlüsselung durchgeführt wurde. SSS schützt skalierbare Medien als einen einzelnen Zugriffslayer.

Grosbois und andere schlagen ein skalierbares Authentifizierungs- und Zugriffskontrollschema für den Bildkomprimierungsstandard JPEG 2000 vor. (Raphael Grosbois, Pierre Gergelot und Touradj Ebrahimi, "Authentication and Access Control in the JPEG 2000 compressed domain" (Authentifzierungs- und Zugriffskontrolle in dem JPEG-2000-komprimierten Bereich), Proc. des SPIE 46. jährlichen Meetings, Applications of Digital Image Processing XXIV (Anwendungen der digitalen Bildverarbeitung XXIV), San Diego, 2001). Es basiert auf Veränderungen und dem Einfügen von Informationen in dem Bitdatenstrom. Ein verschlüsselter (keyed) Hashwert wird verwendet, um eine pseudozufällige Sequenz zu erzeugen, die verwendet wird, um die Zeichen der Hochfrequenz-Band-Wavelet-(Wellen)-Koeffizienten pseudozufällig zu vertauschen. Eine geschichtet (layered) Zugriffsstruktur erlaubt eine Anpassung auf verschiedene Anwendungen. Eine ihrer größten Nachteile ist das Einfügen von zusätzlichen Informationen, um die Entschlüsselung zu unterstützen, was die Komprimierungseffizienz reduziert.

EP-A-1 189 432 bezieht sich auf das Verteilen eines elektronischen Datensatzes von vorbestimmtem Inhalt, wobei der elektronische Datensatz in eine Vielzahl von Dateien geteilt wird. Des Weiteren repräsentiert jede dieser Dateien oder jede ausgewählte Kombination der Dateien eine Version des Inhalts, die ein unterschiedliches Qualitätslevel aufweist als irgendeine andere Datei oder ausgewählte Kombination an Dateien. Wenn ein Benutzer ein bestimmtes Werk auswählt, übermittelt der Anbieter die gesamte Reihe an Dateien zu dem Benutzer, wobei jede Datei mit einem bestimmten symmetrischen Schlüssel verschlüsselt ist. Als Antwort auf die Auswahl einer spezifischen Version der Arbeit, verschlüsselt und übermittelt der Anbieter nur den Schlüssel oder die Schlüssel, die benötigt werden, um diese Version mit dem Schlüssel, der für den Benutzer spezifisch ist, zu dekodieren. Eine höhere Qualitätsversion der Arbeit kann durch einfaches Abfragen und Empfangen der Schlüssel erlangt werden, die benötigt werden, um diese Version zu dekodieren, weil der Benutzer die Dateien für jede Version hat.

EP-A-0 766 471 bezieht sich auf eine Übertragungs- und eine Empfangs-Vorrichtung, die für Bezahl-TV-Übertragungen nützlich sind. Die Übertragungsvorrichtung führt einen Kodierungsprozess durch das Teilen eines Videosignals von einer Quelle in zwei Layer aus, kodiert diese und gibt Layerdaten mit geringer Qualität und Layerdaten mit hoher Qualität aus. Eine Verschlüsselungseinheit verschlüsselt die Layerdaten mit hoher Qualität, welche des Weiteren mit den Layerdaten mit geringer Qualität kombiniert werden und die als synthetisierte Daten ausgegeben werden. Außerdem kann die Verschlüsselungseinheit ein Geheimnislevel aus der Komplexität des Verschlüsselungsschemas, der Länge des Verschlüsselungsschlüssels und der Anzahl der zu wiederholenden Verschlüsselungen ermitteln, und verschlüsselt entweder die Layerdaten mit geringer Qualität und/oder die Layerdaten mit hoher Qualität. Die Empfangsvorrichtung trennt die synthetisierten Daten und entschlüsselt die verschlüsselten Layerdaten. Wenn die Entschlüsselung fehlschlägt, können nur die unverschlüsselten Layerdaten mit geringer Qualität evaluiert werden und als ein Videosignal wiederhergestellt werden. Zusätzlich wird für den Fall von verschlüsselten Layerdaten mit geringer Qualität, wenn das Entschlüsseln fehlschlägt, ein Videosignal eines blauen Hintergrundbildschirms entsprechend einem Nulleingang ausgegeben.

US-B-6 351 491 bezieht sich auf eine Vorrichtung und ein Verfahren zum Optimieren der Ratenkontrolle für multiskalierte Entropieverschlüsselung. Neben anderem wird ein Bitstrom beschrieben, der so konstruiert ist, dass die Informationen, die räumliche Auflösungen eines Eingangsbildes darstellen, verschiedenen Teilen des Bitdatenstromes entsprechen.

US 6,392,705 B1 bezieht sich auf das Komprimieren und über ein Netzwerk liefern von skaliert-formatierten Multimediadaten, z. B. Stand- und Videobildern, Sprache und Musik.

Wee, S.J. und andere, "Secure scalable streaming enabling transcoding without decryption" (Sicheres skalierbares Streaming, das Transcoding ohne Entschlüsselung erlaubt), Proceedings 2001 International Conference an Image Processing, Thessaloniki, Griechenland, 7. Oktober 2001, bezieht sich auf ein Verfahren für sicheres, skalierbares Streaming (SSS), das ein gering komplexes und hochqualitatives Transcoding ermöglicht, um an einem zwischenliegenden, möglicherweise nicht vertrauenswürdigen, Netzwerkknoten durchgeführt zu werden, ohne die End-zu-End-Sicherheit des Systems zu kompromittieren.

EP 1 271 280 bezieht sich auf eine sichere Videokarte in einem Computergerät, die ein digitales Rechtemanagementsystem (DRM-System) aufweist, und bezieht sich auf eine Architektur zum Durchsetzen von Rechten in digitalem Inhalt.

KURZFASSUNG

Es ist die Aufgabe der Erfindung, eine größere Flexibilität für die Benutzer eines verteilten Systems für skalierbaren Multimediainhalt bereitzustellen.

Diese Aufgabe wird durch die vorliegende Erfindung, wie in den unabhängigen Ansprüchen beansprucht, gelöst.

Bevorzugte Ausführungsformen sind durch die abhängigen Ansprüche definiert.

Eine beispielhafte digitale Rechtemanagementmaschine und in Beziehung stehende Verfahren teilen einen Multimediainhalt in Service-Levellayer, verschlüsseln mindestens einige der Layer und bieten Zugriff auf die verschlüsselten Layer durch Genehmigung.

Der Multimediainhalt kann geschichtet (layered) sein, durch das gleichzeitige Verwenden mehrerer unterschiedlicher Schichtungsansätze, und ein Zugriff auf die unterschiedlichen Layertypen kann gleichzeitig angeboten werden. Einer der Layer kann unverschlüsselt bleiben, um ein freies Durchstöbern von Serviceleveln mit geringer Qualität zu erlauben. Der beispielhafte Gegenstand ist speziell für digitales Rechtemanagement von MPEG-4-FGS-Bitstrom-SMART und -SMART++-audiovisuellen Darstellungen und anderen streambaren und skalierbaren Multimediadaten zuträglichen.

Zwei exemplarische Typen an Servicelevellayern sind Spitzensignal-Rausch-Verhältnislayer und Bitratenlayer. Die Layer können unter Verwendung eines separaten Schlüssels für jeden Layer verschlüsselt werden, und Rechte an einem Schlüssel können durch Erlaubnis gewährt werden. Zum Beispiel kann Ratenformung während des Transkodierens durch dazwischenliegende Netzwerkeinheiten ohne Entschlüsseln der Layer durchgeführt werden. Der Besitz eines Schlüssels für ein höheres Servicelevel schließt üblicherweise Schlüssel für geringere Level ein, oder Schlüssel für geringe Servicelevel können von einem Schlüssel für höhere Servicelevel erlangt werden, aber nicht umgekehrt. Dies erlaubt es einem Benutzer, nur einen Unterschied zwischen Qualitätsleveln herunterzuladen, was Zeit und Ressourcen spart, als das erneute Herunterladen des gesamten Multimediadatenstroms.

KURZE BESCHREIBUNG DER ZEICHNUNGEN

1 ist eine grafische Darstellung eines exemplarischen Multimediadatenstroms, der in zwei Layer geteilt ist.

2 ist ein Blockdiagramm einer exemplarischen Netzwerkumgebung zum Ausführen des Gegenstandes (subject matter).

3 ist ein Blockdiagramm einer exemplarischen digitalen Rechtenmanagementmaschine.

4 ist eine grafische Darstellung eines exemplarischen Segmentschlüssels für exemplarische Qualitätslayer, gemäß einem Aspekt des Gegenstandes.

5 ist ein Flussdiagramm eines exemplarischen digitalen Rechtemanagementverfahrens.

6 ist ein Flussdiagramm eines anderen exemplarischen digitalen Rechtemanagementverfahrens.

7 ist eine diagrammatische Darstellung eines exemplarischen Vergleiches von Bitraten-Serviceleveln.

8 ist eine diagrammatische Darstellung eines exemplarischen Vergleiches von Spitzensignal-Rausch-Verhältnis-Serviceleveln.

9 ist eine Reihe von exemplarischen Videobildern, die sich durch die Spitzensignal-Rausch-Verhältnis-Servicelevel, die in 8 gezeigt sind, ergeben.

DETAILLIERTE BESCHREIBUNG Überblick

Der Gegenstand schließt eine beispielhafte digitale Rechtemanagementmaschine (digital rights management engine – DRE) und in Beziehung stehende DRM-Verfahren für einen Multimediainhalt unter Verwendung allgemeiner, skalierbarer Audio-/Video-Kodierungs- oder bestimmter Kodierungsschemata, wie z. B. MPEG-4-FGS, SMART und SMART++. Der Gegenstand erzeugt in einer Implementierung einen skalierbaren, verschlüsselten Multi-Layer-Datenstrom, der mehrere Zugriffslayer erlaubt. In einer exemplarischen Implementation ist der Datenstrom ein skalierbarer Multi-Layer-FGS-verschlüsselter Datenstrom, "SMLFE-Datenstrom", welcher hier als ein Beispiel verwendet wird. Obwohl hier ein SMLFE-Datenstrom als ein Beispiel verwendet wird, betrifft der Gegenstand auch Inhalt unter Verwendung allgemeiner skalierbarer Audio- und/oder Videokodierung.

Ein SMLFE-Datenstrom kann das freie Durchstöbern eines Basislayervideos mit geringer Qualität (verschlüsselt oder nicht verschlüsselt) erlauben und zu derselben Zeit den Zugriff auf erweiterte Layerdaten über verschiedene Qualitätslayer steuern, wobei jeder einem Servicelevel entspricht. Qualität, wie sie hier verwendet wird, bedeutet ein Level von visueller und/oder Audio (wahrnehmender)-Auflösung und Detail, das in einem Bild und/oder Sound ersichtlich ist, oder mit anderen Worten, die wahrgenommene Wiedergabetreue (fidelity) eines Bildes und/oder Sounds zu dem originalen, nicht kodierten Gegenstand. Üblicherweise werden mehr Daten benötigt, um ein Bild und Sound mit höherer Qualität bereitzustellen.

Verschiedene Benutzer können verschiedene Qualitätsbedürfnisse mit Bezug auf denselben Videodatenstrom haben. Eine virtuelle Tour von dem Inneren eines Hauses kann z. B. durch einen Benutzer als eine "Traumhaus"-Präsentation für eine Gruppe von Investoren und Architekten verwendet werden. Obwohl die Version des Videos mit hoher Wiedergabetreue (high fidelity) mit Ausgaben verbunden sein kann, ist die Qualität des Videos die Hauptsache für diesen Benutzertyp. Dasselbe Video kann durch einen Baustellenarbeiter auf einem simplen tragbaren Datenübertragungsgerät abgespielt werden, um Wände in dem Haus zu lokalisieren. Solch ein Benutzer kümmert sich nicht um die hohe Wiedergabetreue, und ist mehr auf das Empfangen eines Minimums an Videodaten interessiert, um die Herunterladezeit zu reduzieren.

In einer MPEG-4-FGS-Implementierung ist das exemplarische DRM-Verfahren skalierbar: z. B. kann ein Benutzer, der einen Teil eines SMLFE-Datenstromes mit einem geringen Servicelevel empfängt, sich entscheiden, das Video mit einem höheren Servicelevel anzusehen und kann einfach einen Datenstrom, der den Unterschied zwischen zwei Serviceleveln umfasst, herunterladen, um ihn mit dem geringeren Serviceleveldatenstrom zu kombinieren. Wenn ein Benutzer bereits alle verschlüsselten Inhalte (wie z. B. von einer CD oder DVD) erlangt hat, kann dies durch einfaches Kaufen und Herunterladen des Schlüssels für das höhere Servicelevel ausgeführt werden. Exemplarische DRM-Verfahren sind schnell und bieten eine robuste Handhabung von Übertragungsfehlern und Paketverlusten, weil die exemplarische Verschlüsselung, die hier beschrieben ist, die Bildqualität nicht degradiert. Dies ist so aufgrund einer exemplarischen Verschlüsselungsstruktur, die Verschlüsselungszellen mit MPEG-4-FGS-Videopaketen ausrichtet (aligns).

Die exemplarischen DRE und in Beziehung stehenden DRM-Verfahren bieten Zufallszugriff, schnellen Vorlauf und Rückwärtsabspielen, flexible Qualitätssteuerung und andere ratenformenden Funktionen, ohne das Video entschlüsseln zu müssen. Sicherheit wird dadurch bereitgestellt, dass Verschlüsselungsgeheimnisse nicht mit dazwischen liegenden (z. B. Netzwerk-) Stationen während des Lieferns eines SMLFE-Datenstroms von dem Inhaltebesitzer zu dem Benutzer geteilt werden müssen. Beispielhafte DRM-Verfahren sind auch auf viele andere skalierbare Multimedia-Codecs anwendbar.

Aspekte des Gegenstandes können zu dem aktuellen MICROSOFT®-DRM-für-WINDOWS-MEDIATM-Format und anderen skalierbaren Formaten, die durch WINDOWS® unterstützt werden, hinzugefügt werden. Der Gegenstand kann ebenso für das IPMP (Intellectual Property Management and Protection – Management und Schutz von geistigem Eigentum) von MPEG-4 verwendet werden.

Qualitätslayer

Wie es in 1 gezeigt wird, ist ein Multimediadatenstrom, wie z. B. ein MPEG-4-FGS-Datenstrom, der als ein exemplarischer SMLFE-Datenstrom 100 unter Verwendung von verschiedenem, vorgelegtem Gegenstand verschlüsselt worden ist, in einen Basislayer 102 und einen Erweiterungslayer 104 geteilt. Der Erweiterungslayer wird in verschiedene Level geteilt, die Qualitätslayer 106, 108, 110 und 112 genannt werden, die verwendet werden, um einem Benutzer, der den exemplarischen SMLFE-Datenstrom 100 empfängt, einen schichtweisen Zugriff (layered access), d. h. "Servicelevel", bereitzustellen. Ein beispielhafter SMLFE-Datenstrom 100 schließt Servicelevelteilungen basierend sowohl auf einem Spitzensignal-Rausch-Verhältnis (peak signal-to-noise ratio – PSNR) (ähnlich zu variablem Bitratenkodieren) als auch auf der Bitrate (ähnlich zu konstantem Bitratenkodieren) ein, auf die gleichzeitig zugegriffen werden kann. Derselbe exemplarische SMLFE-Datenstrom 100 kann zeitgleich in verschiedene Typen von Qualitätslayern geteilt werden, d. h. unterschiedliche Qulaitätslayerschemata können auf demselben exemplarischen SMLFE-Datenstrom 100 zugleich arbeiten. Zum Beispiel kann ein Inhalteanbieter, der digitales Rechtemanagement (DRM) auf einen Videoinhalt ausüben möchte, entscheiden, den SMLFE-Inhalt gemäß den PSNR-Layern und Bitraten-Layern zu teilen (to layer), und kann diese zwei Layer-Schemata simultan auf demselben SMLFE-Inhalt implementieren. Der Inhaltebesitzer kann des Weiteren festlegen, wo die Grenzen zwischen den PSNR-Layern (d. h. PSNR-Serviceleveln) und zwischen den Bitratenlayern (d. h. Bitratenserviceleveln) basierend auf audiovisuellen Charakteristiken des SMLFE-Inhalts und auf Geschäftsbedürfnissen gezogen werden sollen. Andere Typen an Qualitätslayern (d. h. Serviceleveln) können verwendet werden, wie z. B. Frame-Größen-Qualitätslayer (jeder Qualitätslayer kann eine Framegröße sein), Frame-Raten-Qualitätslayer (jede Frame-Rate ist ein Layer), Farbtiefenqualitätslayer (jede Farbtiefe ist ein Layer), Menge an Kanal-Qualitätslayern (jeder Kanal ist ein Layer), Sample-Raten-Qualitätslayer (jede Samplingrate ist ein Layer), Bandbreitenqualitätslayer (ein volles Spektrum wird in Frequenzbänder geteilt und jedes Band kann ein Layer sein), Audio-Sample-Auflösungsqualitätslayer (jede Samplegröße von 8 oder 16 oder 24 Bits, die jedes Audiosample darstellen, kann ein Layer sein), etc. Alle diese Typen an Qualitätslayern und noch mehr können miteinander oder mit den oben beschriebenen PSNR- und Bitraten-Typ-Qualitätslayern kombiniert werden, um simultane Qualitätslayerschemata innerhalb desselben Mediainhalts zu machen.

In einer Implementierung des Gegenstandes sind die PSNR-Servicelevel eine gewünschte Wahl, wenn ein geschichteter Zugriff auf die Qualitätslayer 106, 108, 110 und 112 im Hinblick auf Bitqualität bereitgestellt werden sollen, obwohl PSNR nicht dafür bekannt ist, eine gute, oder zumindest lineare, Metrik von einer Bildqualität zu sein. Wenn der SMLFE-Datenstrom 100 über ein Netzwerk gesendet werden soll, können jedoch Servicelevelteilung ebenso durch Bitraten (d. h. der Bitratenservicelevel) hergestellt werden. Exemplarische DREs und in Beziehung stehende Verfahren unterstützen sowohl PSNR-Servicelevel als auch Bitratenservicelevel, die zeitgleich dieselben Qualitätslayer 106, 108, 110 und 112 verwenden. Ein exemplarischer SMLFE-Datenstrom 100 erlaubt sowohl die dynamische Servicelevelermittlung als auch das Ratenformen auf Video-Chiffriertext (rate shaping on video ciphertext) direkt, ohne Entschlüsselung der Qualitätslayer. Deshalb kann während einer Realtimeverarbeitung ein dazwischen liegender verarbeitender Server dynamisch von dem Chiffriertext den Typ des Servicelayers, der verwendet werden soll (PSNR oder Bitrate), ermitteln, ohne den Datenstrom zu entschlüsseln.

Die exemplarischen Qualitätslayer 102, 104, 106 und 108 des MPEG-4-FGS-Erweiterungslayers 104 sind jeweils mit unterschiedlichen Verschlüsselungsgeheimnissen verschlüsselt, z. B. ein Schlüssel, und in einer Implementierung bleibt der Basislayer unverschlüsselt und wird frei auf einem öffentlichen Datenträger, wie z. B. dem Internet, verteilt. In einer anderen Implementierung wird der verschlüsselte Inhalt aller Layer in der Öffentlichkeit frei verteilt, aber weil der gesamte Inhalt mit Ausnahme des Basislayers verschlüsselt ist, werden Schlüssel zum Zugreifen auf die verschlüsselten Layer gewährt. Verschlüsselung kann zu derselben Zeit wie das skalierbare Kodieren gemacht werden. Das tatsächlich an einen Benutzer gelieferte Servicelevel wird zu einem späteren Zeitpunkt nach dem Verschlüsselungsprozess entschieden.

Der Gegenstand erlaubt höheren Serviceleveln, auf die Daten von geringeren Serviceleveln zuzugreifen, aber nicht umgekehrt. Wie bereits erwähnt, wenn ein Benutzer sich entscheidet, von einem geringeren Servicelevel auf ein höheres Servicelevel zu erweitern, braucht der Benutzer nur den Unterschied zwischen dem geringen und dem höheren Qualitätslevel herunterzuladen. Für den beispielhaften SMLFE-Datenstrom 100, mit fünf Qualitätslayern 106, 108, 110 und 112, zusätzlich zu dem Basislayer 102, gibt es zehn mögliche Downloads, die durchgeführt werden könnten, um einem Benutzer ein Heraufstufen der Servicelevel zu bieten, ohne den gesamten exemplarischen SMLFE-Datenstrom 100 herunterladen zu müssen. Zum Beispiel, wenn ein Benutzer bereits die Genehmigung zum Zugreifen auf Qualitätslayer-Nr. drei, 110, hat, dann müsste der Benutzer, um auf das nächsthöhere Servicelevel zuzugreifen, nachdem er die Erlaubnis, dies zu tun, erlangt hat, nur Daten herunterladen, die den Unterschied 114 zwischen dem Qualitätslayer-Nr. vier, 112, und dem Qualitätslayer-Nr. drei, 110, darstellen. Ähnliche Downloads können für das Heraufstufen von einem Layer zwischen den anderen Serviceleveln gemacht werden, d. h. Unterschiede 116, 118 und 120. Das Heraufstufen um zwei Servicelevel höher bedingt das Herunterladen von etwas mehr Daten, wie es durch die Unterschiede 122, 124 und 126 zwischen geringen Serviceleveln und Qualitätslayern um zwei Servicelevel höher gezeigt ist. Die herunterzuladende Menge an Daten für ein Heraufstufen um zwei Servicelevel ist immer noch viel weniger als das Herunterladen des gesamten beispielhaften SMLFE-Datenstroms 100. Natürlich wird die Herunterladezeit und -ressourcen ebenso für Hochstufungen von einem ersten Qualitätslayer zu einem Qualitätslayer um drei Servicelevel höher gespart, wie es durch die Unterschiede 128 und 130 gezeigt ist. Ebenso benötigt ein Heraufstufen von dem Basislager 102 zu dem höchsten Qualitätslayer-Nr. vier, 112, ein Herunterladen von Daten gleich dem Unterschied 132, aber dies ist immer noch weniger als das Herunterladen des gesamten exemplarischen SMLFE-Datenstroms 100, welches das Herunterladen des Basislayers 102 wieder einschließen würde.

In einer Implementierung, wie bereits erwähnt, kann der Basislayer 102 ohne Verschlüsselung zum freien Durchstöbern von Videodatenströmen mit geringer Qualität dargelegt werden. Dies ist für Aktivitäten, wie z. B. Sampling eines Videos, hilfreich, bevor eine Pay-per-View (Bezahlen pro Anschauen)-Präsentation des Videos gekauft wird, oder für das Durchführen einer inhaltebasierenden Suche auf den unverschlüsselten Basislayerdaten 102, ohne irgendeinen der höheren Qualitätslayern 106, 108, 110 und 112 entschlüsseln zu müssen.

Verschiedene dargelegte Gegenstände verhindern einen überkreuzten Zugriff verschiedener Typen von Services durch denselben Benutzer, d. h. Zugriff auf ein PSNR-Servicelevel ermöglicht keinen Zugriff auf Bitratenservicelevel und umgekehrt, obwohl alle verschlüsselten Daten für einen Benutzer verfügbar sein könnten.

Beispielhafte DRM-Umgebung

2 zeigt eine beispielhafte Implementation des Gegenstandes über eine exemplarische Netzwerkumgebung 200. Die Netzwerkumgebung 200 schließt ein Inhalteliefersystem 202 ein, das eine exemplarische DRE 204 einschließt, die kommunikativ zu einem Netzwerk, wie z. B. dem Internet 206, gekoppelt ist. Ein Lizenz- und Gebührenserver 208, der ebenso eine exemplarische DRE 204 einschließt, ist ebenso mit demselben Netzwerk, z. B. dem Internet 206, kommunikativ gekoppelt. Die exemplarische DRE 204 in dem Inhaltelieferserver 202 kann mit der beispielhaften DRE 204 in dem Lizenz- und Gebührenserver 208 kommunikativ gekoppelt sein, oder alternativ kann die exemplarische DRE 204 in dem Lizenz- und Gebührenserver 208 ein Remote-Teil (abgelegener Teil) der exemplarischen DRE 204 in dem Inhaltelieferserver 202 sein. Die Netzwerkumgebung 200 schließt auch verschiedene Benutzer 210, 212, 214 und 216 ein, die direkt oder indirekt mit dem Netzwerk, d. h. dem Internet 206, kommunikativ gekoppelt sind. Durch das Gekoppeltsein mit dem Internet 206 ist jeder Benutzer dadurch mit dem Inhalteliefersystem 202 und dem Lizenz- und Gebührenserver 208 kommunikativ gekoppelt. Die exemplarische DRE 204 in dem Inhalteliefersystem 202 produziert in dieser Implementation einen exemplarischen SMLFE-Datenstrom 100.

Ein "Superverteilungs"-Modell wird in dem Kontext für diese Netzwerkumgebung 200 verwendet, obwohl der Gegenstand ebenso mit anderen Verteilungsmodellen verwendet werden kann. In einem Superverteilungsmodell wird Videoinhalt verschlüsselt und der Inhaltebesitzer sendet den verschlüsselten Inhalt an das Inhalteliefersystem 202 zur freien Verteilung und zum Herunterladen 218. Wenn ein Benutzer 210, 212, 214 oder 216 auf ein bestimmtes Servicelevel zugreifen möchte, das durch den exemplarischen SMLFE-Datenstrom 100 bereitgestellt wird, frägt der Benutzer eine Erlaubnis zum Zugreifen auf das gewünschte Servicelevel ab. Entsprechende Rechtebeschreibungen und Schlüssel zum Zugreifen auf einen bestimmten Qualitätslayer des verschlüsselten Inhalts werden zu einem Benutzer gesendet, der z. B. eine Lizenz für diesen Layer bezieht. Der Benutzer zahlt üblicherweise eine Gebühr und lädt die gewünschte Lizenz von dem Lizenz- und Gebührenserver 208 herunter. Bevor er die Entscheidung zum Kaufen einer Lizenz für ein bestimmtes Servicelevel macht, kann der Benutzer den freien geringsten Qualitätsbasislayer 102 ansehen. Nach dem Beziehen einer Lizenz für ein bestimmtes Servicelevel lädt der Benutzer den entsprechenden oder zusätzlichen verschlüsselten Inhalt herunter oder streamt ihn und genießt die Multimediadaten.

Der Benutzer Nr. eins, 210, möchte einen Teil eines Filmvideos zum schnellen Durchsehen auf dem Display eines Mobiltelefons. Das Mobiltelefon hat eine begrenzte Bandbreite und ein Display mit geringer Auflösung. Deshalb lädt der Benutzer Nr. eins, 210, den freien Basisqualitätslayer 102 von dem exemplarischen SMLFE-Datenstrom 100 herunter. Der Basisqualitätslayer 102 bietet nur ein Video mit geringer Auflösung, aber das ist soviel, wie das Mobiltelefon handhaben kann. Außerdem weist der Basisqualitätslayer 102 viel weniger Daten zum Herunterladen auf als die höheren Qualitätslayer 106, 108, 110 und 112 und benötigt in dieser Implementation keine Lizenz oder Gebühr. Dies ist ideal für den Benutzer Nr. eins, 210.

Benutzer Nr. eins, 210, ruft Benutzer Nr. zwei, 212, auf dem Mobiltelefon an und lobt den Film. Der Benutzer Nr. zwei, 212, frägt eine Lizenz 220 für ein höheres Servicelevel als den Basisqualitätslayer 102, der durch den Benutzer Nr. eins, 210, gesehen wurde, ab, um ein Video mit besserer Qualität zu genießen, und erteilt einen Auftrag an den Lizenz- und Gebührenserver 208. Der Benutzer Nr. zwei, 212, ordert den Qualitätslayer Nr. zwei, 108, oder mit anderen Worten das zweite Servicelevel. Der Lizenz- und Gebührenserver 208 verlangt eine Gebühr für das Servicelevel Nr. zwei und sendet den/die Schlüssel 222 für den Qualitätslayer Nr. zwei, 108.

Ein Benutzer Nr. drei, 214, hat ebenso die Version mit geringer Auflösung des Videos gesehen, das er auf seinem Heimcomputer heruntergeladen hat, und möchte nun den gesamten Film auf einem guten Bildschirm sehen. Nachdem er von den Spezialeffekten in dem Film gehört hat, möchte der Benutzer drei, 214, eine sehr gute Videoqualität haben. Der Benutzer Nr. drei, 214, frägt eine Lizenz 224 für ein Servicelevel Nr. drei ab, d. h. Qualitätslayer Nr. drei, 110, des exemplarischen SMLFE-Datenstroms 100. Der Lizenz- und Gebührenserver 208 sendet den Benutzer Nr. drei, 214, den/die Schlüssel 226 für den Qualitätslayer Nr. drei, 110.

Ein Benutzer Nr. vier, 216, der videophil ist, besitzt nur das beste Videoequipment und möchte eine Vorführung des Filmes für seinen videophilen Club machen. Der Benutzer Nr. vier, 216, hat bereits den gesamten Film auf einem Servicelevel Nr. eins angesehen und möchte nun eine Lizenz 228 für das höchste Servicelevel, Qualitätslayer Nr. vier, 112. Der Lizenz- und Gebührenserver 208 sendet dem Benutzer Nr. vier, 216, den/die Schlüssel 230 für einen Zugriff auf das Servicelevel Nr. vier zum Genießen der besten Videoqualität. Weil der Benutzer Nr. vier, 216, bereits ein Servicelevel Nr. eins hat, braucht er nur den Unterschied zwischen dem Qualitätslayer Nr. vier, 112, und dem Qualitätslayer Nr. eins, 106, herunterzuladen.

In manchen Implementationen können alle Benutzer 210, 212, 214, 216 alle verschlüsselten Layer des exemplarischen SMLFE-Datenstroms 100 herunterladen, aber haben nur eine Erlaubnis zum Entschlüsseln jener Layer, die für sie lizensiert sind. Alle verschlüsselten Layer können ebenso durch eine CD, DVD oder anderen Speicherdatenträger anstatt des Herunterladens verteilt werden. In anderen Implementationen, wie z. B. der einen, die mit Bezug auf 2 beschrieben wurde, werden jedem Benutzer nur die für ihr lizensiertes Servicelevel relevanten Daten, d. h. ein Minimum an Daten, gesendet. Dies spart Zeit und Ressourcen. Für den Fall des Streamings von Daten für ein höheres Servicelevel kann der Benutzer den Streamingserver informieren, nur die benötigten Daten zu senden (die zugreifbaren Daten unter der erlangten Lizenz). In manchen Implementationen können verschlüsselte Daten an einen Benutzer durch unterschiedliche Quellen heruntergeladen werden, wie z. B. unterschiedliche Inhaltelieferserver, unterschiedliche Benutzer in einem Peer-zu-Peer-Netzwerk oder eine Kombination von Inhaltelieferservern und -benutzern.

Exemplarische digitale Rechtemaschine (Digital Rights Engine – DRE)

3 zeigt eine exemplarische DRE 204 aus 2 in größerem Detail. In einer Implementierung hat die exemplarische DRE 204 einen Servicelevelgenerator 302, einen Servicelevelverschlüsseler 304, einen bimodalen Servicecontroller 306 und einen Servicelevelzugriffsgeber (grantor) 308, die kommunikativ mit der Steuerungslogik 310, wie dargestellt, gekoppelt sind. Der Servicelevelverschlüsseler 304 schließt des Weiteren eine Verschlüsselungsmaschine 312 und einen Schlüsselgenerator 314 ein. Der bimodale Servicecontroller 306 schließt des Weiteren einen PSNR-Servicecontroller 316 und einen Bitratenservicecontroller 318 ein. Der Servicelevelzugriffsgeber 308 schließt des Weiteren einen Schlüsselverteiler 320 ein. Natürlich zeigt 3 nur eine exemplarische Konfiguration der exemplarischen DRE 204. Eine andere Konfiguration ist ein einzelner Servicecontroller anstatt des bimodalen Controllers in 306. In manchen Implementationen kann der Erweiterungslayer verschiedene unterschiedliche Typen von Erweiterungsdaten enthalten, um die unterschiedlichen Qualitätslayertypen oder Qualitätslayerschemata zu ermöglichen, wie z. B. Frame-Größenskalierbarkeit, Frame-Ratenskalierbarkeit, Bitratenskalierbarkeit, etc. und jeder Typ an Qualitätslayer in den Erweiterungsdaten kann mit einem Servicecontroller assoziiert werden. Der Gegenstand zieht auch viele andere Konfigurationen, die exemplarische DRM-Verfahren ausführen, in Betracht.

Die exemplarische DRE 204 empfängt einen MPEG-4-FGS-Bitdatenstrom 322, der einen Basislayer 102 und einen Erweiterungslayer 104 aufweist. In einer Implementation, in der der Basislayer 102 nicht verschlüsselt wird, kann der Basislayer 102 durch die exemplarische DRE 204 unverändert durchgeleitet werden, aber kann als ein Referenzdatenstrom für die Qualitätslevel, die von dem Erweiterungslayer 104 verschlüsselt werden, dienen. Der Servicelevelgenerator 302, der den Erweiterungslayer 104 zum Verschlüsseln in Servicelevel teilt, empfängt die Komponente des Erweiterungslevels 104 des MPEG-4-FGS-Bitdatenstroms 322. Der MPEG-4-FGS-Bitdatenstrom 322 wird in Videopakete gruppiert, die üblicherweise durch Resynchronisationsmarkierungen (die im Folgenden vp_markers genannt werden) getrennt werden. Ein Bitebenenstartcode fgs_bp_start_code in dem Erweiterungslayer 104 dient ebenso als eine Resynchronisationsmarkierung zur Fehlerausfallsicherheit. Sowohl die Resynchronisierungsmarker als auch der Bitebenenstartcode werden hier als vp-markers bezeichnet, weshalb die Daten, die durch vp-markers getrennt werden, ein Videopaket genannt werden. Die Länge eines Videopaketes in MPEG-4-FGS basiert nicht auf der eingeschlossenen Anzahl an Makroblöcken, aber stattdessen auf der Anzahl von Bits, die in diesem Paket enthalten sind (d. h. die Videopakete sind mit den Makroblöcken abgestimmt, oder "makroblockabgestimmt"). Jedes Videopaket ist eine Verschlüsselungszelle, die unabhängig verschlüsselt wird. Headers, sowie vp-markers, werden üblicherweise nicht verschlüsselt.

Der Servicelevelgenerator 302 ermittelt zwei Typen an Serviceleveln auf einmal. PSNR-Servicelevel werden durch das Auswählen von Gruppen von benachbarten Bitebenen des Erweiterungslayers 104 ermittelt. Die Gesamtanzahl an Ebenen kann in t benachbarte Gruppe geteilt werden, um t PSNR-Servicelevel zu bilden. Bitratenservicelevel werden ebenso durch das Teilen von Erweiterungsdaten eines Frames in m unterschiedliche Gruppen ermittelt, um m Bitratenservicelevel zu bilden, wobei jedes Bitratenservicelevel mit der Grenze eines Videopaketes abgestimmt (aligned) ist. Der Erweiterungslayer 104 ist dann in (m × t) gänzlich unterschiedliche Segmente geteilt worden. Ein Inhaltebesitzer kann irgendein Schema verwenden, um Bitebenen oder Bitraten (videopaketabgestimmt) zusammen zu gruppieren, um PSNR- und Bitratenservicelevel zu bilden. Schemata zum Trennen der Erweiterungslayerdaten in PSNR-geschichtete Servicelevel oder Bitraten-geschichtete Servicelevel sind in der Fachwelt des Videokodierens gut bekannt, aber ein Schema mit vier gleichen Layern von jedem wird hier als ein Beispiel verwendet.

Sobald der Servicelevelgenerator 302 die PSNR- und Bitratenservicelevel ermittelt hat, stellt die exemplarische DRE 204 ein Framework zum Verschlüsseln dieser PSNR- oder Bitratenlayer unter der Verwendung von Schlüsseln und zum Lizenzieren der Schlüssel an Benutzer zum Entsperren der Qualitätslevel des verschlüsselten Inhalts bereit, ohne die Schlüssel an Mittelstationen zwischen dem Inhaltebesitzer und dem Benutzer enthüllen zu müssen.

In dem exemplarischen Servicelevelverschlüsseler 304 wird jedes Videopaket, wie erwähnt, unabhängig als eine Verschlüsselungszelle verschlüsselt. Die Größe eines Videopaketes in einem MPEG-4-FGS variiert von mehreren Hundert Bits zu mehreren Tausend Bits, abhängig von der Übertragungscharakteristik des verwendeten Übertragungsnetzwerkes. Die Paketgröße ist üblicherweise klein, wenn das eingesetzte Netzwerk ein kabelloses Netzwerk ist, und kann für Internetanwendungen groß sein. Die Paketgröße wird zur Komprimierungszeit ermittelt, aber kann sich zu einem späteren Zeitpunkt ändern. Weil der Videopakettrenner vp_marker verwendet wird, um die Grenzen einer Verschlüsselungszelle anzuzeigen, ist üblicherweise keine Veränderung der Videopaketgröße nach dem Verschlüsseln erlaubt.

In einer Implementation schließt der exemplarische Servicelevelverschlüsseler 304 eine Verschlüsselungsmaschine (Engine) 312 basierend auf einem gering komplexen Verschlüsselungsalgorithmus nach Jakubowski und Venkatesan ein, der "C&S-Verschlüsselung" genannt wird, welcher mit manchen Veränderungen verwendet wird, um jede Verschlüsselungszelle zu verschlüsseln. (Mariusz H. Jakubowski, Ramarathnam Venkatesan, "The Chain & Sum Primitive and Its Applications to MACs and Stream Ciphers" (die Ketten- und Summenprimitive und ihre Anwendungen auf MACs und Datenstromciphers), EUROCRYPT'98, S. 281–293, 1998). C&S-Verschlüsselung kennzeichnet ein universelles Blockverketten mit Summe, oder Ketten- und Summenprimitive (C&S als Abkürzung), welches auf die Kombination von Verschlüsselung und Authentifizierung von Daten angewandt werden kann. Die Primitive ist eine schwache CBC-Typ-Verschlüsselung, zusammen mit einem Summierungsschritt, und wird als ein Frontend für Datenstrom-Chiffriertexte (stream ciphers) verwendet, um Blöcke an Daten in einem Videostrom zu verschlüsseln. Obwohl die exemplarische Verschlüsselungsmaschine 312 große Mengen an Daten verschlüsselt, muss die Verschlüsselung nur einmal angewandt werden, so wie die FGS-Komprimierung, weil in den meisten Fällen dazwischen liegende Server ihre Arbeiten direkt an dem Chiffriertext durchführen können. Weil die C&S-Verschlüsselung eine geringe Komplexität hat, sind die Verschlüsselung und Entschlüsselung schnell. Die Verschlüsselung, die durch die exemplarische Verschlüsselungsmaschine 312 angewandt wird, verursacht üblicherweise keine Degradierung der Kompressionseffizienz oder Aufwandsbelastung.

In anderen Implementationen kann die Verschlüsselungsmaschine 312 einen Frame oder eine Zelle durch das Ersetzen von allen oder einem Teil des C&S-Schemas mit einem allgemeinen Datenstromcipher, wie z. B. RC4, etc. oder einem Blockcipher, wie z. B. DES, AES, RC5, etc, in verschiedenen Modi, wie z. B. ECB-(Electronic Codebook), CBC-(cipher block chaining), oder OCB-(Offset Codebook)-Modi verschlüsseln.

In dem exemplarischen C&S-Verschlüsselungsalgorithmus wird zur Beschleunigung die ursprüngliche DES-Verschlüsselung des Vor-MAC (pre-message authentication code – Nachrichtenauthentifizierungscodes) durch eine RC5-Verschlüsselung ersetzt. Dieses Verschlüsselungsverfahren vergrößert die Datengröße nicht. Die exemplarische C&S-Verschlüsselung verwendet einen reversiblen MAC, um einen Teil der zu verschlüsselnden Daten zu ersetzen. Der MAC-Wert wird zusammen mit dem Verschlüsselungsschlüssel verwendet, um in einen Datenstromcipher, wie RC4, gefüttert, um den Rest der Daten zu verschlüsseln (der Vor-MAC, wie erwähnt, wird durch RC5 verschlüsselt, um den MAC zu bilden). Weil der MAC reversibel ist, kann der Verschlüsselungsprozess umgekehrt werden, um den ursprünglichen Klartext zurück zu gewinnen, wenn keine Bitfehler auftreten. Weil der Datenstromcipherschlüssel sowohl von dem Zellverschlüsselungsschlüssel als ebenso von einem Hashwert der zu verschlüsselnden Daten abhängt, ist die Verschlüsselungssicherheit garantiert, d. h., weil der Datenstromcipherschlüssel sowohl von einem globalen Verschlüsselungsschlüssel als auch dem Hashwert von den zu verschlüsselnden Daten abhängt, werden Inhalte mit kleinen Unterschieden in unterschiedliche Chiffriertexte verschlüsselt, selbst wenn derselbe globale Verschlüsselungsschlüssel wiederholt verwendet wird.

In einer Implementation wird die exemplarische C&S-Verschlüsselung auf ein Feld von Z(231 – 1) zur Erhöhung der Geschwindigkeit angewandt. Die Sicherheit für jede Verschlüsselungszelle ist deshalb 262. Die Verschlüsselungsdetails für eine Zelle können wie folgt beschrieben werden. Es sollte beachtet werden, dass der Entschlüsselungsprozess die Umkehr der folgenden Verschlüsselungsschritte ist.

Lassen wir die Verschlüsselungszelle kennzeichnen als X|xp = x0x1&Lgr;xn|xpGleichung (1) wobei xp ein Teilblock ist und "|" eine anhängende Funktion (appending operation) bedeutet. Lassen wir den Schlüssel für die Zellverschlüsselung K sein. Zwei lineare Funktionen werden definiert als f(x) = ax + bGleichung (2) und g(x) = cx + dGleichung (3).

Als nächstes wird C = c0c1&Lgr;cnGleichung (4) berechnet, wobei c0 = f(ex0)Gleichung (5) und ci = f(ci-1 + exi)Gleichung (6) für gerade i > 0 verwendet werden, und ci = g(ci-1 + e'xi)Gleichung (7) für ungerade i > 0 verwendet wird. Lassen wir yk = ckGleichung (8) für k ≠ n – 1Gleichung (9), und yn-1 = &Sgr;nk=0ckGleichung (10). sein. Der Vor-MAC wird bezeichnet durch s = yn – 1ynGleichung (11).

Der Vor-MAC kann als der "Hash"-Wert von x angesehen werden. Dann wird s = yn-1ynGleichung (12) durch seinen Chiffriertext E(s), der unter Verwendung von RC5 mit dem Schlüssel K für die Zelle verschlüsselt wurde, ersetzt. E(s) wird der MAC-Wert von x genannt.

Der Chiffriertext der Verschlüsselungszelle wird erlangt als Z = G(K|s)XOR(y0y1 ... yn-2|xp)Gleichung (13), wobei G(s) eine Zufallssequenz ist, die durch RC4 mit dem Eingabeschlüssel als die Kombination des Verschlüsselungsschlüssels K und des Vor-MAC-Wertes s erzeugt wird.

Unter Verwendung dieser exemplarischen C&S-Verschlüsselung ist es für den Videopakettrenner vp_marker möglich, in einem Chiffriertext zu erscheinen, obwohl die Wahrscheinlichkeit für dieses Auftreten sehr klein ist. Um diese Möglichkeit der Verwirrung zu vermeiden, kann die folgende Technik verwendet werden: wenn ein Chiffriertext einen vp_marker emuliert, dann wird der vp_marker an dem Beginn der Zelle wiederholt, gefolgt von einer feststehenden Anzahl an Bits, z. B. vierundzwanzig Bits, um die Größe der Verschlüsselungszelle darzustellen, bevor der Chiffriertext angehängt wird. In anderen Implementationen werden anstatt des Wiederholens des vp_marker zwei spezielle Marker verwendet, um den Resynchronisationsmarker und den fgs_bp_start_code zu ersetzen, wobei dies anzeigt, dass eine Emulierung des vp_markers aufgetreten ist. Dieselbe Technik kann verwendet werden, wenn der Hamming-Abstand zwischen vp_marker und irgendeinem Vektor in dem Chiffriertext kleiner als ein Schwellenwert ist. Dies kann eine vp_marker-Emulation, die durch Bitfehler verursacht wurde, verhindern. Weil die Wahrscheinlichkeit für solche eine Erscheinung außerordentlich gering ist, ist der Byte-Overhead zum Implementieren dieser Technik vernachlässigbar.

Das vorher erwähnte C&S-Verschlüsselungsverfahren ist eine schnelle Technik. Weil die Verschlüsselung nur einmal durch den Inhaltebesitzer durchgeführt wird, außer für eine Realtime-Komprimierung- und Verschlüsselungsanwendung, erscheint der Verschlüsselungs-Overhead normalerweise auf der Entschlüsselungsseite. Der Entschlüsselungs-Overhead ist für die meiste Hardware vernachlässigbar.

In solchen Implementationen kann der Blockcipher RC5 in der C&S-Verschlüsselung durch andere Block-Cipher, wie z. B. AES, ersetzt werden. RC4 kann ebenso durch andere Datenstromcipher ersetzt werden. In anderen Implementationen kann die C&S-Verschlüsselung durch einen Stream-Cipher oder einen Block-Cipher mit CBC oder anderen Modi und mit passenden Verarbeitungsinstruktionen für einen möglichen Teilblock ersetzt werden, wenn eine Verschlüsselungszelle verschlüsselt wird.

In einem exemplarischen DRM-Verfahren wird Verschlüsselung nach der Komprimierung ausgeführt, so dass sie die Komprimierungseffizienz nicht beeinflusst. Die Daten, die zu dem komprimierten Bitstrom dem Header hinzugefügt werden, liegen so um die vierundzwanzig Bits für jeden Frame, um die Anzahl an Videopakten in dem Frame darzustellen, um anzuzeigen, wie Daten in Bitratenservicelevel geteilt werden, und um Platz dafür bereitzustellen, wenn Chiffriertext einen vp_marker emuliert. Für ein Video mit normaler Bitrate sind solche hinzugefügten Bytes vernachlässigbar.

Schlüsselmanagement

Der Servicelevelverschlüsseler 304 schließt ebenso einen Schlüsselgenerator 314 ein. Der Multimediainhalt kann zeitgleich in eine Anzahl von Reihen von Serviceleveln geteilt werden, d. h. Reihen von Qualitätslayern. Jedes Servicelevel (Qualitätslayer) und jede Reihe an Serviceleveln, kann in einem Schlüsselmanagementschema teilnehmen. Zum Beispiel, vorausgesetzt die Gesamtanzahl an Bitebenen eines exemplarischen FGS-Multimediainhalts ist in t benachbarte Gruppen durch den beispielhaften Servicelevelgenerator 302 geteilt worden, um t PSNR-(oder andere Typen von)Servicelevel(n) zu bilden. Erweiterungsdaten eines Frames sind ebenso in m unterschiedliche Gruppen durch den exemplarischen Servicelevelgenerator 302 geteilt worden, um m Bitraten – (oder andere Typen von) Servicelevel(n) zu formen, wobei jedes Bitratenservicelevel mit der Grenze der Videopakete ausgerichtet ist. Der FGS-Erweiterungslayer ist dann in (m) × (t) (d. h. m mal t) gänzlich unterschiedliche Segmente geteilt worden. Wenn der Trennungspunkt für einen Bitratenservice mit dem eines PSNR-Servicelevels übereinstimmt, wird das entsprechende Segment als leer, mit einer Länge von null, angesehen. In einer exemplarischen Implementation wird jedem Segment ein unabhängig und zufällig erzeugter Segmentschlüssel zugewiesen, als Schlüssel(mi, tj) bezeichnet, wobei m gleich einer Ganzzahl und t gleich einer Ganzzahl ist.

4 zeigt eine Matrix von exemplarisch entsprechenden Segmentschlüsseln 400 für die Qualitätslayer 106, 108, 110 und 112 des exemplarischen SMLFE-Datenstroms 100.

Entsprechende Segmente (jedes durch einen Schlüssel dargestellt) sind für den Fall von vier Bitebenen (m = 4) und vier Bitratengruppen (t = 4) gezeigt. Der Basisqualitätslayer 102 erfordert in Implementationen, in denen der Basisqualitätslayer 102 unverschlüsselt bleibt, keinen Schlüssel zum Zugreifen.

Jede Verschlüsselungszelle in einem Segment wird unabhängig mit demselben Segmentschlüssel verschlüsselt. Wenn ein Benutzer eine Lizenz für ein bestimmtes Servicelevel erlangt, dann werden alle Schlüssel für das erlangte Level und die geringeren Servicelevels desselben Servicetyps in der Lizenz, die an den Benutzer geliefert wird, wenn notwendig, enthalten sein. Zum Beispiel, wenn das erlangte Servicelevel das PSNR-Servicelevel t = 2 ist, wird die Lizenz all die Schlüssel enthalten, d. h. Schlüssel(m, t), wo t ≤ 2 ist. Diese Schlüsselverteilung ist ähnlich für den Fall der Bitratenservicelevels. Ein Benutzer mit lizenziertem Zugriff auf ein bestimmtes Level an Service innerhalb eines bestimmten Servicetyps (PSNR oder Bitrate) kann nur auf dieses Servicelevel oder ein geringeres Servicelevel desselben Typs zugreifen. Der Benutzer kann nicht auf höhere Level mit demselben Service-Typ oder irgendein Servicelevel des anderen Typs an Service zugreifen.

Weil PSNR-Servicelevel manche Korrelation mit den Bitratenserviceleveln haben, sind die Schlüssel, die wahrscheinlich für die tatsächliche Verschlüsselung verwendet werden, üblicherweise die Schlüssel entlang (d. h. auf oder nahe zu) einer Diagonalen der Matrix in 2, nämlich die Schlüssel 402, 404, 406 und 408. Aber mehrere Schlüssel können ebenso für ein gegebenes Servicelevel nützlich sein, wie durch die umkreisten Schlüssel in 4 gezeigt. In einer Implementation verwendet eine Lizenz für PSNR-Servicelevel Nr. eins zum Zugreifen auf Qualitätslayer Nr. eins, 106, die Schlüssel 402 und 412. Eine Lizenz für das PSNR-Servicelevel Nr. zwei, zum Zugriff auf Qualitätslayer Nr. zwei, 108, verwendet den Schlüssel 404. Eine Lizenz für ein PSNR-Servicelevel Nr. drei, zum Zugreifen auf Qualitätslayer Nr. drei, 110, verwendet die Schlüssel 406 und 416. Eine Lizenz für das PSNR-Servicelevel Nr. vier, zum Zugreifen auf Qualitätslayer Nr. vier, 112, verwendet die Schlüssel 408 und 426.

In Implementationen, in denen das Superverteilungsmodell verwendet wird, haben die nicht verwendeten Schlüssel (jene Schlüssel für Servicelevel geringer als das höchste Servicelevel, das an einen Benutzer lizensiert wurde) keinen Einfluss auf die Inhalteverschlüsselung. Extraschlüssel, die durch den Benutzer verwendet werden, beeinflussen nur die Menge an Daten in einer Lizenz. Um die Größe in Bytes einer Lizenz für manche Anwendungen zu reduzieren, wie z. B. jene Anwendung in Mobilgeräten, können nicht verwendete Schlüssel, die mit (oder in) einer Lizenz gesendet werden sollen, vor dem Senden der Lizenz entfernt werden.

Um die Anzahl der Schlüssel zu reduzieren, die zu einem Benutzer transferiert werden müssten, kann ein exemplarisches (1, 2)-Schwellenwertschema verwendet werden. (A. Shamir, "How to Share a Secret" (wie kann ein Geheimnis geteilt werden), Communications of ACM, Vol. 24, Nr. 11, 1979, S. 612–613, hierin durch Referenz inkorporiert). In einer exemplarischen Implementation des Schwellenwertschemas wird das Wissen von entweder dem Schlüsselb(mi) oder dem Schlüsselp(tj) in der Lage sein, das Segment(mi, tj) zu entschlüsseln. Zwei unabhängige Zufallsschlüssel werden als die Schlüssel für das höchste Servicelevel des PSNR-Typs und des höchsten Servicelevels des Bitratentyps entsprechend erzeugt. Schlüssel für andere Servicelevel werden auf die folgende Weise erzeugt: der Schlüssel für das aktuelle Servicelevel wird durch Anwenden einer kryptografisch sicheren Hashingfunktion auf den Schlüssel des nächsthöheren Servicelevels desselben Typs erzeugt. Wenn ein Benutzer den Zugriff auf ein bestimmtes Servicelevel kauft, z. B. das PSNR-Level drei, wird ein einzelner Schlüssel entsprechend dieses Levels, Schlüsselp(3) zu dem Benutzer gesendet. Die Schlüssel für geringere PSNR-Level, Schlüsselp(k) können durch das Hashing des Schlüsselsp(k + 1), wobei k = 1, 2 ist, gefunden werden. Diese Schlüssel werden anschließend in dem (1, 2)-Schwellenwertschema zum Entschlüsseln von Verschlüsselungszellen für jedes Segment, auf dass der Benutzer in der Lage ist, zuzugreifen, verwendet.

Obwohl die Erweiterungslayerdaten 104 in Segmente geteilt sind, wurden zusätzliche Markierungen (um das Ende von jedem Segment zu markieren) nicht hinzugefügt. In MPEG-4-FGS beginnt jede Bitebene mit einem Bitebenenmarkierer, der ebenso verwendet werden kann, um PSNR-Servicelevelgrenzen anzuzeigen. Ein maßgeschneiderter Header kann zu jedem Frame hinzugefügt werden, um die Anzahl an Videopaketen in dem Erweiterungslayer des Frames zu der Zeit der Verschlüsselung anzuzeigen, und um das Bitratengruppierungsschema anzuzeigen (dies erlaubt verschiedenen Gruppierungsschemata für den Fall, dass unterschiedliche Frames verschiedene Videopaketcharakteristika aufweisen). In einer Implementation sind vierundzwanzig Bits für diesen Zweck angebracht. Die Anzahl an Bits kann für jede bestimmte Anwendung eingestellt werden. Eine Beschreibung des Schemas, das zum Gruppieren exemplarischer Teilungen des Inhalts in Qualitätslayerreihen an Bitebenen und Bitraten verwendet wurde (d. h. in Videopakete für Bitratenservicelevel), kann in die Lizenz oder zu dem Beginn eines Multimediadatenstroms als ein Header platziert werden. Auf diese Weise stellt der exemplarische DRM-Gegenstand vernachlässigbaren Komprimierungs-Overhead bereit: d. h. vierundzwanzig Bits werden zu einem komprimierten Datenstrom in einer Implementierung hinzugefügt, sechzehn Bits werden in einer anderen Implementierung hinzugefügt.

In Streaming-Anwendungen, die manche Typen von Qualitätslayerreihen benutzen, kann ein Streaming-Server z. B. die Bitratenservicelevel-Trennungspunkte erlangen, um das Streaming von zusätzlichen Daten zu verhindern, zu denen ein Benutzer keine Zugriffserlaubnis hat. Eine Hilfsdatei mit Zusatzinformationen, die alle Brechungspunkte (breakpoints) für Bitratenservicelevel enthält, kann für diesen Zweck ebenso verwendet werden. Die Zusatzdatei wird nicht zu dem Benutzer gesendet, so dass sie keine Datenübertragungsbandbreite aus der Sichtweise des Benutzers konsumiert. Dies kann ebenso durch das Einfügen von Zusatzinformationen erreicht werden, die alle Brechungspunkte für Qualitätslayer (sowie Segmente, wenn notwendig) direkt in einem Multimediaformat enthalten. Dies erlaubt es einem Streaming-Server, auszuwählen, was gesendet wird, ohne diese Zusatzinformationen selbst an den Benutzer zu senden.

Steuerung von simultanen Qualitätslayerreihen (Quality Layer Sets)

Zurückkehrend zu 3 kann die exemplarische DRE 204 auch den bimodalen Servicecontroller 306 einschließen. Weil der Erweiterungslayer 104 des MPEG-4-FGS-Bitdatenstroms 322 durch den Servicelevelgenerator 302 in Gruppen von benachbarten Bitebenen für einen Benutzerzugriff auf PSNR-Servicelevel und ebenso in Bitratengruppen für Benutzerzugriff auf Bitraten-Servicelevel geteilt wurde, verwaltet der bimodale Servicecontroller 306 in einer Implementierung den Zugriff auf diese zwei Servicetypen. Der PSNR-Servicecontroller 316 in dem bimodalen Servicecontroller 306 kann von dem Chiffriertext oder von einer Benutzeranfrage erkennen, dass ein Bitratenservicelevel verwendet werden sollte, und unterstützt den Servicelevelzugriffsgeber 306 durch das Liefern von Inhalt über einen Bitratenservicelevel und Zuweisen der Schlüssel, die in einer Bitratenlizenz enthalten sein sollen.

Die beispielhafte DRE 204 kann ebenso den Servicelevelzugriffsgeber 308 zum Empfangen von Anfragen für die verschiedenen PSNR- und Bitratenservicelevel einschließen, und zum Gewähren von Erlaubnissen, die Servicelevel zu verwenden und/oder einen PSNR- oder Bitratenqualitätslayer herunterzuladen. Das Gewähren von Erlaubnissen verursacht üblicherweise das Aufdecken des Entschlüsselungsgeheimnisses für das Servicelevel und den Typ des angefragten Services. Die Entschlüsselungsgeheimnisse sind üblicherweise Entschlüsselungsschlüssel, aber können ebenso Verschlüsselungsschlüssel enthalten, wenn eine Wiederverschlüsselung für die Lizenzübertragung oder andere Funktionen, die auf der Benutzerseite ausgeführt werden, erforderlich ist. Deshalb kann der Servicelevelzugriffsgeber 308 ebenso den Schlüsselverteiler 320 einschließen, welcher die/den Schlüssel ermittelt, der/die in einer Lizenz eingeschlossen sein sollte(n), um ein Servicelevel zu verwenden.

Der Servicelevelzugriffsgeber 308 kann mit dem Rest der exemplarischen DRE 204 in einem Inhaltelieferserver 202 oder anderen Computergerät eingesetzt werden. Alternativ kann der Servicelevelzugriffsgeber 308 entfernt (remotely) (340) z. B. in einem separaten Lizenz- und Gebührenserver 208 eingesetzt werden.

Exemplarische Verfahren

5 zeigt ein exemplarisches DRM-Verfahren 500. Dieses exemplarische DRM-Verfahren 500 kann durch ein Gerät, wie z. B. die in den 2 und 3 gezeigte exemplarische DRE 204, ausgeführt werden. In dem Flussdiagramm werden Funktionen in einzelnen Blöcken zusammengefasst. Die Funktionen können in Hardware und/oder als maschinenlesbare Instruktionen (Software oder Firmware), die durch einen Prozessor ausgeführt werden können, durchgeführt werden.

Bei Block 502 wird ein Multimediadatenstrom in Layer geteilt. Die Layer können Qualitätslayer sein, d. h. der Multimediadatenstrom ist auf solch eine Weise geteilt, dass das menschliche Auge, Ohr oder ein Gerät Unterschiede zwischen einem Layer und einem anderen wahrnehmen kann. In einem MPEG-4-FGS-Bitdatenstrom kann der Basislayer 102 einer der Qualitätslayer sein und der Erweiterungslayer 104 kann in Qualitätslayer aufgeteilt werden. Dies kann durch das Gruppieren von benachbarten Bitebenen des Erweiterungslayers 104 in PSNR-Level erreicht werden. Ein anderer Typ an Qualität ist die Datenstrombitrate. Eine geringere Bitrate kann in manchen Umständen wünschenswert sein, wenn visuelle Qualität nicht erforderlich ist, aber ein schnelles Herunterladen gewünscht ist. Deshalb kann der Multimediadatenstrom ebenso in Layer für Bitraten geteilt werden. Wenn der Erweiterungslayer Erweiterungsdaten für andere Skalierbarkeiten enthält, wie z. B. eine Frame-Größenskalierbarkeit, Frame-Ratenskalierbarkeit, Farbtiefenskalierbarkeit, etc., können Qualitätslayer auch basierend auf einer Frame-Größe, Frame-Rate, Farbtiefe oder einer Kombination von diesen und dem PSNR- und Bitratentypen ermittelt werden.

Bei Block 504 werden mindestens manche der Layer aus der Teilung bei Block 502 verschlüsselt. Wenn die Layer unter Verwendung unterschiedlicher Schlüssel für jeden Layer verschlüsselt werden, dann kann der Zugriff durch Erlaubnisse für jeden Layer gesteuert werden.

Bei Block 506 wird der Zugriff auf einen Layer durch Aufdecken, wie der Layer entschlüsselt werden soll, gewährt. Erlaubnis, den Layer zu entschlüsseln, kann durch das Geben einer Lizenz gewährt werden, und die Lizenz kann einen oder mehrere Schlüssel für die Entschlüsselung enthalten.

6 zeigt ein anderes exemplarisches DRM-Verfahren. Dieses exemplarische DRM-Verfahren 600 kann durch ein Gerät, wie z. B. die in den 2 und 3 gezeigte exemplarische DRE 204, durchgeführt werden. in dem Flussdiagramm sind die Funktionen in einzelne Blöcke zusammenfasst. Die Funktionen können in Hardware und/oder als maschinenlesbare Instruktionen (Software oder Firmware), die durch einen Prozessor ausgeführt werden, durchgeführt werden.

Bei Block 602 wird ein Basislayer und ein Erweiterungslayer eines MPEG-4-FGS-Bitdatenstroms empfangen.

Bei den Blöcken 604 und 606 wird der empfangene Erweiterungslayer gleichzeitig auf zwei verschiedene Arten geteilt. Bei Block 604 wird der empfange Erweiterungslayer in PSNR-Qualitätslayer durch das Gruppieren von benachbarten Bitebenen geteilt. Die Gruppierungen können gemäß dem Bedarf und/oder Geschmack ausgewählt werden. Bei Block 606 wird der empfangene Erweiterungslayer ebenso gleichzeitig in Bitratenqualitätslayer durch das Auswählen von Bitratengruppen gemäß dem Bedarf und/oder Geschmack geteilt.

Bei Block 608 werden die PSNR-Qualitätslayer und die Bitratenqualitätslayer des Erweiterungslayers unter Verwendung eines separaten Schlüssels für jeden Layer verschlüsselt.

Bei Block 610 werden die Schlüssel für die PSNR-Qualitätslayer und Bitratenqualitätslayer gleichzeitig durch eine Erlaubnis verfügbar gemacht, während der Basislayer ohne eine Erlaubnis verfügbar gemacht wird. Zugriff durch eine Erlaubnis auf entweder einen PSNR-Qualitätslayer oder einen Bitratenqualitätslayer kann einem Benutzer gewährt werden, abhängig von dem Typ der Anfrage nach einer Erlaubnis, die empfangen wird.

Fehlerausfallsicherheit und Performance

Ein reales Netzwerk ist nicht perfekt. Bitfehler und Paketverluste treten während der Übermittlung von Multimediadaten über ein Netzwerk auf, so dass Fehlerausfallsicherheit wünschenswert ist. Implementationen der exemplarischen DRE 204 gehen davon aus, dass ein Transportpaket vollständige Videopakete enthält, so dass, wenn Paketverlust auftritt, ein gesamtes Videopaket vollständig verloren geht, und ebenso, dass der Header eines Transportpakets Informationen bezüglich der Indizes der Videopakete, die es enthält, enthält. Wenn ein Videopaket empfangen wird, machen es deshalb die Header einfach, das Paket in die richtige Reihenfolge oder Position zu platzieren, ungeachtet dessen, ob vorherige Videopakete während der Übertragung verloren gegangen sind. Diese Annahmen sind für nahezu alle Multimedianetzwerke in realen Anwendungen gültig.

Unter Verwendung der oberen Annahmen und der Art und Weise, in der Segmentverschlüsselungsschlüssel durch die exemplarische Verschlüsselungsmaschine 312 zugewiesen werden, gilt, wenn ein empfangenes Videopaket dekomprimiert werden kann, kann es ebenso entschlüsselt werden. Deshalb fügt die exemplarische Verschlüsselung keinen zusätzlichen negativen Einfluss zu einem Paketverlust hinzu, und die exemplarische Verschlüsselung wird nicht schädlich durch Paketverluste beeinflusst. Mit anderen Worten ist das exemplarische DRM-Verfahren gegenüber Paketverlust robust.

In MPEG-4, wenn Bitfehler in einem empfangenen Bitstrom auftreten, werden die Videopakete, die die Bitfehler enthalten, normalerweise verworfen. Mit dem exemplarischen DRM-Verfahren kann ein Bitfehler in einer Verschlüsselungszelle sich auf andere Bits in der Zelle ausweiten, weitet sich aber niemals auf andere Zellen aus, weil jede Zelle unabhängig verschlüsselt wird. Nur die korrupte Zelle wird verworfen. Weil eine Verschlüsselungszelle dasselbe ist wie ein Videopaket, wie oberhalb beschrieben, fügt das exemplarische Verschlüsselungsverfahren keine zusätzlichen negativen Einflüsse zu Bitfehlern hinzu. Deshalb ist das exemplarische DRM-Verfahren robust gegenüber Bitfehlern, sowie Paketverlusten.

Es ist nicht immer notwendig, Verschlüsselungszellen von derselben Größe wie die Videopakete in dem exemplarischen DRM-Verfahren zu machen. Es ist möglich, ein Videopaket in verschiedene Verschlüsselungszellen durch die Verwendung eines Schemas, das nur von der Größe des Videopaketes abhängt, zu teilen. Dies kann die Granularität der Servicelevel reduzieren, ohne deren Fehlerausfallsicherheit zu opfern.

Experimentelle Ergebnisse

Der Erweiterungslayer 104 war in vier PNSR-Servicelevel und vier Bitratenservicelevel geteilt worden, mit derselben Anzahl an Bitebenen in jedem PSNR-Level, und nahezu gleichen Bytes (abgestimmt mit den Videopaketen) für jedes Bitratenlevel. Alle Experimente wurden auf einem DELL®-Personalcomputer mit 512 Megabyte RAM und einem INTEL® PENTIUM® III-Prozessor, der bei 667 Megahertz läuft, durchgeführt.

7 zeigt einen Vergleich 700 von exemplarisch erlangten Bitratenserviceleveln. Die Bitrate 702 wird gegenüber den Bitratenserviceleveln 704 gezeichnet. Ein exemplarisches erstes Bitratenservicelevel 700 hat eine durchschnittliche Bitrate 250.000 Bits pro Sekunde, ein exemplarisches Bitratenservicelevel 708 hat eine durchschnittliche Bitrate von 510.000 Bits pro Sekunde, ein drittes exemplarisches Bitratenservicelevel 710 hat eine durchschnittliche Bitrate von 800.000 Bits pro Sekunde und ein viertes exemplarisches Bitratenservicelevel 712 hat eine durchschnittliche Bitrate von 1.100.000 Bits pro Sekunde. Die Trennung zwischen Bitratenleveln stellt eine lineare Beziehung in 7 dar.

8 zeigt einen Vergleich 800 von exemplarisch erreichten PSNR-Serviceleveln. Das "Frame-Durchschnitts"-Spitzensignal-Rausch-Verhältnis ("durchschnittliches PSNR" 802) für jedes exemplarische PSNR-Servicelevel wird gegenüber den PSNR-Servicelevelanzahlen 804 gezeichnet. Das PSNR ist ungefähr konstant über die Frames für die Helligkeit und Farbkomponenten Y, U und V, was als eine einzelne Durchschnittslinie in 8 gezeigt ist. Die Trennung der ersten drei PSNR-Servicelevel 806, 808 und 810 voneinander stimmt mit einer Implementierung der Qualitätslayer überein, die durch den exemplarischen Servicelevelgenerator 302 entwickelt wurde. Das vierte PSNR-Level 812 führt (maintain) nicht dieselbe Teilung von dem PSNR-Servicelevel Nr. drei, 810, wie die Servicelevel Nr. eins, zwei und drei voneinander führen, weil das PSNR-Servicelevel Nr. vier, 812, keine vollständigen Bitebenendaten, aufgrund der Bits, die jedem Frame durch die FGS-Komprimierung zugewiesen wurden, enthalten.

9 zeigt exemplarische visuelle Effekte 900, die sich durch die PSNR-Servicelevel, in 8 gezeigt, ergeben. Die Bildqualität verbessert sich mit höheren PSNR-Serviceleveln, weil mehr Qualitätslayer verfügbar sind, um das Bild zu konstruieren. Das Bild Nr. eins des "Frontmannes" 902 hat eine geringe Auflösung und eine blockhafte Charakteristik eines geringen PSNR-Wertes von ungefähr 32 für das PSNR-Servicelevel Nr. eins, 606. Das Bild Nr. 2 des "Frontmannes" 904 hat eine verbesserte Auflösung und Definition, aber eine gewisse Blockhaftigkeit ist immer noch sichtbar, aufgrund des Durchschnitts-PSNR-Wertes von ungefähr 42 für das PSNR-Servicelevel Nr. zwei, 608. Das Bild Nr. drei des "Frontmannes" 906 zeigt eine bessere Qualität aufgrund eines PSNR-Wertes von ungefähr 48 für das PSNR-Servicelevel Nr. drei, 610, aber zeigt nach einer näheren Betrachtung immer noch manche Niedrigauflösungsartefakte und Unregelmäßigkeiten. Das Bild Nr. vier des "Frontmannes" 908 hat die beste Auflösung der vier Bilder, einschließlich der besten Schärfe und dem Fehlen von Klingeln (ringing), aufgrund des höchsten PSNR-Wertes von ungefähr 51 für PSNR-Servicelevel Nr. vier, 612. Ein Benutzer kann für das Servicelevel, das den Bedürfnissen nach Qualität oder minimaler Herunterladezeit dem Benutzer am besten genügt, unterschreiben (einen Kauf abschliessen).

ERGEBNIS

Das Vorangegangene beschreibt eine exemplarische DRE 204 und in Beziehung stehende DRM-Verfahren für eine sichere geschichtete (layered) Zugriffskontrolle auf Multimediadatenströme, wie z. B. MPEG-4-FGS-Bitdatenströme und andere skalierbare Medien. Sowohl PSNR-basierte geschichtete Steuerung als auch Bitraten-basierte geschichtete Steuerung werden in demselben Framework realisiert und keiner der Kontrolltypen gefährdet den anderen Kontrolltyp. Es sollte beachtet werden, dass der Gegenstand, der oberhalb geschrieben wurde, in Hardware, in Software oder sowohl in Hardware als auch Software implementiert werden kann. In bestimmten Implementationen können die exemplarische DRE 204 und in Beziehung stehende DRM-Verfahren im allgemeinen Kontext von computerausführbaren Instruktionen beschrieben werden, wie z. B. Programmmodulen, die durch einen Computer ausgeführt werden. Im Allgemeinen schließen Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen, etc. ein, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Der Gegenstand kann ebenso in verteilten Datenübertragungsumgebungen praktiziert werden, wo Aufgaben über kabellose Datenübertragungen durch abgelegene (remote) verarbeitende Geräte durchgeführt werden, die durch ein Kommunikationsnetzwerk miteinander verbunden sind. In einem kabellosen Netzwerk können Programmmodule sowohl in lokalen als auch Remote-Datenübertragungsgerätespeicherdatenträgern, einschließlich Speicherdatengeräten, liegen.


Anspruch[de]
Verfahren zum Schlüsselmanagement, das umfasst:

Teilen (502, 604, 606) eines skalierbaren Multimedia-Inhalts (100) in zwei oder mehr Qualitätsstufen-Sets (132), wobei jedes Qualitätsstufen-Set Qualitätsstufen einschließt, die von einer geringeren Qualität (102) zu einer höheren Qualität (112) reichen, und wobei eine erste Anzahl an Qualitätsstufen in einem ersten Qualitätsstufen-Set multipliziert mit einer zweiten Anzahl an Qualitätsstufen in einem zweiten Qualitätsstufen-Set eine Anzahl an Inhaltssegmenten (402432) definiert;

Verschlüsseln (504, 608) mindestens einiger der Qualitätsstufen; und

Zuweisen eines separaten Schlüssels zu jedem der Segmente.
Verfahren nach Anspruch 1, wobei ein erster Schlüssel von einer geringeren Qualitätsstufe in einem Qualitätsstufen-Set von einem zweiten Schlüssel der nächst höheren Qualitätsstufe in dem Qualitätsstufen-Set erlangt werden kann. Verfahren nach Anspruch 2, wobei der erste Schlüssel von dem zweiten Schlüssel durch Hashing mindestens eines Teils des zweiten Schlüssels erlangt wird. Verfahren nach Anspruch 1, das des Weiteren das gleichzeitige Verwenden eines ersten Schlüssel-Sets für das erste Qualitätsstufen-Set und eines zweiten Schlüssel-Sets für das zweite Qualitätsstufen-Set umfasst. Verfahren nach Anspruch 4, wobei ein Inhaltssegment, das durch eine Vielzahl von Qualitätsstufen-Sets definiert ist, durch das Verwenden eines Schlüssels von nur einem der Vielzahl von Qualitätsstufen-Sets entschlüsselt werden kann. Verfahren nach Anspruch 1, wobei ein erster unabhängiger Zufallsschlüssel für die höchste Qualitätsstufe in dem ersten Qualitätsstufen-Set erzeugt wird, und ein zweiter unabhängiger Zufallsschlüssel für die höchste Qualitätsstufe in dem zweiten Qualitätsstufen-Set erzeugt wird. Verfahren nach Anspruch 6, wobei Schlüssel für Qualitätsstufen geringer als die höchsten Qualitätsstufen in dem ersten Qualitätsstufen-Set und dem zweiten Qualitätsstufen-Set durch sicheres Hashing eines Schlüssels der nächst höheren Qualitätsstufe in den entsprechenden ersten und zweiten Qualitätsstufen-Sets erzeugt werden. Verfahren nach Anspruch 1, das des Weiteren umfasst:

Erzeugen eines Schlüssel-Sets für jedes Qualitätsstufen-Set, wobei ein Schlüssel für jede Qualitätsstufe in jedem Qualitätsstufen-Set erzeugt wird; und

Anwenden eines Schwellenwertverschlüsselungsschemas auf jedes der Segmente unter Verwendung von Schlüsseln aus den Schlüssel-Sets, wobei mindestens ein Schlüssel aus jedem Schlüssel-Set verwendet wird.
Verfahren nach Anspruch 8, wobei das Schwellenwertschema ein (1, n)-Schwellenwertverschlüsselungsschema ist, und wobei n eine Anzahl von Schlüssel-Sets ist. Verfahren nach Anspruch 1, das des Weiteren umfasst:

Erzeugen eines ersten Schlüssel-Sets für die Qualitätsstufen in dem ersten Qualitätsstufen-Set;

Erzeugen eines zweiten Schlüssel-Sets für die Qualitätsstufen in dem zweiten Qualitätsstufen-Set; und

Anwenden eines Schwellenwertverschlüsselungsschemas auf jedes der Segmente unter Verwendung eines ersten Schlüssels aus dem ersten Schlüssel-Set und eines zweiten Schlüssels aus dem zweiten Schlüssel-Set.
Verfahren nach Anspruch 10, wobei das Schwellenwertschema ein (1, 2)-Schwellenwertverschlüsselungsschema ist. Verfahren nach Anspruch 11, das des Weiteren das Verwenden eines der Schlüssel aus dem ersten und zweiten Schlüssel-Set umfasst, um ein Segment zu entschlüsseln. Verfahren nach Anspruch 1, wobei jedes der zwei oder mehr Qualitätsstufen-Sets aus einer Gruppe von Qualitätsstufen-Sets ausgewählt wird, die aus einem Qualitätsstufen-Set der Spitzensignal-Rausch-Verhältnisse (peak-to-noise-ratios – PSNR), einem Bitraten-Qualitätsstufen-Set, einem Frame-Grössen-Qualitätsstufen-Set, einem Frame-Raten-Qualitätsstufen-Set, einem Farbtiefen-Qualitätsstufen-Set, einem Qualitätsstufen-Set der Anzahl von Audio-Kanälen, einem Abtastraten-Qualitätsstufen-Set, einem Frequenzband-Qualitätsstufen-Set und einem Qualitätsstufen-Set der Audio-Abtast-Auflösung besteht. Verfahren nach Anspruch 1, wobei das Verschlüsseln mindestens einiger der Qualitätsstufen das Verwenden eines separaten Geheimnisses für jede verschlüsselte Qualitätsstufe umfasst; wobei das Verfahren umfasst:

Gewähren (506, 610) einer Erlaubnis auf die verschlüsselte Qualitätsstufe durch offen legen des Geheimnisses der verschlüsselten Qualitätsstufe zuzugreifen.
Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Spitzensignal-Rausch-Verhältnisse (peak-to-noise-ratios – PSNR) umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Bitraten umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Frame-Grössen umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Frame-Raten umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Farbtiefen umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets eine Anzahl von Audio-Kanälen umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Abtastraten umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Frequenzbänder umfasst. Verfahren nach Anspruch 14, wobei eines der zwei oder mehr Qualitätsstufen-Sets Audio-Abtast-Auflösungen umfasst. Verfahren nach Anspruch 14, wobei die Erlaubnis eine Lizenz ist, die spezifisch für die verschlüsselte Qualitätsstufe ist. Verfahren nach Anspruch 14, wobei der Multimedia-Inhalt ein MPEG-4-FGS-Bit-Datenstrom ist. Verfahren nach Anspruch 14, wobei der Multimedia-Inhalt eine SMART- oder SMART++-skalierbare-Medien-Anpassung und eine robuste Transportkodierungstechnologie verwendet. Verfahren nach Anspruch 14, das des Weitern das Belassen einer oder mehrerer der Qualitätsstufen zum Zugreifen ohne die Erlaubnis im unverschlüsselten Zustand umfasst. Verfahren nach Anspruch 27, wobei die Basisstufe des MPEG-4-FGS-Bit-Datenstroms unverschlüsselt bleibt und die Erweiterungsstufe des MPEG-4-FGS-Bit-Datenstroms in die Qualitätsstufen geteilt ist. Verfahren nach Anspruch 28, wobei die Qualitätsstufen Gruppen von angrenzenden Bitebenen und Bitratengruppen sind. Verfahren nach Anspruch 29, wobei jede Gruppe von angrenzenden Bitebenen ein Servicelevel des Spitzensignal-Rausch-Verhältnisses (peak-to-noise-ratio – PSNR) ist und jede Bitratengruppe ein Bitraten-Servicelevel ist. Verfahren nach Anspruch 30, das des Weiteren das gleichzeitige Gewähren von Erlaubnissen zum Zugreifen auf PSNR-Servicelevel und Bitraten-Servicelevel umfasst. Verfahren nach Anspruch 14, das des Weiteren das Rate-shaping der verschlüsselten Qualitätsstufen ohne Entschlüsselung umfasst. Verfahren nach Anspruch 14, das des Weiteren das Bereitstellen allen Multimedia-Inhalts zu einem Benutzer und das Bereitstellen eines Schlüssels, um auf die Qualitätsstufen ohne das Herunterladen des Multimedia-Inhalts zuzugreifen, umfasst. Vorrichtung umfassend:

Ein Mittel (302) zum Teilen eines Multimedia-Inhalts (100) in zwei oder mehr Qualitätsstufen-Sets (132), wobei jedes Qualitätsstufen-Set Qualitätsstufen einschließt, die von einer geringeren Qualität (102) zu einer höheren Qualität (112) reichen, und wobei eine erste Anzahl an Qualitätsstufen in einem ersten Qualitätsstufen-Set multipliziert mit einer zweiten Anzahl an Qualitätsstufen in einem zweiten Qualitätsstufen-Set eine Anzahl an Inhaltssegmenten (402432) definiert;

Ein Mittel (304) zum Verschlüsseln mindestens einiger der Qualitätsstufen;

Ein Mittel zum Zuweisen eines separaten Schlüssels zu jedem der Segmente; und

Ein Mittel (308) zum Gewähren des Zugriffs auf einen Schlüssel, um eine Qualitätsstufe zu entschlüsseln.
Vorrichtung nach Anspruch 34, wobei der Multimedia-Inhalt ein MPEG-4-FGS-Bit-Datenstrom ist. Vorrichtung nach Anspruch 34, wobei der Multimedia-Inhalt eine audiovisuelle Darstellung ist, die eine SMART- oder SMART++-skalierbare-Medien-Anpassung und eine robuste Transportkodierungstechnologie verwendet. Vorrichtung nach Anspruch 34, wobei das Mittel zum Teilen ein Servicelevelgenerator ist, um eine Erweiterungsstufe des Multimedia-Inhalts-Bitdatenstrom in Qualitätsstufen nach Bitebene und Bitrate zu teilen, und wobei auf jede Qualitätsstufe gleichzeitig sowohl als ein Servicelevel des Spitzensignal-Rausch-Verhältnisses (peak-to-noise-ratio – PSNR) als auch als ein Bitraten-Servicelevel zugegriffen werden kann. Vorrichtung nach Anspruch 34, wobei das Mittel zum Verschlüsseln eine Verschlüsselungsmaschine ist, die eine universale Blockverkettung mit Summenprimitive verwendet. Vorrichtung nach Anspruch 34, wobei das Mittel zum Verschlüsseln eine Verschlüsselungsmaschine ist, die schwache CBC-Verschlüsselung und einen Summierungsschritt verwendet. Vorrichtung nach Anspruch 34, wobei das Mittel zum Verschlüsseln eine Stromverschlüsselung verwendet. Vorrichtung nach Anspruch 40, wobei die Stromverschlüsselung RC4 ist. Vorrichtung nach Anspruch 34, wobei das Mittel zum Verschlüsseln eine Blockverschlüsselung verwendet. Vorrichtung nach Anspruch 42, wobei die Blockverschlüsselung DES, AES oder RC5 ist. Vorrichtung nach Anspruch 43, wobei die Blockverschlüsselung einen Modus mit elektronischem Codebuch (electronic codebook mode – ECB), einen Blockverkettungsmodus (CBC) oder einen Modus mit Verschiebungs-Codebuch (offset codebook – OCB) verwendet. Vorrichtung nach Anspruch 34, wobei das Mittel zum Verschlüsseln C&S-Verschlüsselung verwendet. Vorrichtung nach Anspruch 45, wobei die C&S-Verschlüsselung das Ersetzen einer RC4-Verschlüsselung mit einer allgemeinen Stromverschlüsselung einschließt. Vorrichtung nach Anspruch 45, wobei die C&S-Verschlüsselung das Ersetzen einer DES-Verschlüsselung des Authentifizierungs-Codes vor der Nachricht mit einer RC5-Verschlüsselung einschließt. Vorrichtung nach Anspruch 45, wobei die C&S-Verschlüsselung das Ersetzen einer DES-Verschlüsselung des Authentifizierungs-Codes vor der Nachricht mit einer AES-Verschlüsselung einschließt. Vorrichtung nach Anspruch 45, wobei die C&S-Verschlüsselung einen reversiblen Nachrichtenauthentifizierungs-Code verwendet, um einen Teil der Daten in dem zu verschlüsselnden Inhalt zu ersetzen. Vorrichtung nach Anspruch 49, wobei der Nachrichtenauthentifizierungs-Code und ein Verschlüsselungsschlüssel zusammen mit einer Stromverschlüsselung verwendet werden, um die Daten zu verschlüsseln. Vorrichtung nach Anspruch 50, wobei ein Stromverschlüsselungsschlüssel sowohl von dem Verschlüsselungsschlüssel als auch einem Hash-Wert der zu verschlüsselnden Daten abhängt. Vorrichtung nach Anspruch 34, wobei das Mittel zum Gewähren des Zugriffs ein Servicelevel-Zugriffsgeber ist, um eine Anfrage nach einem Schlüssel zu empfangen und um den Schlüssel offen zu legen. Vorrichtung nach Anspruch 52, wobei der Servicelevel-Zugriffsgeber in einem Lizenzserver eingesetzt ist. Vorrichtung nach Anspruch 53, wobei die Vorrichtung mit Ausnahme des Servicelevel-Zugriffsgebers in einem Multimedia-Inhalteserver eingesetzt ist. Vorrichtung nach Anspruch 34, die des Weiteren eine bimodale Servicesteuereinheit umfasst, wobei die bimodale Servicesteuereinheit gleichzeitig einen Spitzensignal-Rausch-Verhältnis-Service und einen Bitraten-Service administriert. Vorrichtung nach Anspruch 34, die des Weiteren eine Servicesteuereinheit umfasst, um gleichzeitig eine Kombination von Qualitätsstufen-Sets zu administrieren, wobei jedes Qualitätsstufen-Set aus einer Gruppe von Qualitätsstufen-Sets ausgewählt wird, die aus einem Qualitätsstufen-Set der Spitzensignal-Rausch-Verhältnisse (peak-to-noise-ratios – PSNR), einem Bitraten-Qualitätsstufen-Set, einem Frame-Grössen-Qualitätsstufen-Set, einem Frame-Raten-Qualitätsstufen-Set, einem Farbtiefen-Qualitätsstufen-Set, einem Qualitätsstufen-Set der Anzahl von Audio-Kanälen, einem Abtastraten-Qualitätsstufen-Set, einem Frequenzband-Qualitätsstufen-Set und einem Qualitätsstufen-Set der Audio-Abtast-Auflösung besteht. Ein oder mehrere computer-lesbare Datenträger, die Instruktionen enthalten, die durch einen Computer ausführbar sind, um Vorgänge auszuführen, die umfassen:

Teilen (502, 604, 606) eines Multimedia-Inhalts (100) in zwei oder mehr Qualitätsstufen-Sets (132), wobei jedes Qualitätsstufen-Set Qualitätsstufen einschließt, die von einer geringeren Qualität (102) zu einer höheren Qualität (112) reichen, und wobei eine erste Anzahl an Qualitätsstufen in einem ersten Qualitätsstufen-Set multipliziert mit einer zweiten Anzahl an Qualitätsstufen in einem zweiten Qualitätsstufen-Set eine Anzahl an Inhaltssegmenten (402432) definiert;

Verschlüsseln (504, 608) mindestens einiger der Qualitätsstufen;

Zuweisen eines separaten Schlüssels zu jedem der Segmente; und

Gewähren (506, 610) einer Lizenz, um einen Schlüssel zu verwenden, um eine der Qualitätsstufen zu entschlüsseln.
Ein oder mehrere computer-lesbare Datenträger nach Anspruch 57, wobei das Teilen durch das Gruppieren von benachbarten Bitebenen des Multimedia-Inhalts in Servicelevel für ein Spitzensignal-Rausch-Verhältnis bewerkstelligt wird. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 57, wobei das Teilen durch das Auswählen eines Bitraten-Servicelevels bewerkstelligt wird. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 59, wobei das Teilen basierend auf Frame-Grösse, Frame-Rate, Farbtiefe, Anzahl von Audio-Kanälen, Abtastrate, Frequenzband oder Audio-Abtast-Auflösung bewerkstelligt wird. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 60, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des gleichzeitigen Gewährens von Lizenzen auszuführen, um auf PSNR-Servicelevel und Bitraten-Servicelevel zuzugreifen. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 61, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des gleichzeitigen Gewährens von Lizenzen auszuführen, um auf Servicelevel basierend auf Frame-Grösse, Frame-Rate, Farbtiefe, Anzahl von Audio-Kanälen, Abtastrate, Frequenzband und Audio-Abtast-Auflösung zuzugreifen. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 62, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des gleichzeitigen Administrierens des PSNR-Qualitätsstufeninhalts für die PSNR-Servicelevel und des Bitraten-Qualitätsstufeninhalts für die Bitraten-Servicelevel auszuführen. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 63, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des gleichzeitigen Administrierens des Qualitätsstufeninhalts für die Servicelevel, die der Frame-Grösse, Frame-Rate, Farbtiefe, Anzahl von Audio-Kanälen, Abtastrate, Frequenzband und Audio-Abtast-Auflösung entsprechen, auszuführen. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 57, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des Belassens einer der Qualitätsstufen im unverschlüsselten Zustand zum Zugreifen ohne den Schlüssel auszuführen. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 57, die des Weiteren Instruktionen umfassen, die durch einen Computer ausführbar sind, um den Vorgang des Herunterladens des Unterschieds zwischen einer geringeren Qualitätsstufe und einer höheren Qualitätsstufe auszuführen, wenn ein Benutzer bereits einen Schlüssel hat, um die geringere Qualitätsstufe zu entschlüsseln, und einen Schlüssel empfängt, um die höhere Qualitätsstufe zu entschlüsseln. Ein oder mehrere computer-lesbare Datenträger nach Anspruch 57, wobei das Verschlüsseln das Rate-shaping der Qualitätsstufe ohne das Entschlüsseln der Qualitätsstufe erlaubt.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com