DE69718199T2 - Verfahren zum verarbeiten eines verschlüsselten videosignals zur erzeugung eines entschlüsselten programmsignals - Google Patents

Verfahren zum verarbeiten eines verschlüsselten videosignals zur erzeugung eines entschlüsselten programmsignals Download PDF

Info

Publication number
DE69718199T2
DE69718199T2 DE69718199T DE69718199T DE69718199T2 DE 69718199 T2 DE69718199 T2 DE 69718199T2 DE 69718199 T DE69718199 T DE 69718199T DE 69718199 T DE69718199 T DE 69718199T DE 69718199 T2 DE69718199 T2 DE 69718199T2
Authority
DE
Germany
Prior art keywords
data
encrypted
program
broadcast encryption
encryption key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69718199T
Other languages
English (en)
Other versions
DE69718199D1 (de
Inventor
Harold Blatter
Edward Thomas HORLANDER
Elliott Kevin BRIDGEWATER
Scott Michael DEISS
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technicolor USA Inc
Original Assignee
Thomson Multimedia Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Multimedia Inc filed Critical Thomson Multimedia Inc
Publication of DE69718199D1 publication Critical patent/DE69718199D1/de
Application granted granted Critical
Publication of DE69718199T2 publication Critical patent/DE69718199T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4623Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]

