PatentDe  


Dokumentenidentifikation DE69837369T2 06.12.2007
EP-Veröffentlichungsnummer 0000898425
Titel Kryptographieverfahren und -vorrichtung zur Beschränkung des Zugriffs auf den Inhalt von übertragenen Programmen durch erweiterte Kopffelder
Anmelder Lucent Technologies Inc., Murray Hill, N.J., US
Erfinder Wool, Avishai, Livingston, New Jersey 07039, US
Vertreter derzeit kein Vertreter bestellt
DE-Aktenzeichen 69837369
Vertragsstaaten DE, FR, GB
Sprache des Dokument EN
EP-Anmeldetag 04.08.1998
EP-Aktenzeichen 983061961
EP-Offenlegungsdatum 24.02.1999
EP date of grant 21.03.2007
Veröffentlichungstag im Patentblatt 06.12.2007
IPC-Hauptklasse H04N 7/167(2006.01)A, F, I, 20051017, B, H, EP
IPC-Nebenklasse H04N 7/16(2006.01)A, L, I, 20051017, B, H, EP   

Beschreibung[de]
TECHNISCHES GEBIET

Die vorliegende Erfindung betrifft allgemein ein System zum Einschränken des Zugangs zu gesendetem Programminhalt und insbesondere ein System zum Senden eines verschlüsselten Programms zusammen mit dem zum Verschlüsseln des Programms verwendeten Verschlüsselungsschlüssel.

ALLGEMEINER STAND DER TECHNIK

Mit zunehmender Anzahl der Fernsehzuschauern verfügbaren Kanäle zusammen mit der Diversität des auf solchen Kanälen verfügbaren Programminhalts ist es für Dienstanbieter wie zum Beispiel Kabelfernsehbetreiber oder Digital-Satellitendienstbetreiber immer schwieriger geworden, Kanal- und Programmpakete anzubieten, die den größten Teil der Fernsehzuschauerpopulation zufriedenstellt. Die Entwicklung von Paketen, die Kunden angeboten werden können, ist im allgemeinen eine Marketing-Funktion. Im allgemeinen möchte ein Dienstanbieter Pakete verschiedener Größen von einem einzigen Programm bis zu allen Programmen und verschiedene Kombinationen dazwischen anbieten.

Der Dienstanbieter strahlt die Fernsehprogramme in der Regel von einem häufig als „Headend" bezeichneten Sender zu einer großen Kundenpopulation aus. Jeder Kunde wird in der Regel nur für eine Teilmenge des empfangenen Programmaterials, die mit erworbenen Paketen assoziiert ist, berechtigt. Zum Beispiel kann in einer drahtlosen Ausstrahlungsumgebung das gesendete Programmaterial von beliebigen Personen mit einem entsprechenden Empfänger, wie zum Beispiel einer Antenne oder einer Satellitenschüssel, empfangen werden. Um den Zugang zu einem gesendeten Programm auf autorisierte Kunden zu beschränken, die das erforderliche Paket erworben haben, verschlüsselt der Dienstanbieter in der Regel die gesendeten Programme und gibt dem Kunden einen Digitalreceiver (STT – Set-Top Terminal), der einen oder mehrere Entschlüsselungsschlüssel enthält, mit denen man Programme, zu denen ein Kunde berechtigt ist, entschlüsseln kann. Auf diese Weise empfängt der Digitalreceiver verschlüsselte Übertragungen und entschlüsselt die Programme, zu denen der Kunde berechtigt ist, aber nichts Weiteres.

Um ein unerlaubtes Kopieren der in den Digitalreceivern gespeicherten sehr heiklen Informationen, darunter die gespeicherten Entschlüsselungsschlüssel, zu minimieren, enthalten die Digitalreceiver in der Regel einen sicheren Prozeßor und sicheren Speicher in der Regel mit einer Kapazität in der Größenordnung von einigen wenigen Kilobit zum Speichern der Entschlüsselungsschlüssel. Der sichere Speicher ist im allgemeinen nicht flüchtig und manipulationsbeständig. Zusätzlich ist der sichere Speicher vorzugsweise beschreibbar, so daß die Schlüssel gegebenenfalls umprogrammiert werden können, zum Beispiel für jeden Abrechnungszeitraum. Die begrenzte sichere Speicherkapazität herkömmlicher Digitalreceiver begrenzt die Anzahl der Schlüssel, die gespeichert werden können, und begrenzt dadurch die Anzahl der Pakete, die ein Dienstanbieter anbieten kann. Es wird angemerkt, daß die Anzahl der Programme, die in der Regel von einem Dienstanbieter während eines monatlichen Abrechnungszeitraums ausgestrahlt werden, in der Größenordnung von 200.000 liegen kann.

