-
HINTERGRUND DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf eine digitale Settop-Box
und insbesondere auf ein Verfahren zum Aufrüsten bzw. Upgraden der Firmware/Software
einer digitalen Settop-Box unter Verwendung einer standardisierten
Aufstellpunkt-Schnittstelle
(POD-Schnittstelle, point of deployment-Schnittstelle).
-
Mit
dem Auftauchen von digitalen Rundfunksystemen ist von mehreren Kabelbetreibern
ein breites Feld von interaktiven Unterhaltungsdiensten geschaffen
worden. Beispielhafte interaktive Dienste umfassen interaktive Programmführer, den
Email- und Web-Zugang, interaktive Spiel-Shows, Videospiele und
dergleichen. Doch müssen
diese interaktiven Dienste über
eine Verbraucher-Settop-Box (d. h. einen Umsetzer für Kabelfernsehen)
angeschlossen werden. Herkömmlich
hatte jeder Hersteller von Kabelfernseh-(cable television, CATV)-Einrichtungen seine
eigene urheberrechtlich geschützte
Settop-Box. Dies behinderte jedoch die Berechnung, da ein Verbraucher,
der Kabelfirmen wechseln wollte, häufig eine neue Settop-Box erwerben
musste. Das Telekommunikationsgesetzt von 1996 wurde erlassen, um
eine offene Kabelhardwareplattform zu schaffen, die für Interoperabilität und Portabilität zwischen
Settop-Boxen und Kabelsystemen sorgt.
-
Das
Telekommunikationsgesetz von 1996 ermächtigte die US-Fernmeldeverwaltung
(Federal Communications Commision, F.C.C.), Vorschriften zu erarbeiten,
die Verbrauchern die Möglichkeit
verschaffen, Settop-Boxen und ähnliche
Einrichtungen von Quellen zu erlangen, die keine Kabelbetreiber sind.
Vor dem Gesetz waren Kabeleinrichtungen (d. h. Decoder-Boxen) nicht
zwischen verschiedenen Systemen betreibbar; mit anderen Worten,
Kabelbetreiber bauten auf der Grundlage urheberrechtlich geschützter Systeme,
die für
den Empfang eine spezifische Hardware/Software benötigten,
geographische Märkte
auf. Als der Fernsehinhalt bzw. der Fernsehumfang zunehmend von
HF-Übertragungsschemata
zu Kabel/Satelliten-basierten Systemen wechselte, wurden die Verbraucher
zuversichtlich, dass ihr lokaler Kabelbetreiber die Signaldienste/interaktiven Dienste
in ihr Heim liefert.
-
Um
die Ziele des Gesetzes zu erreichen, ist von nordamerikanischen
Kabelbetreibern eine universelle Settop-Box-Hardware- und -Software-Plattform
entwickelt worden, die als OpenCable®-Standard
bekannt ist. Um die gewünschte
Portabilität
und Interoperabilität
(d. h. zwischen Kabelkopfenden und Settop-Boxen) zu er leichtern
und dennoch den urheberrechtlich geschützten Umfang von Kabelbetreibern
(d. h. Verschlüsselung,
Sicherheit, Bezahlprogrammierung (pay programming)) aufrechtzuerhalten,
enthalten die OpenCable®-konformen Settop-Boxen
eine generelle Hardware und Software, die dazu verwendet werden
kann, Kabelfernsehsignale zu decodieren, sowie eine Aufstellpunkt-Schnittstelle
(POD-Schnittstelle) zum Kommunizieren mit einem POD-Modul.
-
Obwohl
die Erfindung hinsichtlich einer OpenCable®-konformen
Settop-Box beschrieben wird, ist sie nicht auf diesen Standart beschränkt. Sie kann
mit jeder Settop-Box praktiziert werden, die für die Aufnahme einer Smartcard
konfiguriert ist, die Merkmale der Settop-Box einschließlich, jedoch
nicht ausschließlich
des bedingten Zugangs steuert. Im folgenden Text wird der Begriff "offene Kabel-Settop-Box" bzw. "offene kabelnormgerechte
Settop-Box" verwendet,
um allgemein auf diese Vorrichtungen zu verweisen.
-
Das
POD-Modul enthält
Hardware und Software, die die Settop-Box an einen bestimmten CATV-Betreiber
anpasst. Die POD-Schnittstelle zur Settop-Box, wie sie gegenwärtig ausgeführt ist,
ist ein Anschluss gemäß der Internationalen
Vereinigung für Personalcomputer-Speicherkarten
(PCMCIA), ein Anschluss gemäß der Japanischen
Vereinigung zur Entwicklung der elektronischen Industrie (JEIDA) oder
dergleichen, der im Folgenden als "Smartcard-Anschluss" bezeichnet wird. Ein kompatibles POD-Modul
(d. h. eine PCMCIA- oder JEIDA-Karte) wird an den Smartcard-Anschluss
angeschlossen, um urheberrechtlich geschützte Dienste (d. h. Funktionen
des bedingten Zugangs) wie etwa Bezahlprogrammierung, Unterhaltungsführer, Verschlüsselung, Sicherheit
und dergleichen bereitzustellen. Bei dem typischen bidirektionalen
Kabelsystem weist das POD-Modul einen CPU-Kanal, einen Außerbandkanal und einen Innbandkanal
auf, die betriebsbereit mit dem Smartcard-Anschluss der Settop-Box
verbunden sind. Die Settop-Box stützt sich nur bei spezifischen
Diensten auf das POD-Modul. Da sie eine allgemeine Hardware und
Software sowie den Smartcard-Anschluss aufweist, ist die Open-Cable®-konforme
Settop-Box so entworfen, dass sie zwischen verschiedenen Kabelnetzen
portierbar und interoperabel ist.
-
Da
für diese
normgerechten Settop-Boxen zur Anwendung des Standards ablauffähige Firmware/Software-Programme
eingeführt
werden, ist ein Verfahren zum Upgraden, das Software-Patches, Fehlerreparaturen
und dergleichen bereitstellt, notwendig. Noch ist die Anzahl von
Herstellern und voraussichtlichen Settop-Box- Modellen zu groß, um selbst dann, wenn Kabelbetreiber
bereit sind, die Bandbreite allgemein zugänglich zu machen, solche Upgrades über alle
Kabelsysteme hinweg bereitzustellen. Überdies wäre der Umfang der ablauffähigen Programme
für eine
Bereitstellung über
eine Telephonschnittstelle untragbar; ähnlicherweise sind Kosten der
Wartung durch einen autorisierten Dienstanbieter untragbar.
-
Demgemäß besteht
ein Bedarf an einem Verfahren, das einer offenen kabelnormgerechten Host-Vorrichtung
in kostengünstiger
Weise ein Code-Upgrade bereitstellt.
-
WO 93/07715 A offenbart
ein Verfahren und eine Vorrichtung zum Anpassen einer Vorrichtung
mit einer Smartcard. Die Vorrichtung ist ein Bezahl-TV-Decoder,
der eine CPU enthält,
die mit einem ROM, einem EEPROM-Speicher und einem Kartenleser verbunden
ist. Sobald der Decoder die installierte Smartcard identifiziert
hat, speichert er die von der Smartcard empfangenen Daten im Speicher.
-
EP 0 905 984 A offenbart
ein System zum Herunterladen von Computersoftware per Rundfunkprogramm.
-
EP 0 914 001 A offenbart
ein Verfahren und eine Vorrichtung zum Herunterladen von Anwendungen
in einen digitalen Decoder.
-
WO 01/20899 A offenbart
ein System mit entnehmbarer Karte und herunterladbarem Agent-Programm
zum Kommunizieren mit einem Digitalfernsehempfänger oder einer anderen Host-Vorrichtung.
-
FR 2 758 430 offenbart ein
Verfahren und ein System zum Herunterladen von numerischen Daten über Satellit.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
Erfindung ist durch den Inhalt der unabhängigen Ansprüche definiert.
Die abhängigen
Ansprüche
sind auf vorteilhafte Ausführungsformen
gerichtet.
-
VORTEILE DER ERFINDUNG
-
Vorteilhafterweise
ist sie mit einer Smartcard versehen, die ein Software-Upgrade für eine Host-Vorrichtung
mit einer Smartcard-Schnittstelle enthält. Ein Speicher in der Smartcard
speichert das Software-Upgrade für
die Lieferung an die Host-Vorrichtung. Die Smartcard enthält eine
Karteninformationsstruktur (card information structure, CIS) gemäß einem
Standardprotokoll für
das Identifizieren der Smartcard als Software-Upgrade-Karte, damit
die Host-Vorrichtung auf das Software-Upgrade zugreifen kann.
-
Vorteilhafterweise
ist sie ferner mit einem Verfahren für die Bereitstellung eines
Code-Upgrades für
eine Host-Vorrichtung mit einer Smartcard-Schnittstelle versehen.
Es wird eine Smartcard bereitgestellt, die ein Code-Upgrade zur Übertragung an
die Host-Vorrichtung enthält.
Die Smartcard wird mit der Smartcard-Schnittstelle der Host-Vorrichtung verbunden.
Die Smartcard wird als Code-Upgrade erkannt, wobei zum Upgraden
der Software/Firmware der Host-Vorrichtung auf Daten auf der Karte zugegriffen
wird.
-
KURZBESCHREIBUNG DER ZEICHNUNG
-
Diese
und weitere Merkmale, Aspekte und Vorteile der vorliegenden Erfindung
werden vollständiger
deutlich aus der folgenden Beschreibung, den beigefügten Ansprüchen und
der begleitenden Zeichnung, worin:
-
1 ein
Blockschaltplan einer offenen kabelnormgerechten Host-Vorrichtung
mit einer POD-Schnittstelle und einer Upgrade-Karte gemäß einer
beispielhaften Ausführungsform
der Erfindung ist;
-
2 ein
Blockschaltplan der für
einen Smartcard-Anschluss einer beispielhaften Host-Vorrichtung
vorgesehenen Software-Schnittstelle gemäß der vorliegenden Erfindung
ist; und
-
3 ein
Ablaufplan ist, der ein Verfahren zum Upgraden von Code der normgerechten Host-Vorrichtung
gemäß einer
beispielhaften Ausführungsform
der vorliegenden Erfindung zeigt.
-
BESCHREIBUNG DER BEISPIELHAFTEN
AUSFÜHRUNG
-
Die
in der folgenden Beschreibung verwendete bestimmte Terminologie
soll lediglich dem Zweck dienen und nicht als Einschränkung ausgelegt werden.
Der Begriff "Smartcard" bezieht sich auf tragbare
Schaltungskarten wie etwa Karten des Typs I-III gemäß der Internationalen
Vereinigung für
Personalcomputer-Speicherkarten (PCMCIA), Karten gemäß der Japanischen
Vereinigung zur Entwicklung der elektronischen Industrie (JEIDA)
und ähnliche Karten,
die so konfiguriert sind, dass sie gemäß den standardisierten mechanischen
und elektrischen Spezifikationen zur Verwendung mit offenen kabelnormgerechten
Host-Vorrichtungen arbeiten. Der Begriff "normgerechte Host-Vorrichtung" ist entsprechend
dem in der OpenCable® HOST-POD INTERFACE SPECIFICATION
der Cable Television Laboratories Inc. dargelegten Settop-Box-Standard
definiert, der als Ganzes durch Literaturverweis hier aufgenommen
ist. Die Begriffe "Code", "Computer-Code" und "Software" werden austauschbar
verwendet. Der Begriff "Tupel" wird verwendet,
um ein Datenobjekt mit zwei oder mehr Komponenten zu bezeichnen.
In der Zeichnung werden in den gesamten mehreren Figuren dieselben
Bezugszeichen zum Bezeichnen derselben Elemente verwendet. Obwohl die
Erfindung hinsichtlich einer offenen kabelnormgerechten Settop-Box
beschrieben wird, ist sie allgemein auf jede Settop-Box mit einer
Smartcard-Schnittstelle anwendbar.
-
Die
vorliegende Erfindung ist durch eine Smartcard und eine Smartcard-Schnittstelle
verkörpert,
die einer offenen kabelnormgerechten Host-Vorrichtung ein Code-Upgrade
bereitstellen. Ein Speicher der Smartcard speichert das Code-Upgrade
für die
Lieferung an die Host-Vorrichtung. Die Smartcard mit dem Code-Upgrade enthält eine
Karteninformationsstruktur (CIS) zum Identifizieren der Smartcard als
Code-Upgrade-Karte, damit die normgerechte Host-Vorrichtung zum
Upgraden ihrer Software/Firmware auf das Code-Upgrade der PCMCIA-Karte
zugreifen kann.
-
Die
vorliegende Erfindung ist außerdem durch
ein Verfahren verkörpert,
das einer offenen kabelnormgerechten Host-Vorrichtung ein kostengünstiges
Upgrade bereitstellt. Die Smartcard, die das Code-Upgrade speichert,
ist von leichtem Gewicht, von kleinem Umfang und relativ preiswert
herzustellen. Somit kann die Smartcard gemäß der vorliegenden Erfindung
zur Korrektur von Softwarefehlern in einer offenen kabelnormgerechten
Host-Vorrichtung oder zum Upgraden einer sol chen ohne weiteres über normale
Vertriebskanäle
wie etwa Postdienste an eine Bedienungsperson geschickt werden.
-
I. Herkömmliche Systemkomponenten
-
Um
auf die Zeichnung Bezug zu nehmen, ist 1 ein Blockschaltplan
auf höherer
Ebene, der ein typisches offenes kabelnormgerechtes System 5 zeigt.
Das System 5 ist gezeigt in einer typischen Konfiguration
mit einer offenen kabelnormgerechten Host-Vorrichtung 7,
die über
eine Aufstellpunkt-Schnittstelle (POD-Schnittstelle) 42 und eine mit
einem Kabelfernseh-Kopfende (CATV-Kopfende) verbundene Teilnehmeranschlussleitung 11 betriebsbereit
mit einer POD-Vorrichtung 10 verbunden ist. Die POD 10 wird
jedem Teilnehmer bzw. Abonnenten eines urheberrechtlich geschützten Kabelsystems bereitgestellt.
Die POD 10 ermöglicht
die Trennung von Kabelbetreiber-Hardware/Software-Spezifika von
der Host-Vorrichtung 7 (d.
h. der Settop-Box). In dieser Weise teilen die POD 10 und
die Host-Vorrichtung 7 Signalisierungsfunktionen so auf,
dass von der Host-Vorrichtung 10 die HF- und QPSK-Verarbeitung ausgeführt wird
und die Entschlüsselung,
die Entwürfelung
bzw. Entscrambelung und jegliche für den CATV-Anbieter spezifische
Signalverarbeitung unter der Steuerung der POD 10 ausgeführt wird.
Die POD 10 stellt außerdem
eine Schnittstelle für
Kommunikationen zwischen dem Teilnehmer und dem CATV-Kopfende bereit.
-
Obwohl
die beispielhafte Ausführungsform mit
Bezug auf ein bidirektionales (d. h. Zweiwege-)Festnetz-Kabelsystem
beschrieben wird, werden Fachleute erkennen, dass andere Typen von
Kabelsystemen einschließlich
drahtloser Systeme unter dem offenen Kabelstandard betreibbar sind. Ähnlich sind
Einwegsysteme und Systeme gemäß der Schnittstellenspezifikation
für Daten über Kabeldienst
(DOCSIS) gleichfalls mit den Lehren der vorliegenden Erfindung vereinbar.
-
In
dem beispielhaften System umfasst die Host-Vorrichtung 7 einen
Tuner 12, einen Demodulator 14, einen Vierphasen-Umtastungs-Sender (QPSK-Sender) 16,
einen Empfänger 18,
einen Datenprozessor 22, einen Demultiplexer 20,
eine POD-Schnittstelle 42, einen Direktzugriffsspeicher (RAM) 23 und
einen optionalen Nur-Lese-Speicher (ROM) 35. Beide Speicher 23 und 35 sind
mit dem Datenprozessor 22 gekoppelt. Der Direktzugriffsspeicher
kann beispielsweise ein Batteriegesicherter dynamischer RAM oder
ein anderer nichtflüchtiger Speicher
sein. Wie weiter unten beschrieben wird, kann der optionale ROM 35 einen
Urlader bzw. ein Boot-Programm und Sicherungsversionen der Betriebssoftware
enthalten. Der beispielhafte Prozessor 22 kann die Software
direkt von dem ROM 35 ablaufen lassen oder in den RAM 23 herunterladen,
wenn in der momentan in dem RAM 23 gespeicherten Betriebssoftware
ein Fehler entdeckt wird.
-
Im
Betrieb werden der Sender 16 und der Empfänger 18 der
Host-Vorrichtung 7 dazu verwendet, Daten zwischen der Settop-Box
und dem CATV-Kopfende über
das Kabel oder die Teilnehmeranschlussleitung 11 zu übertragen.
Der Tuner 12 der Host-Vorrichtung 7 ist für das Abstimmen
auf eine gewünschte
Kanalfrequenz für
den Empfang von A/V-Inhalt von der Teilnehmeranschlussleitung 11 vorgesehen.
-
Die
POD-Schnittstelle 42 ist ein 68-Stift-Smartcard-Steckplatz
für die
Aufnahme einer POD 10 oder einer Smartcard 25 (wie
in 2 gezeigt ist). Die POD-Schnittstelle kann nach
Bedarf in einer 16-Bit- oder 32-Bit-Betriebsart arbeiten.
-
In Übereinstimmung
mit einem Befehlssatz und Teilnehmerberechtigungsparametern gewährt/verweigert
die POD-Vorrichtung 10 bedingt den Zugriff auf über die
Teilnehmeranschlussleitung bereitgestellten Inhalt. Wenn dem Teilnehmer
ein Zugriff gewährt
wird, kann die POD 10 dem Datenprozessor 22 über den
CPU-Kanal einen
Schlüssel
für bedingten
Zugriff oder "Mittel
zum Entscrambeln" liefern,
um dem Betrachter über
die Host-Vorrichtung 7 den Inhalt zu präsentieren.
-
Beispielsweise
kann das CATV-Signal einen Kanal umfassen, der ein verschlüsseltes
digitales Fernsehsignal transportiert. Dieses Fernsehsignal kann
beispielsweise gemäß dem Standard
der Expertengruppe für
bewegte Bilder (MPEG) codiert und mittels eines symmetrischen Algorithmus
wie etwa dem Dreifach-Datenverschlüsselungsstandard (Dreifach-DES)
verschlüsselt
sein. In einem Beispiel können
in Pakete aufgeteilte Elementarstrompakete (PES-Pakete) des MPEG-Bitstroms verschlüsselt und
danach zu MPEG-Transportpaketen gepackt sein. Der Transportdecoder
der Settop-Box kann das Signal empfangen und demodulieren, die Transportpakete
wiederherstellen und die verschlüsselten PES-Pakete
rekonstruieren. Die Daten in diesen Paketen werden dann zu dem Inbandkanal
des POD-Moduls geleitet, wo sie entschlüsselt und zu dem Transportdecoder
zurückgeleitet
werden. Das POD-Modul kann einen im Voraus gespeicherten Entschlüsselungsschlüssel verwenden,
der beispielsweise über
den Außerbandkanal
durch eine frühere
Kommunikation mit dem Kabelkopfende, bei der die verschlüsselte Programmierung
bestellt wurde, bereitgestellt sein kann.
-
Der
Demultiplexer 20 der Host-Vorrichtung 7 "entpackt" Datenpakete der
Teilnehmeranschlussleitung. Der Demultiplexer kann beispielsweise
die Daten von der PES-Rahmung trennen, um einen elementaren Bitstrom
wiederherzustellen. Alternativ kann der Demultiplexer 20,
falls die Transportpakete verschlüsselt sind, die PES-Pakete
aus den Transportpaketen wiedergewinnen und entweder die PES-Pakete
oder den elementaren Bitstrom zu einem MPEG-Decoder (nicht gezeigt)
schicken.
-
Natürlich ist
die vorliegende Erfindung weder auf irgendeinen Codierstandard noch
auf eine digitale Implementierung begrenzt. Das POD-Modul kann beispielsweise
dazu verwendet werden, einem analogen Decoder zu signalisieren,
dass der Teilnehmer die Programmierung, die er empfangen soll, bezahlt hat
und somit dem Decoder zu ermöglichen,
herkömmliche
analoge Techniken des Entscrambelns auf die empfangenen analogen
Videosignale anzuwenden.
-
Die
beispielhafte POD 10 von 1 ist für das Arbeiten
an einem bidirektionalen Kabelnetz konfiguriert. Die POD 10 weist
einen mit OOB bezeichneten Außerbandkanal,
einen mit INB bezeichneten Inbandkanal und einen mit CPU bezeichneten Verarbeitungskanal
auf. Wie oben beschrieben worden ist, empfängt das INB-Signal Inhalt von
dem Kabelkopfende, während
der OOB-Kanal eine Zweiwege-Datenkommunikation zwischen der Settop-Box und
dem Kopfende ermöglicht.
-
Der über den
INB-Kanal empfangene Inhalt wird über den Tuner 12 und
den Demodulator 14 der Host-Vorrichtung 7 bereitgestellt.
Wenn Teile des Inhalts einem bedingten Zugriff unterworfen (z. B.
gescrambelt oder verschlüsselt)
sind, kann die POD 10 ein Entschlüsselungsleistungsmerkmal, das
einen Schlüssels
für bedingten
Zugriff umfasst, bereitstellen oder eine Berechtigung für das Entscrambeln
verschaffen, um dem Betrachter über
die Host-Vorrichtung 7 den Inhalt zu präsentieren.
-
Der
OOB-Kanal des beispielhaften Systems 5 ist für das Übertragen
von Inhalt wie etwa einer Teilnehmeranforderung an das Kabelkopfende
nach dem Empfang eines betreffenden Dienstes oder einer Antwort über die
Teilnehmeranschlusslei tung vorgesehen. Der QPSK-Sender der Host-Vorrichtung 7 ist
für das
Modulieren eines über
den OOB-Kanal übertragenen
Trägersignals
zum Ausgeben eines Datenstroms über
die Teilnehmeranschlussleitung an das Kabelkopfende vorgesehen.
-
Auf
die Verbindung der POD 10 oder einer Smartcard 25 (siehe 2)
mit der POD-Schnittstelle 42 der Host-Vorrichtung 7 hin
wird eine Initialisierungssequenz gemäß einem Standardprotokoll der Smartcard 25 ausgeführt, um
eine Plug-and-Play®-Funktionalität zu ermöglichen.
Die Initialisierungssequenz liest eine Karteninformationsstruktur
(CIS) oder ein "Metaformat" einer Smartcard 24,
um zu ermitteln, ob die Karte eine POD ist. Das Metaformat ist eine
Hierarchie von Protokollschichten und ein Satz von vorrichtungsunabhängigen Treibern
zum Spezifizieren von Datenaufzeichnungsformaten und der Datenorganisation.
Indem der Datenprozessor 22 der Host-Vorrichtung 7 so
programmiert wird, das er ein Tupel der Basiskompatibilität oder der "physikalischen Schicht" des Smartcard-Protokolls erkennt,
kann die Host-Vorrichtung eine Smartcard 25 als Software/Firmware-Upgrade erkennen
und entsprechend arbeiten.
-
II. Smartcard-Protokollschichten
-
In 2 sind
nun spezieller ein Blockschaltplan der Host-Vorrichtungs-Software/Firmware
und die Metaformatstruktur der beispielhaften Ausführungsform
gezeigt.
-
Die
Host-Vorrichtung 7 enthält
eine Anwendungssoftware 30, ein Betriebssystem 32,
ein Basis-Eingabe-Ausgabe-System (BIOS) 34, eine Kompatibilitätsschicht
oder "physikalische" Schicht 36, eine
Datenaufzeichnungs-/Datenorganisationsschicht oder "Kartendienste" 38, eine
systemspezifische Schicht oder "Sockeldienste" 40 und
eine POD-Schnittstelle 42. Das System BIOS 34 wird
im Voraus bei der Herstellung (d. h. als Firmware) in die Host-Vorrichtung 7 geladen.
Die Anwendungssoftware 30 umfasst in dem Speicher 23 (in 1 gezeigt) der
Host-Vorrichtung 7 gespeicherte
Programme und Daten wie etwa Kanalabbildung, Verarbeitungsprozeduren,
Befehlssätze,
Bitmaps für
die Anzeige auf einem Bildschirm und dergleichen. Neben dem Speicher 23 kann
die Host-Vorrichtung 7 auch einen Nur-Lese-Speicher (ROM) 35 enthalten,
der eine Kopie des Betriebssystems und des BIOS, wie sie vom Hersteller
geliefert worden sind, aufbewahrt. Als Teil einer Fehlerbehebungsprozedur,
die beispielsweise auf einen nicht erfolgreichen Versuch eines Software-Upgrades
folgt, kann die Host-Vorrichtung 7 die Basissoftware von
dem ROM 35 neu herunterladen.
-
Die
beispielhafte Host-Vorrichtung 7 verwendet das BIOS 34 zum
Kommunizieren mit Peripheriegeräten
in Verbindung mit einem Betriebssystem 32. Wie Fachleuten
bekannt ist, weist das Betriebssystem 32 Hardwarebetriebsmittel
der Host-Vorrichtung 7 zur
Verwendung während
des Betriebs und/oder die Kommunikation zwischen Hardwarekomponenten
zu. In der beispielhaften Ausführungsform
kann das Software-Upgrade das Betriebssystem 32, das BIOS 34 oder
beides austauschen.
-
Das
Metaformat der POD-Schnittstelle 42 ist durch die Kompatibilitätsschicht 36,
die Datenaufzeichnungs-/Datenorganisationsschicht 38 und
die systemspezifische Schicht 40 dargestellt. Gemäß dem Metaformat
kann die Smartcard 25 eine Vielzahl von Speicher- und E/A-Operationen
wie etwa das Bereitstellen von Daten für die Host-Vorrichtung 7,
das Bereitstellen einer zusätzlichen
Speicherkapazität und
das Bereitstellen von Fax/Modem-Fähigkeiten ausführen. Das
Metaformat ist ein Standardprotokoll zum Integrieren der Smartcard 25 in
die Host-Vorrichtung 7 über
die POD-Schnittstelle 42.
-
Die
systemspezifische Schicht 40 des Metaformats ist die Softwareschnittstelle
zu der POD-Schnittstelle 42 zum Managen aller POD-Schnittstellen 42 und
zugeordneten Register eines Systems 5. Die systemspezifische
Schicht 40 kann in der Host-Vorrichtung 7 als
Vorrichtungstreiber und/oder als eine Funktion des BIOS 34 enthalten
sein.
-
Die
Datenaufzeichnungs-/Datenorganisationsschicht 38 ist eine
Anwendungs-Programmierschnittstelle (application programming interface, API),
um mehreren Anwendungen 30 das Kommunizieren mit der Smartcard 25 zu
ermöglichen.
-
Die
Kompatibilitätsschicht
oder "physikalische
Schicht" 36 spezifiziert
ein Mindestniveau der Kartendatenorganisation. Daten der Kartenvorrichtungs-Treiberschicht
umfassen unterstützte
Konfigurationen, Herstellercharakteristika und individuelle Vorrichtungscharakteristika
usw.
-
Gemäß der OpenCable®-Spezifikation
ermöglicht
die CIS der Basiskompatibilitätsschicht 40 den
Anschluss einer POD 10 zur Verwendung mit einer normgerechten Host-Vorrichtung 7.
Nach dem Verbinden der POD 10 oder der Smartcard 25 mit
der Host-Vorrichtung 7 liest die Host-Vorrichtung 7 die CIS,
um die Smartcard 25 oder die POD 10 zu identifizieren.
Die Host-Vorrichtung 7 kann die POD 10 auch mit
einer spezifischen Anwendung, beispielsweise einem Protokoll für bedingten
Zugriff wie etwa EIA-697-B (National Renewable Security Standard), identifizieren.
In der Smartcard-Speicherbetriebsart greift der Host 7 auf
den Attributspeicher der POD 10 zu, um die CIS zu lesen.
Da die POD 10 eine kundenspezifische Smartcard-Schnittstelle
ist, umfasst die CIS ein kundenspezifisches Schnittstellen-Subtupelfeld
(CCST-CIF), um die Schnittstellen-ID-Nummer (STCI_IFN) zu liefern,
und einen Tupel-Mindestsatz, wie er durch den in SCTE-DVS131r7 (Vorschlag
für Aufstellpunktmodul-Schnittstelle)
dargelegten Smartcard-Standard definiert ist.
-
Die
CIS ist stets dann, wenn die POD 10 gespeist wird und wenn
die POD 10 zurückgesetzt
wird, lesbar. Die CIS enthält
einen Tupel-Mindestsatz, wie er in der OpenCable®-Spezifikation
dargelegt ist.
-
Falls
die CIS keine erkannte POD-Bezeichnung enthält, erzeugt die Host-Vorrichtung 7 eine Fehlermeldung.
Somit verwendet die Host-Vorrichtung 7 eine identifizierte
POD 10 gemäß einem
vorgegebenen Befehlssatz des Datenprozessors 22.
-
Gemäß der vorliegenden
Erfindung enthält die
Smartcard 25 ein CIS-Tupel, das die Smartcard 25 als
Software-Upgrade bezeichnet, gemäß einem Befehlssatz
des Datenprozessors 22 der Host-Vorrichtung 7.
Im Gebrauch ist die POD 10 von der Host-Vorrichtung 7 getrennt,
während
die Smartcard 25 mit der POD-Schnittstelle 42 verbunden
ist. Die Smartcard 25 liefert, sobald sie als Software-Upgrade
identifiziert ist, einen Softwarecode an den CPU-Kanal zur Speicherung
in einem Speicher (nicht gezeigt) der Host-Vorrichtung 7.
Der von der Smartcard 25 gelieferte Code kann ein Code
zum Upgraden von Firmware/Software der Host-Vorrichtung 7 sein.
In einer alternativen Ausführungsform
wird die Smartcard 25, wie weiter unten beschrieben wird,
an der Anwendungsschicht identifiziert.
-
III.
In 3 ist nun spezifischer ein Ablaufplan, der ein
Verfahren zum Upgraden von Code der normgerechten Host-Vorrichtung 7 gemäß einer
beispielhaften Ausführungsform
der vorliegenden Erfindung darstellt, gezeigt.
-
Im
Schritt 302 wird gemäß dem Standardprotokoll
die POD-Schnittstelle auf das Einführen einer Smartcard 25 hin
zurückgesetzt.
Im Schritt 304 wird die CIS der Smartcard 25 von
dem Datenprozessor 22 der Host-Vorrichtung 7 gelesen.
In einer alternativen Ausführungsform
ist die Identifikation in der Anwendungsschicht verfügbar. Im
Schritt 306 ermittelt der Datenprozessor 22, ob
die Smartcard eine POD 10 ist. Wenn die Smartcard eine
POD 10 ist, wird die POD 10 im Schritt 308 initialisiert.
Wenn die Smartcard 25 als Software-Upgrade erkannt wird,
setzt der Prozess mit dem Schritt 310 fort; andernfalls
wird von der Host-Vorrichtung 7 eine Fehlermeldung erzeugt. Im
Schritt 310 wird die neue Software aus dem Speicher der
Smartcard 25 ausgelesen. Im Schritt 314 überwacht
der Datenprozessor 22 den Transfer bis zum Abschluss. Wenn
der Transfer nicht abgeschlossen werden kann, wird im Schritt 316 ein
Fehler angezeigt, wobei der Prozess im Schritt 318 bestimmt, ob
die Softwareaktualisierung erneut versucht werden soll. Wenn die
Aktualisierung erneut versucht werden soll, geht die Steuerung wie
oben beschrieben zum Schritt 310 über. Wenn die Aktualisierung nicht
erneut versucht werden soll, wird im Schritt 320 der temporäre Speicher
gelöscht,
worauf der Prozess endet. Wenn der Prozess im Schritt 314 bestimmt,
dass der Transfer korrekt ausgeführt
wurde, wird im Schritt 311 der Code von der Smartcard in
einen Permanentspeicher kopiert und im Schritt 312 die
Betriebssoftware überschrieben
und die Host-Vorrichtung neu gebootet.
-
Die
vorliegende Erfindung kann mehrere Schritte ausführen, um sicherzustellen, dass
das Software-Upgrade das richtige für die bestimmte Settop-Box
ist und dass das Upgrade korrekt kopiert ist, bevor die Host-Vorrichtung
neu gebootet wird, um die Upgrade-Software zu verwenden. Erstens
kann die Host-Vorrichtung 7 mit dem Erfassen, dass die Smartcard 24 ein
Software-Upgrade enthält,
Daten, die in der Karte 25 enthalten sind, vergleichen,
um sicherzustellen, dass das Upgrade mit der Host-Vorrichtung vereinbar
ist. Dies kann beispielsweise das Vergleichen von Hersteller- und
Modellnummerdaten sowie das Vergleichen nach Kompatibilität mit dem momentanen
Betriebssystem 32 und dem momentanen BIOS 34 (in 2 gezeigt)
umfassen.
-
Wenn
das System bestimmt, dass das Upgrade kompatibel bzw. vereinbar
ist, überträgt es die Steuerung
an ein Boot-Programm, das den eigentlichen Transfer ausführt. Das
Boot-Programm kann beispielsweise eine Prüfsumme oder einen zyklisch redundanten
Code (CRC) berechnen, wenn es die neue Betriebssoftware lädt, und
den berechneten Wert mit einem in der Smartcard 25 enthaltenen
entsprechenden Wert bei Abschluss des Prozesses vergleichen. Wenn
die zwei Werte nicht übereinstimmen,
kann die Bedienungsperson durch eine an der Anzeige vorrichtung oder
an einem LCD-Bildschirm der Host-Vorrichtung 7 angezeigte
Meldung aufgefordert werden, das Software-Upgrade erneut zu versuchen
oder zur Originalsoftware zurückzukehren,
die das Boot-Programm von dem in 2 gezeigten ROM 35 herunterlädt. Wenn
die Prüfsummen-
oder CRC-Werte passen, wird das Software-Upgrade permanent in den
Speicher 23 geschrieben. Nach erfolgreichem Abschluss der
Aktualisierung kann das Boot-Programm oder die aktualisierte Software
eine Nachricht an das Kopfende über
den OBB-Kanal senden, was angibt, dass ein Upgrade der Software vorgenommen
wurde. Dies kann beispielsweise wünschenswert sein, um das Kopfende über neue
Merkmale, die durch das Software-Upgrade ermöglicht werden, zu informieren.
Das Boot-Programm oder die Basissoftware von dem ROM 35 können ebenfalls
ein nicht erfolgreiches Upgrade angeben, indem sie eine Nachricht
an das Kopfendeüber
den OOB-Kanal senden.
-
Alternativ
kann, wie oben beschrieben worden ist, der Upgrade-Softwarecode
als Teil eines in der Smartcard 25 enthaltenen Anwendungsprogramms
vorgesehen sein. In dieser alternativen Ausführungsform der Erfindung kann
das Software-Upgrade
durch die Smartcard 25 oder das POD-Modul 10 bereitgestellt
werden. Die Upgrade-Software kann, wenn sie über das POD-Modul bereitgestellt wird,
beispielsweise in Anwendungsdaten enthalten sein, die zum National
Renewable Security Standard (NRSS) konform sind. Details über NRSS
können beispielsweise
in einer Veröffentlichung
mit dem Titel "Conditional
Access System for Terrestrial Broadcast", Doc. A/70, veröffentlicht von dem Advanced Television
Systems Committee (www.atsc.org), gefunden werden. Falls dieses
Upgrade-Verfahren verwendet wird, kann die auf der Host-Vorrichtung 7 momentan
laufende Betriebssoftware die Version und die Hardwarekompatibilität der neuen
Software prüfen,
die neue Betriebssoftware in einen Speicherbereich kopieren, die
Prüfsumme
oder CRC ausführen, um
sicherzustellen, dass die Software korrekt kopiert ist, und dann
das Boot-Programm aufrufen, um die momentane Betriebssoftware in
dem Speicher 23 zu überschreiben.
-
Selbstverständlich können von
Fachleuten Änderungen
an den Details, den Materialien und den Anordnungen der Teile, die
oben beschrieben und gezeigt worden sind, um das Wesen dieser Erfindung zu
erläutern,
vorgenommen werden, ohne vom Prinzip und Umfang der Erfindung, wie
er in den folgenden Ansprüchen
dargelegt ist, abzuweichen.