Description

  • Die vorliegende Erfindung betrifft das Gebiet der digitalen Signalverarbeitung und insbesondere die Verarbeitung mit einem bedingten Zugriff, die Dekodierung und zum Beispiel die Formatierung von verschlüsselten Paketdaten für die Speicherung durch einen Konsumerempfänger für Rundfunk-, Satelliten-, oder Kabel-Videomaterial.
  • In Anwendungen mit einer Videoverarbeitung und -Speicherung werdendigitale Vi- deodaten im allgemeinen so kodiert, dass sie den Anforderungen einer bekannten Norm entsprechen. Eine derartige, allgemein eingeführte Norm ist die MPEG2 (Mving Picture Expert Group)-Norm für die Bildkodierung, im folgenden mit "MPEG-Norm" bezeichnet. Die MPEG-Norm besteht aus einem System-Kodierabschnitt (ISO/IEC 13818-1, 10. Juni 1994) und einem Video-Kodierabschnitt (ISO/IEC 13818-2, 20. Januar 1995), hier im folgenden mit "MPEG-System-Norm" bzw. "MPEG-Videonorm" bezeichnet. Nach der MPEG-Norm kodierte Videodaten haben die Form eines paketierten Datenstroms, der im allgemeinen den Dateninhalt mehrerer Programmkanäle enthält (z. B. analog zu den Kanälen 1–125 im Kabelfernsehen). Der Dateninhalt von Prämien-Programmkanälen, wie zum Beispiel HBOTM, CinemaxTM und ShowtimeTM, im allgemeinen gegenüber einem unberechtigten Zugriff durch Verfahren geschützt, wie eine Verschlüsselung und eine Verschachtelung. Diese Verfahren können alleine, wiederholt oder in Kombination benutzt werden, um mehrere Schutzstufen zu bilden.
  • In einem Dekoder wird der Zugriff zu den Prämien-Kanälen im allgemeinen durch ein System für einen bedingten Zugriff gesteuert, das die Benutzer-Zahlungsbelastung verwaltet, und steuert das Programm der Entwürfelung und Entschlüsselung aufgrund einer Benutzerberechtigung. Das System für den bedingten Zugriff kann ermitteln, ob der Zugriff auf verschiedene Weise berechtigt ist. Zum Beispiel kann die Berechtigung in dem Dekoder aus den Benutzer-Berechtigungsinformationen ermittelt werden, die auf einer sogenannten Smart Card vorprogrammiert sind. Alternativ kann die Berechtigung an einer entfernten Stelle ermittelt und unter Anwendung von Berechtigungsinformationen durchgeführt werden, die von der entfernten Stelle übertragen werden, wie in einem Kabel-Gebührenfernseh-Service. Die Berechti gungsinformationen enthalten im allgemeinen Codes, die zur Erzeugung der Entwürfelungs- und Entschlüsselungs-Schlüssel dienen, die zur Entwürfelung und die Entschlüsselung des Programms dienen. Jedoch können die Berechtigungsinformationen stattdessen die Schlüssel selbst enthalten.
  • Die Verarbeitung von verschlüsselten und nicht-verschlüsselten Programmdaten und die Verwaltung der zugehörigen Verschlüsselungs- und Verwürfelungs-Codes für die Speicherung, die Berechnung oder Belastung und andere Anwendungen stellen eine Anzahl von Problemen dar. Ein Problem ergibt sich aus der Notwendigkeit, die Verschlüsselungs-Code-Sicherheit aufrechtzuerhalten, wenn ein Programm von einem Verbraucher in einer verschlüsselten oder nicht-verschlüsselten Form für eine Betrachtung zu einer späteren Zeit gespeichert wird. Weitere Probleme liegen in der Schaffung eines Systems, das die Berechnung für die Speicherung und die Wiedergabe eines Programms und eine gegen Kopieren geschützte Verarbeitung der verschlüsselten und nicht-verschlüsselten Programmdaten ermöglicht.
  • Diese Probleme werden durch ein System gemäß der vorliegenden Erfindung behandelt. Im folgenden umfaßt der Ausdruck "Verschlüsselung" Verwürfelungs-Funktionen in dem Ausmaß, wie die Funktionen zur Verhinderung einer unberechtigten Benutzung angewendet werden.
  • In einem Dekodersystem, das verschlüsselte Programmdaten zur Bildung von entschlüsselten Programmdaten für die Ausgabe verarbeitet, ergibt sich ein Kompromiß in der Sicherheit des Verschlüsselungs-Schlüssels, wenn Verschlüsselungs-Schlüssel von dem Dekoder abgeleitet werden. Insbesondere wird ein Kompromiß für die Sicherheit geschaffen, wenn Verschüsselungs-Schlüssel oder Verschlüsselungs-Codes, von denen Schlüssel abgeleitet werden, einen Zugriff durch dritte Parteien erhalten. Das kann zum Beispiel erfolgen, wenn Verschlüsselungs-Schlüssel von einem Dekoder ausgegeben oder auf einem herausnehmbaren Speichermedium gespeichert oder auf andere Weise extern zugänglich werden. Sobald Schlüssel extern zugänglich sind, zum Beispiel auf einem Speichermedium, ist ihre Sicherheit abhängig von der Verfeinerung der Rückwärts-Technik und der Code-brechenden oder "knackenden" Lösungen. Die Erfinder haben erkannt, dass es erwünscht ist, einen Dekoder vorzusehen, der in der Lage ist, die Ausgabe eines Verschlüsselungs-Codes oder -Schlüssels zu verhindern.
  • Gemäß den Prinzipien der vorliegenden Erfindung schließt ein Dekoder einen Verschlüsselungs-Code oder -Schlüssel von verschlüsselten oder nichtverschlüsselten Programmausgangsdaten aus.
  • Die Erfindung ist in den beigefügten Ansprüchen 1 und 4 angegeben. Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen angegeben.
  • Kurzbeschreibung der Zeichnung
  • Zur Zeichnung:
  • 1 zeigt ein Video-Empfängersystem gemäß der Erfindung zur adaptiven Erzeugung eines ein Programm darstellenden Datenstroms in einer durch den Benutzer wählbaren, verschlüsselten oder nicht-verschlüsselten Form.
  • 2 und 3 zeigen ein Verarbeitungs-Flußdiagramm zur Bildung eins ein Programm darstellenden Datenstroms, der für die Speicherung auf einem wählbaren Speichermedium und für die Durchführung der Rechnungsstellung oder Belastung für den Benutzer geeignet ist.
  • 4 zeigt ein Flußdiagramm für einen Vorgang zur Rückgewinnung gewählter, verschlüsselter oder nicht-verschlüsselten Programmnen von einer gewählten Speichereinheit und für die Rechnungsstellung für einen Benutzer aufgrund der Programmrückgewinnung.
  • 1 zeigt ein Videoempfänger-System gemäß der Erfindung zur adaptiven Erzeugung eines ein Programm darstellenden Datenstroms in einer durch den Benutzer wählbaren, verschlüsselten oder nicht-verschlüsselten Form. Wenngleich das dargestellte System im Zusammenhang mit einem MPEG-kompatiblen System für den Empfang von MPEG-kodierten, Rundfunkprogramme darstellenden Transportströmen beschrieben wird, ist dies nur beispielhaft. Die Prinzipien der Erfindung können auf andere Systemtypen angewendet werden, einschließlich nicht-MPEG-kompatible Systeme, mit Anwendung von anderen Typen von kodierten Datenströmen. Außerdem ist dieses, wenngleich das dargestellte System als die Verarbeitung von Rundfunkprogrammen beschrieben wird, nur beispielhaft. Der Ausdruck "Programm" dient zur Bezeichnung jeder Form von paketierten Daten, wie zum Beispiel Telefonnachrichten, Computerprogramme, Internet-Daten oder andere Kommunikationen.
  • Im Überblick: In dem Videoempfängersystem von 1 wird ein mit Videodaten modulierter Träger durch eine Antenne 10 empfangen und durch eine Einheit 15 verarbeitet. Das resultierende digitale Ausgangssignal wird durch den Demodulator 20 demoduliert und durch den Dekoder 30 dekodiert. Der Ausgang von dem Dekoder 30 wird durch das Transportsystem 25 verarbeitet, das auf Befehle von der Fenrbedieneinheit 125 anspricht. Das System 25 liefert komprimierte Datenausgänge zur Speicherung, ferner zur Dekodierung oder zur Kommunikation mit anderen Geräten. Das System 25 enthält ein System mit einem bedingten Zugriff für die Verwaltung für die Benutzerbelastung und für die Steuerung der Programm-Entwürfelung und -Entschlüsselung aufgrund einer Benutzerberechtigung. Ein Benutzer des Videoempfängers wählt das Programm, das er sehen möchte, die Programme, die er speichern möchte, den Typ des benutzten Speichermediums und, ob die Programme in verschlüsselter oder in nicht-verschlüsselter Form durch eine Wahl des Bildschirmmenüs unter Anwendung der Fernbedieneinheit 125 gespeichert werden sollen. Das System 25 liefert außerdem einen Mechanismus, der die Beseitigung von Verschlüsselungs-Codes von einem nicht-verschlüsselten Programmstrom in Echtzeit oder in Nicht-Echtzeit ermöglicht.
  • Video- bzw. Audiodekoder 85 bzw. 80 dekodieren die komprimierten Daten von dem System 25 und liefern Ausgänge für die Wiedergabe. Der Datenanschluss 75 bildet eine Schnittstelle für die Kommunikation der komprimierten Daten von dem System 25 zu anderen Geräten wie zum Beispiel einem Computer oder einem Empfänger für hochauflösendes Fernsehen (HDTV). Die Speichereinheit 90 speichert die komprimierten Daten von dem System 25 auf dem Speichermedium 105. Die Einheit 90 bewirkt in einem Wiedergabemodus außerdem die Rückgewinnung der komprimierten Daten von dem Speichermedium 105 zur Verarbeitung durch das System 25 für die Dekodierung, die Kommunikation mit anderen Geräten oder zur Speicherung auf einem (zur Vereinfachung in der Zeichnung nicht gezeigten) anderen Speichermedium. Das System für den bedingten Zugriff in dem System 25 bewirkt die Entschlüsselung und die Rechnungsstellung oder Belastung für die Programmspeicherung, die Wiedergabe oder eine weitere Verarbeitung einschließlich der Kommunikation zu anderen Geräten. Das System für den bedingten Zugriff des Systems 25 verwendet einen anderen Entschlüsselungs- und Belastungsmechanismus für die Verarbeitung der Programmdaten, die von einer Rundfunkquelle empfangen werden, als der Mechanismus von den Daten, die von einer örtlichen Speicherquelle wiedergegeben werden.
  • In 1 wird ein mit Video- und/oder Audiodaten modulierter und durch die Antenne 10 empfangener Träger in digitale Form konvertiert und durch den Eingangsprozessor 15 verarbeitet. Der Prozessor 15 enthält einen Hochfrequenz (HF)-Tuner und Zwischenfrequenz (ZF)-Mischer und Verstärkerstufen für die Herabsetzung des Eingangsvideosignals auf ein niedrigeres Frequenzband, das für die weitere Verarbeitung geeignet ist. Das resultierende digitale Ausgangssignal wird durch den Demodulator 20 demoduliert und durch den Dekoder 30 dekodiert. Der Ausgang von dem Dekoder 30 wird ferner durch das Transportsystem 25 verarbeitet.
  • Der Multiplexer (MUX) 37 des Service-Detektors 33 wird über den Wähler 35 mit dem Ausgang von dem Dekoder 30 oder dem Ausgang des Dekoders 30 versorgt, der durch die NRSS (National Renewable Standards Committee)-Entwürfelungseinheit 40 versorgt wird. Der Wähler 35 detektiert die Anwesenheit einer einschiebbaren, NRSS-kompatiblen Entwürfelungs-Karte und liefert den Ausgang von der Einheit 40 zu dem MUX 37 nur, wenn die Karte derzeit in die Videoempfängereinheit eingeschoben ist (das NRSS-ablehnbare System für den bedingten Zugriff ist definiert in EIA Draft Document IS-679, Project PN-3639). Anderenfalls liefert der Wähler 35 den Ausgang von dem Dekoder 30 zu dem MUX 37. Die Anwesenheit der einschiebbaren Karte macht es zum Beispiel möglich, dass die Einheit 40 die zusätzlichen Prämien-Programmkanäle entwürfelt und zusätzliche Programm-Serviceleistungen zu einem Betrachter liefert. Es sollte bemerkt werden, dass die NRSS-Einheit 40 und die Smart Card-Einheit 130 (die Smart Card-Einheit 130 wird später beschrieben) an demselben Schnittstellensystem 25 beteiligt sind, so dass entweder nur eine NRSS-Karte oder eine Smart Card zu einer Zeit eingeschoben werden kann. Alternativ können Schnittstellen auch getrennt sein, um einen Parallelbetrieb zu, ermöglichen.
  • Die von dem Wähler 35 zu dem MUX 37 gelieferten Daten haben die Form eines MPEG-verträglichen, paketierten Transportdatenstroms, wie er in dem MPEG-System-Normabschnitt 2.4 definiert ist, und enthält den Dateninhalt von einem oder mehreren Programmkanälen. Die einzelnen Pakete, die besondere Programmkanäle enthalten, werden durch die Paket-Identifzierer (PIDs = Packet Identifiers) identifiziert. Der Transportstrom enthält zusätzliche Daten für die Übertragung und die Dekodierung von für den Transport kodierten Daten. Die zusätzlichen Daten enthalten programmspezifische Informationen (PSI = Program Specific Information) für die Anwendung bei der Indentifizierung der PIDs und die Zusammenstellung der einzelnen Datenpakete zur Rückgewinnung des Inhalts des gesamten Programmkanals, der den paketierten Datenstrom enthält. Ein Benutzer eines Videoempfängers wählt das Programm, das er sehen möchte, die Programme die er speichern möchte, das für die Speicherung zu benutzende Medium, und, ob die Programme in verschlüsselter oder nicht-verschlüsselter Form gespeichert werden sollen, durch Wahl eines Bildschirmmenüs unter Anwendung der Fembedieneinheit 125. Die System-Steuereinheit 115 benutzt die über die Schnittstelle 120 gelieferten Informationen für die Wahl, um das System für die Wahl der Programme für die Speicherung und die Wiedergabe zu konfigurieren und PSI zu erzeugen, die für die gewählte Speichereinheit und das Speichermedium geeignet sind. Die Steuereinheit 115 konfiguriert die Bauteile 45, 47, 50, 55, 65 und 95 durch Setzen der Steuerregisterwerte in diesen Bauteilen über einen Datenbus und durch Wahl von Signalwegen über die MUXE 37 und 110 mit dem Steuersignal C. Die Steuereinheit 115 ist außerdem so programmierbar, dass eine Beseitigung der Verschlüsselungs-Codes von einem nichtverschlüsselten Programm-Datenstrom in Echtzeit oder in Nicht-Echtzeit ermöglicht wird, der gespeichert oder auf andere Weise verarbeitet werden soll. Dieses Merkmal verbessert die Sicherheit der Verschlüsselung durch Verhinderung der Ausgabe von Verschlüsselungs-Schlüsseln über das System 25 hinaus und begrenzt dadurch die Verfügbarkeit für dritte Parteien.
  • Aufgrund des Steuersignals C wählt der Mux 37 entweder den Transportstrom von der Einheit 35 oder in einem Wiedergabemodus einen von dem Speichergerät 90 zurückgewonnenen Datenstrom über die Speicherschnittstelle 95. In einem normalen Nicht-Wiedergabe-Vorgang werden die Datenpakete, die das Programm enthalten, das der Benutzer für die Betrachtung gewählt hat, durch ihre PIDs mittels der Wahleinheit 45 identifiziert. Wenn ein Verschlüsselungsindikator in den Header-Daten der gewählten Programmpakete anzeigt, dass die Pakete verschlüsselt sind, liefert die Einheit 45 die Pakete zu der Entschlüsselungseinheit 50. Anderenfalls liefert die Einheit 45 nicht-verschlüsselte Pakete zu dem Transportdekoder 55. Auf ähnliche Weise werden die Datenpakete mit den Programmen, die der Benutzer für die Speicherung gewählt hat, durch ihre PIDs mittels der Wahleinheit 47 identifiziert. Die Einheit 47 liefert verschlüsselte Pakete zu der Entschlüsselungseinheit 50 oder nichtverschlüsselte Pakete aufgrund der Paket-Header-Verschiüsselungs-Indikatorinformationen zu dem Mux 110.
  • Die Einheiten 45 und 47 verwenden PID-Detektionsfilter, die eine Übereinstimmung der PIDs der durch den MUX 37 gelieferten ankommenden Pakete mit den PID-Werten bewirken, die durch die Steuereinheit 115 in Steuerregistern innerhalb der Einheiten 45 und 47 vorgeladen werden. Die vorgeladenen PIDs dienen in den Einheiten 47 und 45 zur Identifizierung der Datenpakete, die gespeichert werden sollen, und der Datenpakete, die für die Bildung eines Videobildes dekodiert werden sollen. Die vorgeladenen PIDs werden in sogenannten Look-Up-Tabellen in den Einheiten 45 und 47 gespeichert. Die PID-Look-Up-Tabellen werden in Verschlüsselungstabellen in den Einheiten 45 und 47 in einem Speicher dargestellt, die jeder vorgeladenen PID Verschlüsselungs-Schlüssel zuordnen. Die in einem Speicher dargestellten PID- und Verschlüsselungs-Lock-Up-Tabellen ermöglichen, dass die Einheiten 45 und 47 eine Anpassung der verschlüsselten Pakete mit vorgeladenen PID mit zugehörigen Verschlüsselungs-Schlüsseln bewirken, die ihre Entschlüsselung ermöglichen. Nicht-verschlüsselte Pakete haben keine zugehörigen Verschlüsselungs-Schlüssel. Die Einheiten 45 und 47 liefern beide identifizierte Pakete und ihre zugehörigen Verschlüsselungs-Schlüssel zu dem Entschlüsseler 50. Die PID-Look-Up-Tabelle in der Einheit 45 wird ebenfalls zu einer Bestimmungstabelle in einem Speicher dargestellt, der eine Anpassung der vorgeladene PIDs enthaltenen Pakete an entsprechende Bestimmungspuffer-Lagen in dem Paketpuffer 60 bewirkt. Die Verschlüsselungs-Schlüssel und die Adressen der Bestimmungspufferlagen für die durch einen Benutzer gewählten Programme für die Betrachtung oder die Speiche rung werden in Einheiten 45 und 47 zusammen mit den zugehörigen PIDs durch die Steuereinheit 115 vorgeladen.
  • Die Verschlüsselungs-Schlüssel werden durch das mit ISO 7816-3 verträgliche Smart Card-System 130 von den aus dem Eingangsdatenstrom extrahierten Verschlüsselungscodes erzeugt. Die Erzeugung der Verschlüsselungs-Schlüssel ist Gegenstand einer Benutzerberechtigung, ermittelt aus kodierten Informationen in dem Eingangs-Datenstrom und/oder vorgespeichert auf der einschiebbaren Smart Card selbst (das International Standards Organization document ISO 7816-3 von 1989 definiert die Schnittstelle und die Signalstrukturen für ein Smart Card-System). Die Berechtigungsinformationen des Verbrauchers können durch Aktualisierung der kodierten Informationen auf der einschiebbaren Smart Card über Befehle in dem Eingangsdatenstrom durch Aktualisierung geändert werden.
  • Die einschiebbare, mit ISO 7816-3 verträgliche Smart Card enthält in vorteilhafter Weise drei Algorithmus-Funktionen. Zwei der Algorithmus-Funktionen, bezeichnet mit Rundfunk-Verschlüsselungs-Algorithmen, dienen zur Erzeugung von Verschlüsselungs-Schlüsseln aus den Rundfunk-Verschlüsselungs-Codes, die in Nicht-Wiedergabe-Modi des Systems 25 aus dem Eingangsdatenstrom extrahiert werden. Ein Rundfunk-Verschlüsselungs-Algorithmus erzeugt Verschlüsselungs-Schlüssel durch Entschlüsselung von Rundfunk-Verschlüsselungs-Codes innerhalb der Smart Card 130 selbst. Die dritte Algorithmus-Funktion wird in dem System 25 zur Verschlüsselung und Entschlüsselung der abgeleiteten Rundfunk-Verschlüsselungs-Schlüssel in Speicher- und Wiedergabemodi des Systems 25 angewendet. Der Wiedergabe-Algorithmus verschlüsselt und entschlüsselt die Rundfunk-Verschlüsselungs-Schlüssel in der einschiebbaren Smart Card selbst. Jedoch kann in anderen Systemen die Wiedergabe-Algorithmus-Funktion woanders liegen, wie zum Beispiel in einem Dekoder.
  • Die drei in der Smart Card 130 benutzten Verschlüsselungs-Algorithmen können von einem einer Vielfalt von Typen sein, und der Wiedergabe-Algorithmus muß nicht derselbe Typ sein wie der Rundfunk-Algorithmus. Für beispielhafte Zwecke wird angenommen, dass die Rundfunk- und Wiedergabe-Algorithmen Data Encryption Standard (DES) Algorithmus-Funktionen sind, wie sie in den Federal Information Stan dards (FIPS)-Publikations 46, 74 und 81 festgelegt sind, die von den National Technical Information Service, Department of Commerce stammen. Jedoch können diese Algorithmus-Funktionen alternativ von einem anderen Typ sein, wie Funktionen vom Typ Rivest-Shamir-Adlemann (RSA).
  • Jeder der beiden Rundfunk-Verschlüsselungs-Algorithmen, die in der Smart Card enthalten sind, können durch Steuerinformationen in dem Eingangsdatenstrom aktiviert werden. Zwei Rundfunk-Verschlüsselungs-Algorithmen sind innerhalb der Smart Card enthalten, damit ein Serviceanbieter gleichzeitig eine Änderung in dem Rundfunk-Verschlüsselungs-Algorithmus für alle Verbraucher vornehmen kann. Ein Servicveanbieter bewirkt eine Änderung in dem Rundfunk-Verschlüsselungs-Algorithmus durch Ausgabe einer neuen Smart Card mit einem neuen Algorithmus an alle Verbraucher, rechtzeitig vor dem Datum des neuen, anzuwendenen Algorithmus. An dem Tag der Änderung bewirkt der Serviceanbieter gleichzeitig: Erfordert die Smart Card auf, auf den neuen Algorithmus zu wechseln, durch Aktualisierung der Steuerinformationen in dem Rundfunk-Datenstrom, er verschlüsselt Programme mit dem neuen Algorithmus und fügt aktualisierte Verschlüsselungs-Codes in den Rundfunk-Datenstrom ein. Eine Änderung in dem Algorithmus kann durch einen Serviceanbieter auf einer regelmäßigen Grundlage oder so häufig wie gewünscht erfolgen, um die Sicherheit des Verschlüsselungssystems zu schützen und die Code-Brechung oder "Knackung" des Codes sowie den unberechtigten Zugriff zu dem Programm zu verhindern.
  • Die Erfinder haben erkannt, dass die Anwendung eines derartigen Verschlüsselungssystems mit der Änderung von Verschlüsselungs-Schlüsseln ein Problem für die Speicherung der Programme in verschlüsselter Form mit sich bringt. Insbesondere kann ein Programm, das in verschlüsselter Form zusammen mit einem zugehörigen Rundfunk-Verschlüsselungs-Code gespeichert wird, nicht in der Lage sein, entschlüsselt zu werden, wenn die Smart Card geändert worden ist und die Smart Card-Algorithmen aktualisiert worden sind. Das ist der Fall, weil der neue Algorithmus auf der Smart Card nicht kompatibel ist mit einem Verschlüsselungs-Code für eine frühere Version der Smart Card. Demzufolge ist der neue Smart Card-Algorithmus nicht in der Lage, den benötigten Rundfunk-Verschlüsselungs-Schlüssel aus dem gespeicherten Verschlüsselungscode abzuleiten. Das bedeutet, dass das gespeicherte, verschlüsselte Programm nicht entschlüsselt werden kann und unbrauchbar ist, wenn eine Smart Card des Systems sich geändert hat.
  • Zur Lösung dieses Problems wird ein dritter und anderer Algorithmus, der Wiedergabealgorithmus, in vorteilhafter Weise in die Smart Card aufgenommen. Die Funktion des dritten Algorithmus, bezeichnet mit Wiedergabe-Algorithmus, wird in spezifischen Vorgängen und Modi des Systems 25 zur Verschlüsselung von Rundfunk-Verschlüsselungs-Schlüsseln benutzt, um Wiedergabe-Verschlüsselungs-Codes in dem Speicher- und Wiedergabemodus des Systems 25 zu bilden.
  • Die Wiedergabe-Verschlüsselungs-Codes können, wenn sie durch den Wiedergabe-Algorithmus verschlüsselt worden sind, zusammen mit einem verschlüsselten Programminhalt sicher auf einem Speichermedium gespeichert werden. Nach der Wiedergabe des verschlüsselten Programms entschlüsselt die Wiedergabe-Algorithmusfunktion die gespeicherten Verschlüsselungs-Codes zur Ableitung der ursprünglichen Rundfunk-Verschlüsselungs-Schlüssel zur Ermöglichung der Entschlüsselung des verschlüsselten Programminhalts. Die abgeleiteten Rundfunk-Verschlüsselungs-Schlüssel werden durch die Einheit 50 zur Entschlüsselung der verschlüsselten Pakete für den Programminhalt entschlüsselt, wie später beschrieben wird. Der Wiedergabe-Algorithmus wird nicht so häufig geändert wie die beiden Rundfunk-Algorithmen und kann in aufeinanderfolgenden Versionen der Smart Card ungeändert bleiben. Dadurch kann das gespeicherte, verschlüsselte Programm entschlüsselt und trotz Änderungen in den Smart Cards und den Rundfunk-Verschlüsselungs-Algorithmen benutzt werden.
  • Die durch die Einheiten 45 und 47 zu der Einheit 50 gelieferten Pakete werden nach dem Data Encryption Standard (DES) verschlüsselt. Die Entschlüsselungseinheit 50 des Systems 25 von 1 verwendet die DES-Algorithmusfunktion bei der Entschlüsselung dieser verschlüsselten Pakete. In anderen Ausführungen des Systems 25 kann die Einheit 50 alternativ andere Algorithmusfunktionen benutzen, wie die vorangehend erwähnte RSA-Funktion. Die Einheit 50 verwendet bekannte Lösungen für die Entschlüsselung der verschlüsselten Pakete unter Anwendung von entsprechenden Verschlüsselungs-Schlüsseln, die durch die Smart Card 130 über die Einheiten 45 und 47 geliefert werden. Die entschlüsselten Pakete von der Einheit 50 und die nicht-verschlüsselten Pakete von der Einheit 45, die das Programm für die Wiedergabe enthalten, werden zu dem Dekoder 55 geliefert. Die entschlüsselten Pakete von der Einheit 50 und die nicht-verschlüsselten Pakete von der Einheit 47, die das Programm für die Speicherung enthalten, werden zu dem MUX 110 geliefert.
  • Die Einheit 60 enthält Paketpuffer, zu denen die Steuereinheit 115 Zugriff hat. Einer der Puffer dient zum Halten von Daten für die Benutzung durch die Steuereinheit 115, und die drei anderen Puffer dienen zum Halten der Pakete, die für die Benutzung durch die Anwendungseinheiten 75, 80 und 85 bestimmt sind. Ein weiterer Puffer, der später beschriebene Substitutions- oder Austauschpuffer, dient zum Halten von Daten für die Substitution oder den Ersatz der Daten für den Verschlüsselungscode. Der Zugriff zu den in den Puffern innerhalb der Einheit 60 gespeicherten Paketen durch die Steuereinheit 115 und die Anwendungsschnittstelle 70 wird durch die Puffer-Steuereinheit 65 gesteuert. Die Einheit 45 liefert eine Bestimmungsmarkierung zu der Einheit 65 für jedes Paket, das durch die Einheit 45 für die Dekodierung identifiziert wird. Die Markierungen zeigen die Bestimmungslagen der individuellen Einheit 60 für die identifizierten Pakete an und werden durch die Steuereinheit 65 in einer internen Speichertabelle gespeichert. Die Steuereinheit 65 ermittelt eine Reihe von Lese- und Schreibzeigern für die in dem Puffer 60 gespeicherten Pakete auf der Grundlage des First-In-First-Out (FIFO)-Prinzips. Die Schreibzeiger in Verbindung mit den Bestimmungsmarkierungen ermöglichen eine sequentielle Speicherung eines identifizierten Pakets von den Einheiten 45 oder 50 in der nächsten leeren Speicherstelle innerhalb des jeweiligen Bestimmungspuffers in der Einheit 60. Die Lesezeiger ermöglichen ein sequentielles Lesen von Paketen von den Bestimmungspuffern der Einheit 60 durch die Steuereinheit 115 und die Anwendungsschnittstelle 70.
  • Die nicht-verschlüsselten und die verschlüsselten Pakete, die durch die Einheiten 45 und 50 zu dem Dekoder 55 geliefert werden, enthalten einen sogenannten Transport-Header, wie er durch den Abschnitt 2.4.3.2 der MPEG-Systemnorm festgelegt ist. Der Dekoder 55 ermittelt aus dem Transport-Header, ob die nicht-verschlüsselten und die entschlüsselten Pakete ein Adaptionsfeld (nach der MPEG-Sytemnorm) enthalten. Das Adaptionsfeld enthält Timing-Informationen, einschließlich zum Beispiel Programm-Taktreferenzen (PCRs = Program Clock References), die die Synchronisierung und die Dekodierung von Inhaltspaketen ermöglichen. Nach der Detektion eines Pakets mit Timing-Informationen, d. h. eines Pakets mit einem Adaptionsfeld, signalisiert der Dekoder 55 zu der Steuereinheit 115, dass das Paket empfangen worden ist, durch Setzen einer Systemunterbrechung in einem Unterbrechungs-Mechanismus. Zusätzlich ändert der Dekoder 55 die Bestimmungsmarkierung des Timing-Pakets in der Einheit 65 und liefert das Paket zu der Einheit 60. Durch Änderung der Bestimmungsmarkierung der Einheit 65 leitet die Einheit 65 das durch den Dekoder 55 gelieferte Paket mit den Timing-Informationen zu dem Pufferplatz in der Einheit 60 um, die zum Halten der Daten für die Benutzung durch die Steuereinheit 115 vorgesehen ist, anstatt zu einem Platz in dem Anwendungspuffer.
  • Nach dem Empfang der durch den Dekoder 55 gesetzten Systemunterbrechung liest die Steuereinheit 115 die Timing-Informationen und den PCR-Wert und speichert sie in einem internen Speicher. Die PCR-Werte der darauftolgenden Timing-Informations-Pakete werden durch die Steuereinheit 115 zur Einstellung des Mastertakts (27 MHz) des Systems 25 benutzt. Die Differenz zwischen den auf PCR basierenden und den auf dem Mastertakt basierenden Schätzungen des Zeitintervalls zwischen dem Empfang von aufeinanderfolgenden Timing-Paketen, die durch die Steuereinheit 115 erzeugt werden, dient zur Einstellung des Mastertakts des Systems 25 (zur Vereinfachung der Zeichnung nicht dargestellt). Die Steuereinheit 115 erreicht dies durch Zuführung der abgeleiteten Differenz in der Zeitschätzung zur Einstellung der Eingangssteuerspannung eines spannungsgesteuerten Oszillators, der zum Erzeugen des Mastertakts dient. Die Steuereinheit 115 setzt die Systemunterbrechung nach der Speicherung der Timing-Informationen in dem internen Speicher zurück.
  • Von den Einheiten 45 und 50 über den Dekoder 55 empfangene Pakete, die den Programminhalt enthalten, einschließlich Audio-, Video- Untertitel und andere Informationen, werden durch die Einheit 65 von dem Dekoder 55 zu dem Puffern der Einheit für eine bestimmte Anwendung in dem Paketpuffer 60 zugeführt. Die Anwendungs-Steuereinheit 70 gewinnt sequentiell die Audio-, Video-, Untertitel- und andere Daten aus den bezeichneten Puffern in dem Puffer 60 zurück und liefert die Daten zu den entsprechenden Anwendungsgeräten 75, 80 und 85 zurück. Die Anwendungsgeräte enthalten Audio- und Videodekoder 80 und 85 und einen Hochgeschwindigkeits-Datenanschluß 75. Der Datenanschluß 75 kann dazu dienen, Hochgeschwindigkeits- Daten wie Computerprogramme zu liefern, zum Beispiel zu einem Computer. Alternativ kann der Anschluß 75 zum Beispiel dazu dienen, Daten zu einem HDTV-Dekoder auszugeben.
  • Pakete, die PSI-Informationen enthalten, werden als für den Puffer der Steuereinheit 115 in der Einheit 60 bestimmt erkannt. Die PSI-Pakete werden über die Einheiten 45, 50 und 55 in einer ähnlichen Weise zu diesem Puffer geführt wie die für den Programminhalt enthaltende Pakete beschrieben wurden. Die Steuereinheit 115 liest die PSI von der Einheit 60 und speichert sie in dem internen Speicher.
  • Die Steuereinheit 115 verwendet den Vorgang der 2 und 3 zur Erzeugung eines Programm-Datenstroms, der für die Speicherung auf einem Medium 105 und für die Belastung eines Benutzers für die Speicherung geeignet ist. Die Steuereinheit 115 verwendet außerdem den Vorgang der 2 und 3 sowohl zur Erzeugung eines Wiedergabe-Verschlüsselungs-Codes für die Speicherung auf dem Medium 105 als auch zur Beseitigung der ursprünglichen Rundfunk-Verschlüsselungs-Codes von dem zu speichernden Programm-Datenstrom. Die Paketidentifikation und der Weiterleitungsvorgang der 2 und 3 werden durch die Steuereinheit 115, die Steuereinheit 65 und die PID, Bestimmungs- und Verschlüsselungs-Schlüssel-Look-up-Tabellen der Einheiten 45 und 47 in der vorangehend beschriebenen Weise gesteuert.
  • Die CPSI (Condensed Program Specific Information) enthalten Informationen für das bestimmte, zu speichernde Programm, während die PSI Informationen für alle Programme in dem in das System 25 eingegebenen Datenstrom enthalten. Demzufolge erfordern die CPSI eine geringere Speicherkapazität und bringen weniger Überschuß als die PSI. Zusätzlich können bei einer festen Überschußbeanspruchung die CPSI in einem Datenstrom häufiger wiederholt werden als die PSI und können somit abgeleitet und dafür angewendet werden, die Rückgewinnungs-Latenz des Programminhalts zu verringern.
  • Die PSI, wie sie in dem Abschnitt 2.4.4 der MPEG-System-Norm definiert sind, enthalten vier nicht-verschlüsselte Elemente oder Tabellen von Informationen. Diese sind die Program Association Table (PAT), die Program Map Table (PMT), die Net work Information Table (NIT) und die Conditional Access Table (CAT). Jede Tabelle besteht aus Datenpaketen, die durch bestimmte PID erkannt werden. Die PMT bestimmt die PID-Label, die die einzelnen paketierten Datenströme identifizieren, die ein Programm bilden. Diese einzelnen Ströme werden in der MPEG-Norm als elementare Ströme bezeichnet. Elementare Ströme enthalten Datenströme, wie Video, Audio oder Datenströme für verschiedene Sprachen und Untertitel. Die PAT bewirkt eine Zuordnung einer Programmnummer zu PIDs, die die Identifikation und die Zusammenstellung der die PMT enthaltenden Pakete ermöglicht. Die NIT ist fakultativ und kann strukturiert und benutzt werden, um körperliche Netzparameter zu bilden, wie zum Beispiel Satelliten-Übertragungskanalfrequenzen und Transponderkanäle. Die PAT enthält die Informationen für den bedingten Zugriff, wie Verschlüsselungs-Codes, die den Zugriff zu Programmen steuern, die von der Benutzerberechtigung abhängig sind.
  • Im Schritt 205 von 2 bewirkt die Steuereinheit 115 (1) einen Initialisierungsvorgang beim Einschalten es Systems, folgend auf den Start beim Schritt 200. Im Schritt 205 lädt die Steuereinheit 115 die PID-Detektionsfilter der Einheit 45 ( 1) mit den MPEG-definierten PID-Werten für die PAT- und die CAT-Tabellen (PIDs Hex-Wert 0000 bzw. Hex-Wert 0001). Zusätzlich bewirkt die Steuereinheit 115 eine Vorzuordnung der PAT- und CAT-Pakete zu dem Puffer der Steuereinheit in der Einheit 60 durch Aktualisierung der Bestimmungstabelle der Einheit 45. Die durch die Einheit 45 detektierten PAT- und CAT-Pakete werden über den Dekoder 55 unter Steuerung durch die Einheit 65 dem Puffer der Steuereinheit in der Einheit 60 zugeführt. Im Schritt 205 signalisiert die Steuereinheit 65 der Steuereinheit 115 über eine PSI-Unterbrechung, daß PSI-Pakete in der Einheit 60 vorhanden sind. Nach dem Empfang der PSI-Unterbrechung nimmt die Steuereinheit 15 wiederholt einen Zugriff zu den Paketen, die in ihrem Puffer der Einheit 16 gespeichert sind, und speichert die vollständigen CAT- und PAT-Daten in dem internen Speicher. Die Steuereinheit 115 wiederholt diesen Vorgang, um vollständige PMT- und NIT-Daten in dem internen Speicher zu speichern, nach der Ermittlung der PIDs, die die PMT- und NIT-Pakete von der PAT identifizieren. Die Steuereinheit 115 nimmt ständig Zugriff zu dem Puffer 60 und erfasst PSI-Pakete in dem internen Speicher nach dem Empfang der PSI-Unterbrechungen, während der Empfänger eingeschaltet wird. Als Ergebnis erfasst die Steuereinheit 115 in ihrem internen Speicher die PAT-, PMT-, NIT- und CAT-Daten, die die vollen PSI des in das System 25 eingegebenen Transportdatenstroms enthalten.
  • Im Schritt 210 von 2 werden die vom Benutzer erzeugten Daten (SP, SM, SE), die die Programme identifizieren, die ein Benutzer speichern möchte, sowie die Programme die in verschlüsselter Form gespeichert werden sollen, und das für die Speicherung zu benutzende Medium und Gerät in die Steuereinheit 115 eingegeben ( 1). Ein Benutzer kann aus verschiedenen Gründen eine verschlüsselte Speicherung, bevorzugt gegenüber einer nicht-verschlüsselten Speicherung, wählen. Zum Beispiel kann ein Serviceanbieter es billiger machen, in verschlüsselter Form zu speichern, als eine Möglichkeit zur Begrenzung der Anzahl an darauffolgenden Kopien, die ein Benutzer machen kann. Ein Serviceanbieter kann das erreichen durch Steuerung des Zugriffs zu dem verschlüsselten Programm über in einer Smart Card vorgespeicherte Berechtigungsinformationen. Die in die Steuereinheit 115 eingegebenen Auswahldaten werden durch einen Benutzer durch eine Wahl in einem Menü auf dem Bildschirm mit einer Fernbedieneinheit 125 über die Schnittstelle 120 eingegeben. Im Schritt 215, als Antwort auf die Eingangswahldaten (SP) leitet die Steuereinheit 115 die PIDs für die gewählten Programme für die Speicherung aus den gespeicherten PSI ab. Die Detektionsfilter der Einheit 47 werden mit den PIDs der durch die Steuereinheit 115 zu speichernden Programme geladen. Das ermöglicht, dass die Einheit 47 die Pakete identifiziert, die die für die Speicherung gewählten Programme enthalten. Im Schritt 215 bewirkt die Steuereinheit 115 außerdem eine Vorladung des Substitutionspuffers der Einheit 60 mit Nulldaten. Die Nulldaten sollen für Rundfunk-Verschlüsselungs-Codes substituiert werden, die in Programmen auftreten, die in verschlüsselter Form gesendet werden und die für die Speicherung gewählt wurden.
  • Im Schritt 215 von 2 liefert die Einheit 47 (1) nicht-verschlüsselte Pakete zu dem MUX 110 und liefert verschlüsselte Pakete (identifiziert durch einen Verschlüsselungs-Indikator in den Paket-Header-Daten) zusammen mit Rundfunk-Verschlüsselungs-Schlüsseln zu der Entschlüsselungseinheit 50. Die Rundfunk-Verschlüsselungs-Schlüssel werden im Schritt 215 von 2 durch die Steuereinheit 115 zu der Einheit 47 geliefert, nach ihrer Erzeugung durch die Smart Card 130 (1) durch Entschlüsselung der Verschlüsselungs-Codes, die von der PAT für die gewählten Programme (SP) in der vorangehend beschriebenen Weise gewonnen werden. Wenn jedoch die Auswahldaten SE eine verschlüsselte Speicherung erfordern, leitet die Einheit 47 die zu speichernden, verschlüsselten Pakete zu dem MUX 110. Demzufolge werden im Schritt 215 von 2 die Pakete, die die zu speichernden Programme (SP) enthalten, aufgrund der Auswahldaten SE zu dem MUX 110 geliefert, entweder in verschlüsselter oder in entschlüsselter Form,.
  • In den Schritten 217227 formt die Steuereinheit 115 verdichtete programmspezifische Informationen (CPSI) für die für die Speicherung gewählten Programme (SP) aus den vollständigen, programmspezifischen Informationen (PSI), die von dem in das System 25 eingegebenen Transportdatenstrom erfaßt werden. Wenn die SE-Daten eine verschlüsselte Speicherung erfordern, führt die Steuereinheit 115 den Schritt 227 durch, der auf den Entscheidungsschritt 217 folgt. Im Schritt 227 führt die Steuereinheit 115 die Wiedergabe-Algorithmusfunktion in dem Smart Card-System 130 aus, um den vorher erzeugten Rundfunk-Verschlüsselungs-Schlüssel zu verschlüsseln (durch Entschlüsselung eines Rundfunk-Verschlüsselungs-Codes) im Schritt 215, um einen Wiedergabe-Verschlüsselungs-Code für das zu speichernde Programm zu bilden. Die CPSI sind so ausgebildet, dass sie den Wiedergabe-Verschlüsselungs-Code enthalten, jedoch den Rundfunk-Verschlüsselungs-Code ausschließen, der ursprünglich in den PSI des in das System 25 eingegebenen Transportdatenstroms vorhanden war. Demzufolge schließt der Datenstrom, der für das Programm für die Speicherung gebildet wird, seinen zugehörigen Rundfunk-Verschlüsselungs-Code aus. Das verhindert den Kompromiß in der Sicherheit des Verschlüsselungs-Schlüssels, der auftritt, wenn Verschlüsselungs-Schlüssel auf einem abnehmbaren Speichermedium gespeichert werden, das für dritte Parteien zugänglich ist. Sobald Schlüssel auf einem Speichermedium zugänglich sind, ist ihre Sicherheit abhängig von der Verfeinerung des verfügbaren "reverse engeneering" und den Lösungen des Code-Brechens oder -Knackens. In diesem System sind mehrere Sicherheitsstufen vorgesehen, indem nicht die Rundfunk-Verschlüsselungs-Codes gespeichert werden, von denen die Rundfunk-Verschlüsselungs-Schlüssel abgeleitet werden, und die Rundfunk-Verschlüsselungs-Schlüssel in verschlüsselter Form gespeichert werden. Außerdem würden, selbst wenn die Schlüssel für das gespeicherte Programm abgeleitet würden, sie keinen Zugriff bilden zu den laufenden Rundfunkprogrammen, für die der Rundfunk-Verschlüsselungs-Algorithmus regelmäßig geändert wird.
  • Wenn die SE-Eingangsdaten keine verschlüsselte Speicherung benötigen, führt die Steuereinheit 115 den Schritt 225 durch, der auf den Entscheidungsschritt 217 folgt. Im Schritt 225 bildet die Steuereinheit 115 die CPSI des Programms, das für die Speicherung von den PSI des in das System 25 eingegebenen Transportstroms bestimmt ist und schließt Verschlüsselungs-Codes von den CPSI aus.
  • Das beschriebene Verschlüsselungssystem ist nur beispielhaft. Alternative Verschlüsselungsmechanismen können die Rundfunk- und Wiedergabe-Verschlüsselungscodes in andere Datenstrom-Informationsbereiche übertragen, als in die PSI. Andere Verschlüsselungsmechanismen können auch die Erzeugung und die Einfügung der Verschlüsselungscodes bei unterschiedlichen Intervallen erfordern, als es bei der Erzeugung der PSI erfolgt. Wenn keine Rundfunk-Verschlüsselungscodes in den PSI übertragen werden, kann eine Substitution anderer Daten für diese Codes notwendig sein, um sie von dem für das zu speichernde Programm gebildeten Datenstrom auszuschließen. Eine Substitution von Nulldaten für die Rundfunk-Verschlüsselungscodes bei anderen Intervallen als denen, bei denen die CPSI auftreten, wird später beschrieben. Insbesondere wird die Substitution von Rundfunk-Verschlüsselungs-Codes in Echtzeit, d. h. bei der Paketfrequenz, wenn zum Beispiel die Codes in Paket-Headern übertragen werden, in Verbindung mit den Schritten 237249 beschrieben.
  • Im Schritt 230 formt die Steuereinheit 115 die CPSI-Daten in Abschnitte gemäß der MPEG-Syntax (Paragraphen 2.4.4.3–2.4.4.11 der MPEG-System-Norm). Die Steuereinheit 115 fügt außerdem im Schritt 230 Header-Daten den CPSI-Datenabschnitten hinzu, um die CPSI-Datenabschnitte für die Einfügung in den zu speichernden Datenstrom zu formatieren und zu paketieren. Die Steuereinheit 115 bildet die Header gemäß den Abschnitten 2.4.3.2 und 2.4.3.3 der MPEG-System-Norm aus den PSI-Header-Daten, die in dem internen Speicher der Steuereinheit 115 gespeichert sind. Jedoch haben die CPSI-Abschnittsdaten unterschiedlicher Länge relativ zu den entsprechenden PSI-Abschnittsdaten. Daher werden neue Header-Parameter mit einem Indikator für den "Kontinuitätszählwert" und "Nutzda ten-Einheit-Startindikator" durch die Steuereinheit 115 gebildet und in die jeweiligen Indikatorfelder in den Header-Daten eingefügt. Der durch die Steuereinheit 115 gebildete Indikator für den neuen Kontinuitätszählwert zeigt zum Beispiel die Anzahl der Pakete je PID für die CPSI-Elemente anstatt der unterschiedlichen Zahl von Paketen je PID der entsprechenden PSI-Elemente. Der neue Startindikator für die Nutzdateneinheit, der durch die Steuereinheit 115 gebildet wird, identifiziert zum Beispiel das erste Byte des CPSI-Abschnitts anstatt des ersten Byte des entsprechenden PSI-Abschnitts.
  • Nach dem Schritt 230 geht das Flußdiagramm von 2 mit dem Schritt 237 von 3 weiter. Die Steuereinheit 115 ermittelt im Schritt 237, ob Rundfunk-Verschlüsselungs-Codes in anderen Datenstromfeldern als den CPSI übertragen werden. Insbesondere ermittelt die Steuereinheit 115, ob Rundfunk-Verschlüsselungs-Codes in MPEG-kompatiblen Adapationsfeldern der Paket-Header (je MPEG-System-Standard-Syntaxabschnitt 2.4.3.4) übertragen werden. Wenn das der Fall ist, führt die Steuereinheit 115 den Schritt 249 durch, um einen zusammengesetzten Datenstrom zu bilden, der CPSI-Pakete und Programminhaltspakete mit Nulldaten enthält, die für die Rundfunk-Verschlüsselungs-Codes in den Paket-Headern substituiert werden. Die Substitution des Verschlüsselungscodes erfolgt auf einer Basis Paket für Paket bei der Paketfrequenz.
  • Im Schritt 249 werden die während des Schritts 215 (2) in den Substitutionspuffer in der Einheit 60 vorgeladenen Substitutions-Paketdaten unter Steuerung durch die Steuereinheit 115 von der Einheit 60 zu dem MUX 110 (1) geliefert. Zusätzlich werden im Schritt 249 die CPSI in der Form von paketierten MPEGkompatiblen im Schritt 230 gebildeten Abschnittsdaten durch die Steuereinheit 115 zu dem MUX 110 (1) geliefert. Programminhalts-Paket-Datenströme von der Einheit 47 oder der Einheit 50 werden, wie vorangehend in Verbindung mit dem Schritt 215 beschrieben wurde, ebenfalls zu dem MUX 110 geliefert. Im Schritt 249 multiplext die Steuereinheit 115 zwischen dem Programminhalts-Datenstrom, dem CPSI-Datenstrom und dem Substitutions-Dateneingang zu dem MUX 110 unter Anwendung des Signals C für die Wegauswahl zur Bildung eines zusammengesetzten Datenstroms, der durch den MUX 110 zu der Speicherschnittstelle 95 ausgegeben wird. Der zusammengesetzte Datenstrom enthält Programminhalts-Pakete und CPSI-Pakete mit Nulldaten, die für die Rundfunk-Verschlüsselungs-Codes in den Paket-Headern substituiert werden.
  • Die Steuereinheit 115 synchronisiert die Einfügung der CPSI-Pakete und der Nulldaten in den zu speichernden Programm-Datenstrom aufgrund eines PSI-Unterbrechungssignals und eines Substitutions-Timing-Signals von der Steuereinheit 65 (1). Die PSI-Unterbrechung zeigt die Anwesenheit von PSI-Paketen in dem Puffer 60 an, wie in Verbindung mit dem Schritt 205 beschrieben wurde. Das Substitutions-Timing-Signal synchronisiert die Einfügung von Nulldaten mit dem Auftreten der Rundfunk-Verschlüsselungs-Codes in Paket-Headern. Auf diese Weise werden die paketierten Abschnitte der CPSI in PSI-Plätzen eingefügt, um die entsprechenden Abschnitte der PSI zu ersetzen, und die Rundfunk-Verschlüsselungs-Codes werden beseitigt. Die nicht-verschlüsselten CPSI-Daten sind entweder in die verschlüsselten oder die nicht-verschlüsselten Programminhalts-Datenströme einfügbar, die in den MUX 110 eingegeben werden, um entweder verschlüsselte oder nichtverschlüsselte Programme für die Speicherung zu bilden.
  • Es sollte bemerkt werden, dass die im Schritt 249 durchgeführte Substitution des Rundfunk-Verschlüsselungs-Codes auch auf Codes angewendet werden kann, die in anderen Datenstromfeldern als den MPEG-Paket-Header-Adaptionsfeldern übertragen werden. Ferner können die Verschlüsselungscodes bei anderen Intervallen ersetzt werden als bei denen, bei denen die Adaptationsfelder auftreten. Zum Beispiel können Nulldaten für Verschlüsselungscodes substituiert werden, die in einer Vielfalt von MPEG- und Nicht-MPEG kompatiblen Datenstromplätzen auftreten, einschließlich: zusätzliche Pakete in dem geschützten Digital Satellite System (DSSTM), Packetized Elementary Stream (PES)-Feldern (je MPEG-System-Norm-Syntaxbereichen 2.5.3.7–2.5.4.2), Digital Storage Media Control Commands (DSMCC)-Feldern (je MPEG-System-Norm-Syntax Appendix A), und Nicht-MPEG-Pakete, die gemäß anderen Datenübertragungsprotokollen als dem genormten CEBus Steuerprotokoll formatiert werden (Home Automation Standard (CEBus), EIA/IS-60, Dezember 1989).
  • Wenn die Verschlüsselungs-Codes in Paketen übertragen werden, in denen die Codes selbst die einzigen Datenwörter sind, kann der die Pakete tragende Code voll-ständig in dem Ausgangs-Datenstrom entfallen. Das kann dadurch erfolgen, in dem die Pakete durch die PID-Wahleinheiten 45 und 47 (1) verworfen oder nicht verwertet werden oder indem die Pakete während des im Schritt 249 durchgeführten Multiplexing-Vorgangs weggelassen werden. Jedoch müssen die Datenrate und die auf die Datenstruktur ansprechenden Parameter innerhalb der Ausgangs-Datenstrom-Syntax aktualisiert werden, um die Datenraten-Änderung zu reflektieren, die als ein Ergebnis eines derartigen Weglassens von Paketdaten auftritt.
  • Im Schritt 249 empfängt die Speicherschnittstelle 95 (1) die in der Form des paketierten Datenstroms zu speichernden Programme (im folgenden mit CPSI-Strom bezeichnet), die die CPSI und die Nulldaten von dem MUX 110 enthalten. Im Schritt 254 (3), der auf den Schritt 249 folgt, belastet das System für den bedingten Zugriff innerhalb des Systems 25 den Benutzer mit der Programmspeicherung (oder Kommunikation zu anderen Geräten). Der Benutzer wird durch Speicherung von Berechnungsinformationen innerhalb der einschiebbaren Smart Card selbst belastet. Die Speicherung der Belastungsinformationen wird durch die Anwendung des Wiedergabe-Algorithmus initiiert, jedoch muß die Belastung nicht gleichzeitig stattfinden mit der Anwendung des Algorithmus. Die Belastungsinformationen zeigen an, dass der Benutzer ein verschlüsseltes Rundfunkprogramm gespeichert hat. Zu diesen Belastungsinformationen erfolgt später ein Zugriff über die Telefonleitung durch den Serviceanbieter und dient dazu, den Benutzer über einen konventionellen Belastungsvorgang zu belasten. Andere Belastungs-Mechanismen sind ebenfalls möglich. Zum Beispiel können Kredite von einer vorgespeicherten Summe innerhalb einer Smart Card abgebucht werden. Ferner kann sich die Smart Card den Belastungsbetrag auf der Basis des geforderten Speichertyps ändern, zum Beispiel kann es eine Gebühr für die Speicherung geben, die nur eine einzige Kopie oder Wiedergabe des gespeicherten Programms ermöglicht, und eine andere Gebühr für die Speicherung, die ein unbegrenztes Kopieren oder Wiedergabe des Programms ermöglicht. Der benötigte Speichertyp wird in bestimmten Kopierschutzdaten in dem CPSI-Strom selbst oder in Paketdaten extern zu dem CPSI-Strom kodiert. Der Vorgang der 2-3, der von der Steuereinheit 115 zur Erzeugung eines Programm-Datenstroms (des CPSI-Stroms) benutzt wird, der für die Speicherung auf dem Medium 105 und zur Belastung eines Benutzers für die Speicherung geeignet ist, endet beim Schritt 258.
  • Wenn die Steuereinheit 115 im Schritt 237 ermittelt, dass keine Rundfunk-Verschlüsselungs-Codes in den MPEG-kompatiblen Adaptionsfeldern der Paket-Header übertragen werden, dann führt die Steuereinheit 115 die Schritte 240245 durch. Diese Schritte spiegeln die Schritte 249258 wieder, mit der Ausnahme, dass, da keine Rundfunk-Verschlüsselungs-Codes in den Datenströmen zu dem MUX 110 anwesend sind, der das zu speichernde Programm darstellt, ist eine Einfügung von Nulldaten nicht notwendig. Anderenfalls führt die Steuereinheit 115 den Schritt 240 durch, um den CPSI-Strom für die Speicherung über die Speicherschnittstelle 95 zu bilden, und führt den Schritt 244 durch, um den Benutzer für die Speicherung in einer Weise zu belasten, die zu der mit den Schritten 249 und 254 beschriebenen Weise ähnlich ist. Dieser Zweig des Vorgangs der 23 endet beim Schritt 245. Es sollte jedoch bemerkt werden, dass der CPSI-Strom alternativ für andere Anwendungen in den Schritten 240 und 249 durchgeführt werden kann, wie eine Wiedergabe oder eine Kommunikation über die Schnittstelle 70 anstelle der Speicherung über die Schnittstelle 95.
  • Der CPSI-Strom von dem MUX 110 wird durch die Schnittstelle 95 gepuftert, um Lücken und eine Bitraten-Änderung in den Daten zu verringern. Die resultierenden, gepufterten Daten werden durch die Speichereinheit 90 verarbeitet, damit sie für die Speicherung auf dem Medium 105 geeignet sind. Die Steuereinheit 115 initiiert und steuert den Betrieb der Speichereinheit 90 (1) durch Steuerung über den I/O-Anschluss 100 unter Anwendung eines genormten CEBus-Steuerprotokolls (z. B. Home Automation Standard (CEBus), EIA/IS-60, Dezember 1989). Die Speichereinheit 90 ist eine Einheit mit einem linearen Speichermedium vom Typ DVHSTM, und das Medium 105 ist ein Medium vom Typ eines linearen, sequentiellen Zugriffs, wie zum Beispiel ein Videoband. Die Speichereinheit 90 kodiert den gepufferten Datenstrom von der Schnittstelle 95 unter Anwendung bekannter Fehlerkodierlösungen, wie eine Kanalkodierung, eine Verschachtelung und eine Reed Solomon-Kodierung, um einen kodierten Datenstrom zu erzeugen, der für die Speicherung geeignet ist. Die Einheit 90 speichert den resultierenden kodierten Datenstrom, der die CPSI auf dem Bandmedium enthält.
  • Die Speichereinheit 90 kann, wenngleich sie als eine DVHSTM-Einheit beschrieben wurde, die Daten auf einem linearen Speichermedium speichert in der beispielhaften Ausführungsform von 1, ein beliebiger anderer Typ einer Speichereinheit sein. Zum Beispiel kann die Einheit eine Festkörper- oder nichtlineare Einheit zur Speicherung der Daten in einem RAM oder auf einem nichtlinearen Medium sein. Ein nichtlineares Medium ist ein Medium, dass einen nicht-sequentiellen Zugriff erlaubt, wie zum Beispiel ein Plattenmedium mit einem CDROM oder DVD. Wenn die Einheit 90 und das Medium 105 nichtlinear oder Festkörper-Speichersysteme sind, trennt die Einheit 90 die CPSI-Daten von dem CPSI-Strom und speichert die CPSI-Daten in einem dafür vorgesehenen Adressenbereich des Mediums. Das vermeidet in vorteilhafter Weise eine wiederholte Speicherung der CPSI und verringert die benötigte Speicherkapazität. Alternativ kann die Einheit 90 den CPSI-Strom so speichern, wie er gebildet und in die Einheit 90 eingegeben wird, mit einer oder mehreren Wiederholungen der CPSI-Daten.
  • Ferner kann das System von 1 mehrere Speicher/Rückgewinnungs-Wege enthalten, die den Betrieb von mehreren Speichereinheiten mehrerer Typen tragen, einschließlich linearer, nichtlinearer und Festkörper-Typen. Der in 1 dargestellte, einzige Speicherung/Rückgewinnungs-Weg enthält die Einheiten 47, 90, 95, 105 und 110, wie beschrieben wurde. Durch Vervielfachung dieser Bauteile zur Bildung von parallelen Speicherfunktionen läßt sich das System 25 leicht erweitern, um mehrere Speicherwege zu enthalten. Der für eine bestimmte Speichereinheit bestimmte Speicherweg und Programme werden durch vom Benutzer erzeugte Daten (SP, SM) gewählt, die nach der Wahl des Bildschirm-Menüs mit der Fernbedieneinheit 125 über die Schnittstelle 120 in die Steuereinheit 115 eingegeben, wie vorangehend beschrieben.
  • Das System 25 von 1 gewinnt Programme von der Speichereinheit 90 und dem Medium 105 in einem Wiedergabemodus unter Anwendung des Vorgangs von 4 zurück. Die zurückgewonnenen Datenströme werden zum Beispiel durch das System 25 verarbeitet und für eine Wiedergabe oder eine Ausgabe den Anwendungsgeräten 75, 80 und 85 zugeführt. Alternativ können die Programm-Datenströme auf anderen parallelen Speichereinheiten gespeichert werden (zur Vereinfachung der Zeichnung in 1 nicht dargestellt).
  • Im Schritt 505 von 4, der auf den Start beim Schritt 500 folgt, werden vom Benutzer erzeugte Daten (SR, SM) in die Steuereinheit 115 des Systems 25 (1) eingegeben, die die zurückzugewinnende Programme (SR) und die Speichereinheit (SM) identifizieren, aus der die Programme zurückgewonnen werden sollen. Die Benutzer-Auswahldaten werden nach der Wahl eines Bildschirmmenüs mit der Fernbedieneinheit 125 über die Schnittstelle 120 in die Steuereinheit 115 eingegeben. Es wird für beispielhafte Zwecke angenommen, dass der Benutzer Programme wählt, die aus der Speichereinheit 90 zurückgewonnen werden sollen (1).
  • Die Steuereinheit 115 initiiert im Schritt 510 die Rückgewinnung der gewählten Programm-Datenströme durch die Einheit 90 von dem Medium 105 durch Steuerung über den I/O-Anschluss 100 unter Anwendung des genormten CEBus-Steuerprotokolls, wie vorangehend beschrieben. Die Einheit 90 dekodiert die von dem Medium 105 zurückgewonnenen, fehlerkodierten Daten, um die entsprechenden Daten zurückzugewinnen, die ursprünglich der Einheit 90 für eine Speicherung zugeführt wurden. Die Einheit 90 kann eine lineare Speichereinheit vom Typ DVHSTM oder eine andere Speichereinheit sein, wie ein Festkörper-RAM oder eine nichtlineare Einheit vom Typ DVD oder CDROM. Die zurückgewonnenen, dekodierten Datenströme werden im Schritt 510 durch die Einheit 90 zu der Schnittstelle 95 übertragen. Diese Datenübertragung wird durch die Steuereinheit 115 über den genormten CE-Bus gesteuert und synchronisiert. Die Schnittstelle 95 puffert die von der Einheit 90 empfangenen Daten zur Einstellung der Zeitintervalle zwischen den Datenpaketen zur Bildung eines gepufferten Datenausgangs, der zu MPEG kompatibel ist und den Anforderungen an die MPEG-Bitrate entspricht.
  • Im Schritt 515 leitet die Steuereinheit 115 den gepufferten Ausgang von der Schnittstelle 95 (den Wiedergabe-Datenstrom) über den MUX 37 zu den PID-Auswahleinheiten 45 und 47 unter Anwendung des Auswahlsignals C für den Weg. Im Schritt 515 ermittelt die Steuereinheit 115, ob eine einzige Kopie oder unbegrenzte Kopieeinschränkungen, die in den Kopierschutzdaten in den Schritten 244 und 254 (3) kodiert wurden, durch das zurückgewonnene Programm überschritten werden. Damit die Rückgewinnung ermöglicht wird, bewirkt die Steuereinheit 115 im Schritt 515 (4) die Zurückgewinnung des Wiedergabe-Verschlüsselungscodes, der im Schritt 227 (2) aus der CAT für die gewählten Programme (SR) und liefert den Code in der vorangehend beschriebenen Weise zu der Smart Card-Einheit 130 im Zusammenhang mit dem Schritt 215 (2). Unter Steuerung durch die Steuereinheit 115 liefert die Smart Card 130 im Schritt 515 ( 4) den Wiedergabe-Algorithmus zur Erzeugung der ursprünglichen Rundfunk-Verschlüsselungs-Schlüssel von dem Wiedergabe-Verschlüsselungs-Code. Die Rundfunk-Verschlüsselungs-Schlüssel werden durch die Steuereinheit 115 im Schritt 515 zu den PID, Bestimmungs- und Verschlüsselungs-Schlüssel-Look-Up-Tabellen geliefert.
  • Im Schritt 520 verarbeiten die Einheiten 45 und 47 und die übrigen Einheiten des Systems 25 den Wiedergabe-Datenstrom entweder für die Speicherung über den MUX 110 oder für eine Benutzeranwendung über die Schnittstelle 70. Sowohl der Wiedergabe-Datenstrom von der Einheit 95 als auch der übertragene Datenstrom von dem Wähler 35, folgend auf die Wahl über den MUX 37, werden durch das System 25 in einer ähnlichen Weise verarbeitet. Diese beiden Datenströme werden in der Weise verarbeitet, die vorangehend für den übertragenen Datenstrom beschrieben wurden, mit der Ausnahme der Schritte zur Erzeugung des Verschlüsselungs-Schlüssels und der CPSI-Verarbeitungsschritte. Im Wiedergabe-Modus verwendet die Smart Card 130 einen Algorithmus zur Erzeugung des Wiedergabe-Verschlüsselungs-Schlüssels anstelle eines Algorithmus zur Erzeugung eines Rundfunkschlüssels. Die Smart Card-Einheit 130 verwendet die Funktion des Wiedergabe-Algorithmus zur Entschlüsselung der Verschlüsselungs-Codes, die vorher mit dem Algorithmus für die Wiedergabekodierung im Schritt 227 von 2 kodiert wurden. Dadurch bewirkt die Einheit 130 die Ableitung der ursprünglichen Rundfunk-Verschlüsselungs-Schlüssel für das für die Wiedergabe gewählte Programm (SR). Die Rundfunk-Verschlüsselungs-Schlüssel werden durch die DES-Entschlüsselungseinheit 50 dafür benutzt, die verschlüsselten Programminhaltspakete in dem folgenden Schritt 520 (4) in der Weise zu entschlüsseln und zu verschlüsseln, die vorangehend für den übertragenen Datenstrom beschrieben wurde. Jedoch enthält der über den MUX 37 gewählte Wiedergabe-Datenstrom bereits die CPSI. Daher bewirkt die Steuereinheit 115 im Schritt 520 in dem Wiedergabe-Modus nicht die Schritte für die im Zusammenhang mit 23 beschriebenen Schritte für die CPSI-Bildung.
  • In dem in 4 dargestellten beispielhaften Wiedergabemodus dekodiert das System 25 im Schritt 520 den Wiedergabe-Datenstrom, um für die Wiedergabe dekodierte Daten zu den Anwendungs-Dekodern 80 und 85 zu liefern. In diesem Modus liefert das System die letzten vollständigen CPSI-Daten, die in dem Wiedergabe-Datenstrom enthalten sind, gemäß der MPEG-Norm zur Bildung eines dekodierten Transportdatenstroms, der das gewählte Programm SR darstellt.
  • Die CPSI werden bei der Transport-Dekodierung des Wiedergabe-Datenstroms unter Anwendung der PID-Filter 45 und 47, des Entschlüsselers 50, des Dekoders 55, des Puffers 60 und der Steuereinheit 65 in einer Weise angewendet, die ähnlich zu der vorangehend im Zusammenhang mit 1 beschriebenen Weise ist. Der dekodeirte Transportdatenstrom, außer den CPSI, wird über die Schnittstelle 70 den Anwendungsdekodern 80 und 85 für die MPEG-Dekodierung und die Bildwiedergabe geliefert. In anderen Modi liefert das System 25 den Wiedergabedatenstrom mit den CPSI zu anderen Anwendungsgeräten, wie zum Beispiel einem Hochgeschwindigkeits-Datenanschluß 75. Die CPSI sind dann dafür verfügbar, im Bedarfsfall bei der Transportdekodierung des Wiedergabe-Datenstromes durch diese Anwendungseinheiten oder darauffolgende Geräte angewandt zu werden. Wenn zum Beispiel der Wiedergabedatenstrom in einer anderen zweiten Steuereinheit als die Einheit 90 gespeichert werden soll, liefert der MUX 110 den Datenstrom mit den CPSI über eine zweite Speicherschnittstelle zu der zweiten Speichereinheit. Ferner ahmen die zweite Speichereinheit und die Schnittstelle (beide in 1 nicht dargestellt) den Betrieb und die Funktion der Einheiten 90 bzw. 95 nach. Die Daten von der Schnittstelle 70, die durch die Anwendungsdekoder 80 und 85 MPEG-dekodiert werden, werden durch Audio- und Bild-Wiedergabegeräte in den Einheiten 80 bzw. 85 dargestellt.
  • Im Schritt 527 (4) belastet das System für den bedingten Zugriff innerhalb des Systems 25 den Benutzer für die Programmwiedergabe. Der Benutzer wird innerhalb der einschiebbaren Smart Card selbst durch Speicherung von Berechnungsinformationen nach der Anwendung des Wiedergabe-Algorithmus belastet. Die Belastungs- oder Berechnungsinformationen zweigen an, dass der Benutzer ein verschlüsseltes Rundfunkprogramm zurückgewonnen hat. Zu diesen Berechnungsinformationen erfolgt später ein Zugriff über eine Telefonleitung oder durch den Serviceanbieter, und sie dienen zur Belastung des Benutzers über einen konventionellen Belastungsvor gang. Andere Belastungsmechanismen können, wie vorangehend beschrieben, ebenso benutzt werden. Der Wiedergabevorgang von 4 endet beim Schritt 530.
  • Der Aufbau von 1 ist nicht exklusiv oder zwingend. Es können andere Aufbauten gemäß den Prinzipien der Erfindung zur Erfüllung derselben Aufgaben abgeleitet werden. Ferner können die Funktionen der Bauteile des Aufbaus von 1 und die Verarbeitungsschritte der 24 ganz oder teilweise in den programmierten Anweisungen eines Mikroprozessors durchgeführt werden. Zusätzlich sind die Prinzipien der Erfindung auf beliebige Systeme anwendbar, die einen MPEG- oder Nicht-MPEG-kompatiblen elektronischen Programmführer für die Übertragung jeglicher Informationen benutzen, die hier beschrieben wurden und in MPEG-PSI-Tabellen übertragen werden. Die Prinzipien der Erfindung sind nicht auf Programmführer oder PSI beschränkt, die in MPEG-kompatiblen PSI-Tabellen übertragen werden.