Bei einer Variante enthalten herkömmliche Digitalreceiver einen Bitvektor mit einem Biteintrag entsprechend jedem von dem Dienstanbieter angebotenem Programmpaket. In der Regel entspricht jedes Paket einem Fernsehkanal. Wenn ein bestimmter Kunde zu einem Paket berechtigt ist, wird der entsprechende Biteintrag in den in dem Digitalreceiver gespeicherten Bitvektor auf Eins („1") gesetzt. Danach werden alle vom Dienstanbieter gesendeten Programme mit einem einzigen Schlüssel verschlüsselt. Beim Empfang eines gegebenen Programms greift der Digitalreceiver auf den Bitvektor zu, um zu bestimmen, ob der entsprechende Biteintrag gesetzt wurde. Wenn der Biteintrag gesetzt wurde, benutzt der Digitalreceiver einen einzigen gespeicherten Entschlüsselungsschlüssel zum Entschlüsseln des Programms.

Obwohl theoretisch bei dem Bitvektorverfahren Flexibilität erzielt wird, indem ein Biteintrag für jedes Programm bereitgestellt wird, wäre die Länge des Bitvektors in einem System, das viele Programme in einem einzigen Abrechnungszeitraum sendet, nicht praktikabel. Zusätzlich wird Zugangskontrolle in einem solchen System ausschließlich durch die Einträge in dem Bitvektor bereitgestellt und ist nicht kryptographisch. Wenn also ein Kunde den Bitvektor überschreiben kann und alle Bit auf Eins („1") setzt, erhält der Kunde Zugang zu allen Programmen.

Bei einer weiteren Variante werden Programme in Pakete unterteilt und alle Programme in einem gegebenen Paket werden unter Verwendung desselben Schlüssels verschlüsselt. Wieder entspricht jedes Paket in der Regel einem Fernsehkanal. Der Digitalreceiver speichert einen Entschlüsselungsschlüssel für jedes Paket, zu dem der Kunde berechtigt ist. Wenn ein Programm in mehreren Paketen enthalten sein soll, muß das Programm somit für jedes assoziierte Paket neu gesendet werden, wobei jede Übertragung mit dem dem bestimmten Paket entsprechenden Verschlüsselungsschlüssel verschlüsselt wird. Obwohl die Zugangskontrolle kryptographisch ist, hält das mit dem mehrmaligen Neusenden eines gegebenen Programms assoziierte Overhead Dienstanbieter davon ab, daßelbe Programm in eine Anzahl von Paketen zu legen und begrenzt dadurch die Flexibilität beim Entwurf von Programmpaketen.

Obwohl solche vorherigen Systeme zum Verschlüsseln und Senden von Programminhalt beim Einschränken des Zugangs auf autorisierte Kunden relativ erfolgreich waren, erlauben sie es einem Dienstanbieter, wie zum Beispiel einem Fernsehnetzwerk, nicht, Kunden viele verschiedene Pakete anzubieten, die verschiedene Anzahlen von Programmen enthalten, ohne die begrenzte sichere Speicherkapazität des Digitalreceivers zu überschreiten. Aus den oben beschriebenen Unzulänglichkeiten bei herkömmlichen Systemen zum Senden von verschlüsseltem Programminhalt geht hervor, daß ein System zum Senden eines mit einem einzigartigen Schlüssel verschlüsselten Programms zusammen mit dem zum Verschlüsseln des Programms verwendeten einzigartigen Schlüssel benötigt wird. Weiterhin wir ein System benötigt, das es einem Dienstanbieter gestattet, ein Programm in mehrere Pakete aufzunehmen, ohne daß es erforderlich ist, daß der Dienstanbieter das Programm für jedes Paket neu sendet. Weiterhin wird ein Zugangskontrollsystem benötigt, das die Begrenzungen bezüglich sicheren Speichers des Digitalreceivers überwindet, ohne das mit dem gesendeten Programminhalt assoziierte Overhead signifikant zu vergrößern.

Die europäische Patentanmeldung EP 0 755 154 A2 betrifft die Bereitstellung eines Impulseinkaufs von Kunden über ein Informationsnetz angebotenen Dienstpaketen. Für individuellen impulsartigen Erwerb werden über ein an das Informationsnetz angekoppeltes Benutzerendgerät mehrere Dienste angeboten. Die mehreren Dienste werden zum Kauf als Paket mit Bedingungen angeboten, die günstiger sein können, als wenn Dienste einzeln gekauft werden. Nach dem Kauf eines Pakets wird für den Zugang durch das Benutzerendgerät ein Paketdatensatz eingerichtet. Der Paketdatensatz liefert kryptographisch sicheren Zugang zu in dem Paket bereitgestellten Diensten während eines definierten Zeitraums, für den das Paket gültig ist.

Obwohl solche vorherigen Systeme zum Verschlüsseln und Senden von Programminhalt bei der Einschränkung des Zugangs auf autorisierte Kunden relativ erfolgreich waren, gestatten sie es einem Dienstanbieter, wie zum Beispiel einem Fernsehnetzwerk, nicht, Kunden viele verschiedene Pakete anzubieten, die verschiedene Anzahlen von Programmen enthalten, ohne die begrenzte sichere Speicherkapazität des Digitalreceivers zu übersteigen. Wie aus den oben beschriebenen Unzulänglichkeiten bei herkömmlichen Systemen zum Senden von verschlüsseltem Programminhalt hervorgeht, wird ein System zum Senden eines mit einem einzigartigen Schlüssel verschlüsselten Programms zusammen mit dem zum Verschlüsseln des Programms verwendeten einzigartigen Schlüssel benötigt. Weiterhin wird ein System benötigt, daß es einem Dienstanbieter gestattet, ein Programm in mehrere Pakete aufzunehmen, ohne daß der Dienstanbieter das Programm für jedes Paket neu senden muß. Weiterhin wird ein Zugangskontrollsystem benötigt, das die Begrenzungen sicheren Speichers des Digitalreceivers überwindet, ohne daß mit dem gesendeten Programminhalt assoziierte Overhead signifikant zu vergrößern.

KURZFASSUNG DER ERFINDUNG

Im allgemeinen wird verschlüsselter Programminhalt durch einen Dienstanbieter unter Verwendung eines Senders oder Headend-Servers zu einem oder mehreren Kunden gesendet. Gemäß einem Aspekt der Erfindung wird der zum Verschlüsseln des Programms verwendete Verschlüsselungsschlüssel mit dem Programminhalt zu dem Kunden gesendet. Jeder Kunde besitzt vorzugsweise einen Digitalreceiver oder einen anderen Mechanismus zum Einschränken des Zugangs zu den gesendeten Multimediainformationen, der Entschlüsselungsschlüssel verwendet. Gemäß einem weiteren Aspekt der Erfindung empfängt der Digitalreceiver vorzugsweise periodisch von dem Headend einen oder mehrere Paketschlüssel SJ, die jeweils einem Programmpaket entsprechen, zu dem der Kunde für einen gegebenen Zeitraum berechtigt ist.

Jedes Programm wird vorzugsweise vor der Übertragung durch den Headend-Server unter Verwendung eines Programmschlüssels KP, der für das Programm einzigartig sein kann, verschlüsselt. Zusätzlich zu dem Senden des verschlüsselten Programms sendet der Headend-Server vorzugsweise Kopfteilinformationen zu den Kunden, die für jedes Paket, zu dem das Programm gehört, ein Paketpaar enthalten. Ein Paketpaar enthält vorzugsweise eine Kennung des Pakets sowie den Programmschlüssel KP, verschlüsselt durch den entsprechenden Paketschlüssel SJ. Bei einer Ausführungsform besteht die Ausstrahlung eines gegebenen Programms p somit aus einem Kopfteil, der ein Paketpaar für jedes Paket, zu dem das Programm gehört, enthält, und einem Programmteil, der das mit dem Programmschlüssel KP verschlüsselte Programm enthält. Wenn ein Kunde zu einem bestimmten Programm berechtigt ist, kann der Digitalreceiver auf diese Weise den verschlüsselten Programmschlüssel KP unter Verwendung des entsprechenden gespeicherten Paketschlüssels SJ entschlüsseln und danach mit dem Programmschlüssel KP das verschlüsselte Programm entschlüsseln. Bei verschiedenen Ausführungsformen können die Kopfteilinformationen mit dem Programmteil verschachtelt oder auf einem separaten eigenen Steuerkanal gesendet werden.

Ein vollständigeres Verständnis der vorliegenden Erfindung sowie weitere Merkmale und Vorteile der vorliegenden Erfindung ergeben sich durch Bezugnahme auf die folgende ausführliche Beschreibung und die Zeichnungen.

KURZE BESCHREIBUNG DER ZEICHNUNGEN

1 ist ein Blockschaltbild eines Systems zum Senden von verschlüsseltem Programminhalt gemäß einer Ausführungsform der vorliegenden Erfindung;

2 ist ein Beispiel für das Datenformat eines verschlüsselten Programms zusammen mit einem Paketpaar für jedes Paket, zu dem das Programm gehört, das den zum Verschlüsseln des Programms verwendeten Verschlüsselungsschlüssel enthält;

3 ist ein Blockschaltbild eines beispielhaften Headend-Servers von 1;

4 ist ein Blockschaltbild eines beispielhaften Empfängers von 1;

5 zeigt eine Probe einer Tabelle aus der Programmdatenbank von 4;

6 zeigt eine Probe einer Tabelle aus der Paketdatenbank von 4;

7 zeigt eine Probe einer Tabelle aus der Berechtigungsdatenbank von 5;

8 ist ein Flußdiagramm eines beispielhaften Sendeprozeßes, so wie er durch den Headend-Server von 3 implementiert wird; und

9a und 9b sind kollektiv ein Flußdiagramm eines beispielhaften Decodierungsprozeßes, so wie er durch den Empfänger von 4 implementiert wird.

AUSFÜHRLICHE BESCHREIBUNG

1 zeigt eine beispielhafte Netzwerkumgebung für den Transfer von verschlüsselten Multimedia-Informationen, wie etwa Video, Audio und Daten, von einem Dienstanbieter unter Verwendung eines Senders, wie etwa eines Headend-Servers 300, zu einem oder mehreren Kunden mit Digitalreceivern 400401, wie zum Beispiel dem Digitalreceiver 400, über eines oder mehrere Verteilernetze 110. Im vorliegenden Gebrauch umfaßt Digitalreceiver jeden Mechanismus zum Einschränken des Zugangs zu den gesendeten Multimedia-Informationen unter Verwendung von Entschlüsselungsschlüsseln, einschließlich zum Beispiel einer Computerkonfiguration sowie von Telekommunikationsgeräten. Es ist möglich, daß durch den Digitalreceiver ausgeführte Software durch den Dienstanbieter hinuntergeladen wird. Das Verteilernetz 110 kann ein drahtloses Ausstrahlungsnetz zur Verteilung von Programminhalt sein, wie zum Beispiel ein digitaler Satellitendienst („DSS") oder ein herkömmliches verdrahtetes Netzwerk, wie zum Beispiel das Kabelfernsehnetz („CATV"), das öffentliche Fernsprechwählnetz („PSTN"), ein optisches Netzwerk, ein breitbandiges dienstintegriertes Netzwerk („ISDN") oder das Internet.

Gemäß einem Merkmal der vorliegenden Erfindung empfängt der nachfolgend ausführlicher in Verbindung mit 4 besprochene Digitalreceiver 400 in Abständen einen oder mehrere Paketschlüssel SJ von dem Headend-Server 300, der nachfolgend in Verbindung mit 3 ausführlicher besprochen wird, die jeweils einem Paket entsprechen, zu dem der Kunde für einen gegebenen Zeitraum, wie zum Beispiel einen Abrechnungszeitraum, berechtigt ist. Im vorliegenden Gebrauch wird ein Paket als eine Menge von Programmen vordefiniert, und ein gegebenes Programm kann zu einen oder mehreren Paketen gehören. Ein Programm ist eine beliebige kontinuierliche Multimedia-Übertragung einer bestimmten Länge, wie zum Beispiel eine Fernsehepisode oder ein Spielfilm. Die Paketschlüssel SJ können unter Verwendung eines beliebigen geeigneten sicheren unidirektionalen oder bidirektionalen Protokolls, wie für Durchschnittsfachleute verständlich ist, von dem Headend-Server 300 zu dem Digitalreceiver 400 heruntergeladen werden.

Wie später ausführlicher besprochen wird, wird jedes gesendete Programm durch den Headend-Server 300 unter Verwendung eines Programmschlüssels KP, der für das Programm einzigartig sein kann, verschlüsselt. Eine ausführliche Besprechung geeigneter Verschlüsselungs- und Sicherheitstechniken findet man in B. Schneier, Applied Cryptography (2. Auflage 1997). Zusätzlich zu dem Senden des verschlüsselten Programms sendet der Headend-Server 300 außerdem Kopfteilinformationen zu den Digitalreceivern 400, die für jedes Paket, zu dem das Programm gehört, ein Paketpaar enthalten. Ein Paketpaar enthält eine Kennung des Pakets sowie den Programmschlüssel KP, verschlüsselt durch den entsprechenden Paketschlüssel SJ.

Wie in 2 gezeigt, besteht die Ausstrahlung eines gegebenen Programms p somit aus einem Kopfteil 210, der ein Paketpaar 230 für jedes Paket, zu dem das Programm gehört, enthält, und einem Programmteil 220, der das mit dem Programmschlüssel KP verschlüsselte Programm enthält. Auf diese weise kann, wenn ein Kunde zu einem bestimmten Programm berechtigt ist, der Digitalreceiver 400 den verschlüsselten Programmschlüssel KP unter Verwendung des entsprechenden gespeicherten Paketschlüssels SJ entschlüsseln und danach mit dem Programmschlüssel KP das verschlüsselte Programm entschlüsseln.

3 ist ein Blockschaltbild der Architektur eines beispielhaften Headend-Servers 300. Das Headend kann mit einem Fernsehnetzwerk, einem Kabelbetreiber, einem Betreiber eines digitalen Satellitendienstes oder einem beliebigen verschlüsselten Programminhalt sendendem Dienstanbieter assoziiert sein. Der Headend-Server 300 kann zum Beispiel als ein Server des Typs RS 6000 realisiert werden, der von der IBM Corp. hergestellt und hier so modifiziert wird, daß er die Funktionen und Operationen der vorliegenden Erfindung ausführt. Der Headend-Server 300 enthält vorzugsweise einen Prozeßor 310 und diesbezüglichen Speicher, wie zum Beispiel eine Datenspeichereinrichtung 320. Der Prozeßor 310 kann als ein einziger Prozeßor oder als eine Anzahl parallel arbeitender Prozeßoren realisiert werden. Die Datenspeichereinrichtung 320 und/oder ein Nur-Lesespeicher (ROM) sind betreibbar, um eine oder mehrere Anweisungen zu speichern, die der Prozeßor 310 abrufen, interpretieren und ausführen kann. Der Prozeßor 310 enthält vorzugsweise eine Steuereinheit, eine Arithmetik-Logik-Einheit (ALU) und eine lokale Speichereinrichtung, wie zum Beispiel einen Anweisungs-Cache oder mehrere Register auf bekannte Weise. Die Steuereinheit ist betreibbar, um Anweisungen aus der Datenspeichereinrichtung 320 oder dem ROM abzurufen. Die ALU ist betreibbar, um mehrere Operationen durchzuführen, die notwendig sind, um Anweisungen auszuführen. Die lokale Speichereinrichtung ist betreibbar, um schnelle Speicherung zum Speichern von temporären Ergebnissen und Steuerinformationen bereitzustellen.

Wie nachfolgend ausführlicher in Verbindung mit 5 und 6 besprochen werden wird, enthält die Datenspeichereinrichtung 320 vorzugsweise eine Programmdatenbank 500 und eine Paketdatenbank 600. Die Programmdatenbank 500 speichert vorzugsweise Informationen über jedes Programm p, das durch den Headend-Server 300 zum Beispiel während eines gegebenen Abrechnungszeitraums gesendet wird, einschließlich der Pakete, zu denen das Programm gehört, und des entsprechenden Programmschlüssels KP. Die Paketdatenbank 600 speichert vorzugsweise Informationen über jedes von dem Headend-Server 300 Kunden angebotene Paket, einschließlich des Namens jedes Pakets und des entsprechenden Paketschlüssels SJ.

Wie nachfolgend ausführlicher in Verbindung mit 8 besprochen werden wird, enthält die Datenspeichereinrichtung 320 vorzugsweise zusätzlich einen Sendeprozeß 800. Im allgemeinen identifiziert der Sendeprozeß 800 den Programmschlüssel KP eines gegebenen Programms und die Pakete, zu denen das Programm gehört, um die zusammen mit dem verschlüsselten Programm zu sendenden Paketpaare zu erzeugen. Der Kommunikationsport 330 verbindet den Headend-Server 300 mit dem Verteilernetz 110 und verknüpft dadurch den Headend-Server 300 mit jedem angeschlossenen Empfänger, wie zum Beispiel dem in 1 gezeigten Digitalreceiver 400.

4 ist ein Blockschaltbild der Architektur eines beispielhaften Digitalreceivers 400. Der Digitalreceiver 400 kann zum Beispiel als ein Digitalreceiver (STT) realisiert werden, der mit einem Fernsehgerät, wie zum Beispiel einem im Handel von General Instruments Corp. erhältlichen, assoziiert ist, und hier modifiziert wird, um die Funktionen und Operationen der vorliegenden Erfindung auszuführen. Der Digitalreceiver 400 enthält vorzugsweise einen Prozeßor 410 und diesbezüglichen Speicher, wie zum Beispiel eine Datenspeichereinrichtung 420 sowie einen Kommunikationsport 430, die auf ähnliche Weise wie die oben in Verbindung mit 3 beschriebene Hardware wirken.

Wie nachfolgend ausführlicher in Verbindung mit 7 besprochen werden wird, enthält die Datenspeichereinrichtung 420 vorzugsweise eine Berechtigungsdatenbank 700. Die Berechtigungsdatenbank 700 wird vorzugsweise in einem sicheren Teil der Datenspeichereinrichtung 420 gespeichert. Die Berechtigungsdatenbank 700 speichert vorzugsweise eine Paketkennung und den entsprechenden Paketschlüssel SJ für jedes Paket, zu dem der Kunde berechtigt ist. Wie nachfolgend in Verbindung mit 9a und 9b ausführlicher besprochen werden wird, enthält die Datenspeichereinrichtung 420 vorzugsweise zusätzlich einen Decodierungsprozeß 900. Der Decodierungsprozeß 900 entschlüsselt im allgemeinen Programme zu denen ein Kunde berechtigt ist, durch Verwendung des entsprechenden gespeicherten Paketschlüssels SJ, um den gesendeten Programmschlüssel KP zu entschlüsseln und dann unter Verwendung des Programmschlüssels KP das Programm zu entschlüsseln.

5 zeigt eine beispielhafte Programmdatenbank 500, die vorzugsweise Informationen über jedes Programm p speichert, das durch den Headend-Server 300 zum Beispiel während eines gegebenen Abrechnungszeitraums gesendet wird, einschließlich der Pakete, zu denen das Programm gehört, und des entsprechenden Programmschlüssels KP. Die Programmdatenbank 500 führt mehrere Datensätze, wie zum Beispiel die Datensätze 505520, die jeweils mit einem verschiedenen Programm assoziiert sind. Für jedes durch Programmnamen in dem Feld 525 identifiziertes Programm enthält die Programmdatenbank 500 eine Angabe der entsprechenden Pakete, zu denen das Programm gehört, in dem Feld 530 und den entsprechenden Programmschlüssel KP in dem Feld 535.

6 zeigt eine beispielhafte Paketdatenbank 600, die vorzugsweise Informationen über jedes durch den Headend-Server 300 Kunden angebotene Paket speichert, einschließlich des Namens jedes Pakets und des entsprechenden Paketschlüssels SJ. Die Paketdatenbank 600 führt mehrere Datensätze, wie zum Beispiel die Datensätze 605640, die jeweils mit einem verschiedenen Paket assoziiert sind. Für jedes durch eine Paketkennung in dem Feld 650 identifizierte Paket enthält die Paketdatenbank 600 eine Angabe des entsprechenden Paketnamens in dem Feld 660 und des entsprechenden Paketschlüssels SJ in dem Feld 670.

7 zeigt eine beispielhafte Berechtigungsdatenbank 700, die vorzugsweise eine Paketkennung und den entsprechenden Paketschlüssel SJ für jedes Paket speichert, zu dem der Kunde berechtigt ist. Die Berechtigungsdatenbank 700 führt mehrere Datensätze, wie zum Beispiel die Datensätze 710720, die jeweils mit einem verschiedenen berechtigten Paket assoziiert sind. Für jedes durch eine Paketkennung in dem Feld 725 identifizierte Paket enthält die Berechtigungsdatenbank 700 eine Angabe des entsprechenden Paketschlüssels SJ in dem Feld 735.

Wie oben besprochen, führt der Headend-Server 300 vorzugsweise einen in 8 gezeigten Sendeprozeß 800 aus, um den Programmschlüssel KP eines gegebenen Programms und die Pakete, zu denen das Programm gehört, zu identifizieren, um die zusammen mit dem verschlüsselten Programm zu sendenden Paketpaare zu erzeugen. Es wird angemerkt, daß der Sendeprozeß 800 mit Ausnahme des eigentlichen Übertragungsschritts offline oder in Echtzeit ausgeführt werden kann. Wie in 8 dargestellt, beginnt der Sendeprozeß 800 die die Prinzipien der vorliegenden Erfindung realisierenden Prozeße während des Schritts 810, indem ein zu sendendes Programm identifiziert wird.

Danach ruft der Sendeprozeß 800 im Schritt 820 den dem Programm entsprechenden Programmschlüssel KP und die Liste der Pakete, zu denen das Programm gehört, aus der Programmdatenbank 500 ab. Für jedes Paket, zu dem das Programm gehört, ruft der Sendeprozeß 800 dann die Paketkennung und den entsprechenden Paketschlüssel SJ aus der Paketdatenbank 600 ab, um ein in die gesendeten Kopfteilinformationen aufzunehmendes Paketpaar zu erzeugen.

Das Programm wird dann im Schritt 840 mit dem im Schritt 820 abgerufenen Programmschlüssel KP verschlüsselt. Als letztes sendet der Sendeprozeß 800 in Schritt 850 das verschlüsselte Programm zusammen mit der Menge von Paketpaaren, bevor die Programmsteuerung im Schritt 860 endet. Es wird angemerkt, daß die Kopfteilinformationen, die die Paketpaare enthalten, vorzugsweise im Verlauf der Übertragung der Programminformationen periodisch verschachtelt gesendet werden, so daß ein Kunde während eines Programms Kanäle wechseln und die gesendeten Schlüssel erhalten kann, die zum Entschlüsseln des Programms erforderlich sind. Das durch periodisches Senden der Kopfteilinformationen entstehende Overhead sollte gegen die Verzögerung abgewogen werden, die ein Kunde nach dem Wechsel eines Kanals erfährt, bis die erforderlichen Entschlüsselungsschlüssel erhalten werden. Bei einer alternativen Ausführungsform können die Kopfteilinformationen, die die Paketpaare enthalten, kontinuierlich auf einem separaten Steuerkanal, wie zum Beispiel einem Barker-Kanal, gesendet werden.

Wie bereits erwähnt, führt der Digitalreceiver 400 vorzugsweise einen in 9a und 9b gezeigten Decodierungsprozeß 900 aus, um Programme, zu denen ein Kunde berechtigt ist, zu entschlüsseln, indem der entsprechende gespeicherte Paketschlüssel SJ verwendet wird, um den gesendeten Programmschlüssel KP zu entschlüsseln, und dann der Programmschlüssel KP zum Entschlüsseln des Programms verwendet wird. Wie in 9a dargestellt, beginnt der Decodierungsprozeß 900 die die Prinzipien der vorliegenden Erfindung realisierenden Prozeße im Schritt 910 nach dem Empfang einer Kundenanweisung, einen bestimmten Kanal einzustellen.

Danach stellt sich der Digitalreceiver 400 im Schritt 920 auf den angeforderten Kanal ein, um das entsprechende Signal zu empfangen. Der Decodierungsprozeß 900 ruft dann im Schritt 930 die gesendeten Paketpaare für das auf dem angeforderten Kanal gesendete Programm ab. Im Schritt 940 wird dann geprüft, ob der Kunde zu einem das angeforderte Programm enthaltenden Paket berechtigt ist. Zum Beispiel bestimmt der Decodierungsprozeß 900, ob eine Paketkennung aus einem der im Schritt 930 abgerufenen Paketpaare mit einer in der Berechtigungsdatenbank 700 gespeicherten Paketkennung übereinstimmen.

Wenn im Schritt 940 bestimmt wird, daß der Kunde nicht zu einem das angeforderte Programm enthaltenden Paket berechtigt ist, wird vorzugsweise im Schritt 950 eine Nachricht zu dem Kunden gesendet, die angibt, daß der Kunde nicht berechtigt ist, das gewählte Programm anzuschauen, bevor die Programmsteuerung im Schritt 960 endet. Wenn im Schritt 940 jedoch bestimmt wird, daß der Kunde zu einem das angeforderte Programm enthaltenden Paket berechtigt ist, schreitet die Programmsteuerung zum Schritt 970 (9b) voran.

Wenn der Kunde berechtigt ist, das angeforderte Programm anzuschauen, ruft der Decodierungsprozeß 900 den dem berechtigten Paket entsprechenden Paketschlüssel SJ im Schritt 970 aus der Berechtigungsdatenbank 700 ab und verwendet den abgerufenen Paketschlüssel SJ im Schritt 980 zum Entschlüsseln des in den gesendeten Kopfteilinformationen oder auf einem separaten Steuerkanal enthaltenen gesendeten Programmschlüssels. Als letztes wird im Schritt 990 unter Verwendung des Programmschlüssels KP im Schritt 990 das Programm selbst entschlüsselt, bevor die Programmsteuerung im Schritt 995 endet.

Es wird angemerkt, daß der Decodierungsprozeß 900 darauf warten kann, daß der Kunde einen bestimmten Kanal anfordert, bevor er versucht, die gesendeten Entschlüsselungsschlüssel zu erhalten und wie oben beschrieben zu bestimmen, ob der Kunde zu dem angeforderten Kanal berechtigt ist, oder der Decodierungsprozeß 900 kann als Alternative periodisch alle Kanäle scannen, um die gesendeten Paketpaare zur Speicherung in der Datenspeichereinrichtung 420 zu erhalten und die Berechtigung des Kunden im voraus zu bestimmen.

Es versteht sich, daß die hier gezeigten und beschriebenen Ausführungsformen und Varianten lediglich die Prinzipien der vorliegenden Erfindung veranschaulichen und daß Fachleute verschiedene Modifikationen implementieren können, ohne von dem Schutzumfang der Erfindung abzuweichen.


Anspruch[de]
Verfahren zum Senden eines mit mindestens einem Programmpaket assoziierten Programms zu mehreren Kunden, mit den folgenden Schritten:

jedem der Kunden wird ein Paketschlüssel für jedes von jedem der Kunden erhaltene Paket gegeben;

das Programm wird unter Verwendung eines Programmschlüssels verschlüsselt; und

der Programmschlüssel wird mit dem verschlüsselten Programm zu den Kunden gesendet, wobei der gesendete Programmschlüssel mit dem Paketschlüssel verschlüsselt wird, der für das entsprechende Paket, das das Programm enthält, einzigartig ist.
Verfahren nach Anspruch 1, ferner mit den folgenden Schritten:

Definieren der mehreren Pakete, wobei jedes Paket mindestens eines der Programme enthält; und

wobei der Schritt des Sendens ferner umfaßt, das verschlüsselte Programm zusammen mit Paketinformationen für jedes Paket, zu dem das Programm gehört, zu senden, wobei die Paketinformationen den Programmschlüssel enthalten, der mit dem Paketschlüssel verschlüsselt wird, der für das entsprechende Paket, das das Programm enthält, einzigartig ist.
Verfahren nach Anspruch 2, wobei die Paketinformationen ferner eine Kennung des assoziierten Pakets umfassen. Verfahren nach Anspruch 2, wobei die Paketinformationen mit der Übertragung des verschlüsselten Programms verschachtelt werden. Verfahren nach Anspruch 2, wobei die Paketinformationen auf einem Steuerkanal gesendet werden. Verfahren nach Anspruch 1, ferner mit den folgenden Schritten:

Identifizieren der mit dem Programm assoziierten Pakete; und

wobei der Schritt des Sendens ferner umfaßt, das verschlüsselte Programm zusammen mit Paketinformationen für jedes identifizierte Paket zu senden, wobei die Paketinformationen den Programmschlüssel enthalten, der mit dem Paketschlüssel verschlüsselt wird, der für das entsprechende Paket, das das Programm enthält, einzigartig ist.
Verfahren nach Anspruch 6, wobei die Paketinformationen ferner eine Kennung des assoziierten Pakets umfassen. Verfahren nach Anspruch 6, wobei die Paketinformationen mit der Übertragung des verschlüsselten Programms verschachtelt sind. Verfahren nach Anspruch 6, wobei die Paketinformationen auf einem Steuerkanal gesendet werden. Verfahren nach Anspruch 1, wobei der Programmschlüssel mit einem Paketschlüssel für jedes Paket, mit dem das Programm assoziiert ist, verschlüsselt gesendet wird. Verfahren nach Anspruch 1, ferner mit dem Schritt des Sendens eines oder mehrerer Paketschlüssel zu jedem Kunden, wobei jeder Paketschlüssel einem Programmpaket entspricht, auf das der Kunde Anspruch hat. Verfahren nach Anspruch 1, wobei der Programmschlüssel mit der Übertragung des verschlüsselten Programms verschachtelt wird. Verfahren nach Anspruch 1, wobei der Programmschlüssel auf einem Steuerkanal gesendet wird. Verfahren zum Decodieren eines mit einem Programmpaket assoziierten Programms, mit den folgenden Schritten:

Empfangen des verschlüsselten Programms zusammen mit Paketinformationen, wobei die Paketinformationen einen mit einem Paketschlüssel verschlüsselten Programmschlüssel enthalten, wobei der Programmschlüssel von einem Anbieter des Programms zum Verschlüsseln des Programms benutzt wird;

Abrufen eines dem Paket entsprechenden Paketschlüssels;

Entschlüsseln der Paketinformationen unter Verwendung des abgerufenen Paketschlüssels, der für das entsprechende Paket, das das Programm enthält, einzigartig ist, um den Programmschlüssel zu erhalten; und

Entschlüsseln des verschlüsselten Programms unter Verwendung des Programmschlüssels.
Verfahren nach Anspruch 14, ferner mit dem Schritt des Empfangens eines oder mehrerer Paketschlüssel von dem Anbieter, wobei jeder Paketschlüssel einem Programmpaket entspricht, auf das der Kunde Anspruch hat. Verfahren nach Anspruch 14, wobei die Paketinformationen ferner eine Kennung des assoziierten Pakets umfassen. Verfahren nach Anspruch 14, wobei die Paketinformationen mit der Übertragung des verschlüsselten Programms verschachtelt werden. Verfahren nach Anspruch 14, wobei die Paketinformationen auf einem Steuerkanal gesendet werden. Verfahren nach Anspruch 14, wobei die Paketinformationen auf eine Anforderung hin, das Programm anzuschauen, ausgewertet werden. Verfahren nach Anspruch 14, wobei die Paketinformationen vor einer Anforderung, das Programm anzuschauen, ausgewertet werden. Verfahren nach Anspruch 14, ferner mit dem Schritt des Speicherns des jedem Programmpaket, auf das der Kunde Anspruch hat, entsprechenden Paketschlüssels. Verfahren nach Anspruch 21, wobei die Paketinformationen ferner eine Kennung des assoziierten Pakets umfassen. Verfahren nach Anspruch 21, wobei die Paketinformationen mit der Übertragung des verschlüsselten Programms verschachtelt werden. Verfahren nach Anspruch 21, wobei die Paketinformationen auf einem Steuerkanal gesendet werden. Verfahren nach Anspruch 21, wobei die Paketinformationen ausgewertet werden, wenn der Kunde anfordert, das Programm anzuschauen. Verfahren nach Anspruch 21, wobei die Paketinformationen ausgewertet werden, bevor der Kunde anfordert, das Programm anzuschauen. Herstellungsartikel, umfassend:

ein computerlesbares Medium mit darauf realisierten computerlesbaren Codemitteln, wobei die computerlesbaren Programmcodemittel folgendes umfassen:

einen Schritt zum Identifizieren eines oder mehrerer mit einem zu sendenden Programm assoziierter Pakete, wobei jedes der Pakete einen assoziierten Paketschlüssel aufweist;

einen Schritt zum Verschlüsseln des zu mehreren Kunden zu sendenden Programms unter Verwendung eines Programmschlüssels; und

einen Schritt zum Senden des verschlüsselten Programms zusammen mit Paketinformationen für jedes identifizierte Paket, wobei die Paketinformationen den Programmschlüssel enthalten, der mit dem Paketschlüssel verschlüsselt wird, der für das entsprechende Paket, das das Programm enthält, einzigartig ist.
Herstellungsartikel, umfassend:

ein computerlesbares Medium mit darauf realisierten computerlesbaren Codemitteln, wobei die computerlesbaren Programmcodemittel folgendes umfassen:

einen Schritt zum Empfangen eines verschlüsselten Programms zusammen mit Paketinformationen, wobei die Paketinformationen einen mit einem Paketschlüssel verschlüsselten Programmschlüssel enthalten, wobei der Programmschlüssel zum Verschlüsseln des Programms verwendet wird;

einen Schritt zum Abrufen des Paketschlüssels, der einem Paket entspricht, zu dem das verschlüsselte Programm gehört;

einen Schritt zum Entschlüsseln der Paketinformationen unter Verwendung des abgerufenen Paketschlüssels, der für das entsprechende Paket, das das Programm enthält, einzigartig ist, um den Programmschlüssel zu erhalten; und

einen Schritt zum Entschlüsseln des verschlüsselten Programms unter Verwendung des Programmschlüssels.






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

  Patente PDF

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