-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung betrifft Systeme zum Einschränken von
unerlaubtem Zugang zu digitalen Daten und insbesondere einen Mechanismus zum
Begrenzen des Zugangs zu solchen digitalen Daten entweder auf eine
bestimmte Maschine oder einen bestimmten Benutzer, und einen Mechanismus,
um begrenzten Zugang von einer bestimmten Maschine auf einen bestimmten
Benutzer zu konvertieren.
-
ALLGEMEINER
STAND DER TECHNIK
-
Der
Schutz von digitalen Daten vor unerlaubtem Zugriff ist eine primäre Sorge
von Software-Herstellern seit dem Zeitpunkt, zu dem Software-Hersteller
damit begonnen haben, Rechner-Software auf tragbaren Daten-Speichermedien
auszuliefern. Derartiger Schutz hat eine neue Bedeutung gewonnen, da
andere Formen von digitalen Daten jetzt ebenfalls auf tragbaren
Daten-Speichermedien transportiert werden. Beispielswiese lesen
und beschreiben die derzeitigen Arbeitsplatzrechner Daten-Speichermedien,
die auch für
allgegenwärtige
audiovisuelle Unterhaltung, wie beispielsweise Audio-CD-Platten (CDs)
und digitale Video-Platten (DVDs) verwendet werden. Daher sind normale
Arbeitsplatzrechner in der Lage, sehr wertvolle Daten so zu vervielfältigen, dass
exakte Kopien der ursprünglichen
Daten auf einfache Weise an Bekannte weiterverteilt werden können.
-
Eine
neue Entwicklung hat die Bedrohung des Handelswerts leicht kopierbarer
digitaler Daten ausgeweitet: das Internet. Jetzt können Einzelpersonen
wertvolle digitale Daten zum kostenlosen Kopieren durch Millionen
Leute eingeben und tun dies auch häufig. Ein solches Posting stellt
einen katastrophalen Fehlschlag aller Versuche dar, unerlaubtes
Kopieren zu verhindern.
-
Ein
früher
Versuch, unerlaubtes Kopieren von Software zu verhindern, bestand
darin, dass eine Hardware-Vorrichtung erforderlich war, die an einem Rechner
zum Ausführen
der Software anzubringen war. Solche Vorrichtungen wurden im Allgmeinen
als "Dongles" bezeichnet. Ein
Dongle enthielt entweder Identifikationsdaten, die von der Software
vor der Ausführung
geprüft
wurden, oder er enthielt Verschlüsselungsdaten
und/oder Logik zum Entschlüsseln
von Software vor der Ausführung.
Dongles waren üblicherweise
extern anzubringen, so dass Software auf einen anderen Rechner übertragen
werden konnte, indem der Dongle an dem anderen Rechner angebracht
wurde.
-
Dongles
erzielten auf dem Markt nie viel Erfolg. Ein Grund dafür ist, dass
mehrere Software-Produkte in jedem Rechner installiert werden können. Infolgedessen
hätten
viele Dongles an jedem Rechner angebracht werden müssen. Ein
weiterer Grund ist, dass das Hinzufügen einer neuen Hardware-Vorrichtung
zu einem Rechner unbeabsichtigte Ergebnisse haben konnte, die sich
auf den normalen Betrieb des Rechners störend auswirkten. Ein dritter
Grund ist, dass viele Leute mehrere Rechner besitzen, und dass das
regelmäßige Umsetzen
von einem von mehreren Dongles von einem Rechner auf einen anderen
eine erhebliche Unbequemlichkeit war. Im Allgemeinen bevorzugten
es Benutzer, keine neue Hardware an ihre Rechner anzuschließen, um
Software auszuführen,
wenn ein Software-Hersteller der Konkurrenz eine solche zusätzliche
Hardware nicht verlangte.
-
Maschinenbindung,
beispielsweise durch Einsatz von Dongles, ist im Allgemeinen für Leute
inakzeptabel, die eher audiovisuellen Inhalt als Rechner-Software
kaufen. Vielleicht scheint die Verbraucher-Öffentlichkeit in Folge der
tragbaren Natur von historischen Verbreitungsmedien mit audiovisuellem Inhalt
(z.B. Vinyl-Alben, Audio-CDs, Videoband, DVDs usw.) zu erwarten,
dass audiovisueller Inhalt auf allen Vorrichtungen wiedergegeben
werden darf, die der Käufer
besitzt. Beispielsweise erwartet ein Käufer einer Videoband-Kassette
eines bestimmten Films, dass er den Film auf jedem Videorekorder
mit einem kompatiblem Format ansehen kann. Daher ist eine strikte
Maschinenbindung von audiovisuellem Inhalt im Allgemeinen für die Verbraucher-Öffentlichkeit
inakzeptabel.
-
Ein
weiterer Mechanismus, mit dem Software-Hersteller versuchen, unerlaubtem
Kopieren von Software entgegenzuwirken, ist die Bindung der Software
an einen bestimmten Benutzer. Zum Beispiel kann das erfolgreiche
Ausführen
der Software abhängig
gemacht werden von der Eingabe eines Passworts durch den bestimmten
Benutzer. Solches stellt im Allgemeinen eine unzureichende Sicherheit
bereit, da der Benutzer das Passwort einem Freund oder Kollegen
zusammen mit einer unerlaubten Kopie der Software übermitteln
kann. Außerdem
stellt die Anforderung an einen Benutzer, sich an Passwörter für jedes
Software-Produkt und/oder jede audiovisuelle Arbeit erinnern zu
müssen,
auf die von dem Benutzer zugegriffen wird, eine beträchtliche
Unbequemlichkeit für
den Benutzer dar.
-
Im
Allgemeinen sollte man daran denken, dass der Kopierschutz für den Hersteller
von digitalen Daten, z.B. Software und/oder audiovisuellen Arbeiten,
von Nutzen ist und nicht dem Käufer
zugute kommt. Dementsprechend weisen Käufer solcher digitaler Daten
in bezug auf Unbequemlichkeit eine relativ geringe Toleranz auf.
Infolgedessen neigt die Verbraucher-Öffentlichkeit dazu, Daten von
Herstellern zu kaufen, die weniger Kopierschutz verwenden.
-
Was
benötigt
wird, ist ein Mechanismus, mit dem jeder urheberrechtlich schützbare Inhalt
von digitalen Speichermedien gegen unerlaubtes Kopieren geschützt wird,
während
er dem Besitzer derartiger digitaler Speichermedien ungehinderte
bequeme Nutzung und Genuss des Inhalts gewährt.
-
Dokument
US 4 757 534 offenbart einen
Code-Schutz unter Verwendung von Kryptografie, mit dem Codes unter
Verwendung von Hardware-gebundenen Schlüsseln an Hardware gebunden
werden.
-
Dokument
EP 0 766 165 offenbart ein
Lizenznehmer-Benachrichtigungssystem, das dem Benutzer die Benutzer-Identifizierungsdaten
anzeigt, bevor mit dem Betrieb begonnen wird.
-
KURZDARSTELLUNG DER ERFINDUNG
-
In Übereinstimmung
mit der vorliegenden Erfindung, wie sie in den Ansprüchen im
Anhang definiert ist, kann Inhalt von einem maschinengebundenen
Zustand in einen benutzergebundenen Zustand konvertiert werden,
ohne die Daten selbst zu modifizieren. Stattdessen werden Schlüssel, die
für den
Zugang zum Inhalt verwendet werden, vom maschinengebundenen Zustand
in den benutzergebundenen Zustand konvertiert.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Blockschaltbild eines Rechnersystems, das ein Server-Rechnersystem
umfasst, welches an ein Client-Rechnersystem gekoppelt ist über ein
Weitverkehrs-Rechnernetzwerk. Das Client-Rechnersystem umfasst eine
Inhalt-Wiedergabevorrichtung
(content player), die wiederum auf Daten zugreift, die in Übereinstimmung
mit der vorliegenden Erfindung gesichert sind.
-
2 ist
ein Blockschaltbild der Inhalt-Wiedergabevorrichtung von 1 in
größerem Detail.
-
3A – B sind
Blockschaltbilder des Sicherheits-Managers der Inhalt-Wiedergabevorrichtung
von 2 in größerem Detail.
-
4 ist
ein Blockschaltbild eines maschinengebundenen Passport-Generators
in Übereinstimmung
mit der vorliegenden Erfindung.
-
5 ist
ein Blickschaltbild eines tragbaren Voll-Passwort-Generators in Übereinstimmung
mit der vorliegenden Erfindung.
-
6A ist
ein Blockschaltbild eines Passport-Konverters, der einen maschinengebundenen
Passport in einen Voll-Passport konvertiert in Übereinstimmung mit der vorliegenden
Erfindung.
-
6B ist
ein logisches Ablaufdiagramm, das die Konvertierung eines Passports
in Übereinstimmung
mit einer alternativen Ausführungsform veranschaulicht.
-
7 ist
ein logisches Ablaufdiagramm der Authentisierung eines Benutzers
für digitale
Datengewinnung in Übereinstimmung
mit der vorliegenden Erfindung.
-
8 ist
ein logisches Ablaufdiagramm der Erfassung (acquisition) eines neuen
maschinengebundenen Passports während
der Benutzer-Authentisierung in Übereinstimmung
mit der vorliegenden Erfindung.
-
9 ist
ein logisches Ablaufdiagramm der Verarbeitung durch den Server-Prozess
von 1 für
eine Anforderung eines neuen maschinengebundenen Passports in Übereinstimmung
mit der vorliegenden Erfindung.
-
10 ist
ein logisches Ablaufdiagramm der Erfassung eines neuen Voll-Passports
während
der Benutzer-Authentisierung in Übereinstimmung
mit der vorliegenden Erfindung.
-
11 ist
ein logisches Ablaufdiagramm der Verarbeitung durch den Server-Prozess
von 1 für
eine Anforderung eines neuen Voll-Passports in Übereinstimmung mit der vorliegenden
Erfindung.
-
12 ist
ein logisches Ablaufdiagramm der Verarbeitung durch den Server-Prozess
von 1 für
eine Anforderung eines neuen Voll-Passports in Übereinstimmung mit der vorliegenden
Erfindung.
-
13 ist
ein logisches Ablaufdiagramm der Verarbeitung durch den Server-Prozess
von 1 für
eine Anforderung eines neuen Voll-Passports in Übereinstimmung mit der vorliegenden
Erfindung.
-
14 ist
ein logisches Ablaufdiagramm der Verarbeitung durch den Server-Prozess
von 1 für
eine Anforderung eines neuen Voll-Passports in Übereinstimmung mit der vorliegenden
Erfindung.
-
15 ist
ein logisches Ablaufdiagramm der Verarbeitung eines Schritts des
Logik-Ablaufdiagramms
von 14 in größerem Detail.
-
16 ist
ein logisches Ablaufdiagramm der Verarbeitung eines Schritts des
Logik-Ablaufdiagramms
von 14 in größerem Detail.
-
17 ist
ein Blockschaltbild, das die Zertifikat-Datenbank (certificate database)
von 1 in größerem Detail
zeigt.
-
18 ist
ein Blockschema, das den Account-Datensatz von 17 in
größerem Detail zeigt.
-
19 ist
ein Blockschema, das den Schlüssel-Datensatz
von 17 in größerem Detail
zeigt.
-
20 ist
ein Blockschaltbild, das den Historie-Datensatz von 17 in
größerem Detail
zeigt.
-
21 ist
ein Blockschema eines Zertifikats.
-
22 ist
ein Blockschema, das den Passport von 1 in größerem Detail
zeigt.
-
23 ist
ein Blockschema eines benutzergebundenen Passports.
-
24 ist
ein Blockschema eine maschinengebundenen Passports.
-
DETAILLIERTE
BESCHREIBUNG
-
In Übereinstimmung
mit der vorliegenden Erfindung kann Inhalt von einem maschinengebundenen
Zustand in einen benutzergebundenen Zustand konvertiert werden ohne
Modifizierung der Daten selbst. Stattdessen werden Schlüssel, die
für den
Zugang zum Inhalt verwendet werden, von dem maschinengebundenen
Zustand in den benutzergebundenen Zustand konvertiert. Insbesondere
werden die Schlüssel
in einer Passport-Datenstruktur
gehalten, die entweder eine Maschinen-Bindung oder eine Benutzer-Bindung
darstellen kann.
-
Das
System 100 zur Übergabe
digitaler Daten (digital data delivery system) (1)
umfasst ein Berechtigungssystem 102 und ein Client-Rechnersystem 104,
die über
ein Weitverkehrs-Rechnernetzwerk 106 miteinander gekoppelt
sind. In einer Ausführungsform
ist das Weitverkehrs-Rechnernetzwerk 106 das Internet.
Obwohl ein Weitverkehrsnetzwerk 106 gezeigt ist, versteht
es sich, dass die Prinzipien des hier beschriebenen Systems ebenfalls
auf andere Netzwerke anwendbar sind, wie beispielsweise auf lokale
Netzwerke. Das Berechtigungssystem 102 umfasst eine Inhalt-Datenbank 122 und
eine Zertifikat-Datenbank 124. Die Inhalt-Datenbank 122 enthält digitalen
Daten-Inhalt, der vom Berechtigungssystem 102 für die Verbreitung
zur Verfügung
steht. Derartiger Inhalt kann zum Beispiel Daten umfassen, die audiovisuelle
Arbeiten und/oder Rechner-Software darstellen.
-
Obwohl
die Inhalt-Datenbank 122 als in das Berechtigungssystem 102 aufgenommen
dargestellt ist, versteht es sich, dass es vorteilhaft sein könnte, die
Inhalt-Übergabe
von der Zugangsberechtigung zu trennen und die Inhalt-Datenbank 122 auf
einem anderen Server-System anzuordnen. Ein Vorteil ist, dass die
Inhalt-Übergabe
dazu tendiert, die Übertragung
großer
Datenmengen zu umfassen. Derartige Übertragungen profitieren davon,
von verteilten Übergabe-Servern
(delivery servers) übergeben
zu werden, die in der Nähe
von Client-Rechnersystemen angeordnet sind, die den übergebenen
Inhalt empfangen. Umgekehrt bezieht die Authentisierung kleine Transaktionen
ein, die weniger abhängig
von schnellen Daten-Übertragungsgeschwindigkeiten sind,
profitiert aber von einer zentralen Datenbank mit systemübergreifender
Authentisierung. Der Einfachheit halber werden sowohl Server- als
auch Authentisierungs-Funktionen vom Berechtigungssystem 102 abgewickelt,
und das Berechtigungssystem 102 umfasst sowohl die Inhalt-Datenbank 122 als auch
die Zertifikat-Datenbank 124.
-
Die
Zertifikat-Datenbank 124 enthält Daten, welche die Art und
Weise darstellen, in der vorher verteilter Inhalt der Inhalt-Datenbank 122 geschützt wird,
entweder für
ein bestimmtes Client-Rechnersystem oder für einen bestimmten menschlichen Käufer. Die
Arten von Informationen, die in der Zertifikat-Datenbank 124 gespeichert
sind, werden im Folgenden vollständiger
beschrieben. Kurz gefasst enthalten derartigen Informationen digitale
Zertifikate, die bekannte Authentisierungs-Datenstrukturen sind,
z.B. die bekannte Zertifikat-Datenstruktur ITU-T X.509.
-
Das
Berechtigungssystem 102 enthält auch einen Authentisierungs-Server 126,
der alle oder Teil von einem oder mehreren Rechnerprozessen ist,
die im Berechtigungssystem 102 ausgeführt werden. Der Authentisierungs-Server 126 empfängt Abfragen über das
Weitverkehrs-Netzwerk 106 und bedient solche Abfragen.
Derartige Abfragen umfassen Abfragen von maschinengebundener Sicherheit
für übergebenen
Inhalt, von benutzergebundener Sicherheit für übergebenen Inhalt und für die Sicherheits-Konvertierung
von übergebenem
Inhalt in einer Weise, die im Folgenden vollständiger beschrieben wird.
-
Das
Client-Rechnersystem 104 enthält eine Datenbank 144 mit
erworbenem Inhalt (acquired content database), eine Benutzer-Datenbank 146,
einen oder mehrere Passports, wie beispielsweise Passport 148,
eine Hardware-Kennung 140 und eine Inhalt-Wiedergabevorrichtung 142.
Die Datenbank 144 mit erworbenem Inhalt enthält Inhalt,
der aus der Inhalt-Datenbank 122 und vielleicht ähnlichen
Inhalt-Datenbanken erworben wurde. Derartiger erworbener Inhalt
wird in einer Weise, die im Folgenden vollständiger beschrieben wird, unter
Verwendung von einem oder mehreren Passports geschützt.
-
Die
Benutzer-Datenbank 146 speichert Informationen für einen
oder mehrere Benutzer des Client-Rechnersystems 104. Solche
Informationen umfassen beispielsweise Passwörter, mit denen sich Benutzer
selbst authentifizieren können. "Passwort" wird hier zum Beschreiben
aller Daten verwendet, die von einem Benutzer zu Authentisierungszwecken
bereitgestellt werden. Dementsprechend wird "Passwort" hier verwendet, um sowohl aus einem
Wort bestehende Passwörter
als auch aus mehreren Worten bestehende Passwörter zu beschreiben, die manchmal
allgemein als Kennphrasen (passphrases) bezeichnet werden.
-
Passports,
wie beispielsweise der Passport 148, stellen den Mechanismus
dar, durch den erworbener Inhalt geschützt wird in der Datenbank 144 mit erworbenem
Inhalt. Passports werden von dem Authentisierungs-Server 126 ausgegeben.
Ein Passport kann Inhalt für
ein bestimmtes Client-Rechnersystem und/oder einen bestimmten Benutzer
in einer Weise schützen,
die im Folgenden vollständiger
beschrieben wird.
-
Die
Hardware-Kennung 140 identifiziert eindeutig das Client-Rechnersystem 104 in
der Zertifikat-Datenbank 124. Zusätzlich wird die Hardware-Kennung 140 von
Daten abgeleitet, die im Client-Rechnersystem 104 schwierig
zu ändern
sind, d.h. sie ist ausschließ lich
lesbar. Beispielsweise ist die Hardware-Kennung 140 ein
Daten-Hash, das für eine
oder mehrere Hardware-Komponenten des Client-Rechnersystems 104 eindeutig
ist, wie beispielsweise (i) eine Seriennummer eines Prozessors des Client-Rechnersystems 104,
(ii) eine MAC-Adresse einer Netzwerk-Zugangskarte, über die
das Client-Rechnersystem 104 auf ein Weitverkehrs-Netzwerk
zugreift, und (iii) Seriennummern von einem oder mehreren Festplattenlaufwerken,
die im Client-Rechnersystem 104 installiert sind. In dieser
veranschaulichenden Ausführungsform
wird die Hardware-Kennung 140 unter Verwendung des Interlok®-Software-Werkzeugsets
gebildet, das von PACE Anti-Piracy of San Jose, Kalifornien, erhältlich ist.
-
Die
Inhalt-Wiedergabevorrichtung 142 ist alle oder Teil von
einem oder mehreren Rechnerprozessen, die im Client-Rechnersystem 104 ausgeführt werden,
und gibt erworbenen Inhalt aus der Datenbank 144 mit erworbenem
Inhalt wieder, auf die hier manchmal einfach als "erworbener Inhalt" oder als "erworbener Inhalt 144" verwiesen wird.
Wenn beispielsweise erworbener Inhalt Audio-Arbeiten darstellt,
wandelt die Inhalt-Wiedergabevorrichtung 142 Daten von
erworbenem Inhalt in Daten um, die entsprechend für die Wiedergabe über eine
Sound-Karte und Lautsprecher des Client-Rechnersystems 104 formatiert
sind. Wenn erworbener Inhalt audiovisuelle Arbeiten darstellt, wandelt
die Inhalt-Wiedergabevorrichtung 142 in ähnlicher
Weise Daten von erworbenem Inhalt in Daten um, die entsprechend
für die Wiedergabe über eine
Sound-Karte und Lautsprecher und für eine Video-Anzeigevorrichtung
des Client-Rechnersystems 104 formatiert sind. Des Weiteren,
wenn erworbener Inhalt Rechner-Software ist, decodiert die Inhalt-Wiedergabevorrichtung 142 Rechner-Anweisungen
aus dem erworbenen Inhalt und veranlasst, dass diese decodierten
Rechner-Anweisungen durch das Client-Rechnersystem 104 ausgeführt werden.
Erworbener Inhalt kann im Allgemeinen jede Art von Daten enthalten,
einschließlich, ohne
Einschränkung,
(i) audiovisuelle Arbeiten, wie beispielsweise Musik, anderen aufgezeichneten
Ton, Bewegtbild-Video und Festbilder; (ii) Dokumente in solchen
Formaten wie ASCII-Text, Rich-Text-Format (RTF-Format), Microsoft® Word
und das portable Dokumentformat (PDF-Format) von Adobe® Acrobat®; und
(iii) ablauffähige
Rechner-Software.
-
Die
Inhalt-Wiedergabevorrichtung 142 ist in größerem Detail
in 2 dargestellt. Die Inhalt-Wiedergabevorrichtung 142 enthält eine
Entschlüsselungsvorrichtung 202,
die erworbenen Inhalt 144 unter Verwendung eines Master-Schlüssels 208 entschlüsselt, der
von einem Sicherheits-Manager 206 bereitgestellt wird.
In dieser veranschaulichenden Ausführungsform verwendet die Entschlüsselungsvorrichtung 202 symmetrische
Schlüssel-Entschlüsselungsalgorithmen,
wie beispielsweise FIPS 46.2 DES oder RSA Security's RC4 hinsichtlich
der Leistungsfähigkeit.
Leistungsfähigkeit
ist bei dieser Ausführungsform
wichtig, da der erworbene Inhalt von einer Decodier-Vorrichtung 204 für Echtzeit-Wiedergabe
sowohl entschlüsselt
als auch decodiert werden muss. Wie hier verwendet, bedeutet Echtzeit-Wiedergabe,
dass die Wiedergabe durch die Inhalt-Wiedergabevorrichtung 142 eine
Mindestmenge von entschlüsselten
und decodierten Daten aus dem erworbenen Inhalt 144 pro
Zeiteinheit erfordert. Wenn beispielsweise der erworbene Inhalt 144 Audio-Arbeiten darstellt,
muss die Inhalt-Wiedergabevorrichtung 142 im Allgemeinen
44.100 Audio-Abtastungen pro Sekunde entschlüsseln und decodieren – 176.400 Bytes
pro Sekunde für
CD-Audioqualität
in Stereo.
-
Während symmetrische
Schlüssel-Entschlüsselung
Leistungsfähigkeit
beim Entschlüsseln von
erworbenem Inhalt 144 ermöglicht, erfordert solches,
dass der Master-Schlüssel 208 vom
Server-Prozess 126 (1), der
den Master-Schlüssel 208 (2)
zum Verschlüsseln
des Inhalts verwendet, irgendwie zur Inhalt-Wiedergabevorrichtung 142 übertragen
wird. Der Sicherheits-Manager 206 leitet den Master-Schlüssel 208 auf
sichere Weise ab.
-
Der
Sicherheits-Manager 206 ist in größerem Detail in den 3A und 3B dargestellt. 3A zeigt
die Ableitung des Master-Schlüssels 208 von
einem benutzergebundenen Passport 148A, und 3B zeigt
die Ableitung des Master-Schlüssels 208 von
einem maschinengebundenen Passport 148B. Der Sicherheits-Manager 206 enthält eine
Entschlüsselungsvorrichtung 306,
die einen geheimen Schlüssel 304 verwendet,
um den Master-Schlüssel 208 aus
einem Medienschlüssel 302 zu
entschlüsseln,
der in dem erworbenen Inhalt 144 enthalten ist. Der geheime
Schlüssel 304 ist
ein geheimer Schlüssel
eines geheimen/öffentlichen
Schlüsselpaars
in der Zertifikat-Datenbank 124 (1). Die
Entschlüsselungsvorrichtung 306 (3A)
verwendet asymmetrische Schlüssel-Entschlüsselung,
z.B. den bekannten öffentlichen
RSA-Schlüsselalgorithmus
von RSA Security.
-
Symmetrische
und asymmetrische Schlüssel-Verschlüsselung/Entschlüsselung
sind bekannt, werden aber der Vollständigkeit halber hier kurz beschrieben.
Symmetrische Schlüssel-Verschlüsselung
verwendet den gleichen Schlüssel
zum Verschlüsseln
und Entschlüsseln
von Daten. Beispielsweise werden Daten unter Verwendung eines spezifischen
Datenmusters verschlüsselt,
das als ein Schlüssel
bezeichnet wird. Beim Verschlüsseln
der Daten werden die Daten in einer Weise gescrambelt, die ein wenig
wahllos erscheint und die Daten nicht entzifferbar erscheinen lässt. Die
verschlüsselten
Daten können
in ihren ursprünglichen "eindeutigen" Zustand zurückversetzt
werden, indem die Daten unter Verwendung des gleichen spezifischen
Schlüssels entschlüsselt werden.
-
Asymmetrische
Schlüssel-Verschlüsselung verwendet
zwei Schlüssel,
die miteinander verknüpft sind,
um ein Paar zu bilden. Ein Schlüssel
wird geheim gehalten, und der andere Schlüssel wird öffentlich gemacht; dementsprechend
wird das Schlüsselpaar
manchmal als geheimes/öffentliches
Schlüsselpaar
bezeichnet. Die Verschlüsselung
mit einem der beiden Schlüssel
bildet verschlüsselte
Daten, die mit dem anderen Schlüssel
des Paars entschlüsselt
werden können.
Die Schlüssel
des Paars werden daher manchmal allgemein als zueinander reziprok
bezeichnet. Die Inhalt-Wiedergabevorrichtung 142 (1)
kann Daten kryptografisch signieren, indem die Daten unter Verwendung
des geheimen Schlüssels
verschlüsselt
werden. Jeder Inhaber des öffentlichen
Schlüssels
der Inhalt-Wiedergabevorrichtung 142 kann die Signatur überprüfen, indem
die Daten unter Verwendung des öffentlichen
Schlüssels
der Inhalt-Wiedergabevorrichtung 142 entschlüsselt werden.
In ähnlicher
Weise kann jeder Inhaber des öffentlichen
Schlüssels
der Inhalt-Wiedergabevorrichtung 142 Daten unter Verwendung
des öffentlichen Schlüssels so
verschlüsseln,
dass die Daten nur unter Verwendung des geheimen Schlüssels der
Inhalt-Wiedergabevorrichtung 142 entschlüsselt werden
können.
Beispielsweise verschlüsselt
der Server-Prozess 126 den Master-Schlüssel 208 (3) für Passport 148A unter
Verwendung des öffentlichen
Schlüssels
eines Schlüsselpaars,
um den Medienschlüssel 302 zu
bilden, und unter Aufnahme des geheimen Schlüssels des Paars in den Passport 148A.
Dementsprechend kann der Medienschlüssel 302 unter Verwendung
des geheimen Schlüssels entschlüsselt werden,
der im Passport 148A gespeichert ist, d.h. dem geheimen
Wiedergabevorrichtungs-Schlüssel
(player private key).
-
Der
Sicherheits-Manager 206 erhält den geheimen Schlüssel 304 entweder
von einem benutzergebundenen Passport 148A (3A)
oder einem maschinengebundenen Passport 148B (3B). Ein
Passport ist eine Datenstruktur, durch die ein geheimer Schlüssel, der
zum Entschlüsseln
des Medienschlüssels,
z.B. Medienschlüssel 208,
von erworbenem Inhalt verwendet wird, entweder an einen Benutzer
oder ein Rechnersystem gebunden ist. Ein benutzergebundener Passport
ist an einen bestimmten Benutzer gebunden und kann auf jedes Rechnersystem übertragen
werden, in dem der Benutzer den erworbenen Inhalt wiedergeben möchte. Dementsprechend
wird ein benutzergebundener Passport manchmal als ein Voll-Passport
oder ein tragbarer Passport bezeichnet. Ein maschinengebundener Passport
ist an ein bestimmtes Rechnersystem zur Wiedergabe von erworbenem
Inhalt gebunden und kann im Allgemeinen von jedem Benutzer des Rechnersystems
verwendet werden.
-
Es
sollte erwähnt
werden, dass Sicherheit durch die Entschlüsselungsvorrichtung 306 in
Verbindung mit dem Medienschlüssel 302 und
dem privaten Schlüssel 304 bereitgestellt
wird. Die Passports 148A–B stellen
eine Datenstruktur bereit, in welcher der private Schlüssel 304 entweder
an einen Benutzer oder ein spezifisches Rechnersystem gebunden werden
kann. Eine solche Bindung schränkt
die Tragbarkeit von erworbenem Inhalt ein, während für den Benutzer die Wahlmöglichkeit
bereitgestellt wird, welche Art von Bindung zweckmäßiger ist.
Mit anderen Worten, der Benutzer kann entweder einen maschinengebundenen
oder einen benutzergebundenen Passport wählen.
-
Zur
Erleichterung des Verständnisses
und der Würdigung
dieser Flexibilität
im Hinblick auf geheime Schlüsselbindung
wird die Struktur eines Passports beschrieben. Der Passport 148 (1) kann
entweder maschinengebunden oder benutzergebunden sein. Der Passport 148 ist
in größerem Detail
in 22 dargestellt, die Komponenten zeigt, die maschinengebundenen
und benutzergebundenen Passports gemeinsam sind. Der Passport 148 enthält ein Feld
Passport-Informationen 2204, ein Feld Signatur-Algorithmus 2206 und
ein Feld Signatur 2208.
-
Das
Feld Passport-Informationen 2204 enthält Daten, welche die wesentlichen
Passport-Informationen aufweisen, einschließlich eines geheimen Schlüssels, mit
dem erworbener Inhalt, der an den Passport 148 gebunden
ist, entschlüsselt
werden kann. Der Typ und die Struktur von Daten, die im Feld Passport-Informationen 2204 gespeichert
sind, hängen
von dem Typ des Passports ab. Beispielsweise ist Passport 148A (3A)
ein benutzergebundener Voll-Passport und enthält Passport-Informationen 2204A des
Typs und der Struktur, die im Folgenden in dem Kontext von 23 beschrieben
werden. Passport 148B (3B) ein
maschinengebundener Passport und enthält Passport-Informationen 2204B des
Typs und der Struktur, die im Folgenden in dem Kontext von 24 beschrieben
werden.
-
Das
Feld Signatur-Algorithmus 2206 und das Feld Signatur 2208 spezifizieren
gemeinsam eine kryptografische Signatur des Felds Passport-Informationen 2204.
Das Feld Signatur-Algorithmus 2206 spezifiziert den spezifischen
Algorithmus und alle Parameter davon, die zum kryptografischen Signieren des
Felds Passport-Informationen 2204 verwendet werden. Das
Feld Signatur 2208 enthält
Daten, welche die daraus resultierende kryptografische Signatur
unter Verwendung des geheimen Schlüssels des Authentisierungs-Servers 126 darstellen.
Das Feld Signatur-Algorithmus 2206 und das Feld Signatur 2208 stellen
einen wirkungsvollen Mechanismus bereit, um zu ermitteln, ob Daten.
die in den Passport-Informationen 2204 gespeichert sind,
manipuliert worden sind. Wenn beispielsweise ein Cracker Daten ändert, die
in den Passport-Informationen 2204 gespeichert sind, muss
der Cracker eine entsprechende Signatur so erstellen, dass eine
solche Manipulation unentdeckt bliebe. Da der geheime Schlüssel des
Authentisierungs-Servers 126 jedoch sorgfältig geschützt wird
und strengster Geheimhaltung unterliegt, ist das Fälschen einer
solchen kryptografischen Signatur besonders schwierig.
-
Die
Passport-Informationen 2204B (24) des
maschinengebundenen Passports 148B werden im Folgenden
in dem Kontext von 3B beschrieben. Die Passport-Informationen 2204A (23) enthalten
die folgenden Datenkomponenten: (i) Benutzer-Zertifikat 2302,
(ii) geheimer Schlüssel 2304, (iii)
geheime Benutzer-Informationen 2306 und (iv) Registrierungsschlüssel 2308.
-
Das
Benutzer-Zertifikat 2302 ist ein digitales Zertifikat,
mit dem der Benutzer authentifiziert wird. Digitale Zertifikate
und ihre Verwendung bei der Authentisierung sind bekannt. In einer
Ausführungsform weist
das Benutzer-Zertifikat 2302 die Form eines digitalen ITU-T
X.509-Zertifikats auf.
-
Das
Benutzer-Zertifikat 2302 enthält einen öffentlichen Schlüssel 2320,
Gültigkeits-Datumsangaben,
eine Zertifikat-Seriennummer 2324 und eine digitale Signatur 2326.
Der öffentliche
Schlüssel 2320 ist
das Gegenstück
zum geheimen Schlüssel 2304.
Um Inhalt an den Benutzer zu binden, an den der benutzergebundene
Passport 148A gebunden ist, wird der Master-Schlüssel unter
Verwendung des öffentlichen
Schlüssels 2320 so
verschlüsselt,
dass nur der geheime Schlüssel 2304 den
Master-Schlüssel
aus dem Medienschlüssel 302 entschlüsseln kann.
Die Gültigkeits-Datumsangaben 2322 geben eine
Zeitdauer an, während
der das Benutzer-Zertifikat 2302 als gültig betrachtet wird. Die Zertifikat-Seriennummer 2324 identifiziert
eindeutig das Benutzer-Zertifikat 2302 in der Zertifikat-Datenbank 124 (1).
Die digitale Signatur 2326 ist eine digitale Signatur,
die durch die Einheit, die das Benutzer-Zertifikat 2302 ausgibt,
angehängt
und dazu verwendet wird, zu überprüfen, dass
das Benutzer-Zertifikat 2302 (i) nicht manipuliert worden
ist und (ii) von der entsprechenden Zertifikat-Instanz ausgestellt
wurde.
-
Der
geheime Schlüssel 2304 ist
der geheime Schlüssel
des Schlüsselpaars,
der zum Verschlüsseln
des Master-Schlüssels 208 (3A)
verwendet wird, um dadurch den Medienschlüssel 302 zu bilden,
z.B. der geheime Schlüssel 304.
Dementsprechend führt
das Entschlüsseln
des Medienschlüssels 302 durch
die Entschlüsselungsvorrichtung 306 des Sicherheits-Managers 206 unter
Verwendung des geheimen Schlüssels 304 zum
Master-Schlüssel 208.
Außerdem
ist der geheime Schlüssel 2304 der Gegen-Schlüssel zum öffentlichen
Schlüssel 2320 des
Benutzer-Zertifikats 2302. Der geheime Schlüssel 2304 wird
unter Verwendung des Registrierungsschlüssels 2308 verschlüsselt, der
im Folgenden beschrieben wird.
-
Die
geheimen Benutzer-Informationen 2306 enthalten Informationen über den
Benutzer, an den der Passport 148A gebunden ist. Solche
Informationen sind vorzugsweise geheim und werden vom Benutzer geschützt. Geheime
Benutzer-Informationen 2306 werden vom Client-Rechnersystem 104 bei
der Wiedergabe von erworbenem Inhalt 144 angezeigt. Dementsprechend
schreckt der Benutzer davor zurück,
den benutzergebundenen Passport 148A gemeinsam zu nutzen,
da dies erfordern würde,
geheime Benutzer-Informationen 2306 ebenfalls
gemeinsam zu nutzen. Die geheimen Benutzer-Informationen 2306 enthalten
den Namen 2362 des Benutzers und die Kreditkarten-Angaben 2364 des
Benutzers. Die Kreditkarten-Angaben 2364 können beispielsweise
die Kreditkartennummer, das Ablaufdatum und die Rechnungsadresse
enthalten. Während
der Registrierung des Benutzers werden die Kreditkarten-Angaben 2364 überprüft, um sicherzustellen, dass
die geheimen Benutzer-Informationen korrekt sind. Wenn die Kreditkarten-Informationen 2364 nicht korrekt
sind, z.B. eine Nummer einer gestohlenen Kre ditkarte enthalten,
die vom Benutzer zu Registrierungszwecken eingegeben wird, wird
der Benutzer nicht angemessen von der gemeinsamen Nutzung geheimer
Informationen 2306 und damit des Passports 148A und
jedes daran gebundenen Inhalts abgehalten.
-
Die
geheimen Benutzerinformationen 2306 werden unter Verwendung
des Registrierungsschlüssels 2308 verschlüsselt. Der
Registrierungsschlüssel 2308 wird
wiederum unter Verwendung eines Passworts verschlüsselt, das
vom Benutzer vorgegeben wird. Dementsprechend ist das Passwort des
Benutzers zum Entschlüsseln
des Registrierungsschlüssels 2308 erforderlich,
der wiederum zum Entschlüsseln
des geheimen Schlüssels 2304 und
der geheimen Benutzer-Informationen 2306 erforderlich ist. Der
Registrierungsschlüssel 2308 ist
in der Zertifikat-Datenbank 124 in einem Format gespeichert,
das ohne das Passwort des Benutzers so wiederherstellbar ist, dass
ein Registrierungsschlüssel 2304 für ein neues
Passwort generiert werden kann, für den Fall, dass der Benutzer
sein Passwort vergisst.
-
Die
Zufallszahl 2310 speichert pseudo-zufällige Daten und ist enthalten,
um die Kryptoanalyse von verschlüsselten
Passport-Informationen 2204A zu vereiteln. Der Authentisierungs-Server 126 generiert
jedes Mal eine neue Zufallszahl, wenn der Passport 148A wieder
ausgegeben wird. Die Passport-Informationen 2204A werden über das Weitverkehrs-Netzwerk 106 (1)
in einem verschlüsselten
Format übertragen.
Dementsprechend verbreiten sich Änderungen
an der Zufallszahl 2310 durch die Passport-Informationen 2204A so,
dass ansonsten identische Kopien von Passport-Informationen 2204A in
verschlüsselter
Form völlig
anders aussehen. In einer Ausführungsform
wird die Zufallszahl 2310 nur beim Übertragen von Passport-Informationen 2204A,
beispielsweise über
das Weitverkehrs-Netzwerk 106, verwendet, und sie ist nicht
in dem beständigen
Platten-Datensatz (persistent disk record) von Passport 148A gespeichert.
-
Zum
Erhalten des geheimen Schlüssels 304 (3A)
entschlüsselt
die Entschlüsselungsvorrichtung 310 des
Sicherheits-Managers 206 den Registrierungsschlüssel 2308 unter
Verwendung des vom Benutzer vorgegebenen Passworts. Der Benutzer gibt
das Passwort unter Verwendung üblicher
Benutzerschnittstellen-Techniken als Reaktion auf eine Aufforderung
vor, die dem Benutzer durch die Inhalt-Wiedergabevorrichtung 142 angezeigt
wird. Das Ergebnis des Entschlüsselns
des Registrierungsschlüssels 2308 wird
von der Entschlüsselungsvorrichtung 312 als
ein Schlüssel
zum Entschlüsseln
des geheimen Schlüssels 304 aus
dem geheimen Schlüssel 2304 verwendet.
Der geheime Schlüssel 304 wird
in der vorher beschriebenen Weise verwendet, um den Master-Schlüssel 208 zu
erhalten, mit dem erworbener Inhalt für die Wiedergabe entschlüsselt werden
kann.
-
Der
maschinengebundene Passport 148B (3B) ist
an das Client-Rechnersystem 104 und nicht an einen bestimmten
Benutzer gebunden. Demzufolge zeigt die Wiedergabe von erworbenem Inhalt,
der an den Passport 148B gebunden ist, keine geheimen Benutzer-Informationen
an, wie beispielsweise die privaten Benutzer-Informationen 2306 (23).
Stattdessen wird der geheime Schlüssel 2404 (3B)
des maschinengebundenen Passport 148B verschlüsselt, indem
als ein Schlüssel
die Hardware-Kennung
des Rechnersystems verwendet wird, an das der Passport 148B gebunden
ist. In diesem Beispiel ist der Passport 148B an das Client-Rechnersystem 104 (1)
gebunden, und der geheime Schlüssel 2404 (3B)
wird unter Verwendung der Hardware-Kennung 140 verschlüsselt. Dementsprechend
wird der geheime Schlüssel 2404 durch
die Verschlüsselungsvorrichtung 308 verschlüsselt, wobei
die Hardware-Kennung 140 als
ein Schlüssel
verwendet wird, um damit den geheimen Schlüssel 304 zu erhalten.
Daher ist der Passport 148B nur dann von Nutzen, wenn die
Hardware-Kennung 140 verfügbar ist,
d.h. wenn der Passport 148B innerhalb des Client-Rechnersystems 104 verwendet wird.
Wenn der Passport 148B in ein anderes Rechnersystem kopiert
wird, das eine Hardware-Kennung aufweist, die der Hardware-Kennung 140 nicht
entspricht, kann der geheime Schlüssel 304 nicht von dem
geheimen Schlüssel 2404 abgeleitet
werden. Dementsprechend bindet der Passport 148B erworbenen
Inhalt 144 an das Client-Rechnersystem 104.
-
Wenn
der Inhalt der Inhalt-Datenbank 122 (1)
gekauft worden ist, unterstützt
der Authentisierungs-Server 126 das Binden des gekauften
Inhalts an entweder das Rechnersystem, auf das der Inhalt geliefert
werden soll, oder an den kaufenden Benutzer. Dem Benutzer werden
die Optionen hinsichtlich der Art der bevorzugten Bindung bereitgestellt.
In einer Ausführungsform
wird die Option dem Benutzer beim ersten Installieren der Inhalt-Wiedergabevorrichtung 142 in
dem Client-Rechnersystem angeboten, und die Auswahl wird aufgezeichnet
und eingehalten, bis der Benutzer aktiv eine andere Wahl trifft.
Wenn der Benutzer auf den Inhalt auf mehreren Rechnersystemen zugreifen
möchte,
(oder wenigstens auf einem Rechnersystem, das sich von dem unterscheidet,
auf dem der Kauf getätigt
wurde), wählt
der Benutzer die Benutzerbindung, die durch einen Passport ermöglicht wird,
wie beispielsweise den Passport 148A (3A).
Wenn der Benutzer es hingegen vorziehen sollte, keine geheimen Benutzer-Informationen
bereitzustellen, wie beispielsweise die geheimen Benutzer-Informationen 2306 (23) und
gewillt ist, auf den Inhalt nur auf dem bestimmten Rechnersystem
zuzugreifen, über
das der Kauf getätigt
wird, wählt
der Benutzer die Maschinenbindung, die durch einen Passport ermöglicht wird,
wie beispielsweise den Passport 148B (3B).
-
Zum
Vorbereiten von Inhalt für
die Bindung entweder an einen Benutzer oder ein Rechnersystem, wird
der Inhalt unter Verwendung eines Master-Schlüssels 208 (4)
verschlüsselt,
der wiederum durch eine Verschlüsselungsvorrichtung 406 verschlüsselt wird,
um den Medienschlüssel 302 zu
bilden. Der Medienschlüssel 302 ist
in dem verschlüsselten
Inhalt enthalten. Ein öffentlicher
Schlüssel 304B wird
in Verbindung mit asymmetrischer Verschlüsselung verwendet, um den Medienschlüssel 302 zu
bilden, wie beispielsweise diesen Medienschlüssel 302, und daher
kann der verschlüsselte
Inhalt selbst nur mit dem privaten Schlüssel 304 entschlüsselt werden.
-
Zum
Binden von Inhalt an ein bestimmtes Rechnersystem enthält der Authentisierungs-Server 126 einen
Generator 404 für
maschinengebundene Passports (4). In der
Zertifikat-Datenbank 124 (1) speichert
der Authentisierungs-Server 126 geheime/öffentliche
Schlüsselpaare
für alle
Inhalt-Wiedergabevorrichtungen, die mit dem Authentisierungs-Server 126 registriert
sind, wie beispielsweise die Inhalt-Wiedergabevorrichtung 126.
Zur Erleichterung des Verständnisses
und der Würdigung des
Betriebs des Authentisierungs-Servers 126 werden der Typ
und die Struktur der in der Zertifikat-Datenbank 124 gespeichert Daten
vollständiger
in dem Kontext von 17 beschrieben.
-
Die
Zertifikat-Datenbank 127 enthält eine Anzahl von Tabellen,
nämlich
(i) eine Tabelle mit Account-Datensätzen 1702, (ii) eine
Tabelle mit Schlüssel-Datensätzen 1704 und
(iii) eine Tabelle mit Historie-Datensätzen 1706. Ein Account-Datensatz,
wie beispielsweise der Account-Datensatz 1702, speichert
zu einem bestimmten Benutzer zugehörige Daten in einem Inhalt-Verteilungssystem 100 (1). Ein
Schlüssel-Datensatz,
wie beispielsweise der Schlüssel-Datensatz 1704 (17),
weist ein geheimes/öffentliches
Schlüsselpaar
auf, das zum Verschlüsseln
von übergebenem
Inhalt in der vorher be schriebenen Weise verwendet wird, und enthält Verwendungs-Parameter
des Schlüsselpaars,
wie beispielsweise Ablauf und Begrenzungen, wie oft das Schlüsselpaar
wieder ausgegeben werden kann. Das erneute Ausgeben eines Schlüsselpaars
wird im Folgenden in größerem Detail
beschrieben. Ein Historie-Datensatz, wie beispielsweise der Historie-Datensatz 1706,
weist ein Ereignis auf, wie beispielsweise das erneute Ausgeben
eines Schlüsselpaars oder
die Konvertierung eines Passports von maschinengebunden in benutzergebunden.
Betrug und/oder unerlaubtes Kopieren von Passports und/oder Inhalt kann
manchmal durch Überprüfen der
Historie-Datensätze
erkannt werden. Beispielsweise deuten Anforderungen durch den gleichen
Benutzer von vielen verschiedenen Client-Rechnersystemen, verlorene Schlüssel zu
ersetzen, darauf hin, dass ein Benutzer zahlreiche Kopien seines
Passports für
andere bereitgestellt hat.
-
Der
Account-Datensatz 1702 ist in größerem Detail in 18 gezeigt
und enthält
die folgenden Felder: (i) Feld Seriennummer 1802, (ii)
Feld Name 1804, (iii) Feld E-Mail-Adresse 1806, (iv) Feld Land 1808,
(v) Feld Frage 1810, (vi) Feld Antwort 1812, (vii)
Feld Status 1814 und (viii) Feld Art 1816. Das Feld
Seriennummer 1802 speichert eine Seriennummer, die in den
Seriennummern eindeutig ist, die im Authentisierungs-Server 126 verarbeitet
werden. Seriennummern werden in dieser veranschaulichenden Ausführungsform
zum Verknüpfen
von zugehörigen Datensätzen verwendet.
Wenn beispielsweise der Account-Datensatz 1702 einen spezifischen
Benutzer darstellt, und der Schlüssel-Datensatz 1704 (19)
das geheime/öffentliche
Schlüsselpaar
des Benutzers darstellt, entspricht die Seriennummer, die in dem
Feld Seriennummer 1802 (18) gespeichert
ist, der Seriennummer, die in dem Feld Seriennummer 1902 (19)
dargestellt ist. Des Weiteren können
die Historie-Datensätze,
die zu dem Account und den Schlüsseln
des Benutzers gehören,
gefunden werden, indem Historie-Datensätze mit einer entsprechenden
Seriennummer, die im Feld Seriennummer 2002 (20)
gespeichert sind, ausfindig gemacht werden.
-
Das
Feld Name 1804 (18) speichert
Daten, die den Namen des Benutzers darstellen, dem der Account gehört, welcher
durch den Account-Datensatz 1702 dargestellt wird. Das
Feld E-Mail-Adresse 1806 speichert Daten, welche die E-Mail-Adresse
des Benutzers darstellen. Das Feld Land speichert Daten, die das
Land des Wohnorts des Benutzers darstellen.
-
Das
Feld Frage 1810 und das Feld Antwort 1812 werden
zum Authentifizieren des Benutzers verwendet, wenn beispielsweise
eine Anforderung empfangen wird, den Account-Datensatz 1702 zu ändern. Das
Feld Frage 1810 gibt eine Frage an, die dem Benutzer gestellt
wird, und das Feld Antwort 1812 gibt die korrekte Antwort
an. Beispielsweise kann die Frage den Geburtsnamen der Mutter des Benutzers
betreffen.
-
Das
Feld Status 1814 stellt den Status des Accounts dar. Statuswerte,
die im Feld Status 1814 gespeichert sind, umfassen "gültig" und "widerrufen". Das Feld Art 1816 stellt
die Art des Accounts dar. Art-Werte im Feld Art 1816 umfassen "maschinengebunden" und "benutzergebunden".
-
Der
Schlüssel-Datensatz 1704 wird
in größerem Detail
in 19 dargestellt und enthält die folgenden Felder: (i)
Feld Seriennummer, (ii) Feld Geheimer Schlüssel 1904, (iii) Feld Öffentlicher
Schlüssel 1906,
(iv) Feld Gültigkeits-Datumsangaben 1908, (v)
Feld Begrenzung erneute Ausgabe 1910, (vi) Begrenzung Passport-Schlüssel 1912 und
(vii) Hardware-Kennung 1914. Das Feld Seriennummer 1902 speichert
die Seriennummer, welcher der Schlüssel-Datensatz entspricht.
Das Feld Geheimer Schlüssel 1904 und
das Feld Öffentlicher
Schlüssel 1906 speichern
jeweils geheime und öffentliche
Schlüssel des
geheimen/öffentlichen
Schlüsselpaars,
das von dem Schlüssel-Datensatz 1704 dargestellt
wird.
-
Das
Feld Gültigkeits-Datumsangaben 1908 gibt
Datumsangaben an, für
die Zertifikate, die aus dem Schlüssel-Datensatz 1704 erstellt
worden sind, gültig
sind. Wenn das Gültigkeits-Enddatum
im Schlüssel-Datensatz 1704 abgelaufen
ist, können Zertifikate,
die aus dem Schlüssel-Datensatz 1704 erstellt
worden sind, nicht mehr verwendet werden, um Inhalt aus der Inhalt-Datenbank 122 zu
kaufen. Zertifikate, die aus dem Schlüssel-Datensatz 1704 in der im Folgenden
beschriebenen Weise erstellt worden sind, entschlüsseln jedoch
weiterhin korrekt vorher erworbenen Inhalt. Wenn der Schlüssel-Datensatz 1704 erneuert
wird, wird das Feld Gültigkeits-Datumsangaben
aktualisiert, um neue, andere Gültigkeits-Datumsangaben
anzugeben, und der geheime Schlüssel 1904 und
der öffentliche
Schlüssel 1906 bleiben
unverändert.
Dementsprechend kann Inhalt, der unter Verwendung eines abgelaufenen Passports
auf der Basis eines Schlüssel-Datensatzes 1704 erworben
wurde, unter Verwendung einer erneuerten Version des gleichen Passports,
d.h. der aus einer erneuerten Version des Schlüssel-Datensatzes 1704 erstellt
worden ist, entschlüsselt
werden, da der erneuerte Passport die gleichen Schlüssel enthält. Es sollte
jedoch verstanden werden, dass die Erneuerung erfordern kann, dass
der Benutzer sein Passwort ändert,
und demzufolge sehen Komponenten des Passports, die mit dem Passwort
des Benutzers verschlüsselt
sind, anders aus.
-
Das
Feld Begrenzung erneute Ausgabe 1910 gibt die maximale
Anzahl an, wie oft die Schlüssel
des Schlüssel-Datensatzes 1704 in
der im Folgenden vollständiger
beschriebenen Weise erneut ausgegeben werden können. Das Feld Begrenzung Passport-Schlüssel 1912 gibt
die maximale Anzahl von Schlüsseln
an, die von einem Passport aufgenommen werden können, der durch den Besitzer
des zugehörigen
Account verwaltet wird, wie durch das Feld Seriennummer 1902 in
der oben beschriebenen Weise bestimmt wird. Das Feld Hardware-Kennung 1914 stellt
eine Hardware-Kennung dar, an die das Schlüsselpaar in der oben beschriebenen
Weise gebunden ist. Wenn beispielsweise das Feld Hardware-Kennung 1914 die
Hardware-Kennung 140 darstellt, wird ein maschinengebundener
Passport, der den geheimen Schlüssel
enthält,
der in dem Feld Geheimer Schlüssel 1904 dargestellt
ist, unter Verwendung der Hardware-Kennung 140 verschlüsselt.
-
Der
Historie-Datensatz 1706 (17) ist vollständiger in 20 gezeigt
und enthält
die folgenden Felder: (i) Feld Seriennummer 2002, (ii)
Feld Erstellung 2004 und (iii) Feld Aktivität 2006.
Das Feld Seriennummer 202 speichert eine Seriennummer, die
analog zu derjenigen ist, die oben unter Bezugnahme auf die Felder
Seriennummer 1802( (18) und 1902 (19)
beschrieben wurde. Das Feld Erstellung 2004 (20)
gibt einen Zeitpunkt an, zu dem der Historie-Datensatz 1706 erstellt
wurde. Das Feld Aktivität 2006 gibt
die Art der Aktivität
an, die mit der Seriennummer des Felds Seriennummer 2002 verknüpft ist,
die in die Tabelle von Historie-Datensätzen 1706 (17)
aufgenommen werden muss. Arten, die das Feld Aktivität 2006 aufweist,
umfassen beispielsweise erneute Ausgabe eines Schlüssels, Erneuerung
eines Schlüssels
und Hinzufügen
eines Schlüssels
zu einem benutzergebundenen Passport.
-
Der
Authentisierungs-Server 126 kann ein digitales Zertifikat,
beispielsweise ein Zertifikat ITU-T X.509, aus den Feldern des Account-Datensatzes 1702 und
des Schlüssel-Datensatzes 1704 erstellen, wie
in 21 dargestellt. Insbesondere enthält das Zertifikat 2100 den öffentlichen
Schlüssel 1906 und die
Gültigkeits-Datumsangaben 1908 aus dem Schlüssel-Datensatz 1704 (19)
und Name 1804 (21), E-Mail-Adresse 1806 und
Land 1808 aus dem Account-Datensatz 1702 (18).
Außerdem enthält das Zertifikat 2100 eine
Zertifikat-Seriennummer 2102, die in dieser veranschaulichenden
Ausführungsform
mit der Spezifikation ITU-T X.509 übereinstimmt. Es sollte beachtet
werden, dass die Zertifikat-Seriennummer keine Beziehung zu den
Seriennummern 1802 (18), 1902 (19)
und 2002 (20) aufweist und von diesen
unabhängig
ist. Das Zertifikat 2100 enthält auch eine digitale Signatur 2104,
die von dem Authentisierungs-Server 126 aus dem geheimen
Schlüssel
des Authentisierungs-Servers 126 in Übereinstimmung mit der Spezifikation ITU-T
X.509 in dieser veranschaulichenden Ausführungsform erstellt wird.
-
Die
Zertifikat-Datenbank 124 stellt eine umfassende und flexible
Basis für
die Authentisierung von erworbenem Inhalt bereit, gleichgültig, ob
maschinengebunden oder benutzergebunden.
-
Zurückkehrend
zum Generator 404 für
maschinengebundene Passports (4) kann
der Master-Schlüssel 208 nur
unter Verwendung des geheimen Schlüssels 304 aus dem
Medienschlüssel 302 entschlüsselt werden.
Um daher den Medienschlüssel 302 und
allen damit verknüpften
Inhalt an das Client-Rechnersystem 104 (1)
zu binden, wird der geheime Schlüssel 304 zum
Bilden des geheimen Schlüssels 2404 in
einer Verschlüsselungsvorrichtung 408 unter
Verwendung der Hardware-Kennung 140 als Schlüssel verschlüsselt. Daher
ist die Hardware-Kennung 140 erforderlich, um den geheimen Schlüssel 304 zu
entschlüsseln
und wiederherzustellen, der anschließend benötigt wird, um den Master-Schlüssel 208 zu
entschlüsseln
und wiederherzustellen, der wiederum benötigt wird, um den mit ihm verschlüsselten
erworbenen Inhalt zu entschlüsseln. Die
Hardware-Kennung 140 wird im Feld Hardware-Kennung 1914 des
Schlüsselpaars 1704 dargestellt,
das den geheimen Schlüssel 304 und
den öffentlichen
Schlüssel 304B jeweils
im Feld Geheimer Schlüssel 1904 und
im Feld Öffentlicher
Schlüssel 1904 enthält.
-
Der
geheime Schlüssel 2404 wird
in die Passport-Informationen 2204A durch ein Passport-Kompressionsprogramm 410 (passport
packer) aufgenommen, das unter Verwendung des geheimen Schlüssels des
Authentisierungs-Servers 126 auch die PassportInformationen 2204B signiert, um
die Signatur 2208 zu bilden. Außerdem sendet das Passport-Kompressionsprogramm 410 die Passport-Informationen 2204B und
die Signatur 2208 zur Inhalt-Wiedergabevorrichtung 142 über einen
sicheren Kanal in der Weise, die im Folgenden vollständiger beschrieben
wird. Auf diese Weise bindet der Generator 404 für maschinengebundene Passports
Inhalt, der mit dem Master-Schlüssel 208 verschlüsselt ist,
an die Hardware-Kennung 140.
-
Der
Authentisierungs-Server 126 enthält auch einen Generator 504 für Voll-Passports
(5), der benutzergebundene Passports erstellt,
wie beispielsweise den Passport 148A (3A).
Die Verschlüsselungsvorrichtung 406 verschlüsselt den Master-Schlüssel 208 unter
Verwendung des geheimen Schlüssels 304B,
um den Medienschlüssel 302 in
der oben beschriebenen Weise zu bilden.
-
Der
Generator 504 für
Voll-Passports (5) enthält eine Verschlüsselungsvorrichtung 508,
die den Gegen-Schlüssel,
d.h. den geheimen Schlüssel 304,
unter Verwendung eines Auslöse-Registrierungsschlüssels 520 (clear
registration key) verschlüsselt,
um den geheimen Schlüssel 2304 zu bilden.
Dementsprechend wird der geheime Schlüssel 2304 verschleiert
und ist bereit für
die Aufnahme in die Passport-Informationen 2204A. Der Auslöse-Registrierungsschlüssel 520 wird
von einer Verschlüsselungsvorrichtung 506 verschlüsselt, wobei das
vom Benutzer bereitgestellten Passworts als ein Schlüssel verwendet
wird, um den Registrierungsschlüssel 2308 zu
bilden. Um von der Verteilung des sich daraus ergebenen Voll-Passports
an andere Benutzer abzuhalten, packt ein Passport-Kompressionsprogramm 510 den
geheimen Schlüssel 2304 und
den Registrierungsschlüssel 2308 mit
geheimen Benutzer-Informationen 2306 zusammen, um die Passport-Informationen 2204A zu
bilden. Außerdem bildet
das Passport-Kompressionsprogramm 510 die Signatur 2208,
um Manipulationen der Passport-Informationen 2204A zu erfassen
und zu verhindern. In einer Ausführungsform
werden die geheimen Benutzer-Informationen 2306 unter Verwendung
des vom Benutzer bereitgestellten Passworts verschlüsselt, um
die geheimen Informationen des Benutzers zu schützen, wenn erworbener Inhalt
nicht wiedergegeben wird. Um den erworbenen Inhalt, der mit dem Master-Schlüssel 208 unter
Verwendung der Passport-Informationen 2204A verschlüsselt ist,
erfolgreich zu entschlüsseln,
wird die Authentizität
der Signatur 2208 überprüft, und
der geheime Schlüssel 2304 und
der Registrierungsschlüssel 2308 aus
den Passport-Informationen 2204A werden syntaktisch analysiert
(parsed). Der Registrierungsschlüssel 2308 wird
dann unter Verwendung eines Schlüssels entschlüsselt, der
von dem Benut zer bereitgestellt wird, und wird nach der Entschlüsselung
zum Entschlüsseln
des geheimen Schlüssels 304 aus
dem geheimen Schlüssel 2303 verwendet.
Der geheime Schlüssel 304 wird
dann zum Entschlüsseln
des Master-Schlüssels 208 aus
dem Medienschlüssel 302 verwendet,
der aus dem erworbenen Inhalt syntaktisch analysiert wird. Das Passport-Kompressionsprogramm 510 sendet
die Passport-Informationen 2204A und die Signatur 2208 an
die Inhalt-Wiedergabevorrichtung 142 über einen sicheren Kanal in der
Weise, die im Folgenden vollständiger
beschrieben wird.
-
Irgendwann
zieht ein Benutzer, der sich vorher dafür entschieden hat, erworbene
Daten nur unter Verwendung des Client-Rechners 104 abzuspielen,
d.h. der sich vorher für
Maschinenbindung entschieden hat, es eventuell vor, von Maschinenbildung
auf Benutzerbindung hochzustufen, so dass der Benutzer den erworbenen
Inhalt unter Verwendung eines anderen Rechnersystems wiedergeben kann.
Beispielsweise kann es sein, dass der Benutzer sein vorheriges Rechnersystem
durch ein neues ersetzt hat oder ein zusätzliches Rechnersystem erworben
hat. Die Konvertierung eines maschinengebundenen Passports, wie
beispielsweise Passport 148B, in einen benutzergebundenen
Passport, wie beispielsweise Passport 148A, durch den Authentisierungs-Server 126 wird
von einer Passport-Konvertierungsvorrichtung 602 (6A)
ausgeführt.
-
Zum
Konvertieren des Passports empfängt die
Passport-Konvertierungsvorrichtung 602 die Hardware-Kennung 140,
die geheimen Benutzer-Informationen 2306 und das vom Benutzer
bereitgestellte Passwort. Diese Elemente werden von dem Client-Rechnersystem über eine
sichere Verbindung empfangen. Die geheimen Benutzer-Informationen 2306 und
das vom Benutzer bereitgestellte Passwort werden von einem Benutzer
des Client-Rechnersystems 102 zum Zeitpunkt der Konvertierung
eingegeben, da derartige Informationen in einem benutzergebundenen
Passwort erforderlich sind, in einem maschinengebundenen Passport
aber nicht erforderlich sind. Ein wichtiger Gesichtspunkt bei der
Konvertierung von Maschinenbindung ist, dass an allem erworbenen
Inhalt keine Modifizierung erforderlich ist. Im Wesentlichen wird
der geheime Kernschlüssel 304, der
zum Entschlüsseln
des erworbenen Inhalts erforderlich ist, z.B. der geheime Schlüssel 304,
in dem konvertierten Passport so beibehalten, dass der Medienschlüssel 302 unverändert bleiben
kann.
-
Die
Passport-Konvertierungsvorrichtung 602 von 6A ist
eine etwas vereinfachte Ausführungsform,
in der die Mehrheit der Verarbeitung durch den Authentisierungs-Server 126 ausgeführt wird.
Eine alternative Ausführungsform,
in der einige der Elemente der Passport-Konvertierungsvorrichtung 602 Bestandteil
der Inhalt-Wiedergabevorrichtung 142 sind, wird im Folgenden
in dem Kontext von 6B beschrieben.
-
Die
Passport-Konvertierungsvorrichtung 602 enthält einen
Passport-Syntaxanalysator 604 (passport parser), der die
Signatur 2208B des hochzustufenden Passports überprüft, und
der geheime Schlüssel 2404 aus
den Passport-Informationen 2204B wird syntaktisch analysiert.
Außerdem
enthält die
Passport-Konvertierungsvorrichtung 602 eine Entschlüsselungsvorrichtung 606,
die den geheimen Schlüssel 2404 unter
Verwendung der Hardware-Kennung 140 als einen Schlüssel entschlüsselt, um
den geheimen Schlüssel 304 wieder
abzuleiten. Alternativ verwendet der Authentisierungs-Server 126 die
Hardware-Kennung 140 zum Abrufen des Schlüssel-Datensatzes 1704 (19),
der den Schlüsseln 304 und 304B gemäß dem Feld
Hardware-Kennung 1914 aus der Zertifikat-Datenbank 124 entspricht.
In jedem Fall ist der geheime Schlüssel 304 (6A)
erforderlich, um einen beliebigen erworbenen Inhalt abzuspielen,
der vorher unter Verwendung der Hardware-Kennung 140 an
das Client-Rechnersystem 104 gebunden war.
-
Die
Passport-Konvertierungsvorrichtung 602 enthält die Verschlüsselungsvorrichtungen 506 und 508,
die den geheimen Schlüssel 2304 und
den Registrierungsschlüssel 2308 in
der Weise bilden, die oben in dem Kontext von 5 beschrieben
worden ist. Die geheimen Benutzer-Informationen 2306 werden
ebenfalls verschlüsselt,
wobei das vom Benutzer bereitgestellte Passwort als ein Schlüssel verwendet wird.
Die Passport-Konvertierungsvorrichtung 602 enthält das Passport-Kompressionsprogramm 510, das
den geheimen Schlüssel 2304,
den Registrierungsschlüssel 2308 und
die geheimen Benutzer-Informationen 2306 zusammenpackt,
um die geheimen Passport-Informationen 2204A zu bilden.
Das Passport-Kompressionsprogramm 510 bildet die Signatur 2208,
um Manipulationen an den Passport-Informationen 2204A zu
erfassen und zu verhindern. Wie vorher unter Bezugnahme auf 3B beschrieben,
bindet ein benutzergebundener Passport, wie beispielsweise Passport 148A,
erworbenen Inhalt an einen bestimmten Benutzer, indem das vom Benutzer
bereitgestellte Passwort angefordert wird und durch Anzeigen von
geheimen Benutzer-Informationen 2306 (23).
Der Pass port 148A und aller darüber zugängliche Inhalt sind nicht an
die Hardware-Kennung 140 gebunden und können auf andere Rechnersysteme
zur Wiedergabe übertragen
werden.
-
Das
logische Ablaufdiagramm 650 (6B) zeigt
die Konvertierung eines maschinengebundenen Passports 148B in
den benutzergebundenen Passport 148A in Übereinstimmung
mit einer alternativen Ausführungsform.
In Schritt 652 verschlüsselt die
Inhalt-Wiedergabevorrichtung 142 die
Hardware-Kennung 140 unter Verwendung des öffentlichen
Schlüssels
von Passport 148B, z.B. des öffentliches Schlüssels von
Zertifikat 2402. In Schritt 654 sendet die Inhalt-Wiedergabevorrichtung
das Zertifikat von Passport 148B und die verschlüsselte Hardware-Kennung
an den Authentisierungs-Server 126 als Bestandteil einer
Anforderung, den Passport 148B auf einen benutzergebundenen
Passport hochzustufen.
-
In
Schritt 656 empfängt
der Authentisierungs-Server 126 das Zertifikat und die
verschlüsselte
Hardware-Kennung von der Inhalt-Wiedergabevorrichtung 142.
In Schritt 658 prüft
der Authentisierungs-Server 126 die Signatur des Zertifikats.
Der Authentisierungs-Server 126 ruft den Zertifikat-Datensatz
ab, z. B. den Zertifikat-Datensatz 2100 (21),
der dem empfangenen Zertifikat aus der Zertifikat-Datenbank 124 in
Schritt 660 (6B) entspricht. In Schritt 662 ruft
der Authentisierungs-Server 126 den verknüpften Account-Datensatz,
z.B. den Account-Datensatz 1702, und den Schlüssel-Datensatz
ab, z.B. den Schlüssel-Datensatz 1704.
-
In
Schritt 664 entschlüsselt
der Authentisierungs-Server 126 die empfangene verschlüsselte Hardware-Kennung
unter Verwendung des geheimen Schlüssels des abgerufenen Schlüssel-Datensatzes,
z.B. des geheimen Schlüssels 1904 des Schlüssel-Datensatzes 1704.
In Schritt 666 vergleicht der Authentisierungs-Server 126 die
verschlüsselte
Hardware-Kennung mit der Hardware-Kennung des abgerufenen Schlüssel-Datensatzes,
z.B. der Hardware-Kennung 1914 des Schlüssel-Datensatzes 1704.
Wenn die Hardware-Kennungen nicht übereinstimmen, schlägt die Konvertierung
von Passwort 148B fehl. Anderenfalls wird die Konvertierung
fortgesetzt.
-
In
Schritt 668 legt der Authentisierungs-Server 126 einen
Voll-Passport-Datensatz an und sendet ihn mit einem geheimen Klartext-Schlüssel und Registrierungsschlüssel und
leeren Benutzer-Informationen. Klartext wird hier wie üblicherweise
in der Kryptografie verwendet und bedeutet nicht-verschlüsselten
und nicht notwendigerweise für
Menschen verständlichen
Text. Es sollte beachtet werden, dass ein Schlüssel gebildet werden kann,
indem ein Verschlüsselungs-Algorithmus
verwendet wird; er aber als Klartext betrachtet wird, wenn der Schlüssel vor
dem Einsatz des Schlüssels,
beispielsweise zum Verschlüsseln/Entschlüsseln anderer
Daten, keine Entschlüsselung
erfordert. Der Voll-Passport-Datensatz wird an die Inhalt-Wiedergabevorrichtung 142 über einen
sicheren Kanal gesendet.
-
In
Schritt 670 empfängt
die Inhalt-Wiedergabevorrichtung 142 den Voll-Passport-Datensatz
von dem Authentisierungs-Server 126. Die Inhalt-Wiedergabevorrichtung 142 empfängt ein
vom Benutzer bereitgestelltes Passwort und die geheimen Benutzer-Informationen
von dem Benutzer über
herkömmliche
Benutzerschnittstellen-Techniken in Schritt 672.
-
In
Schritt 674 verschlüsselt
die Inhalt-Wiedergabevorrichtung 142 die geheimen Benutzer-Informationen,
den geheimen Schlüssel
und den Registrierungsschlüssel
unter Verwendung des vom Benutzer bereitgestellten Passworts in
der Weise, die oben unter Bezugnahme auf die Verschlüsselungsvorrichtungen 506 – 508 (6A)
und das Passport-Kompressionsprogramm 510 beschrieben wurde.
-
Verwendung
von konvertierbaren Passports für
Kauf und Wiedergabe von Daten
-
Das
logische Ablaufdiagramm 700 (7) veranschaulicht
die Authentisierung durch die Inhalt-Wiedergabevorrichtung 142 (1)
während
eines Kaufs von Daten durch einen einkaufenden Benutzer. Im Prüfschritt 702 (7)
ermittelt die Inhalt-Wiedergabevorrichtung 142 (1),
ob ein benutzergebundener Voll-Passport vorhanden ist. In einer
Ausführungsform
enthält
die Inhalt-Wiedergabevorrichtung 142 ein Register von einem
oder mehreren Passports, die mit Daten verknüpft sind, die über die
Inhalt-Wiedergabevorrichtung 142 wiedergegeben
werden können.
Wenn ein Voll-Passport vorhanden ist, geht die Verarbeitung zu Schritt 704 (7) über, in
dem der einkaufende Benutzer ein Passwort eingibt, wobei herkömmliche
Benutzerschnittstellen-Techniken verwendet werden. Im Prüfschritt 706 (7)
ermittelt die Inhalt-Wiedergabevorrichtung 142, ob das
eingegebene Passwort dem Voll-Passport entspricht, dessen Vorhandensein
in Prüfschritt 702 ermittelt
wird, und der hier manchmal als der ausge wählte Voll-Passport bezeichnet
wird. Die Inhalt-Wiedergabevorrichtung 142 nimmt eine solche
Ermittlung vor, indem versucht wird, den geheimen Schlüssel 2304 (23)
des ausgewählten Voll-Passports
zu entschlüsseln.
In dieser veranschaulichenden Ausführungsform wird der geheime Schlüssel 2304 unter
Verwendung des bekannten Passwort-Verschlüsselungsalgorithmus PKCS#5 von
RSA Security verschlüsselt,
und die Verwendung dieses Algorithmus stellt ein Signal bereit,
das angibt, ob das zum Entschlüsseln
des geheimen Schlüssels 2304 verwendete
Passwort das richtige Passwort ist. Wenn das Passwort dem ausgewählten Voll-Passport
nicht entspricht, kehrt die Verarbeitung zu Schritt 704 zurück, und
der Benutzer gibt ein anderes Passwort ein. Wenn das Passwort dem
ausgewählten
Voll-Passport entspricht, fährt
die Verarbeitung mit Schritt 708 fort, in dem die Verarbeitung
des Kaufs von Inhalt fortgesetzt wird.
-
Der
Kauf enthält
die Auswahl von spezifischem Inhalt, der gekauft werden soll, und
die Zahlungsanweisung. Der spezifische Inhalt, der von dem Benutzer
zum Kauf ausgewählt
worden ist, wird hier manchmal als der ausgewählte Inhalt bezeichnet. Die
Inhalt-Wiedergabevorrichtung 142 stellt
das Zertifikat in ihrem Passport bereit, wobei der ausgewählte Voll-Passport
als der Passport angegeben wird, an den der ausgewählte Inhalt
gebunden werden soll, und der Authentisierungs-Server 126 bindet
den Inhalt an das ausgewählte
Zertifikat in der Weise, die oben unter Bezugnahme auf 5 beschrieben
worden ist. Insbesondere wird der Master-Schlüssel des ausgewählten Inhalts
durch die Verschlüsselungsvorrichtung 406 verschlüsselt, wobei
der öffentliche Schlüssel der
Wiedergabevorrichtung 304B als der Schlüssel verwendet wird, um den
Medienschlüssel 302 zu
bilden. Der Generator 504 für Voll-Passports wird nicht
verwendet, da der ausgewählte Voll-Passport
bereits in der Inhalt-Wiedergabevorrichtung 142 vorhanden
ist. Die Verwendung des öffentlichen
Schlüssels 304B zum
Verschlüsseln
des Master-Schlüssels 208 bindet
den Inhalt an einen Passport, der den geheimen Schlüssel 304 enthält. Die
Zertifikat-Seriennummer, z.B. die Zertifikat-Seriennummer 2102,
die in dem ausgewählten
Inhalt enthalten ist, identifiziert, an welchen Passport der ausgewählte Inhalt
gebunden ist.
-
Zurückkehrend
zum Prüfschritt 702 (7), fährt die
Verarbeitung, wenn kein Voll-Passport
in der Inhalt-Wiedergabevorrichtung 142 vorhanden ist,
mit Prüfschritt 710 fort.
Im Prüfschritt 710 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob ein maschinengebundener
Passport vorhanden ist. Wenn kein maschinengebundener Passport vorhan den
ist, geht die Verarbeitung zu Schritt 718 über, der
im Folgenden beschrieben wird. Wenn umgekehrt ein maschinengebundener
Passport vorhanden ist, geht die Verarbeitung zu Schritt 712 über.
-
In
Schritt 712 ruft die Inhalt-Wiedergabevorrichtung 142 die
Hardware-Kennung 140 ab. Im Prüfschritt 714 ermittelt
die Inhalt-Wiedergabevorrichtung, ob die Hardware-Kennung 140 die
Hardware-Kennung ist, die dem maschinengebundenen Passport entspricht,
der von der Inhalt-Wiedergabevorrichtung 142 ausfindig
gemacht wurde. In einer Ausführungsform
wird eine derartige Ermittlung vorgenommen, indem versucht wird,
den geheimen Schlüssel 2404 unter
Verwendung der Hardware-Kennung 140 mit einem Verschlüsselungs-Algorithmus,
wie beispielsweise dem RSA-Algorithmus PCKS#5, zu entschlüsseln, der
angibt, ob der für
die Entschlüsselung
verwendete Schlüssel
der richtige Schlüssel
ist. Falls nicht, geht die Verarbeitung zu Schritt 716 über, in
welchem dem Benutzer eine Fehlermeldung angezeigt wird. Die Fehlermeldung
gibt an, dass der ausfindig gemachte maschinengebundene Passport
nicht zum Client-Rechnersystem 104 gehört. Die Inhalt-Wiedergabevorrichtung 142 kann auf
einen derartigen Fehler auf verschiedene Weise reagieren. Beispielsweise
kann die Inhalt-Wiedergabevorrichtung 142 den Benutzer
anweisen, den fehlerhaften maschinengebundenen Passport zu löschen und
die Verarbeitung gemäß dem logischen Ablaufdiagramm 700 neu
zu initiieren (die Verarbeitung erreicht Schritt 718 und
die darauf folgenden in der anschließenden wiederholenden Verarbeitung gemäß dem logischen
Ablaufdiagramm 700). Die Inhalt-Wiedergabevorrichtung 142 kann
einen derartigen Fehler auch an den Authentisierungs-Server 126 melden,
so dass die unerlaubte Verteilung von maschinengebundenen Passports
verfolgt werden kann.
-
Wenn
die Hardware-Kennung 140 jedoch die richtige Kennung ist,
geht die Verarbeitung vom Prüfschritt 714 zu
Schritt 708 über,
und der Kaufprozess wird in der oben beschriebenen Weise fortgesetzt, mit
Ausnahme dessen, dass jeder Kaufinhalt an einen maschinengebundenen
Passport gebunden ist. Beim Anfordern des ausgewählten Inhalts sendet die Inhalt-Wiedergabevorrichtung 142 ihr
Zertifikat an den Authentisierungs-Server 126. Der Authentisierungs-Server 126 verwendet
den öffentlichen
Schlüssel
dieses Zertifikats, um den Master-Schlüssel 208 zu verschlüsseln, wodurch
der ausgewählte
Inhalt an die Inhalt-Wiedergabevorrichtung 142 gebunden wird.
Der maschinengebundene Passport, der von der Inhalt-Wiedergabevorrichtung 142 erfasst
wird, enthält
be reits den geheimen Schlüssel
der Inhalt-Wiedergabevorrichtung 142, der unter Verwendung
der Hardware-Kennung 140 verschlüsselt ist.
-
Zurück zum Prüfschritt 710 (7);
wenn von der Inhalt-Wiedergabevorrichtung 142 kein maschinengebundener
Passport gefunden wird, hat die Inhalt-Wiedergabevorrichtung 142 überhaupt
keine Passports, und die Verarbeitung geht zu Schritt 718 über. In
Schritt 718 fordert die Inhalt-Wiedergabevorrichtung 142 einen
neuen maschinengebundenen Passport vom Authentisierungs-Server 126 an. Schritt 718 wird
im Folgenden vollständiger
beschrieben in Verbindung mit dem logischen Ablaufdiagramm 718 (8).
Nach Schritt 718 konstruiert die Inhalt-Wiedergabevorrichtung 142 einen
neuen maschinengebundenen Passport aus einem maschinengebundenen
Passport-Datensatz, der vom Authentisierungs-Server 126 empfangen
wird. Nach Schritt 720 wird der Kauf von Inhalt in Schritt 708 in der
oben beschriebenen Weise fortgesetzt.
-
Das
logische Ablaufdiagramm 718 (8) zeigt
die Anforderung eines maschinengebundenen Passports in größerem Detail.
In Schritt 802 stellt die Inhalt-Wiedergabevorrichtung 142 eine
sichere Verbindung mit dem Authentisierungs-Server 216 her. Eine
derartige sichere Verbindung wird im folgenden in größerem Detail
beschrieben. In Schritt 804 fordert die Inhalt-Wiedergabevorrichtung 142 eine
Informationen-Vorlage für
einen neuen maschinengebundenen Passport an. Als Antwort auf eine
derartige Anforderung sendet der Authentisierungs-Server 126 eine
Informationen-Vorlage für
neue maschinengebundene Passports. Eine Informationen-Vorlage ist eine
Sammlung von Daten, die vom Benutzer in Datenfeldern bereitzustellen
sind, und die Aufforderungen dazu. In einer Ausführungsform ist die Informationen-Vorlage
eine XML-Beschreibung der Daten, die vom Benutzer erfasst werden
müssen.
Wenn eine Informationen-Vorlage von der Inhalt-Wiedergabevorrichtung 142 empfangen
wird, geht die Verarbeitung durch den Prüfschritt 806 zum Schritt 808 über, in dem
die Inhalt-Wiedergabevorrichtung 142 Informationen sammelt,
die in der empfangenen Informationen-Vorlage angegeben sind. Solche
Informationen können
vom Benutzer eingegeben werden, indem herkömmliche Benutzerschnittstellen-Techniken
verwendet werden. Die Verarbeitung geht zu Schritt 810 über. Wenn
keine Informationen-Vorlage empfangen wird, geht die Verarbeitung
direkt durch den Prüfschritt 806 zum
Schritt 810 über
und überspringt Schritt 808.
-
In
Schritt 810 sendet die Inhalt-Wiedergabevorrichtung 142 die
Hardware-Kennung 140 und alle vom Benutzer bereitgestellten
Informationen an den Authentisierungs-Server 126 als eine
Anforderung für
einen neuen maschinengebundenen Passport. Nach Schritt 810 wird
die Verarbeitung gemäß dem logischen
Ablaufdiagramm 718 und mit Schritt 718 (7)
beendet.
-
Das
logische Ablaufdiagramm 900 (9) veranschaulicht
die Verarbeitung durch den Authentisierungs-Server 216 (1)
als Reaktion auf eine Anforderung eines neunen maschinengebundenen Passports,
die von der Inhalt-Wiedergabevorrichtung 142 in Schritt 810 (8)
getätigt
wurde. In Schritt 902 (9) empfängt der
Authentisierungs-Server 126 die Hardware-Kennung und alle
vom Benutzer bereitgestellten Informationen. Im Prüfschritt 904 ermittelt
der Authentisierungs-Server 126, ob alle Schlüssel-Datensätze, die
der empfangenen Hardware-Kennung entsprechen, in der Zertifikat-Datenbank 124 vorhanden
sind. Der Authentisierungs-Server 126 nimmt eine solche
Ermittlung vor, indem er nach Schlüssel-Datensätzen sucht, z.B. Schlüssel-Datensatz 1704 (19),
der eine entsprechende Hardware-Kennung im Feld Hardware-Kennung 1914 aufweist.
Wenn kein derartiger Schlüssel-Datensatz
gefunden wird, geht die Verarbeitung zu Schritt 906 (9) über. Wenn
umgekehrt ein derartiger Schlüssel-Datensatz gefunden
wird, geht die Verarbeitung zu Prüfschritt 912 über, der
im Folgenden beschrieben wird.
-
In
Schritt 906 erstellt der Authentisierungs-Server 126 ein
neues geheimes/öffentliches Schlüsselpaar
und erstellt ein neues Zertifikat auf der Basis des neuen Schlüsselpaars,
z. B. jeweils das Schlüsselpaar
des Schlüssel-Datensatzes 1704 (19)
und das Zertifikat 2100 (21). In
Schritt 908 (9) verknüpft der Authentisierungs-Server 216 das
neue Zertifikat mit der empfangenen Hardware-Kennung, z.B. der Hardware-Kennung 140,
in der Zertifikat-Datenbank 124. Eine solche Verknüpfung wird
erreicht, indem die Hardware-Kennung 140 im Feld Hardware-Kennung 1914 (19)
des Schlüssel-Datensatzes 1704 gespeichert
wird. In Schritt 910 (9) gibt
der Authentisierungs-Server 126 einen
maschinengebundenen Passport-Datensatz an die Inhalt-Wiedergabevorrichtung
zurück.
Ein maschinengebundener Passport-Datensatz ist eine Sammlung von
Daten, aus denen die Inhalt-Wiedergabevorrichtung 142 einen
maschinengebundenen Passport konstruieren kann, wie beispielsweise
den oben beschriebenen Passport 148B. Ein solcher maschinengebundener
Passport-Datensatz enthält
beispielsweise die Passport-Informationen 2204B (24)
und den Signatur-Algorithmus 2206 und die Signatur 2208.
Nach Schritt 910 (9) wird
die Verarbeitung gemäß dem logischen
Ablaufdiagramm 900 beendet.
-
Zurückkehrend
zum Prüfschritt 904,
geht die Verarbeitung, wenn ein mit der Hardware-Kennung 140 (1)
verknüpftes
Schlüsselpaar
bereits in der Zertifikat-Datenbank 124 vorhanden ist,
zum Prüfschritt 912 (9) über, in
dem eine Policy-Entscheidung implementiert ist. Die Policy ermittelt,
ob gestattet werden kann, Schlüssel,
die mit dem vorhandenen maschinengebundenen Passport verknüpft sind, nochmals
auszugeben. Es ist möglich,
dass ein Benutzer einen maschinengebundenen Passport verliert, z.B.
durch unbeabsichtigtes Löschen
oder durch Datenverlust aufgrund eines Hardware-Ausfalls. Außerdem,
wenn ein erneutes Ausgeben von maschinengebundenen Schlüsseln gestattet
ist, kann die Anzahl solcher erneuter Ausgaben begrenzt werden. Beispielsweise
ist eine solche Begrenzung im Feld Begrenzung erneute Ausgabe 1910 (19)
angegeben. In einer Ausführungsform
gibt eine Begrenzung von Null an, dass die maschinengebundenen Schlüssel nicht
erneut ausgegeben werden können. In
dieser Ausführungsform
speichert das Feld Begrenzung erneute Ausgabe 1910 Daten
mit einem Wert von Eins, um anzugeben, dass die maschinengebundenen
Schlüssel
nur einmal erneut ausgegeben werden können. Wenn die Policy feststellt,
dass diese Schlüssel
nicht mehr erneut ausgegeben werden sollen, z.B. weil die Schlüssel nicht
erneut ausgegeben werden, oder weil die Zertifikat-Datenbank 124 angibt,
dass die maximal zulässige
Anzahl erneuter Ausgaben für
diesen maschinengebundenen Passport ausgeführt worden ist, geht die Verarbeitung
zu Schritt 914 (9) über. In Schritt 914 wird ein
Fehler zurückgegeben
anstatt eines maschinengebundenen Passport-Datensatzes. Wenn umgekehrt
die erneute Ausgabe von der Policy gestattet wird, geht die Verarbeitung
zu Schritt 916 über.
Die Policy kann eine solche erneute Ausgabe gestatten, wenn die
erneute Ausgabe generell gestattet ist und die Zertifikat-Datenbank 124 angibt,
dass weniger als die maximal zulässige
Anzahl von erneuten Ausgaben durchgeführt worden ist. In einer Ausführungsform
ermittelt der Authentisierungs-Server 126 die Anzahl der
erneut ausgegebenen Schlüssel
des Schlüssel-Datensatzes 1704 (17),
indem er nach Historie-Datensätzen
sucht und diese zählt,
wie beispielsweise den Historie-Datensatz 1706 in der Zertifikat-Datenbank 124,
der eine solche erneute Ausgabe darstellt. Der Historie-Datensatz 1706 stellt eine
erneute Ausgabe der Schlüssel
des Schlüssel-Datensatzes 1704 dar,
wenn die Seriennummer 2002 (20) der
Seriennummer 1902 (19) entspricht
und das Feld Aktivität 2006 ein
Ereignis einer erneuten Ausgabe angibt.
-
In
Schritt 916 ruft der Authentisierungs-Server 126 das
geheime/öffentliche
Schlüsselpaar,
das mit der empfangenen Hardware-Kennung verknüpft ist, z.B. das Schlüsselpaar
des Schlüssel-Datensatzes 1704,
das mit der Hardware-Kennung 140 verknüpft ist, aus der Zertifikat-Datenbank 124 ab
und bildet in der oben beschriebenen Weise einen maschinengebundenen
Passport-Datensatz aus dem abgerufenen Paar. In Schritt 918 aktualisiert
der Authentisierungs-Server 126 die Zertifikat-Datenbank 124,
um die zusätzlichen
Ausgaben der Schlüssel wiederzugeben,
die mit der empfangenen Hardware-Kennung
verknüpft
sind. In dieser veranschaulichenden Ausführungsform erfasst der Authentisierungs-Server 126 solch
eine erneute Ausgabe, indem ein neuer Historie-Datensatz erstellt
wird, z.B. der Historie-Datensatz 1706, wobei die Seriennummer 2002 (20)
der Seriennummer 1902 (19) des
Schlüssel-Datensatzes
entspricht, und das Feld Aktivität 2006 ein
Ereignis einer erneuten Ausgabe darstellt. Die Verarbeitung geht
von Schritt 918 zu Schritt 910 über, in
dem der Passport-Datensatz in der oben beschriebenen Weise zurückgegeben
wird. Nach Schritt 910 wird die Verarbeitung gemäß dem logischen
Ablaufdiagramm 900 beendet.
-
Das
logische Ablaufdiagramm 1000 (10) veranschaulicht
die Verarbeitung von Passports während
des Zugangs zu erworbenem Inhalt. In dem Kontext der 10 -16 wird
ein bestimmter Inhalt von erworbenem Inhalt 144 durch den
Benutzer zur Wiedergabe ausgewählt,
und dieser Inhalt wird manchmal als der ausgewählte erworbene Inhalt bezeichnet.
Im Prüfschritt 1002 (10)
ermittelt die Inhalt-Wiedergabevorrichtung 142, ob ein Voll-Passport
vorhanden ist. Falls nicht, geht die Verarbeitung zu Prüfschritt 1008 über, der
im Folgenden vollständiger
beschrieben wird. Wenn umgekehrt ein Voll-Passport vorhanden ist,
geht die Verarbeitung zu Schritt 1004 über, in welchem die Inhalt-Wiedergabevorrichtung 142 den
Benutzer authentifiziert, indem ein vom Benutzer bereitgestelltes
Passwort in der oben beschriebenen Weise unter Bezugnahme auf die
Schritte 704 (7) und 706 geprüft wird.
Nachdem der Benutzer authentifiziert worden ist, versucht die Inhalt-Wiedergabevorrichtung 142 in
Schritt 1006 (10), den ausgewählten Inhalt
abzuspielen unter Verwendung des benutzergebundenen Voll-Passports, der im
Prüfschritt 1002 ausfindig
gemacht worden ist.
-
Im
Prüfschritt 1008 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob ein maschinengebundener
Passport vorhanden ist. Falls nicht, ist kein Passport vorhanden,
und die Verarbeitung geht zum Dialogschritt 1016 über. Wenn
andererseits ein maschinengebundener Passport vorhanden ist, geht
die Verarbeitung zu Schritt 1010 über, in dem die Inhalt-Wiedergabevorrichtung 142 in
der oben beschriebenen Weise unter Bezugnahme auf die Schritte 712 (12)
und 714 überprüft, dass
die Hardware-Kennung 140 mit
dem maschinengebundenen Passport übereinstimmt. Wenn der Schritt 1010 zu
einem Überprüfungsfehler
führt,
d.h. wenn die Hardware-Kennung 140 dem maschinengebundenen Passport
nicht entspricht, geht die Verarbeitung zum Dialogschritt 1016 über, der
im Folgenden beschrieben wird. Wenn die Überprüfung umgekehrt erfolgreich
verläuft,
geht die Verarbeitung zu Schritt 1006 über.
-
In
Schritt 1006 versucht die Inhalt-Wiedergabevorrichtung 142 den
ausgewählten
Inhalt wiederzugeben. Im Prüfschritt 1012 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob die versuchte
Wiedergabe erfolgreich ist, d.h. ob der Passport-Schlüssel den ausgewählten Inhalt
erfolgreich decodiert. Eine solche Ermittlung erfolgt in der oben
beschriebenen Weise unter Bezugnahme auf die Schritte 706 (7)
und 714.
-
Wenn
der ausgewählte
Passport-Schlüssel den
ausgewählten
Inhalt erfolgreich entschlüsselt, geht
die Verarbeitung zu Schritt 1014 über, in dem die Inhalt-Wiedergabevorrichtung 142 mit
der Wiedergabe des ausgewählten
Inhalts fortfährt.
In Schritt 1014 sind der Benutzer und/oder das Client-Rechnersystem 104 als
berechtigt authentifiziert worden, auf den ausgewählten Inhalt
zuzugreifen.
-
Wenn
andererseits der ausgewählte Passport-Schlüssel den
ausgewählten
Inhalt nicht erfolgreich entschlüsseln
kann, geht die Verarbeitung zum Dialogschritt 1016 über. Folglich
geht die Verarbeitung zum Dialogschritt 1016 über, wenn
von der Inhalt-Wiedergabevorrichtung 142 kein Passport
erfasst worden ist (über
Prüfschritt 1008),
wenn die Hardware-Kennung 140 nicht dem maschinengebundenen
Passport entspricht, der von der Inhalt-Wiedergabevorrichtung 142 ausfindig
gemacht worden ist (aus Schritt 1010), oder wenn der ausgewählte Passport-Schlüssel den
ausgewählten
Inhalt nicht erfolgreich entschlüsseln
kann (über
Prüfschritt 1012). Im
Dialogschritt 1016 meldet die Inhalt-Wiedergabevorrichtung dem Benutzer,
dass der Benutzer nicht berechtigt ist, den aus gewählten Inhalt
abzuspielen, und fragt den Benutzer, ob er dazu berechtigt werden möchte.
-
Wenn
der Benutzer verneinend antwortet, geht die Verarbeitung zu Schritt 1020 über, in
dem die Inhalt-Wiedergabevorrichtung 142 einen Fehler zurückgibt und
die Verarbeitung beendet. Wenn der Benutzer umgekehrt bejahend antwortet,
geht die Verarbeitung zu Schritt 1018 über, in dem ein neuer Passport
für den
ausgewählten
Inhalt erstellt wird, und fährt
mit Schritt 1014 fort, in dem die Inhalt-Wiedergabevorrichtung 142 mit
der Wiedergabe des ausgewählten
Inhalts fortfährt.
-
Der
Schritt 1018 wird in größerem Detail
als logisches Ablaufdiagramm 1018 (11) gezeigt.
In Schritt 1102 ruft die Inhalt-Wiedergabevorrichtung 142 ein
Inhalt-Zertifikat aus dem ausgewählten
Inhalt ab. Das Inhalt-Zertifikat ist ein digitales Zertifikat, z.B. ein
digitales ITU-T X.509-Zertifikat, das in dem ausgewählten Inhalt
enthalten ist, und das identifiziert, wer den Inhalt ursprünglich erworben
hat. Das Zertifikat 2100 (21) ist
ein veranschaulichendes Beispiel eines solchen Zertifikats und wurde
oben vollständiger
beschrieben. In dieser veranschaulichenden Ausführungsform ruft die Inhalt-Wiedergabevorrichtung 142 die
Zertifikat-Seriennummer, z.B. die Zertifikat-Seriennummer 2102,
ab, mit welcher der Authentisierungs-Server 126 (1)
das Zertifikat 2100 in der Zertifikat-Datenbank 124 ausfindig
machen kann. Im Prüfschritt 1104 (11)
ermittelt die Inhalt-Wiedergabevorrichtung 142, ob der
Benutzer einen Voll-Passport besitzt. Die Inhalt-Wiedergabevorrichtung 142 kann
eine solche Ermittlung vornehmen auf der Basis des Vorhandenseins
eines Voll-Passports, wie in Schritt 1001 (10)
ermittelt, oder aufgrund des Versäumnisses des Benutzers, irgendeinen
vorhandenen Voll-Passport in Schritt 1004 zu authentifizieren.
Außerdem
kann der Benutzer nach einem Namen und einer E-Mail-Adresse gefragt
werden, und die Antworten des Benutzers darauf können verwendet werden, um nach
Account-Datensätzen
zu suchen, wie beispielsweise dem Account-Datensatz 1702 (18),
der ein entsprechendes Feld Name 1804 und Feld E-Mail-Adresse 1806 aufweist.
Wenn der Benutzer einen Voll-Passport besitzt, geht die Verarbeitung
zu Schritt 1106 (11) über, in
dem die Inhalt-Wiedergabevorrichtung 142 einen Passport
für den
ausgewählten
erworbenen Inhalt anfordert unter Verwendung der Voll-Passport-Informationen
des Benutzers, einschließlich
der geheimen Benutzer-Informationen 2306 (23).
Wenn der Benutzer keinen Voll-Passport besitzt, geht die Verarbeitung
zu Schritt 1114 (11) über, in
dem die Inhalt-Wiedergabe vorrichtung 142 einen Passport
für den
ausgewählten
Inhalt anfordert unter Verwendung der Hardware-Kennung 140.
In dieser Ausführungsform
erhält der
Benutzer die Gelegenheit, einige persönliche Informationen bereitzustellen,
wie beispielsweise einen Namen, eine E-Mail-Adresse und das Land
des Wohnorts, und diese Informationen können die Hardware-Kennung 140 bei
der Anforderung eines neuen Passports in Schritt 1114 begleiten.
-
Die
Verarbeitung durch den Authentisierungs-Server 126 als
Reaktion auf Anforderungen der Schritte 1106 und 1114 wird
im Folgenden jeweils in Verbindung mit den 13 und 12 beschrieben.
Als Reaktion auf die Anforderung von Schritt 1106 (11)
kann der Authentisierungs-Server 126 einen Voll-Passport-Datensatz
oder eine Fehlermeldung senden. Als Reaktion auf die Anforderung
von Schritt 1114 kann der Authentisierungs-Server 126 einen
maschinengebundenen Passport oder eine Fehlermeldung senden.
-
Im
Prüfschritt 1108 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob ein Voll-Passport-Datensatz von dem
Authentisierungs-Server 126 zurückgegeben wird. Falls nicht,
wird ein Fehler zurückgegeben,
und die Verarbeitung gemäß den logischen
Ablaufdiagrammen 1018 und 1000 wird beendet. Wenn umgekehrt
ein Voll-Passport zurückgegeben
wird, geht die Verarbeitung zu Schritt 1110 über.
-
In
Schritt 1110 schützt
die Inhalt-Wiedergabevorrichtung 142 die Voll-Passport-Informationen des
Voll-Passport-Datensatzes mit einem vom Benutzer bereitgestellten
Passwort in der Weise, die oben unter Bezugnahme auf den Generator 504 für Voll-Passports
(5) beschrieben wurde.
-
Die
Verarbeitung geht von Schritt 1110 (11) zu
Schritt 1112 über,
in dem die Inhalt-Wiedergabevorrichtung 142 einen Voll-Passport 148A (3A)
aus den Voll-Passport-Informationen erstellt, die vom Authentisierungs-Server 126 empfangen
werden.
-
Die
Verarbeitung geht von Schritt 1114 zum Prüfschritt 1116 über. Im
Prüfschritt 1116 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob die Daten, die vom
Authentisierungs-Server 126 als
Antwort auf die Anforderung von Schritt 1114 oder Schritt 1116 empfangen
wurden, einen maschinengebundenen Passport darstellen. Falls ja,
erstellt die In halt-Wiedergabevorrichtung 142 einen maschinengebundenen
Passport, wie beispielsweise den Passport 148B (3B),
unter Verwendung des maschinengebundenen Passport-Datensatzes, und
die Verarbeitung gemäß dem logischen
Ablaufdiagramm 1018 und damit dem Schritt 1018 (19)
wird beendet.
-
Wenn
umgekehrt die vom Authentisierungs-Server 216 zurückgegebenen
Daten keinen maschinengebundenen Passport-Datensatz darstellen,
geht die Verarbeitung zum Prüfschritt 1120 über. Im
Prüfschritt 1120 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob die Antwort durch
den Authentisierungs-Server 126 angibt, dass der Benutzer
einen Voll-Passport benötigt,
um richtig authentifiziert zu sein, um auf den ausgewählten erworbenen
Inhalt zuzugreifen. Falls nicht, kann der Benutzer nicht authentifiziert
werden, um auf den erworbenen Inhalt zuzugreifen, und die Inhalt-Wiedergabevorrichtung 142 bemerkt,
dass ein Fehler aufgetreten ist und meldet den Fehler an den Benutzer,
wodurch die Verarbeitung gemäß dem logischen
Ablaufdiagramm 1018 und damit dem Schritt 1018 (10)
beendet wird. Wenn andererseits die Antwort vom Authentisierungs-Server 126 angibt,
dass der Benutzer einen Voll-Passport benötigt, geht die Verarbeitung
zu Schritt 1122 über.
-
In
Schritt 1122 sendet die Inhalt-Wiedergabevorrichtung 142 dem
Authentisierungs-Server 126 eine Anforderung für einen
neuen Passport. Die Anforderung enthält Daten, welche die Hardware-Kennung 140 und
ein Zertifikat angeben, das aus dem ausgewählten erworbenen Inhalt abgerufen
wurde. Das Zertifikat des erworbenen Inhalts identifiziert den ausgewählten erworbenen
Inhalt in der Zertifikat-Datenbank 124 (1).
Der Authentisierungs-Server 126 antwortet auf eine solche
Anforderung auf die im Folgenden beschriebene Weise unter Bezugnahme auf
das logische Ablaufdiagramm 1400 (14), wobei
an die Inhalt-Wiedergabevorrichtung 142 entweder ein Voll-Passport-Datensatz
oder eine Fehlermeldung gesendet wird.
-
Im
Prüfschritt 1124 ermittelt
die Inhalt-Wiedergabevorrichtung 142, ob der Authentisierungs-Server 126 einen
Voll-Passport-Datensatz oder einen Fehler zurückgibt. Wenn ein Fehler zurückgegeben
wird, kann der Benutzer nicht authentifiziert werden, um auf den
erworbenen Inhalt zuzugreifen, und die Inhalt-Wiedergabevorrichtung 142 bemerkt,
dass ein Fehler aufgetreten ist und meldet den Fehler an den Benutzer,
wodurch die Verarbeitung gemäß dem logischen
Ablaufdiagramm 1018 und damit dem Schritt 1018 (10)
beendet wird. Wenn andererseits die Antwort vom Authentisierungs-Server 126 ein
Voll-Passport-Datensatz ist, geht die Verarbeitung zu Schritt 1126 (11) über, in
dem die Inhalt-Wiedergabevorrichtung 142 den Benutzer auffordert,
ein Passwort einzugeben.
-
Die
Verarbeitung geht vom Schritt 1126 zum Schritt 1112 über, in
dem die Inhalt-Wiedergabevorrichtung 142 den Voll-Passport 148A (3A)
aus den Voll-Passport-Informationen erstellt, die vom Authentisierungs-Server 126 empfangen
wurden. Nach dem Schritt 1122 (11), gleichgültig, ob über Schritt 1110 oder
Schritt 1126, wird die Verarbeitung gemäß dem logischen Ablaufdiagramm 1018 und
damit dem Schritt 1018 (10) beendet.
-
Wie
oben beschrieben, antwortet der Authentisierungs-Server 126 auf
eine Anforderung für einen
Passport einschließlich
einer Hardware-Kennung in der Weise, wie sie im logischen Ablaufdiagramm 1200 (12)
gezeigt ist. Insbesondere stellt das logische Ablaufdiagramm 1200 die
Antwort des Authentisierungs-Servers 126 auf die Anforderung dar,
die von der Inhalt-Wiedergabevorrichtung 142 in Schritt 1114 (11)
getätigt
wurde, in dem der Benutzer keinen Voll-Passport hatte. Dementsprechend wird
der Authentisierungs-Server 126 aufgefordert, den gleichen
maschinengebundenen Passport erneut auszugeben, an den der ausgewählte Inhalt
bereits gebunden sein sollte. In Schritt 1202 (12) ruft
der Authentisierungs-Server 216 das Zertifikat für den ausgewählten Inhalt
aus der Zertifikat-Datenbank 124 ab. Wenn beispielsweise
die Inhalt-Wiedergabevorrichtung 142 – als das
Zertifikat des ausgewählten
Inhalts – die
Zertifikat-Seriennummer 2101 (21)
bereitstellt, ruft der Authentisierungs-Server 126 das
Zertifikat 2100 aus der Zertifikat-Datenbank 124 (17)
ab.
-
Im
Prüfschritt 1204 (12)
ermittelt der Authentisierungs-Server 126, ob der erworbene
Inhalt an einen maschinengebundenen Passport gebunden ist. Der Authentisierungs-Server 126 nimmt
eine solche Ermittlung vor, indem er einen Account-Datensatz abruft,
z.B. den Account-Datensatz 1702 (18), der
dem Zertifikat entspricht. Der Authentisierungs-Server 126 kann
einen solchen Account-Datensatz ausfindig machen, indem nach Account-Datensätzen gesucht
wird, die entsprechende Datenwerte für Name 1804, E-Mail-Adresse 1806 und
Land 1808 aufweisen, oder alternativ durch Warten einer
Tabelle von Datensätzen,
die Zertifikat-Seriennummern, wie beispielsweise die Zertifikat-Seriennummer 2101 (21),
mit Seriennummern, wie beispielsweise die Seriennummer 1802 (18),
in Beziehung setzt durch Prüfen
des Felds Art 1816 des abgerufenen Account-Datensatzes
und Vergleichen der darin gespeicherten Daten mit Daten, die eine maschinengebundene
Art darstellen. Wenn die Daten im Feld Art 1816 es so angeben,
ist der ausgewählte
Inhalt an einen maschinengebundenen Passport gebunden. Andernfalls
ist der ausgewählte Inhalt
an einen Voll-Passport gebunden.
-
Wenn
der ausgewählte
Inhalt nicht an einen maschinengebundenen Passport gebunden ist,
gibt der Authentisierungs-Server 126 eine Fehlermeldung zurück, die
angibt, dass ein Voll-Passport erforderlich ist, um auf den ausgewählten Inhalt
zuzugreifen, und beendet die Verarbeitung gemäß dem logischen Ablaufdiagramm 1200.
Der Voll-Passport ist erforderlich, da der ausgewählte Inhalt
bereits an einen benutzergebundenen Voll-Passport gebunden ist. Es zu gestatten,
dass der Inhalt auch an einen neuen maschinengebundenen Passport
gebunden wird, würde das
Wiedergeben von Inhalt auf zahlreichen Rechnersystemen gestatten,
die sich von denen unterscheiden, die von dem ursprünglichen
kaufenden Benutzer verwendet wurden, und würde eine Gefährdung der
Sicherheit darstellen.
-
Wenn
umgekehrt der ausgewählte
erworbene Inhalt an einen maschinengebundenen Passport gebunden
ist, geht die Verarbeitung zu Schritt 1206 über, in
dem der Authentisierungs-Server 126 einen Schlüssel-Datensatz
abruft, der das Rechnersystem darstellt, das mit der Hardware-Kennung
verknüpft ist,
die in der Anforderung von der Inhalt-Wiedergabevorrichtung 142 empfangen
wurde. Insbesondere ruft der Authentisierungs-Server 126 den Schlüssel-Datensatz
ab, z.B. den Schlüssel-Datensatz 1704 (19),
dessen Hardware-Kennungs-Datensatz 1914 die Hardware-Kennung
darstellt, die von der Inhalt-Wiedergabevorrichtung 142 empfangen wurde.
-
Wenn
kein solcher Schlüssel-Datensatz
gefunden wird, geht die Verarbeitung über den Prüfschritt 1208 (12)
zum Endschritt 1210 über.
Im Endschritt 1210 gibt der Authentisierungs-Server 126 eine
Fehlermeldung zurück,
die angibt, dass der Benutzer einen Voll-Passport benötigt, um
auf den ausgewählten
Inhalt zuzugreifen. Der Benutzer benötigt einen Voll-Passport, da
die von der Inhalt-Wiedergabevorrichtung 142 empfangene
Hardware-Kennung im Prüfschritt 1208 ermittelt
wurde, um ein Rechnersystem anzugeben, mit dem der Authentisierungs-Server 126 nicht
vertraut ist.
-
Wenn
der Authentisierungs-Server 126 den Schlüssel-Datensatz
findet, der Schlüssel-Datensatz aber nicht
der Gleiche ist wie der Schlüssel-Datensatz,
der im Prüfschritt 1204 abgerufen
wurde, geht die Verarbeitung durch den Prüfschritt 1208 und
den Prüfschritt 1212 zum
Endschritt 1210 über.
Der Benutzer benötigt
einen Voll-Passport, da die Anforderung für einen maschinengebundenen
Passport von einem Rechnersystem zu kommen scheint, das sich von
demjenigen unterscheidet, an das der erworbene Inhalt ursprünglich gebunden
war.
-
Wenn
der Schlüssel-Datensatz
gefunden wird, wie im Prüfschritt 1208 ermittelt,
und er der Gleiche ist wie der Schlüssel-Datensatz, der mit dem ausgewählten erworbenen
Inhalt verknüpft
ist, wie im Prüfschritt 1212 ermittelt,
geht die Verarbeitung zum Prüfschritt 1214 über, in
dem der Authentisierungs-Server 126 eine Policy-Entscheidung
implementiert. Insbesondere ermittelt der Authentisierungs-Server 126,
ob maschinengebundene Schlüssel
erneut ausgegeben werden können.
In dieser veranschaulichenden Ausführungsform nimmt der Authentisierungs-Server 126 eine
solche Ermittlung gemäß den Daten
vor, die in dem Feld Begrenzung erneute Ausgabe 1910 (19)
des Schlüssel-Datensatzes gespeichert
sind, der in Schritt 1206 (12) abgerufen
wird. Wenn die erneute Ausgabe nicht gestattet ist, geht die Verarbeitung
zum Endschritt 1210 über,
in dem der Authentisierungs-Server 126 eine Fehlermeldung
zurückgibt,
die angibt, dass der Benutzer einen Voll-Passport für den Zugang
zum ausgewählten
Inhalt benötigt.
Wenn umgekehrt die erneute Ausgabe von maschinengebundenen Schlüsseln gestattet
ist, geht die Verarbeitung zu Schritt 1216 über.
-
In
Schritt 1216 erfasst der Authentisierungs-Server 126 die
erneute Ausgabe des Schlüssel-Datensatzes 1704 (19)
in der Zertifikat-Datenbank 124 (17) mit
einem neuen Historie-Datensatz, wie beispielsweise Historie-Datensatz 1706. Nach
Schritt 1216 (12) gibt der Authentisierungs-Server 126 einen
maschinengebundenen Passport-Datensatz zurück, der Informationen aus dem
Schlüssel-Datensatz 1704 (19)
an die Inhalt-Wiedergabevorrichtung 142 (1)
im Endschritt 1218 ( 12) enthält. Die
Verarbeitung wird entweder nach dem Endschritt 1210 oder
dem Endschritt 1218 gemäß dem logischen
Ablaufdiagramm 1200 beendet.
-
Wie
oben beschrieben, stellt das logische Ablaufdiagramm 1300 (13)
die Verarbeitung durch den Authentisierungs-Server 126 als
Reaktion auf eine Anforderung für
einen neuen Passport dar, der Voll-Passport-Informationen enthält. Insbesondere
steilt das logische Ablaufdiagramm 1300 die Antwort des
Authentisierungs-Servers 126 auf die Anforderung dar, die
durch die Inhalt-Wiedergabevorrichtung 142 in Schritt 1106 (11)
getätigt
wurde, in dem der Benutzer bereits einen Voll-Passport besitzt und
im Wesentlichen anfordert, dem Voll-Passport maschinengebundene
Schlüssel
hinzuzufügen.
In Schritt 1302 (13) ruft
der Authentisierungs-Server 126 ein Zertifikat für den ausgewählten Inhalt
in der Weise ab, die oben unter Bezugnahme auf Schritt 1202 (12)
beschrieben wurde. Im Prüfschritt 1304 (13)
ermittelt der Authentisierungs-Server 126,
ob das Inhalt-Zertifikat maschinengebunden ist in der Weise, die
oben unter Bezugnahme auf Schritt 1204 (12)
beschrieben wurde.
-
Wenn
das Inhalt-Zertifikat nicht maschinengebunden ist, gibt der Authentisierungs-Server 126 einen
Fehler im Endschritt 1306 (13) zurück, da der
ausgewählte
Inhalt an einen anderen benutzergebundenen Voll-Passport gebunden
ist, d.h. an einen anderen Benutzer gebunden ist. Wenn umgekehrt
das Zertifikat maschinengebunden ist, geht die Verarbeitung zu Schritt 1308 über.
-
Der
Prüfschritt 1308 implementiert
eine Policy-Entscheidung, in welcher der Authentisierungs-Server 126 ermittelt,
ob maschinengebundene Schlüssel
zu einem bereits vorhandenen Voll-Passport hinzugefügt werden
können.
Dies würde
geschehen, wenn sich ein Benutzer beispielsweise für einen
Voll-Passport auf einem Client-Rechnersystem registriert hätte und
sich für
einen maschinengebundenen Passport auf einem anderen Client-Rechnersystem registriert
hätte und
den später erworbenen
Inhalt vom letzteren Client-Rechnersystem
auf das Erstere übertragen
wollte. Der Benutzer hätte
erworbenen Inhalt, der an zwei verschiedene Schlüsselgruppen gebunden ist. Wenn
dies nicht gestattet ist, geht die Verarbeitung zum Endschritt 1306 über und
gibt einen Fehler zurück.
Wenn dies umgekehrt gestattet ist, geht die Verarbeitung zum Prüfschritt 1310 über.
-
Im
Prüfschritt 1310 implementiert
der Authentisierungs-Server 126 eine weitere Policy-Entscheidung, nämlich, ob
dieser bestimmte Voll-Passport weitere Schlüssel enthalten kann. Im Allgemeinen
dürfen
Voll-Passports nur eine begrenzte Anzahl von zusätzlichen Schlüsseln aufnehmen, so
dass Benutzer nicht maschinengebundene Schlüssel und In halt von Freunden
und Kollegen ohne jede Begrenzung sammeln können. In dieser Ausführungsform
gibt die Begrenzung für Passport-Schlüssel 1912 (19)
eine maximale Anzahl von Schlüsseln
an, die von einem Passport auf der Basis des Schlüssel-Datensatzes 1704 aufgenommen
wird. Der Authentisierungs-Server 126 vergleicht die Anzahl
von Schlüsseln,
die bereits in den Voll-Passport des Benutzers aufgenommen sind, mit
der Begrenzung, die in der Begrenzung für Passport-Schlüssel 1912 angegeben
ist, um zu ermitteln, ob der Passport weitere Schlüssel aufnehmen
kann.
-
Wenn
der Passport keine weiteren Schlüssel aufnehmen
kann, geht die Verarbeitung zum Endschritt 1306 (13) über, in
dem ein Fehler zurückgegeben
wird. Im Endschritt 1306, gleichgültig, ob über Prüfschritt 1304, Prüfschritt 1308 oder
Prüfschritt 1310,
wird die Verarbeitung gemäß dem logischen
Ablaufdiagramm 1300 beendet.
-
Wenn
umgekehrt der Passport weitere Schlüssel aufnehmen kann, geht die
Verarbeitung zu Schritt 1312 über, in dem der Schlüssel zu
dem Passport hinzugefügt
wird, und das Hinzufügen
des Schlüssels
wird in einem neuen Historie-Datensatz in die Zertifikat-Datenbank 124 aufgenommen.
Beim Hinzufügen
des Schlüssels
fügt der
Authentisierungs-Server 126 einen weiteren Schlüssel-Datensatz 2312 (23)
zu dem Passport hinzu. Der weitere Schlüssel-Datensatz 2312 enthält einen
Schlüssel 2314 und
ein Zertifikat 2316. Das Zertifikat 2316 ist das
Zertifikat der Inhalt-Wiedergabevorrichtung, an die der ausgewählte Inhalt
bereits gebunden ist, und der Schlüssel 2314 ist der
geheime Gegen-Schlüssel.
Der Schlüssel 2314 wird
unter Verwendung des nichtverschlüsselten Registrierungsschlüssel 2308 verschlüsselt – siehe
z.B. Auslöse-Registrierungsschlüssel 520 (5).
In einer Ausführungsform
wird eine derartige Verschlüsselung
durch die Inhalt-Wiedergabevorrichtung 142 (1)
nach der Rückgabe
der Passport-Informationen durch den Authentisierungs-Server 126 ausgeführt, da
die Inhalt-Wiedergabevorrichtung 142 das vom Benutzer bereitgestellte
Passwort direkt empfängt.
In einer alternativen Ausführungsform
verwaltet der Authentisierungs-Server 126 den Auslöse-Registrierungsschlüssel 520 und
empfängt
das vom Benutzer bereitgestellte Passwort von der Inhalt-Wiedergabevorrichtung 142 zusammen
mit der Passport-Anforderung, und demgemäß verschlüsselt der Authentisierungs-Server 126 den
Schlüssel 2314 (23).
-
Nach
Schritt 1314 (12) geht die Verarbeitung zum
Endschritt 1316 über,
in dem der Authentisierungs-Server 126 einen Voll-Passport-Datensatz
sendet und die Verarbeitung gemäß dem logischen
Ablaufdiagramm 1300 beendet.
-
Das
logische Ablaufdiagramm 1400 (14) stellt
die Antwort des Authentisierungs-Servers 126 auf
die Anforderung der Inhalt-Wiedergabevorrichtung 142 in
Schritt 1122 (11) dar, in dem der Benutzer
keinen Voll-Passport besitzt, sondern anfordert, dass ein vorher
erworbener maschinengebundener Passport auf einen Voll-Passport
hochgestuft wird. Der Benutzer kann eine solche Hochstufung explizit
anfordern, oder eine solche Hochstufung kann versucht werden, wenn
ein Benutzer zustimmt nach dem Versuch, maschinengebundenen Inhalt
auf einem Client-Rechnersystem abzuspielen, an das der Inhalt nicht
gebunden war. In Schritt 1402 (14) generiert
der Authentisierungs-Server 216 einen neuen Voll-Passport
mit einem Schlüssel
zu dem Inhalt. Schritt 1402 ist in größerem Detail als das logische
Ablaufdiagramm 1402 (15) dargestellt.
-
In
Schritt 1502 sucht der Authentisierungs-Server 126 nach
einem Schlüssel-Datensatz mit
einer Hardware-Kennung 1914 (19), die
der Hardware-Kennung entspricht, die von der Inhalt-Wiedergabevorrichtung 142 in
der Anforderung von Schritt 1122 (11) empfangen
wurde. Wenn keine gefunden wird, geht die Verarbeitung zu Schritt 1504 über.
-
In
Schritt 1504 erstellt der Authentisierungs-Server 126 eine
neues Schlüsselpaar
und bildet einen neuen Schlüssel-Datensatz,
wie beispielsweise den Schlüssel-Datensatz 1704 (19),
der das neue Schlüsselpaar
darstellt. In Schritt 1506 erstellt der Authentisierungs-Server 126 einen Voll-Passport
mit den Schlüsseln
des neuen Schlüssel-Datensatzes. Der
Authentisierungs-Server 126 kopiert speziell den öffentlichen
Schlüssel 1906 (19)
und die Gültigkeits-Datumsangaben 1908 des
neu erstellten Schlüssel-Datensatzes 1704 jeweils
in den öffentlichen
Schlüssel 2320 (23)
und die Gültigkeits-Datumsangaben 2322.
Der Authentisierungs-Server 126 erstellt eine neue Zertifikat-Seriennummer 2324 und
signiert das Zertifikat 2302, um die Signatur 2326 zu
bilden. Der Authentisierungs-Server 126 kopiert den geheimen
Schlüssel 1904 (19)
in den geheimen Schlüssel 2304 (23).
In dieser Ausführungsform
wird der geheime Schlüssel 1904 durch
die Inhalt-Wiedergabevorrichtung 142 (1)
in Schritt 1010 (10) wie oben
beschrieben geschützt.
Außerdem
werden die geheimen Benutzer-Informationen 2306 (23) leer
gelassen, um von der Inhalt-Wiedergabevorrichtung 142 vervollständigt zu
werden. Der Authentisierungs-Server 126 erstellt einen
neuen Registrierungsschlüssel 2308 und
eine neue Zufallszahl 2310. Die Inhalt-Wiedergabevorrichtung 142 schützt den Registrierungsschlüssel 2308 in
Schritt 1010 (10) wie oben beschrieben.
-
Zurückkehrend
zum Prüfschritt 1502 geht
die Verarbeitung, wenn ein Schlüssel-Datensatz
gefunden wird, welcher der empfangenen Hardware-Kennung entspricht,
zum Prüfschritt 1508 über, der
eine Policy-Entscheidung implementiert. Der Prüfschritt 1508 implementiert
speziell die gleiche Policy-Entscheidung, die durch den Prüfschritt 1308 (13) implementiert
wurde – d.h.
ob ein Voll-Passport maschinengebundene Schlüssel enthalten kann. Wenn der
Authentisierungs-Server 126 ermittelt, dass ein Voll-Passport
keine maschinengebundenen Schlüssel
aufnehmen kann, geht die Verarbeitung zum Endschritt 1510 über, in
dem der Authentisierungs-Server 126 einen Fehler zurückgibt und
die Verarbeitung gemäß den logischen
Ablaufdiagrammen 1402 und 1400 (14)
beendet. Wenn umgekehrt der Voll-Passport maschinengebundene Schlüssel aufnehmen
kann, geht die Verarbeitung zu Schritt 1512 (15) über.
-
In
Schritt 1512 erfasst der Authentisierungs-Server 126 die
Ausgabe der Schlüssel
des Schlüssel-Datensatzes,
der im Prüfschritt 1502 ausfindig
gemacht wurde, in einem neuen Historie-Datensatz in der Zertifikat-Datenbank 124.
In Schritt 1514 erstellt der Authentisierungs-Server 126 einen Voll-Passport
mit den Schlüsseln
des maschinengebundenen Schlüssel-Datensatzes.
Schritt 1514 ist ein zum oben beschriebenen Schritt 1506 analoger Schritt,
mit Ausnahme dessen, dass der Schlüssel-Datensatz 1704 in
Schritt 1514 nicht neu erstellt wird. Stattdessen ist der
Schlüssel-Datensatz 1704 der
Schlüssel-Datensatz,
der im Prüfschritt 1502 ausfindig
gemacht wurde.
-
Entweder
nach Schritt 1506 oder Schritt 1514 ist die Verarbeitung
gemäß dem logischen
Ablaufdiagramm 1401 und damit der Schritt 1402 (14)
beendet. In Schritt 1404 verwendet der Authentisierungs-Server 126 die
empfangene Hardware-Kennung und Inhaltsinformationen zum Generieren
des neuen Voll-Passports. Schritt 1404 ist in größerem Detail
als logisches Ablaufdiagramm 1404 (16) darstellt.
-
Im
Prüfschritt 1602 ermittelt
der Authentisierungs-Server 126, ob ein Zertifikat für ausgewählten Inhalt
von der Inhalt-Wiedergabevorrichtung 142 zusammen mit der
Anforderung von Schritt 1122 empfangen wurde. Wenn der
Benutzer ausdrücklich
eine Hochstufung seines Passports von maschinengebunden auf benutzergebunden
anfordert, ohne die Wiedergabe eines bestimmten Inhalts anzufordern, würde die
vom Authentisierungs-Server 126 empfangene Anforderung
kein Inhalt-Zertifikat enthalten. Wenn die Anforderung jedoch über Schritt 1122 (11)
erfolgt, in dem die Hochstufungs-Anforderung eine Reaktion auf einen
Versuch ist, den Inhalt auf einem ersten Client-Rechnersystem wiederzugeben,
wenn der Inhalt an ein zweites Client-Rechnersystem gebunden ist,
wobei die Anforderung das Zertifikat des Inhalts enthält, dessen
Wiedergabe versucht wurde.
-
Wenn
kein Inhalt-Zertifikat in der Anforderung von der Inhalt-Wiedergabevorrichtung 142 enthalten
ist, geht die Verarbeitung zum Schritt 1604 (16) über, in
dem die Voll-Passport-Informationen,
die im Schritt 1506 (15) oder
Schritt 1514 generiert wurden, zurückgegeben werden. Die Verarbeitung
gemäß dem logischen
Ablaufdiagramm 1402 (16) und
damit der Schritt 1404 (14) werden nach
dem Schritt 1604 (16) beendet.
-
Wenn
andererseits ein Inhalt-Zertifikat in der Anforderung von der Inhalt-Wiedergabevorrichtung 142 enthalten
ist, geht die Verarbeitung zum Prüfschritt 1606 über. In
Schritt 1601 ermittelt der Authentisierungs-Server 126,
ob die Hardware-Kennung, die von der Inhalt-Wiedergabevorrichtung 142 empfangen
wurde, mit dem Inhalt-Zertifikat übereinstimmt. Falls ja, fordert
der Benutzer eine Hochstufung von der Maschine an, an die sein Inhalt
gebunden ist, und die Verarbeitung geht zu Schritt 1604 über, in
dem die Voll-Passport-Informationen,
die in Schritt 1506 (15) oder
Schritt 1514 erstellt worden sind, zurückgegeben werden. Wenn umgekehrt die
empfangene Hardware-Kennung und das Inhalt-Zertifikat nicht übereinstimmen,
geht die Verarbeitung zum Prüfschritt 1610 über.
-
In
Prüfschritt 1610 implementiert
der Authentisierungs-Server 126 eine Policy-Entscheidung,
und zwar, ob maschinengebundene Schlüssel an einen Voll-Passport
ausgegeben werden können.
Dies ist das Gleiche wie die Policy-Entscheidung von Prüfschritt 1508.
Wenn maschinengebundene Schlüssel nicht
an einen Voll-Passport ausgegeben werden können, wird ein Fehler zurückgegeben,
und die Verarbeitung gemäß den logischen
Ablaufdiagrammen 1404 und 1400 (14)
wird beendet. Wenn umgekehrt maschinengebundene Schlüssel zu
dem Voll-Passport hinzugefügt
werden können,
geht die Verarbeitung zum Prüfschritt 1612 über.
-
Im
Prüfschritt 1612 implementiert
der Authentisierungs-Server 126 eine weitere Policy-Entscheidung, und
zwar, ob dieser Passport weitere Schlüssel aufnehmen kann. Dies ist
das Gleiche wie die Policy-Entscheidung von Prüfschritt 1310. Wenn der
Voll-Passport keine weiteren Schlüssel aufnehmen kann, wird ein
Fehler zurückgegeben,
und die Verarbeitung gemäß den logischen
Ablaufdiagrammen 1404 und 1400 (14)
wird beendet. Wenn umgekehrt der Voll-Passport weitere Schlüssel aufnehmen
kann, geht die Verarbeitung zu Schritt 1614 (16) über.
-
In
Schritt 1614 zeichnet der Authentisierungs-Server 126 die
Aufnahme der maschinengebundenen Schlüssel in dem Voll-Passport in
der Zertifikat-Datenbank 124 in der Weise auf, die vorher
in Schritt 1312 (13) beschrieben
wurde. In Schritt 1616 fügt der Authentisierungs-Server 126 die Schlüssel aus
dem Inhalt-Zertifikat zu dem Voll-Passport hinzu. Wenn beispielsweise
das Zertifikat 2100 (21) das
Inhalt-Zertifikat darstellt, speichert der Authentisierungs-Server 126 das
Zertifikat 2100 als das Zertifikat 2316 (32), und speichert den dazugehörigen geheimen
Schlüssel 1904 des damit
verknüpften
Schlüssel-Datensatzes
als den Schlüssel 2314 (23).
-
Nach
Schritt 1614 (16) geht die Verarbeitung zum
Schritt 1604 über,
in dem die Voll-Passport-Informationen, die in Schritt 1506 (15)
oder Schritt 1514 erstellt wurden, mit den zusätzlichen
Schlüsseln
von Schritt 1616 (16) zurückgegeben
werden, und die Verarbeitung gemäß den logischen
Ablaufdiagrammen 1404 und 1400 (14)
wird beendet.
-
Auf
diese Weise wird ein maschinengebundener Passport in einen benutzergebundenen Passport
konvertiert auf eine sichere Weise, die für den Benutzer relativ praktisch
ist, und ohne dass ein erneutes Verschlüsseln oder anderweitiges Modifizieren
der gebundenen Daten erforderlich ist.
-
Sichere Verbindung
zwischen dem Authentisierungs-Server und der Inhalt-Wiedergabevorrichtung
-
Wie
vorher kurz beschrieben, kommunizieren der Authentisierungs-Server
(1) und die Inhalt-Wiedergabevorrichtung 142 über eine
sichere Verbindung durch ein Weitverkehrs-Netzwerk 106.
In einer Ausführung
wird die bekannte Verbindungsart Secure Sockets Layer (SSL) für die sichere
Kommunikation zwischen dem Authentisierungs-Server 126 und der Inhalt-Wiedergabevorrichtung 142 verwendet.
-
In
einer alternativen Ausführungsform
kommunizieren der Authentisierungs-Server 126 und die Inhalt-Wiedergabevorrichtung 142 miteinander
in einer kryptografisch sicheren Sitzung, was einfacher als das
SSL-Protokoll ist. Die Inhalt-Wiedergabevorrichtung 142 sendet
eine Anforderungsmeldung an den Authentisierungs-Server 126,
um das Zertifikat des Authentisierungs-Servers 126 zu erhalten.
Die Inhalt-Wiedergabevorrichtung 142 verschlüsselt ihre Registrierungs-Informationen
mit dem öffentlichen Schlüssel des
Authentisierungs-Servers 126, so dass nur der Authentisierungs-Server 126 die
Registrierungs-Informationen entschlüsseln kann. Der Authentisierungs-Server 126 gibt
die Informationen zurück,
die notwendig sind, um den Passport zur Inhalt-Wiedergabevorrichtung 142 zu
erstellen. Die Informationen werden unter Verwendung eines Schlüssels verschlüsselt, der
von den Registrierungs-Informationen abgeleitet wird, die von der
Inhalt-Wiedergabevorrichtung 142 bereitgestellt werden,
so dass nur die Inhalt-Wiedergabevorrichtung 142 die Passport-Informationen
entschlüsseln
kann.
-
Die
vorgenannte Beschreibung ist nur veranschaulichend und nicht einschränkend. Die
vorliegende Erfindung wird nur durch die folgenden Ansprüche eingeschränkt.