Claims (8)

  1. Verfahren zum Betrieb eines Videodekoders für den Empfang und die Verarbeitung von digitalen Videodaten für die Ausgabe und die anschließende entfernte oder örtliche Speicherung, mit der Verarbeitung von ein Programm darstellenden Daten aus einem Eingangsdatenstrom mit einem Rundfunk-Verschlüsselungs-Schlüssel und zugehörigen Rundfunk-Verschlüsselungs-Programmdaten mit folgenden Schritten: Entschlüsselung des in dem Eingangsdatenstrom empfangenen Rundfunk-Verschlüsselungs-Schlüssels unter Anwendung eines ersten Algorithmus zum Bilden eines Rundfunk-Entschlüsselungs-Schlüssels für die Anwendung bei der Entschlüsselung der verschlüsselten Rundfunk-Programmdaten, Neu-Verschlüsselung des Rundfunk-Verschlüsselungs-Schlüssels unter Anwendung eines zweiten Algorithmus zur Bildung eines verschlüsselten Wiedergabe-Schlüssels für die Anwendung bei der Entschlüsselung verschlüsselter Programmdaten, die von einem Speichermedium zurückgewonnen werden, und Formatierung des verschlüsselten Wiedergabe-Schlüssels zusammen mit den zugehörigen verschlüsselten Rundfunk-Programmdaten zur Bildung von Ausgangsdaten, die für die Speicherung auf einem Speichermedium geeignet sind, durch Ausschluss des verschlüsselten Rundfunk-Verschlüsselungs-Schlüssels aus den Ausgangsdaten und Aufnahme des verschlüsselten Wiedergabe-Schlüssels in die Ausgangsdaten.
  2. Verfahren nach Anspruch 1, wobei der Formatierschritt folgenden Schritt enthält: Austausch von Nulldaten für die verschlüsselten Rundfunk-Verschlüsselungs-Schlüssel.
  3. Verfahren nach Anspruch 1, wobei der Formatierschritt folgenden Schritt enthält: Aufnahme der Datenstruktur-Parameter in die Ausgangsdaten, um kompatibel zu sein mit der Datenstruktur, die sich aus dem Ausschluss des verschlüsselten Rundfunk-Verschlüsselungs-Schlüssels ergibt, und Aufnahme des verschlüsselten Wiedergabeschlüssels.
  4. Verfahren zum Betrieb eines Videodekoders für den Empfang und die Verarbeitung von digitalen Videodaten für die Ausgabe und die darauffolgende entfernte oder örtliche Speicherung, mit der Verarbeitung von ein Programm darstellenden Daten aus einem Eingangsdatenstrom mit einem verschlüsselten Rundfunk-Verschlüsselungs-Schlüssel und zugehörigen verschlüsselten Rundfunk-Programmdaten mit folgenden Schritten: Empfang von vom Benutzer erzeugten Daten zur Wahl von eines von (a) eines Ausgangsmodus mit einem verschlüsselten Programm und (b) eines Ausgangsmodus für ein verschlüsseltes Programm, Entschlüsselung des verschlüsselten Rundfunk-Verschlüsselungs-Schlüssels, der in dem Eingangsdatenstrom empfangen wird, unter Anwendung eines ersten Algorithmus zur Bildung eines Rundfunk-Verschlüsselungs-Schlüssels für die Anwendung bei der Entschlüsselung der verschlüsselten Rundfunk-Programmdaten, in dem entschlüsselten Programm-Ausgangsmodus, Entschlüsselung der verschlüsselten Rundfunk-Programmdaten unter Anwendung des Rundfunk-Verschlüsselungs-Schlüssel zur Bildung von entschlüsselten Programmdaten für die Ausgabe in dem Ausgangsmodus für das verschlüsselte Programm, Neu-Verschlüsselung des Rundfunk-Verschlüsselungs-Schlüssels zur Bildung eines verschlüsselten Wiedergabeschlüssels zur Anwendung bei der Entschlüsselung der verschlüsselten Programmdaten, die von einem Speichermedium zurückgewonnen werden, und Formatierung des verschlüsselten Wiedergabeschlüssels zusammen mit den zugehörigen verschlüsselten Rundfunk-Programmdaten zur Bildung von verschlüsselten Programmdaten für die Ausgabe und Ausschluss des verschlüsselten Rundfunk-Verschlüsselungs-Schlüssels aus den entschlüsselten Programmdaten und den verschlüsselten Programmdaten für die Ausgabe.
  5. Verfahren nach Anspruch 4, wobei der Schritt für den Ausschluss folgenden Schritt enthält: Ersatz von Nulldaten für den verschlüsselten Rundfunk-Verschlüsselungs-Schlüssel.
  6. Verfahren nach Anspruch 4 mit folgendem Schritt: Aufnahme der Datenstruktur-Parameter in die Ausgangsdaten in dem entschlüsselten Programm-Ausgabemodus und anderer Datenstruktur-Parameter in die Ausgangsdaten in dem verschlüsselten Programm-Ausgangsmodus aufgrund der vom Benutzer erzeugten Daten.
  7. Verfahren nach Anspruch 5, wobei die Nulldaten für den verschlüsselten Rundfunk-Verschlüsselungs-Schlüssel in einem der folgenden Datenfelder ersetzt werden: ein MPEG-Adaptionsfeld, ein MPEG-paketierter Elementarstrom (PES = Packetized Elementary Stream)-Feld, ein MPEG Digital Storage Media Control Command (DSMCC)-Feld, ein Digital Satellite System (DSSTM)-Feld mit zusätzlichen Paketdaten und ein Nicht-MPEG-Datenfeld.
  8. Verfahren nach Anspruch 4, wobei die vom Benutzer erzeugten Daten außerdem (a) die Speichereinheit und (b) ein bestimmtes zu speicherndes Programm identifizieren.
DE69718199T 1996-11-27 1997-10-28 Verfahren zum verarbeiten eines verschlüsselten videosignals zur erzeugung eines entschlüsselten programmsignals Expired - Lifetime DE69718199T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US762483 1996-11-27
US08/762,483 US5878135A (en) 1996-11-27 1996-11-27 Decoding system for processing encrypted broadcast, cable or satellite video data
PCT/US1997/019374 WO1998024236A1 (en) 1996-11-27 1997-10-28 Method of processing encrypted video data for generating decrypted program data

Publications (2)

Publication Number Publication Date
DE69718199D1 DE69718199D1 (de) 2003-02-06
DE69718199T2 true DE69718199T2 (de) 2004-03-25

Family

ID=25065195

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69718199T Expired - Lifetime DE69718199T2 (de) 1996-11-27 1997-10-28 Verfahren zum verarbeiten eines verschlüsselten videosignals zur erzeugung eines entschlüsselten programmsignals

Country Status (13)

Country Link
US (1) US5878135A (de)
EP (1) EP0941610B1 (de)
JP (2) JP4592833B2 (de)
KR (1) KR100474209B1 (de)
CN (1) CN1168312C (de)
AU (1) AU7402398A (de)
BR (1) BR9714318B1 (de)
CA (1) CA2272921C (de)
DE (1) DE69718199T2 (de)
ES (1) ES2189001T3 (de)
MY (1) MY117019A (de)
TW (1) TW376656B (de)
WO (1) WO1998024236A1 (de)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6418424B1 (en) 1991-12-23 2002-07-09 Steven M. Hoffberg Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US8574074B2 (en) 2005-09-30 2013-11-05 Sony Computer Entertainment America Llc Advertising impression determination
US5878135A (en) * 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data
DE19823532C2 (de) * 1998-05-26 2003-08-21 T Mobile Deutschland Gmbh Verfahren zur Steuerung eines Teilnehmeridentitätsmoduls (SIM) in Mobilfunksystemen
CN1322739C (zh) * 1998-06-12 2007-06-20 皇家菲利浦电子有限公司 传输系统
US6530021B1 (en) 1998-07-20 2003-03-04 Koninklijke Philips Electronics N.V. Method and system for preventing unauthorized playback of broadcasted digital data streams
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
JP4069339B2 (ja) * 1998-10-16 2008-04-02 ソニー株式会社 信号変換装置および信号変換方法
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
WO2007130681A2 (en) 2006-05-05 2007-11-15 Sony Computer Entertainment America Inc. Advertisement rotation
US6754784B1 (en) 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
ES2220408T3 (es) * 2000-03-10 2004-12-16 Rudolf Ritter Procedimiento, sistema de comunicacion y dispositivo de recepcion para la facturacion de programas y/o datos con control de acceso de transmisores de radiodifusion.
US7310809B2 (en) * 2000-05-19 2007-12-18 General Instrument Corporation Scalable pay-by-time technique for secure multicast distribution of streaming content
KR20040005848A (ko) * 2000-10-26 2004-01-16 제너럴 인스트루먼트 코포레이션 공기-연료 연소 방식으로 산소-연료 연소 방식을 지원하는 방법 및 장치
US7912220B2 (en) * 2001-02-05 2011-03-22 Broadcom Corporation Packetization of non-MPEG stream data in systems using advanced multi-stream POD interface
DE10105737B4 (de) * 2001-02-08 2006-11-16 Grundig Multimedia B.V. Vorrichtung zur Übertragung von Bild- oder Tonsignaldaten zwischen einem digitalen Empfangs- und/oder Wiedergabegerät und einem digitalen Speicher
US8751310B2 (en) 2005-09-30 2014-06-10 Sony Computer Entertainment America Llc Monitoring advertisement impressions
EP1241873A1 (de) * 2001-03-15 2002-09-18 STMicroelectronics Ltd. Speicherung von digitaler Information
US6785656B2 (en) * 2001-06-05 2004-08-31 Xm Satellite Radio, Inc. Method and apparatus for digital audio playback using local stored content
US7065213B2 (en) * 2001-06-29 2006-06-20 Scientific-Atlanta, Inc. In a subscriber network receiving digital packets and transmitting digital packets below a predetermined maximum bit rate
JP2003076432A (ja) * 2001-09-05 2003-03-14 Nec Corp プログラム実行装置及びそれに用いるプログラム実行方法並びにそのプログラム
US7570766B2 (en) * 2002-03-01 2009-08-04 Intel Corporation Transparently embedding non-compliant data in a data stream
EP1493258B1 (de) * 2002-04-05 2011-11-02 Panasonic Corporation Inhaltsdatensystem
US7933411B2 (en) 2002-06-28 2011-04-26 Trident Microsystems (Far East) Ltd. Method of constructing MPEG program streams from encrypted MPEG transport streams
JP4211306B2 (ja) * 2002-07-19 2009-01-21 パナソニック株式会社 送信装置、及び受信装置
US7251328B2 (en) * 2003-01-14 2007-07-31 General Instrument Corporation System for secure decryption of streaming media using selective decryption of header information and decryption of reassembled content
US7779482B1 (en) 2003-02-07 2010-08-17 iGware Inc Delivery of license information using a short messaging system protocol in a closed content distribution system
IL155416A0 (en) * 2003-04-13 2003-11-23 Nds Ltd System for securing access to data streams
US8099762B2 (en) 2003-12-02 2012-01-17 Integic Technologies Llc Secure digital content trading systems and methods
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7529370B1 (en) * 2004-04-29 2009-05-05 Hewlett-Packard Development Company, L.P. Digital media-playing device and a method of playing digital media therein
US8065532B2 (en) * 2004-06-08 2011-11-22 Hrl Laboratories, Llc Cryptographic architecture with random instruction masking to thwart differential power analysis
WO2006018827A2 (en) * 2004-08-16 2006-02-23 Nds Limited System for providing access to operation information
GB0418279D0 (en) * 2004-08-16 2004-09-15 Nds Ltd System for providing access to operation information
US8763157B2 (en) * 2004-08-23 2014-06-24 Sony Computer Entertainment America Llc Statutory license restricted digital media playback on portable devices
JP5177939B2 (ja) * 2004-11-10 2013-04-10 株式会社東芝 情報処理装置
US8676900B2 (en) 2005-10-25 2014-03-18 Sony Computer Entertainment America Llc Asynchronous advertising placement based on metadata
US10657538B2 (en) 2005-10-25 2020-05-19 Sony Interactive Entertainment LLC Resolution of advertising rules
US20070118425A1 (en) 2005-10-25 2007-05-24 Podbridge, Inc. User device agent for asynchronous advertising in time and space shifted media network
US11004089B2 (en) 2005-10-25 2021-05-11 Sony Interactive Entertainment LLC Associating media content files with advertisements
CN101322394A (zh) * 2005-12-20 2008-12-10 深圳Tcl新技术有限公司 用于视频数据的解密系统和方法
WO2007106844A2 (en) 2006-03-14 2007-09-20 Divx, Inc. Federated digital rights management scheme including trusted systems
US20070223870A1 (en) * 2006-03-23 2007-09-27 Seagate Technology Llc Single board digital video system
US9679602B2 (en) 2006-06-14 2017-06-13 Seagate Technology Llc Disc drive circuitry swap
CN101636726B (zh) 2007-01-05 2013-10-30 Divx有限责任公司 包含连续播放的视频分配系统
US9305590B2 (en) 2007-10-16 2016-04-05 Seagate Technology Llc Prevent data storage device circuitry swap
EP2223232A4 (de) 2007-11-16 2015-02-25 Sonic Ip Inc Hierarchische und reduzierte indexstrukturen für multimediadateien
US8769558B2 (en) 2008-02-12 2014-07-01 Sony Computer Entertainment America Llc Discovery and analytics for episodic downloaded media
US8468341B2 (en) * 2009-03-04 2013-06-18 Hong Kong Applied Science and Technology Research Institute Company Limited System and method for content distribution with broadcast encryption
US8667272B2 (en) 2009-03-04 2014-03-04 Hong Kong Applied Science And Technology Research System and method for content distribution with broadcast encryption
US8763090B2 (en) 2009-08-11 2014-06-24 Sony Computer Entertainment America Llc Management of ancillary content delivery and presentation
CA2782825C (en) 2009-12-04 2016-04-26 Divx, Llc Elementary bitstream cryptographic material transport systems and methods
GB2485142A (en) * 2010-10-27 2012-05-09 Nds Ltd Secure broadcast/multicast of media content
JP2011078111A (ja) * 2010-11-05 2011-04-14 Toshiba Corp 情報処理装置
JP5644467B2 (ja) * 2010-12-20 2014-12-24 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
WO2016112112A1 (en) 2015-01-06 2016-07-14 Sonic Ip, Inc. Systems and methods for encoding and sharing content between devices

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4281216A (en) * 1979-04-02 1981-07-28 Motorola Inc. Key management for encryption/decryption systems
US4336554A (en) * 1980-06-23 1982-06-22 Clarion Co., Ltd. Code signal blanking apparatus
EP0200310B1 (de) * 1985-05-01 1993-08-11 General Instrument Corporation Satellitenübertragungssystem mit Direktübertragung
EP0267039A3 (de) * 1986-11-05 1990-04-04 Satellite Technology Services, Inc. Videosystem und Verfahren für das Überwachte Aufnehmen von Videosignalen
US5029207A (en) * 1990-02-01 1991-07-02 Scientific-Atlanta, Inc. External security module for a television signal decoder
US5204900A (en) * 1991-03-04 1993-04-20 Pires H George Coding system for descrambling video
US5537473A (en) * 1991-07-08 1996-07-16 Amstrad Public Limited Company Video recorder system
US5581614A (en) * 1991-08-19 1996-12-03 Index Systems, Inc. Method for encrypting and embedding information in a video program
FI94008C (fi) * 1992-09-04 1995-06-26 Salon Televisiotehdas Oy Videosignaalin dekooderijärjestelmä
JP3729529B2 (ja) * 1994-10-28 2005-12-21 ソニー株式会社 デイジタル信号送受信システム
KR100332743B1 (ko) * 1994-11-26 2002-11-07 엘지전자주식회사 디지탈영상시스템의불법시청및복사방지방법및장치
US5878135A (en) * 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data

Also Published As

Publication number Publication date
CA2272921A1 (en) 1998-06-04
BR9714318A (pt) 2000-02-08
DE69718199D1 (de) 2003-02-06
ES2189001T3 (es) 2003-07-01
CN1238886A (zh) 1999-12-15
JP2001507177A (ja) 2001-05-29
JP4592833B2 (ja) 2010-12-08
AU7402398A (en) 1998-06-22
CN1168312C (zh) 2004-09-22
EP0941610A1 (de) 1999-09-15
EP0941610B1 (de) 2003-01-02
TW376656B (en) 1999-12-11
CA2272921C (en) 2006-06-13
KR20000057198A (ko) 2000-09-15
MY117019A (en) 2004-04-30
JP2010109996A (ja) 2010-05-13
BR9714318B1 (pt) 2011-06-28
US5878135A (en) 1999-03-02
WO1998024236A1 (en) 1998-06-04
KR100474209B1 (ko) 2005-03-08

Similar Documents

Publication Publication Date Title
DE69718199T2 (de) Verfahren zum verarbeiten eines verschlüsselten videosignals zur erzeugung eines entschlüsselten programmsignals
DE69726753T2 (de) Verfahren und gerät zur dekodierung und speicherung verschlüsselter videodaten
EP0903038B1 (de) Adaptives Verfahren zur Ausgabe verschlüsselter Videoeingangsdaten wahlweise in ihrem verschlüsselten Format oder entschlüsselt
DE69914306T2 (de) Aufzeichnung verschlüsselter digitaler daten
DE69833821T2 (de) Übertragungsverfahren und -vorrichtung zum kombinierten Multiplexen und Verschlüsseln
DE69838890T2 (de) Senden und Empfang von Daten
DE69636180T2 (de) Verfahren und Vorrichtung zum Empfang und/oder Wiedergabe von digitalen Signalen
CN100358345C (zh) 使用包标识符在存储介质上提供多个分组数据节目的方法
DE69828071T2 (de) Verfahren und vorrichtung zur aufnahme chiffrierter digitaler daten
DE69935704T2 (de) Aufnahme/Wiedergabe-Anlage und Verfahren zur digitalen Fernsehsendung
KR100595603B1 (ko) 상이한 조건부 접근 시스템과 동작하는 리시버/디코더를구성하는 방법 및 디바이스
DE60017589T2 (de) Verfahren und system zum einfügen eines systems mit bedingtem zugriff
DE60005362T2 (de) Programmübersichtsverarbeitung
KR100458843B1 (ko) 암호화된비디오데이터및암호화되지않은비디오데이터를처리하는적응디코딩시스템
DE102007020090B4 (de) Verfahren zur gleichzeitigen Entschlüsselung mehrerer Programme

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: THOMSON MULTIMEDIA INC., INDIANAPOLIS, IND., US

8364 No opposition during term of opposition
R082 Change of representative

Ref document number: 941610

Country of ref document: EP

Representative=s name: MANFRED ROSSMANITH, 30974 WENNIGSEN, DE