-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung betrifft die abgemessene Nutzung kryptographischer
Systeme und insbesondere eine Datenpaketaufzeichnung, die in einem
Verfahren sowie in Einrichtungen zur Durchführung von Kaufvorgängen für die abgemessene Nutzung
verschlüsselter
Daten verwendet wird.
-
Hintergrund
der Erfindung
-
Es
sind Systeme bekannt, die die zur Nutzung zur Verfügung gestellte
Information messen; siehe z.B. U.S.-Patent Nr. 4.827.508 erteilt
für Shear oder
U.S.-Patent Nr.
5.010.571 für
Katznelson, in denen der Zugang zu einer verschlüsselten CD-ROM-Datenbasis gemessen
wird. Kurz gesagt, wird eine CD-ROM, die eine verschlüsselte,
für einen Nutzer
interessante Datenbasis enthält, üblicherweise
zu nominellen Kosten oder kostenlos abgegeben. Ein Nutzer-Terminal
enthält
einen Standort- oder Host-Computer, ein CD-ROM Lesegerät und eine
abgesetzte kryptographische Steuereinheit, die mit gespeicherten
kryptographischen Schlüsseln
ausgestattet ist, die für
den Zugang zur Datenbasis erforderlich sind. Der Umfang der tatsächlichen
Datennutzung, d.h. die Entnahme und Entschlüsselung von Daten von der CD-ROM,
wird lokal gemessen und aufgezeichnet als Datenspeicherungsnutzung.
Der für
den Zugang zu den Daten berechnete Preis richtet sich entweder nach
dem Umfang der entschlüsselten
Daten oder entspricht den Preisinformationen, die in den jeweiligen
Datenköpfen
jedes individuellen Datenpakets aufgezeichnet sind.
-
Systeme
zum Verschlüsseln
von Daten auf der Grundlage eines Schlüssels und zum gemeinsamen Speichern
sind ebenfalls bekannt, siehe z.B. EP-A-0191162.
-
Die
lokale Aufzeichnung der Nutzung gespeicherter Daten wird über Telefon-Modem oder andere
Telekommunikationsverbindungen von einem abgesetzten Nutzer-Terminal
wie einem Host-Personal Computer mit der abgesetzten kryptographischen Steuereinheit,
an ein kryptographisches Betriebszentrum berichtet (uploaded). Jede
abgesetzte kryptographische Steuereinheit ist mit einem gespeicherten Geheimschlüssel ausgerüstet, der
diesem abgesetzten Nutzer-Terminal
individuell zugeordnet ist. Die Kommunikation zwischen dem Nutzer-Terminal und dem
kryptographischen Betriebszentrum wird durch die Verschlüsselung
auf der Basis dieses Geheimschlüssels
gesichert, der in einem sicheren Speicher in der kryptographischen
Steuereinheit gespeichert wird. Der Geheimschlüssel für jeden Nutzer wird ebenfalls
im kryptographischen Betriebszentrum gespeichert. Meldet sich ein
abgesetztes Nutzer-Terminal und identifiziert sich, sucht das kryptographische Betriebszentrum
den entsprechenden Geheimschlüssel
des Nutzers heraus, der dann in einer nachfolgenden sicheren Datenaustauschkommunikation
zwischen dem abgesetzten Nutzer-Terminal und dem kryptographischen
Betriebszentrum angewendet wird.
-
Im
kryptographischen Betriebszentrum werden ebenfalls die unterschiedlichen
kryptographischen Schlüssel
gespeichert, die den zur Verfügung stehenden
CD-ROM-Titeln der
Datenbasis entsprechen. Der Geheimschlüssel des Nutzers wird ebenfalls
verwendet, um die Lieferung geheimer Datenbasisschlüssel vom
kryptographischen Betriebszentrum an das Nutzer-Terminal für eine gewünschte CD-ROM
Datenbasis zu sichern, und zwar im allgemeinen dann, wenn ein neuer
CD-ROM-Titel das erste Mal erscheint.
-
Wie
erwähnt,
berichtet die abgesetzte kryptographische Steuereinheit über Telefon-Modem
von einer Datennutzung. Nachdem die Datennutzungsaufzeichnung dem
kryptographischen Betriebszentrum erfolgreich zugeführt wurde,
werden dem Nutzer die Kosten für
die tatsächliche
Datenbasisnutzung berechnet oder er wird damit belastet, und zwar
auf der Basis des Inhaltes der zugeführten Datennutzungsaufzeichnung.
Der Nutzer zahlt also nur für
die tatsächlich
genutzte oder entschlüsselte
Datenmenge von der CD-ROM und ist nicht genötigt, eine vollständige CD-ROM
Datenbasis zu kaufen.
-
Üblicherweise
enthält
die abgesetzte kryptographische Steuereinheit im Nutzer-Terminal ein oder
mehrere Kreditregister. Da jeder Datenkauf in Form eines Kaufblocks
durchgeführt
und aufgezeichnet wird, wird das entsprechende Kredit register belastet.
Das Kreditregister begrenzt die Datenmenge, die entschlüsselt werden
darf, bevor vom kryptographischen Betriebszentrum ein Herunterladen
von Kredit angefordert wird. Das Kreditregister hat den Zweck, einen
unbegrenzten Zugang zur Datenbasis zu verhindern, ohne dass die
Kaufblocks gemeldet werden und für
die Nutzung der Daten gezahlt wird, und um off-line Zugang zum Kredit
zu begrenzen. Ist der vorhandene Kredit aufgebraucht, dann ist keine weitere
Datenentschlüsselung
erlaubt, bis das Nutzer-Terminal mit neuem Kredit aufgeladen wurde. Datennutzung
aus der Vergangenheit wird vom Nutzer-Terminal an das kryptographische Betriebszentrum
in Form einer Nutzeraufzeichnung berichtet, die aus einer Mehrzahl
von Kaufblöcken
(stored data usage records) besteht.
-
Die
Systeme nach dem Stand der Technik weisen jedoch mehrere Probleme
bei der Anwendung auf, die mit der Datenpaketaufzeichnung und der
Systemdurchführung
nach der vorliegenden Erfindung gelöst werden.
-
Bei
dem Stand der Technik wird üblicherweise
ein getrennter Verschlüsselungscode
für jedes
getrennte Datenpaket verwendet. Auf diese Weise kann jedes Datenpaket
getrennt berechnet werden. Während
ein Datenkopf pro Datenpaket angemessen ist, wenn es sich im Vergleich
zum Verschlüsselungsschlüssel um
ein großes
Datenpaket handelt, wird ein solches System unwirtschaftlich, wenn
es sich um ein kleines Datenpaket handelt. In einem solchen Fall verbraucht
die Verschlüsselungsschlüssel mehr Speicherplatz
als die Daten. Bei einer Datenbasis wie einer Adressenliste, zum
Beispiel, sind die Aufzeichnungen zu klein, um für jeden Eintrag einen getrennten
Verschlüsselungsschlüssel zu
rechtfertigen, und dennoch ist es wünschenswert, dass jeder Dateneintrag
der Adressenliste getrennt berechnet und verschlüsselt wird.
-
Bei
den bekannten Systemen beendet das Auslaufen des Kredits auch den
Vorgang der Datenentschlüsselung
und zwingt den Nutzer, mit dem kryptographischen Betriebszentrum
eine Verbindung herzustellen, um weiteren Kredit auf sein Terminal
zu laden. Auf die Weise beendet also das Entleeren eines Kreditregisters
mitten in einer Datensitzung diesen Vorgang.
-
Außerdem hatten
bei den bekannten Systemen die Anbieter von Informationen keine
direkte Kontrolle darüber,
wer ihre Daten kaufte, da ein Kaufvorgang lokal off-line durchgeführt werden
konnte, wenn auf dem lokalen Nutzer-Terminal ausreichend Kredit
vorhanden war.
-
Zusammenfassung der Erfindung
-
Die
vorliegende Erfindung umfasst eine Datenpaketaufzeichnung zur Verwendung
in einem verschlüsselten
Datensystem, das eine on-line Ferntransaktionsmöglichkeit zwischen einem Nutzer-Terminal,
das eine abgesetzte kryptographische Steuereinheit (CRYPTO-Einheit)
enthält,
und einem kryptographischen Betriebszentrum (OPC) einschließt.
-
Insbesondere
enthält
eine erste Ausführungsform
einer verschlüsselte
Datenbasis zur Verwendung entsprechend der vorliegenden Erfindung einen
Datenkopf oder Kopf (header), der einen Message-Schlüssel enthält, der
mit einem Datenbasisschlüssel
verschlüsselt
ist, sowie ein Datenpaket, das mit dem genannten Message-Schlüssel verschlüsselt ist.
Eine weitere Ausführungsform
einer verschlüsselten
Datenbasis zur Verwendung in Übereinstimmung
mit der vorliegenden Erfindung enthält einen Kopf, der einen mit
dem genannten Datenbasisschlüssel
verschlüsselten
Message-Schlüssel
enthält;
einen mit dem genannten Message-Schlüssel verschlüsselten
Message-Untereinheitsschlüssel
sowie eine Datenpaket-Untereinheit, die mit dem genannten Message-Untereinheitsschlüssel verschlüsselt ist.
Bei einer weiteren Ausführungsform
ist der Message-Untereinheitsschlüssel gekürzt, um Speicherplatz zu sparen.
In einer weiteren Ausführungsform
ist der Message-Unterheinheitsschlüssel von der Datenadresse abgeleitet,
indem die virtuelle Datenadresse so maskiert wird, dass sie zu der
Länge des
gewünschten
Message-Untereinheitsschlüssels passt.
Bei der zuletzt genannten Ausführungsform wird
zum Speichern der Message-Untereinheitsschlüssel kein
zusätzlicher
Speicherplatz benötigt.
-
Während des
Verarbeitungsvorgangs (nachfolgend als DP setup bezeichnet), mit
dem Verschlüsselungsschlüssel abgeleitet
werden und die erwünschten
Daten von der verschlüsselten
Datenbasis entschlüsselt
werden, überprüft die CRYPTO-Einheit,
ob ausreichend Kredit und/oder ausreichende Datenbasisschlüssel vorhanden
sind, um den Kaufvorgang vollständig
abzuwickeln. Fehlt es an Kredit, dann kann ein Ferntransaktionsmodus
benutzt werden, wenn der Nutzer den Ferntransaktionsmodus einleiten
will und die Datenbasis eine Ferntransaktion erlaubt. Zur Einleitung
einer Ferntransaktion initiiert die CRYPTO-Einheit während eines
Ferntransaktionsvorgangs sofort einen Bericht an das OPC.
-
Bei
der Durchführung
eines Kaufvorganges während
einer Ferntransaktion wird weder Kredit noch Rückzahlung heruntergeladen und
es wird von dem ablaufenden Kaufvorgang kein Eintrag als Kaufblock
vorgenommen. Stattdessen wird ein on-line Kaufvorgang des Datenpaketes
in Realzeit durchgeführt,
so dass eine nicht unterbrochene Fortsetzung des Datenverarbeitungsvorgangs
durch den Nutzer möglich
ist. Der Ferntransaktionsmodus kombiniert also die Verwendung einer
verschlüsselten
off-line Datenbasis und eine on-line Finanztransaktion in Realzeit,
um off-line verschlüsselte
Daten zu kaufen.
-
Der
Ferntransaktionsmodus erlaubt ebenfalls eine bessere Kontrolle eines
Informationsanbieters über
die Verteilung seines Produktes. Der Software-Anbieter kann fordern,
dass alle Kaufvorgänge über den
Ferntransaktionsmodus abgewickelt werden, indem er in einer Kontrollaufzeichnung,
die Datenbasis-Informationsaufzeichnung
(DB-Informationsaufzeichnung) genannt wird, ein Kauferlaubnisfeld
vorsieht. Dadurch, dass on-line Kaufvorgänge erforderlich sind (im Gegensatz
zu Kaufvorgängen, die
off-line durchgeführt
und später
aufgezeichnet werden), kennt der Informationsanbieter die Identität des Käufers vor
dem Kaufvorgang und kann also den Verkauf von Produkten auf bestimmte
Nutzer beschränken.
-
Der
Datenaustausch für
die Ferntransaktion wird so kurz wie möglich gehalten, um die Transaktion
durchzuführen
und es dem Nutzer zu ermöglichen,
die Benutzung der Datenbasis so schnell wie möglich wieder aufzunehmen. Bei
einer Ferntransaktion generiert die CRYPTO-Einheit eine Message,
die einen sicheren Kopf, einen Bericht eines einzigen Kaufblocks
und eine Kreditanforderungsaufzeichnung in einer Message kombiniert.
Das OPC spricht darauf an, indem es eine verschlüsselte Version des gewünschten
Datenbasisschlüssels
herunterlädt,
der mit einem Schlüssel
verschlüsselt
ist, der einzig für die
Ferntransaktion zur Kreditgewährung
zur Verfügung
steht, wodurch eine doppelte Überprüfung der richtigen
Lieferung von Datenbasisschlüsseln
durchgeführt
wird.
-
Die
Erfindung wird in Anspruch 1 (Verfahren) und Anspruch 5 (Vorrichtung)
definiert.
-
Kurzbeschreibung
der Zeichnungen
-
1 ist
ein Blockdiagramm eines Systems zur Aufzeichnung abgemessener Nutzung
von verschlüsselten
Informationen, das eine Darstellung der vorliegenden Erfindung ist.
-
2 ist
ein Blockdiagramm, das das Kommunikationsprotokoll zwischen einer
abgesetzten CRYPTO-Einheit und einem OPC (kryptographisches Betriebszentrum)
in Übereinstimmung
mit der vorliegenden Erfindung darstellt.
-
3 ist
ein Flussdiagramm, das ein Verfahren zum Erzeugen eines sicheren
Kopfes in einer abgesetzten CRYPTO-Einheit entsprechend der vorliegenden
Erfindung darstellt.
-
4 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Empfang
eines sicheren Kopfes in ein Betriebszentrum entsprechend der vorliegenden
Erfindung illustriert.
-
5 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Generieren
einer sicheren Anforderungs-Message und einer sicheren Nutzungsaufzeichnungsnutzungs-Message
in einer abgesetzten CRYPTO-Einheit entsprechend der vorliegenden
Erfindung illustriert.
-
6 ist
ein teilweise in Blockform dargestelltes Diagramm, das das Paketformat
einer sicheren Message darstellt, die in einer abgesetzten CRYPTO-Einheit entsprechend
der vorliegenden Erfindung generiert wurde.
-
7 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Empfangen
einer sicheren Anforderungs-Message und einer sicheren Aufzeichnungs-Message
in einem Betriebszentrum darstellt.
-
8 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Vorbereiten
von sicheren Befehlen in einem Betriebszentrum entsprechend der
vorliegenden Erfindung darstellt.
-
9 ist
ein teilweise in Blockform dargestelltes Diagramm, das das Paketformat
für eine
sichere Message in einem Betriebszentrum entsprechend der vorliegenden
Erfindung illustriert.
-
10 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Empfangen
von sicheren Befehlen in einer abgesetzten CRYPTO-Einheit entsprechend
der vorliegenden Erfindung illustriert.
-
11A ist ein teilweise in Blockform dargestelltes
Diagramm zur Illustration des Datenformats und der Entschlüsselung
einer verschlüsselten
Datenbasis.
-
11B ist ein Flussdiagramm, das die Anwendung einer
Ferntransaktionsanforderung während
eines Datenkaufvorgangs bei der abgemessenen Entschlüsselung
einer verschlüsselten
Datenbasis illustriert.
-
12 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Generieren
einer Ferntransaktionsanforderung in einer abgesetzten CRYPTO-Einheit entsprechend
der vorliegenden Erfindung illustriert.
-
13 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Empfangen
einer Ferntransaktionsanforderung in einem Betriebszentrum illustriert,
wie es von der vorliegenden Erfindung verkörpert wird.
-
14 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zur Ausarbeitung
einer Ferntransaktionsantwort in einem Betriebszentrum entsprechend
der vorliegenden Erfindung illustriert.
-
15 ist
ein Flussdiagramm, das ein Verfahren und eine Vorrichtung zum Empfangen
einer Ferntransaktionsantwort in einer abgesetzten CRYPTO-Einheit
illustriert.
-
16 ist
ein Diagramm unterschiedlicher Datenfelder der DB-Informationsaufzeichnung,
die im Speicher entsprechend der vorliegenden Erfindung dargestellt
ist.
-
Detaillierte Beschreibung
-
EIN DATENSYSTEM MIT ABGEMESSENEN
EINHEITEN
-
Ein
System zum Abmessen und Aufzeichnen des Zugangs zu einer verschlüsselten
Datenbasis ist in 1 dargestellt. Das System enthält ein Nutzer-Terminal 16 und
ein kryptographisches Betriebszentrum (operation center OPC) 12.
Das Nutzer-Terminal 16 besteht üblicherweise aus einem Host-Personalcomputer,
der eine CPU 18, ein CD-ROM-Lesegerät 20, ein Modem 19 und
eine abgesetzte (remote) kryptographische Steuereinheit (CRYPTO-Einheit oder
Informationsmesseinheit) 10 enthält, die mit einem nicht-flüchtigen
(non-volatile) RAM-Speicher 11 gekoppelt
ist. Das Nutzer-Terminal 16 ist mit dem OPC 12 über eine
Telefonleitungsmodemverbindung 17 verbunden.
-
Im
Betrieb bietet ein Informationsanbieter 14 eine verschlüsselte Datenbasis 20,
beispielsweise in der Form einer CD-ROM, dem Nutzer-Terminal 16 an.
Der Nutzer führt
die verschlüsselte
CD-ROM in das CD-ROM-Lesegerät 20 ein.
Mit der Software für Such-
und Wiederauffinden-Vorgänge
(Search and Retrieval) im Host-PC des Nutzers führt CPU 18 einen Suchvorgang
in der verschlüsselten
CD-ROM Datenbasis durch. Um die Ergebnisse des Suchvorganges zu
verwerten, fordert die CPU, dass die CRYPTO-Einheit 10 die
gewünschten
Datenpakete des CD-ROM-Lesegerätes 20 entschlüssele.
-
Wurde
die CRYPTO-Einheit vorher mit den erforderlichen Datenbasisschlüsseln (DB)
für die
in Frage stehende verschlüsselte
CD-ROM ausgerüstet und
ist zur Durchführung
des Kaufvorganges ausreichend Kredit im internen Kreditregister
vorhanden, dann entschlüsselt
die CRYPTO-Einheit 10 die gewünschten ver schlüsselten
Daten. Danach werden die Kosten für die entschlüsselten
Daten vom internen Kreditregister subtrahiert. Zusätzlich wird
eine Aufzeichnung vom Kaufvorgang und der Entschlüsselung
der Daten im nicht-flüchtigen
RAM-Speicher 11 als
Kaufblockeintrag aufgezeichnet.
-
Endlich
wird der Host-PC 16, der die CRYPTO-Einheit 10 enthält, eine
Verbindung zum OPC 12 über
eine Telefonleitung herstellen, um den Kredit wieder aufzufüllen und
die Datennutzung zu berichten. Unter der Steuerung durch den Host-PC
ruft die CRYPTO-Einheit 10 das OPC an, wenn (1.) der Nutzer
einen Befehl initiiert, der die CRYPTO-Einheit 10 veranlasst,
das OPC 12 anzurufen, üblicherweise, wenn
zusätzlicher
lokaler Kredit erforderlich wird; (2.) die Menge an vorhandenem
Speicherplatz zur Aufzeichnung der Datennutzungsaufzeichnungen (Kaufblöcke) im
nicht-flüchtigen
RAM-Speicher 11 gering oder aufgebraucht ist; (3.) eine
festgesetzte Zeitspanne abgelaufen ist; (4.) eine Anforderung für eine Ferntransaktion
vom Nutzer initiiert wird (wenn die Datenbasis einen Ferntransaktionsmodus
erlaubt), um einen on-line Kaufvorgang eines Datenpaketes im Ferntransaktionsmodus
in Realzeit durchzuführen.
-
In
jedem Fall gibt die CRYPTO-Einheit 10 dem Modem 19 den
Befehl zur Herstellung einer Telefonverbindung 17 zum OPC 12.
Nachdem eine Telefonverbindung hergestellt wurde, identifiziert
sich die CRYPTO-Einheit 10 gegenüber dem OPC 12 entweder
mit einer sicheren Kopf-Message (header message) oder mit einer
Anforderung für
eine Ferntransaktion. Nach der Übersendung
einer sicheren Kopf-Message kann die CRYPTO-Einheit 10 die
Nutzung berichten oder eine sichere Anforderung für eine Konsumer-Identifikationsnummer
(Konsumer-ID) oder für
einen Kredit oder eine Rückerstattung
senden. Als Antwort darauf sendet das OPC in einem sicheren Befehl
eine Konsumer-ID, einen Kredit oder eine Rückvergütung an die CRYPTO-Einheit 10 sowie
jede weitere Art von Befehl, die zu dem Zeitpunkt gesendet werden
soll. Das OPC 12 kann auf eine Anforderung für eine Ferntransaktion
mit einer sofortigen Erlaubnis für
die Transaktion reagieren.
-
Nach
dem Datenaustausch kann die CRYPTO-Einheit 10 entweder
für weitere
Kaufvorgänge verschlüsselter
Informationen freigegeben werden oder für weitere Kaufvorgänge gesperrt
werden. In periodischen Intervallen berichtet das OPC 12 dem Informationsanbieter 14 über die
Nutzung der Informationen.
-
VERWENDETE
KONVENTIONEN
-
Bei
dem hier beschriebenen Verschlüsselungs-
und Entschlüsselungsprozess
wird der Data Encryption Standard (DES) bevorzugt. Kurz gesagt wird
entsprechend dem elektronischen Code-Buch-Modus (electronic code
book ECB) des DES ein Eingabeblock von 64 Bits (8 Bytes) in einen Ausgabeblock
von 64 Bits entsprechend einem 56 Bit-Schlüssel umgewandelt. Zur Entschlüsselung wird
der umgekehrte Prozess durchgeführt,
64 Eingabe-Bits werden in 64 Ausgabe-Bits umgewandelt, wobei derselbe 56
Bit-Schlüssel
verwendet wird. DES-Schlüssel werden üblicherweise
in 64 Bits, 8 Byte-Mengen, dargestellt, wobei jedes Byte sieben Bits
plus einem Paritäts-Bit
oder 56 Schlüssel-Bits plus
8 Paritäts-Bits
enthält.
In dem hier beschriebenen Zusammenhang bedeutet die Durchführung einer
verschlüsselten
Schlüsselladung
einer Variablen mit einem Geheimschlüssel die Verschlüsselung (oder
Entschlüsselung)
dieser Variablen (im allgemeinen ein Schlüssel) mit dem Geheimschlüssel, um einen
weiteren Schlüssel
zu generieren. Das Verschlüsseln
kann mit einem Einfach- oder mit einem Mehrfachschlüssel, beispielsweise
einem Dreifachschlüsselsatz,
durchgeführt
werden. Bei einer Dreifachschlüssel-Verschlüsselung
wird ein Schlüsselsatz
von drei Schlüsseln
eingesetzt, um eine Variable unter Anwendung des DES wie folgt zu
verschlüsseln:
Verschlüsseln
mit Schlüssel 1,
Entschlüsseln mit
Schlüssel 2 und
Verschlüsseln
mit Schlüssel 3. Eine
Entschlüsselung
nach dem Dreifachschlüsselprinzip
geht in umgekehrter Reihenfolge vor sich – Entschlüsseln mit Schlüssel 3,
Verschlüsseln
mit Schlüssel 2 und
dann Entschlüsseln
mit Schlüssel 1.
-
In
dieser Beschreibung soll CBC einen Zahlzeichenblock-Verkettungsmodus
(cipher block chaining) mit Initialvektor bezeichnen, wie beispielsweise den
Zahlzeichenblock-Verkettungsmodus nach dem DES-Standard, der einen
Initialvektor, kurz als IV bezeichnet, verwendet. Nach einem Dreifachschlüssel-Ladevorgang eines
Dreifachschlüssels
aus entweder einem Dreifach-Message-Schlüssel
oder einem Einfach-Message-Schlüssel
wird folgendermaßen
fortgefahren: Ausgabeschlüssel 1 wird
abgeleitet aus dem Vorgang, bei dem Schlüssel 1, Schlüssel 2, Schlüssel 3 jeweils
verschlüsselt,
entschlüsselt
und verschlüsselt,
werden, und zwar in dieser Reihenfolge (zur Verschlüsselung);
Ausgabeschlüssel 2 wird abgeleitet
aus dem Vorgang, bei dem Schlüssel 3, Schlüssel 2,
Schlüssel 1 verschlüsselt, entschlüsselt bzw.
verschlüsselt
werden, und zwar in dieser Reihenfolge (zur Verschlüsselung);
und Ausgabeschlüssel 3 wird
abgeleitet aus dem Vorgang, bei dem Schlüssel 2, Schlüssel 1,
Schlüssel 3 verschlüsselt, entschlüsselt und
verschlüsselt
werden, in dieser Reihenfolge (zur Verschlüsselung). Außerdem soll, wenn
es nicht anders angegeben wird, der IV für eine CBC DES-Verschlüsselung
oder -Entschlüsselung Null
sein.
-
PAKETKOMMUNIKATIONSPROTOKOLL
-
In 2 ist
das Datenaustauschprotokoll zwischen dem OPC 12 und der
CRYPTO-Einheit 10 dargestellt. Zuerst wird eine sichere
Kopf-Message 234 von der CRYPTO-Einheit 10 an
das OPC 12 übersandt,
um die CRYPTO-Einheit 10 zu identifizieren und authentifizieren.
Nach einer sicheren Kopf-Message 234 werden eine oder mehrere
sichere Anforderungen oder Nutzerberichte in Form von sicheren Messages 236 von
der CRYPTO-Einheit 10 an das OPC 12 gesendet.
Nach Erhalt der sicheren Anforderung und/oder des entsprechenden
Berichtes antwortet das OPC 12 mit einer oder mehreren
sicheren OPC-Befehls-Messages 238 vom
OPC 12 an die CRYPTO-Einheit 10, beispielsweise
mit einem Herunterladen von Kredit an die CRYPTO-Einheit 10. Der
erhaltene Kredit wird von der CRYPTO-Einheit 10 für eine Datenpaketroutine
(DP setup) zur Entschlüsselung
von Daten verwendet.
-
Alternativ
kann der Nutzer einer CRYPTO-Einheit 10 einen on-line Kaufvorgang
eines Datenpakets in Realzeit in Form einer Ferntransaktion anfordern,
wenn die Datenbasis einen solchen Ferntransaktionsmodus erlaubt.
Zu diesem Zweck gibt die CRYPTO-Einheit 10 eine Anforderungs-Message 240 für eine Ferntransaktion
an das OPC 12 heraus. Bei einer Anforderung für eine Ferntransaktion
entscheidet das OPC 12, ob dem Kaufvorgang zuzustimmen
ist oder nicht und antwortet mit einer sicheren Message 242,
die eine Ferntransaktionsantwort ist, an die CRYPTO-Einheit 10.
Alle Sicherheitsfunktionen wie die Authentifikation und dergleichen
werden in eine einzige Anforderung der CRYPTO-Einheit und OPC-Antwort komprimiert.
In der CRYPTO-Einheit 10 wird dabei kein Kreditregister
in Anspruch genommen und im nicht-flüchtigen RAM-Speicher der CRYPTO-Einheit 10 wird
kein Kaufvorgang aufgezeichnet. Nach Erhalt der Zustimmung für die Anforderung
einer Ferntransaktion liefert die DP-setup Routine einen Schlüssel, der
zur Entschlüsselung von
gewünschten
Daten verwendet wird. In den 3 bis 14 wird
das beschriebene Message-Protokoll detaillierter dargestellt.
-
VORBEREITUNG
VON SICHERER KOPF-MESSAGE – CRYPTO-EINHEIT
-
Die
CRYPTO-Einheit speichert einen Geheimschlüssel, der als Kundenschlüsselsatz
(client key CK) bezeichnet wird, in einem batteriegestützten flüchtigen
Speicher mit wahlfreiem Zugang (RAM) 22. CK ist einer gegebenen
CRYPTO-Einheit individuell
zugeordnet. Außerdem
speichert die CRYPTO-Einheit zwei feste Konstanten: einen ersten
feststehenden String 24 und einen zweiten feststehenden
String 26. Ein Messeinheit-ID 30 identifiziert
die individuelle Messeinheit, die von der CRYPTO-Einheit dargestellt
wird. Die jeweils gültige
Zeit wird von einer Realzeituhr (real time clock RTC) 28 geliefert.
-
Mehrere
Kommunikationsschlüssel,
eingeschlossen ein Einheitenschlüssel
(unit key UK), eine Transaktionsidentifikation (TID) und ein Schlüssel zur Transaktionsverifikation
(TVK) werden auf die folgende Weise generiert. Der feststehende
String 24 wird mit dem CK in der Verschlüsselungseinheit 36 verschlüsselt (encrypted)
und das Ergebnis wird als ein Schlüssel verwendet, um den feststehenden
String 26 in der Verschlüsselungseinheit 38 zu
verschlüsseln,
was den UK ergibt. Die Realzeit von der Realzeituhr 28 wird
in der Verschlüsselungseinheit 40 mit dem
UK verschlüsselt,
um TID zu bilden. TID wird mit CK in der Verschlüsselungseinheit 42 verschlüsselt, um
einen intermediären
Schlüssel
SA zu liefern, der wiederum als Schlüssel dazu verwendet wird, die Messeinheitsidentifikation 30 (ID)
in der Verschlüsselungseinheit 44 zu
verschlüsseln,
um einen Schlüssel (key)
zur Transaktionsverifikation (TVK) zu bilden. Sofern es nicht anders
beschrieben wird, bedeutet eine Verschlüsselung einer Variablen mit
einem Schlüsselsatz
eine Dreifachschlüssel
DES Block-ECB Verschlüsselung.
-
Um
ein sicheres Kopfpaket (header packet) zu bilden, werden sichere
Kopfdaten (header data) 32 mit Dreifachschlüssel im
CBC verschlüsselt,
und zwar in der Verschlüsselungseinheit 48 mit
dem TVK und der Anwendung eines IV, der gleich der TID ist. Nicht
sichere Kopfdaten, die aus der Messeinheit-ID (Identifikationsnummer
für die
Messeinheit) 30, der Messversion 34 (wie eine
Revisionsnummer für
die Implementierung des integrierten Schaltkreises) und der TID
bestehen, werden unverschlüsselt
gesendet. Ein MAC (Message-Authentifikationscode
oder Manipulationserkennungscode) wird errechnet, indem die nicht
sicheren Kopfdaten mit den verschlüsselten Kopfdaten zusammengeführt werden
und eine Dreifachschlüssel-
CBC-Verschlüsselung
der Kombination 52 in der Verschlüsselungseinheit 54 mit
dem UK vorgenommen wird, um einen MAC zu bilden. Sofern nicht anders
angegeben, verwendet eine CBC-Verschlüsselung
(3 KEY CBC ENCRYPT) einen Dreifachschlüssel und einen IV gleich Null.
-
Die
nicht sicheren Kopfdaten, die verschlüsselten Kopfdaten von der Verschlüsselungseinheit 48 und
der errechnete MAC werden zu einem Paket zusammengeführt, das
eine sichere Kopf-Message 50 bildet und übersandt
wird an das OPC. In der CRYPTO-Einheit wird der errechnete sichere
Kopf-MAC in der Verschlüsselungseinheit 56 weiter
verschlüsselt, und
zwar mit dem TVK, um einen Prüfblock 57 zu
bilden, der lokal gespeichert wird.
-
EMPFANG EINER
SICHEREN KOPF-MESSAGE – OPC
-
Die
sichere Kopf-Message 58 wird empfangen und verarbeitet,
wie dies in 4 dargestellt ist. Die Kundenschlüssel-Datenbasis 60 enthält die Geheimschlüssel für alle Nutzer
des Systems. Unter Verwendung der nicht sicheren Kopfdaten für die Messeinheit-ID
und die Messversion wird der Kundenschlüssel CK in der Kundenschlüssel-Datenbasis 60 herausgesucht.
Der UK wird kopiert, indem der gespeicherte erste feststehende String 62 mit
CK in der Verschlüsselungseinheit 64 verschlüsselt wird und
das Ergebnis als Schlüssel
eingesetzt wird, um den zweiten feststehenden String 66 in
der Verschlüsselungseinheit 68 zu
verschlüsseln.
Die empfangenen nicht sicheren Kopfdaten TID werden mit CK in der
Verschlüsselungseinheit 70 verschlüsselt und
das Ergebnis SA als Schlüssel
zur Verschlüsselung
der Messeinheit-ID in der Verschlüsselungseinheit 72 verwendet,
um TVK wieder zu erschaffen. Der sichere Kopf-MAC wird in der Verschlüsselungseinheit 74 mit
TVK verschlüsselt,
um eine lokal erzeugte Version des Prüfblocks 76 zu bilden,
die im OPC gespeichert wird.
-
Um
den sicheren Kopf-MAC im OPC wieder zu erzeugen, wird das empfangene
sichere Kopfpaket (außer
dem MAC) in der CBC-Verschlüsselungseinheit 80 mit
UK verschlüsselt,
wobei das der Schlüssel
ist, bei dem IV gleich Null ist. Der errechnete MAC am Ausgang der
Verschlüsselungseinheit 80 wird
mit dem empfangenen sicheren Kopf-MAC im Komparator 78 verglichen.
Ist der von der CRYPTO-Einheit empfangene MAC nicht gleich dem von dem
OPC berechneten MAC, dann wird die Telefonverbindung bei Schritt 82 abgebrochen.
Wenn jedoch der MAC-Vergleich 78 Gleichheit anzeigt, wird
die Authentizität
der übersendenden
CRYPTO-Einheit angenommen und das Verfahren zum Empfangen von sicheren
Daten wird bei Schritt 84 fortgesetzt.
-
Die
verschlüsselten
sicheren Daten werden in der CBC-Entschlüsselungseinheit 86 unter
Zugrundelegung eines IV gleich TID entschlüsselt. Die Daten werden bei
Schritt 88 verarbeitet. Insbesondere überprüft das OPC die zu der Zeit
gültige
Zeit, die Berichtszeit und die Ablaufzeit für die CRYPTO-Einheit. Ebenso
wird die gesamte nicht berechnete Nutzung, die gesamte berechnete
Nutzung, die eingenommenen Gebühren
(tax), die Gebührenrate
und der Message-Schlüssel
für jede
Messung verarbeitet. Die sich ergebenden Werte werden mit den Aufzeichnungen
für die
jeweilige CRYPTO-Einheit gegengeprüft. Alle entdeckten Fehler
werden als irreguläre
Ereignisse notiert, die eine manuelle Überprüfung des Kundenkontos sicherstellen.
-
VORBEREITUNG
EINER SICHEREN ANFORDERUNG ODER EINES SICHEREN BERICHTES – CRYPTO-EINHEIT
-
Wie
in 5 zu sehen ist, gibt es drei Arten von Messages,
die von der CRYPTO-Einheit für
das OPC generiert werden: NUTZUNGSBERICHT, KREDITAN-FORDERUNG/RÜCKVERGÜTUNG und KONSUMER-ID-ANFORDERUNG.
-
NUTZUNGSBERICHT
-
Unter
NUTZUNGSBERICHT werden alle vorher in den nicht-flüchtigen
RAM 11 eingegebenen Summen und Zusammenfassungen der Kaufblöcke 100,
jede mit einem angehängten
MAC und mit Steuersignalen, an das OPC geschickt, und zwar in den sicheren
Paketen einer Message NUTZUNGSBERICHT. Kaufblöcke werden ohne jede Verschlüsselung übermittelt.
Die den Datennutzungsbericht bildenden Eingaben der Kaufblöcke liefern
eine Rechnungsprüfungsspur
zur Gegenkontrolle der gesamten Kreditkaufvorgänge.
-
ANFORDERUNG
EINER KONSUMER-ID
-
Anfangs
besitzt eine CRYPTO-Einheit keine besondere Identifizierungsmöglichkeit
außer
ihrem Kundenschlüssel
CK und ihre Messeinheit-ID. Bevor jedoch irgendeine Transaktion
durchgeführt
werden kann, ist eine individuelle Identifikationsmöglichkeit vom
OPC erforderlich, die den Nutzer an eine spezielle CRYPTO-Einheit
bindet und für
zukünftige
Kommunikationen verwendet wird. Bevor also irgendeine Transaktion
durchgeführt
wird, fordert die CRYPTO-Einheit eine zugewiesene Konsumer-ID an
und empfängt
sie; sie wird lokal in der CRYPTO-Einheit gespeichert.
-
ANFORDERUNG
VON KREDIT ODER RÜCKVERGÜTUNG
-
Wenn
eine Konsumer-ID vorher zugeordnet wurde, kann eine sichere Anforderung
für Kredit
oder eine sichere Anforderung für
eine Rückvergütung von
der CRYPTO-Einheit 10 gesendet werden. Bei einer SICHEREN
ANFORDERUNG FÜR
KREDIT fordert die CRYPTO-Einheit eine Finanztransaktion zur Kreditlieferung
an, üblicherweise
vom Kreditkartenkonto des Nutzers. Bei einer SICHEREN ANFORDERUNG
FÜR EINE
RÜCKVERGÜTUNG, fordert die
CRYPTO-Einheit eine Finanztransaktion zur Rückvergütung von zu einem früheren Zeitpunkt
gelieferten Kredit an, üblicherweise
zu überweisen
auf das Kreditkartenkonto des Nutzers.
-
GENERIEREN
EINES SICHEREN ANFORDERUNGSPAKETS
-
Im
Falle einer der oben genannten sicheren Anforderungen werden sichere
Paketdaten 90 in der Verschlüsselungseinheit 94 CBC-verschlüsselt, und zwar
mit TVK, wobei TID als IV verwendet wird. Die daraus resultierenden
verschlüsselten
Paketdaten werden zusammengefügt
bei 96 mit nicht sicheren Paketdaten 92 und in
der CBC-Verschlüsselungseinheit 98 mit
UK verschlüsselt;
der Ausgang dieses Vorgangs bildet den MAC für das sichere Anforderungspaket.
Die ver schlüsselten
Paketdaten und die nicht sicheren Paketdaten und der generierte
MAC werden zu einer sicheren Anforderungs-Message zusammengefügt und an
das OPC gesendet bei 102. Wie oben angegeben, werden die
Kaufblöcke 100 nicht
mit irgendeiner der sicheren Anforderungen kombiniert, sondern werden
als getrennter Paketstrom an das OPC gesendet, und zwar nur dann, wenn
der Befehl für
die Nutzungsaufzeichnung ausgeführt
wird.
-
CRYPTO-PAKETFORMAT
-
In 6 sind
die Formate der sicheren Pakete dargestellt, die von der CRYPTO-Einheit
an das OPC gesendet werden. Zwei aufeinander folgende Pakete 112 und 114,
die eine sichere CRYPTO-Anforderung bilden, sind dargestellt. Dem
ersten Paket 112 gehen Kopf-Bits 104 voraus und
folgen Nachspann-Bits 106, die Teil der Sitzungsebene höherer Ordnung
des Protokolls sind (higher order session layer level). Auf ähnliche
Weise ist das Paket 114 umrahmt von Kopf-Bits 108 und
Nachspann-Bits 110, die Teil der Sitzungsebene höherer Ordnung
des Protokolls sind.
-
Jedes
Paket 112 und 114 enthält einen Anteil unverschlüsselter
Daten 116 bzw. 122, der die nicht sicheren Paketdaten
enthält.
Um ein Beispiel zu geben enthält
jeder Abschnitt 116 und 122 nicht verschlüsselter
Daten als 3 Blöcke
von je 8 Bytes oder insgesamt 24 Bytes. Auf die unverschlüsselten
Datenabschnitte 116 und 122 folgen verschlüsselt DES Datenblöcke 118, 120 und 128 (für Paket 112)
bzw. DES-Blöcke 124, 126 und 130 (für Paket 114).
-
Es
wird ein erster Verschlüsselungsschlüssel TVK
für die
Verschlüsselung
der Paketdaten verwendet und ein zweiter Verschlüsselungsschlüssel UK zum
Generieren des Paket-MAC. Sowohl für die Paketdaten als auch für das Generieren
des MAC wird ein Dreifachschlüssel
nach DES im CBC-Modus verwendet. Der Schlüssel zum Verschlüsseln des
MAC ist der UK, wobei der IV für
jedes Paket gleich Null ist. Der Schlüssel zum Verschlüsseln der
Daten ist der TVK, wobei der IV gleich dem vorher verschlüsselten DES-Block
ist, ausgenommen bei dem ersten DES-Block 118 des ersten
Pakets 112, für
den der IV die TID ist.
-
Bei
dem ersten DES-Block jedes nachfolgenden Pakets ist der IV der letzte
DES-Block des vorausgegangenen
Pakets. Das heißt,
der IV zum Verschlüsseln
des ersten DES-Blocks 118 des Pakets 112 ist die
TID. Der DES-Block 118 wird dann als IV für die Verschlüsselung
des nächsten
DES-Blocks 120 genutzt und so weiter bis zum letzten DES-Block von
Paket 112. Der letzte DES-Block von 128 des Pakets 112 wird
als IV zum Verschlüsseln
des ersten DES-Blocks 124 des nachfolgenden Pakets 114 verwendet.
Innerhalb des Pakets 114 wird DES-Block 124 als IV zum Verschlüsseln des
DES-Blocks 126 verwendet und so weiter durch alle DES-Blöcke des Pakets 114.
Der letzte DES-Block des Pakets 114 wird als IV zum Verschlüsseln der
DES-Blöcke
nachfolgender Pakete der sicheren CRYPTO-Anforderung verwendet.
-
Die
jeweiligen MACs 132 und 134 für die Pakete 112 und 114 werden
als der letzte Block jedes Pakets geladen. Der Schlüssel zum
Errechnen des MAC ist der Einheitenschlüssel UK. Der IV wird für jede Errechnung
des MAC gleich Null gesetzt. Der MAC wird sowohl für die unverschlüsselten
Datenblöcke 116 als
auch für
die verschlüsselten
DES-Datenblöcke 118, 120, 128 errechnet.
Für den
CBC Verschlüsselungsmodus
wird der Ausgang der DES Verschlüsselungseinheit 136A zum
IV für
die DES Verschlüsselungseinheit 136B und
so weiter bis zur letzten DES Verschlüsselungseinheit 136N.
Der letzte Ausgang der letzten CBC DES Verschlüsselungseinheit 136N wird
als MAC 132 für
das Paket 112 in das Paket 112 geladen.
-
Der
MAC für
das nachfolgende Paket 114 wird generiert, indem der IV
an der DES Verschlüsselungseinheit 138A gleich
Null gesetzt wird und aufeinander folgende DES CBC Verschlüsselungen
sowohl der unverschlüsselten
Daten 122 als auch der verschlüsselten Daten-DES-Blöcke 124, 126, 130 durchgeführt werden.
Für den
CBC Verschlüsselungsmodus
ist der Ausgang der DES Verschlüsselungseinheit 138A der
IV für
die DES Verschlüsselungseinheit 138B und
so weiter bis zur letzten DES Verschlüsselungseinheit 138N.
Der letzte Ausgang der letzten CBC DES Verschlüsselungseinheit 138N wird
als MAC 134 für
Paket 114 in das Paket 114 geladen.
-
Bei
einer ebenfalls möglichen
Ausführungsform
kann der IV für
die DES Verschlüsselungseinheit 138A gleich
MAC 132 des vorausgehenden Pakets 112 gesetzt
werden. Auf diese Weise werden sowohl der IV für die Datenverschlüsselung
als auch der IV für
die Berechnung des MAC von einem Paket zum nächsten weitergeleitet.
-
EMPFANG EINER
SICHEREN MESSAGE – OPC
-
Die
sichere Anforderung oder die Nutzungsbericht-Message 140 wird
vom OPC empfangen und verarbeitet, wie dies in 7 dargestellt
ist. Zum Errechnen des Paket-MAC wird die sichere Message, ausgenommen
der empfangene MAC, in der Verschlüsselungseinheit 144 CBC
verschlüsselt,
und zwar mit dem UK. Der sich daraus ergebende, vom OPC errechnete
MAC wird mit dem empfangenen Paket-MAC bei Schritt 142 verglichen.
Stimmt der zugesandte MAC mit dem errechneten MAC nicht überein,
dann wird die Telefonverbindung bei Schritt 145 abgebrochen.
Stimmt jedoch der zugesandte MAC mit dem errechneten MAC überein,
dann wird die Verarbeitung sicherer Daten bei Schritt 146 mit
der Verarbeitung der empfangenen Daten bei Schritt 148 fortgesetzt.
Empfangene verschlüsselte
sichere Daten werden CBC entschlüsselt
in der Entschlüsselungseinheit 150,
und zwar mit TVK, wobei IV gleich TID ist.
-
Bestand
die empfangene Message aus einem Nutzungsbericht, dann wird die
Summe der Kreditregister mit der Summe der für die Nutzung erhobenen Gebühren, der
Nutzung ohne Gebühren
und der eingenommenen Gebühren
verglichen, um eine Übereinstimmung
der getätigten
Kaufvorgänge
herbeizuführen.
Ebenso wird die Summe der Anbieterregister mit der Summe der Nutzung
ohne Gebühren und
der mit Gebühren
belegten Nutzungsaufzeichnungen verglichen, um eine vorausgegangene
Nutzung zur Übereinstimmung
zu bringen. Der Modus, bei dem Kaufvorgänge off-line mit einem gespeicherten
Kredit verrechnet werden und später
nach einem Nutzungsbericht an das OPC ausgeglichen werden, wird
als Rechnungsprüfungsspur
Modus.xx bezeichnet.
-
Galt
die Anforderung einem Kredit oder einer Rückvergütung, dann stellt das OPC den
Kreditstatus des Teilnehmerkunden fest, bevor mit einem sicheren
OPC-Befehl geantwortet wird. Auf ähnliche Weise wird bei einer
Anforderung für
eine Konsumer ID der Status von früher zugeordneten Konsumer IDs,
falls vor handen, festgestellt, bevor mit einem sicheren OPC-Befehl
für eine
neue Konsumer-ID geantwortet wird.
-
VORBEREITUNG
SICHERER OPC BEFEHLE – OPC
-
Sichere
OPC-Befehle werden wie in 8 dargestellt
verschlüsselt.
Ein neuer Schlüssel,
CDK, wird generiert, indem TID in der Verschlüsselungseinheit 152 mit
TVK verschlüsselt
wird. Der sichere OPC-Befehl wird generiert, indem Prüfblock 76 bei Schritt 156 vor
die Paketdaten 154 (N-tes Paket) gesetzt wird. Die sich
ergebenden Daten werden in der CBC-Verschlüsselungseinheit 158 verschlüsselt, um die
verschlüsselten
Daten für
das derzeit vorhandene Paket N zu erzeugen. Der IV für die Datenverschlüsselung
ist gleich Null für
das erste Paket und für
alle nachfolgenden Pakete gleich dem letzten Block des vorhergehenden
verschlüsselten
Paketes (N – 1). Über dem
verschlüsselten
Paket wird in der Verschlüsselungseinheit 160 ein
MAC generiert. Zum Errechnen des MAC für das erste Paket wird IV gleich
Null gesetzt. Für
jedes nachfolgende Paket wird der IV für die Errechnung des MAC gleich
dem letzten Block des dem derzeitigen Paket vorausgehenden verschlüsselten
Pakets gesetzt. Die verschlüsselten
Paketdaten und der errechnete MAC werden bei 162 zusammengefügt zu einer
sicheren OPC-Befehls-Message an die CRYPTO-Einheit.
-
Aufgrund
der Verwendung der vorher verschlüsselten Daten als IV für den MAC
ist der MAC mit allen vorausgehenden Paketen verbunden. Dadurch,
dass die vorausgehenden verschlüsselten
Daten als IV für
die Datenentschlüsselung
verwendet werden, sind der Prüfblock
und die Daten mit all den vorausgehenden Paketen verbunden. Das
bedeutet, dass die Pakete vom OPC in der gleichen Reihenfolge an
die CRYPTO-Einheit weitergeleitet werden müssen, in der sie vorbereitet
wurden. Änderungen der
Reihenfolge der Pakete, Entfernen von Paketen, Änderungen am Inhalt von Paketen
und das Ersetzen von Paketen werden von der CRYPTO-Einheit beim MAC-Vergleich
als Fehler erkannt.
-
OPC PAKETFORMAT
-
In 9 ist
das Format der sicheren Pakete dargestellt, die von dem OPC an die
CRYPTO-Einheit übermittelt
werden. Zwei aufeinander folgende Pakete 172 und 174,
die eine sichere OPC-Message bilden, sind dargestellt. Dem ersten
Paket 172 gehen Kopf-Bits 164 voraus und folgen
Nachspann-Bits 166, die Teil der Sitzungsebene höherer Ordnung
des Protokolls (higher order session layer level of the protocol)
sind. Auf ähnliche
Weise ist das nachfolgende Paket 174 von Kopf-Bits 168 und
Nachspann-Bits 170 umrahmt, die Teil der Sitzungsebene
höherer Ordnung
des Protokolls (higher order session layer level of the protocol)
sind. Jedes der Pakete 172 und 174 enthält verschlüsselte DES-Blöcke 176, 178 und 180 (Paket 172)
bzw. verschlüsselte
DES-Blöcke 186, 188 und 190 (Paket 174).
-
Ein
erster Verschlüsselungsschlüssel CDK wird
zum Verschlüsseln
der Paketdaten verwendet und ein zweiter Verschlüsselungsschlüssel TVK
wird zum Generieren des MAC für
das Paket verwendet. Sowohl für
die Paketdaten als auch für
das Generieren des MAC wird der Dreifachschlüssel DES im CBC-Modus verwendet.
Der IV für
den ersten Block 176 des ersten Pakets 172 für sowohl
die Paketdaten als das Generieren des MAC ist Null. Für nachfolgende
Pakete wird der IV für
das Generieren des MAC über
eine Querverbindung mit den verschlüsselten Daten verbunden. Der
IV für
die Datenverschlüsselung
ist der vorausgehende verschlüsselte DES-Block.
Für jedes
nachfolgende Paket ist der IV für
den ersten DES-Block der letzte DES-Block des vorausgehenden Pakets.
-
Auf
diesen Fall bezogen ist der IV zum Verschlüsseln des DES-Blocks 176 des
Pakets 172 Null. DES-Block 176 wird dann als IV
zum Verschlüsseln des
folgenden DES-Blocks 178 verwendet und so weiter bis zum
Ende des Pakets 172. Der letzte DES-Block bei 180 des
Pakets 172 wird als der IV zum Verschlüsseln des DES-Blocks 186 des
folgenden Pakets 174 verwendet. Innerhalb des nächsten Pakets 174 wird
DES-Block 186 als der IV zum Verschlüsseln des DES-Blocks 188 verwendet
und so weiter bis zum Ende des Pakets 174. Der letzte DES-Block 190 des
Pakets 174 wird als der IV, 191, zum Verschlüsseln des
DES-Blocks des nachfolgenden
Pakets der sicheren OPC-Message verwendet.
-
Wie
angegeben ist TVK der Schlüssel
zum Errechnen des MAC. Für
das erste Paket 172 ist der IV Null. Für jedes nachfolgende Paket
besteht der IV aus den verschlüsselten
Daten des vorausgehenden Pakets. So ist zum Beispiel der IV 181 zum
Errechnen des MAC für
das Paket 174 der verschlüsselte DES-Block 180 des
vorausgehenden Pakets 172. Auf ähnliche Weise ist der IV 191 für das folgende Paket
der verschlüsselte
DES-Block 190 des vorausgehenden Pakets 174. Auf
diese Weise ist der sich ergebende MAC nicht für jedes Paket unabhängig, sondern
abhängig
von allen vorausgehenden Paketen. Das Verketten der Initialvektoren
für die
Errechnung des MAC für
ein Paket mit dem Errechnen des MAC für das nächste Paket ergibt den Schutz,
dass die Pakete sich in der richtigen Reihenfolge befinden und nicht
von einem Angreifer umgeordnet wurden.
-
Im
einzelnen heißt
das, dass der MAC 182 über
den verschlüsselten
Daten-DES-Blöcken 176, 178, 180 errechnet
wird, wobei der IV gleich Null ist. Der Ausgang der DES-Verschlüsselungseinheit 192A ist
der IV für
die DES-Verschlüsselungseinheit 192B und
so weiter bis zur letzten DES-Berechnung 192N. Der letzte
Ausgang der letzten CBC-DES-Berechnung 192N wird in das
Paket 172 als MAC 182 für Paket 172 geladen.
Der MAC für
das nachfolgende Paket 174 wird auf ähnliche Weise generiert, nur dass
der IV für
die erste Verschlüsselungseinheit 194A gleich
dem vorher verschlüsselten
DES-Block 180 ist. Der Ausgang der DES-Verschlüsselungseinheit 194A ist
der IV für
die DES-Verschlüsselungseinheit 194B und
so weiter bis zur letzten DES-Berechnung 194N. Der letzte
Ausgang der letzten DES-Berechnung 194N wird als MAC 184 für das Paket 174 in
das Paket 174 geladen.
-
EMPFANGEN
VON SICHEREN OPC-BEFEHLEN – CRYPTO-EINHEIT
-
Die
sicheren OPC-Befehls-Message-Pakete 202 werden an der CRYPTO-Einheit
wie in 10 dargestellt empfangen. Der
CDK wird durch das Verschlüsseln
der TID mit dem TVK in der Verschlüsselungseinheit 200 wiederhergestellt.
-
Zum Überprüfen des
MAC der sicheren OPC-Message an der CRYPTO-Einheit wird das sichere
Paket (ausgenommen der MAC) in der CBC-Verschlüsselungseinheit 204 mit
dem TVK verschlüsselt,
wobei der IV für
das erste Paket gleich Null ist und für die nachfolgenden Pakete
gleich dem letzten DES-Block des vorausgehenden Pakets. Der errechnete
MAC am Ausgang der Verschlüsselungseinheit 204 wird
mit dem MAC der empfangenen sicheren OPC-Message im Komparator 206 verglichen.
Wenn der vom OPC empfangene MAC nicht gleich dem von der CRYPTO-Einheit
errechneten MAC ist, wird die Telefonverbindung bei Schritt 210 abgebrochen
und es wird eine Fehleranzeige gesetzt. Die CRYPTO-Einheit berichtet
dem OPC in der folgenden sicheren Kommunikation von den Fehleranzeigen.
Zeigt jedoch der MAC-Vergleich 206 Gleichheit an, dann
wird bei Schritt 208 die Verarbeitung der empfangenen sicheren
Befehle fortgesetzt.
-
Der
vorangestellte Prüfblock
und der Rest der sicheren OPC-Message wird durch das Verschlüsseln mit
dem CDK in der CBC-Verschlüsselungseinheit 220 wiederhergestellt,
wobei der IV für das
erste Paket gleich Null ist und für nachfolgende Pakete gleich
dem letzten DES-Block des vorausgehenden Pakets. Der am Ausgang
der Verschlüsselungseinheit 220 ausgewählte wiederhergestellte Prüfblock wird
mit dem vorher gespeicherten Prüfblock
im Komparator 212 verglichen. Ist der vom OPC empfangene
Prüfblock
nicht gleich dem von der CRYPTO-Einheit errechneten Prüfblock,
dann wird die Telefonverbindung bei Schritt 216 abgebrochen und
es wird eine Fehleranzeige gesetzt. Zeigt jedoch der Vergleich 212 der
Prüfblocks
Gleichheit an, dann wird die Verarbeitung der empfangenen sicheren
Befehle bei Schritt 214 fortgesetzt.
-
Die
erfolgreiche Rückkehr
nach der Rundreise des Prüfblocks
zeigt der CRYPTO-Einheit an, dass das OPC den Kundenschlüssel CK
kennt und auf die zuletzt von der CRYPTO-Einheit gesendete sichere
Kopf-Message anspricht.
-
Am
Schritt 218 werden die im sicheren OPC-Befehl empfangenen
Befehle verarbeitet. Übliche
Befehle sind ein Freistellen (clear operation), Zurücksetzen
von Schlüsseln,
Schreiben der derzeit gültigen
Zeit, Schreiben der Berichtzeit, Schreiben der Ablaufzeit, Schreiben
des MDC-Schlüssels, Schreiben
der Konsumer-ID, Hinzufügen
von Kredit, Rückerstattung
von Kredit, Aufladen der Gebührentabelle
und Passwort wieder zurücksetzen.
Der Befehl, Berichtzeit zu schreiben, stellt einen zukünftigen Zeitpunkt
ein, an dem die CRYPTO-Einheit an das OPC berichtet.
-
Der
Befehl, die Ablaufzeit zu schreiben, stellt einen zukünftigen
Zeitpunkt ein, nach dem die CRYPTO-Einheit nicht mehr arbeitet,
es sei denn, die Ablaufzeit wird während eines nachfolgenden sicheren
Kommunikationsaustausches mit dem OPC auf eine spätere Ablaufzeit
eingestellt. Eine programmierbare Ablaufzeit stellt eine Vorsichtsmaßnahme dagegen
dar, dass die CRYPTO-Einheit benutzt wird, um die Bezahlung entzifferter
Daten zu vermeiden. Die programmierbare Ablaufzeit wird ebenfalls
verwendet, um sicherzustellen, dass die CRYPTO-Einheit mit dem OPC kommuniziert, selbst
wenn die CRYPTO-Einheit nicht dazu benutzt wird, irgendwelche Kaufvorgänge durchzuführen; ein
Merkmal, das es dem OPC ermöglicht,
festzustellen, welche Messeinrichtungen für Wartungs- und Unterstützungszwecke
in Betrieb sind, und eine gelegentliche Verbindung als Sicherheitsmaßnahme zu
erzwingen. Wenn die CRYPTO-Einheit zum Ablaufzeitpunkt nicht an das
OPC berichtet, werden keine weiteren Daten entschlüsselt, unabhängig von
allen anderen Faktoren wie vorhandener Kredit oder Datenbasisschlüssel.
-
DATENPAKET-SETUP (DP SETUP) – CRYPTO-EINHEIT
-
Die
Routine zum Zusammenstellen von Datenpaketen (DP setup, dargestellt
in 11A) verwendet den CRYPTO-Einheit-Kundenschlüssel 22, lokal
gespeicherten Kredit und lokal gespeicherte Schlüssel (oder Schlüssel, die
in einem Ferntransaktionsmodus geschaffen wurden), um einen Schlüssel (DP
oder SU) zur Datenentschlüsselung
herzustellen und die Kaufdaten (260 oder 266)
zu entschlüsseln.
-
Das
Datenpaketformat 265 in der verschlüsselten CD-ROM-Datenbasis wird
in 11A dargestellt. Das verschlüsselte Datenpaket 265 enthält einen
Kopf 254, der einen Datenpaket-Message-Schlüssel 256 enthält, und
wahlweise einen Untereinheitskopf 262, der einen Untereinheit-Message-Schlüssel 264 in
sich schließt.
Jedes Datenpaket 265 enthält eine unverschlüsselte Textzusammenfassung 258 und
verschlüsselte
Daten 260 oder 266, die unter Verwendung eines
Datenpaketschlüssels
(DP-Schlüssel)
bzw. eines Untereinheitsschlüssels
(SU-Schlüssel)
verschlüsselt
wurden. Eine unverschlüsselte
Textzusammenfassung 258 erleichtert Datenbasissuchvorgänge, bevor
eine Kaufentscheidung getroffen wird und die Daten, auf die sich
die Zusammenfassung bezieht, entschlüsselt werden. Der Kopf 254 und
der Untereinheitskopf 262 enthalten ebenfalls einen Kostenfaktor
für die
jeweils nachfolgenden verschlüsselten
Daten 260, 266.
-
Vor
der Entschlüsselung
des Datenpakets in einer Datenbasis wird eine Datenbasis-Informationsaufzeichnung
(DB info record) 222 in einem getrennten Kommunikationsvorgang
an die CRYPTO-Einheit übermittelt, üblicherweise
bei der ersten Nutzung einer Datenbasis. Die DB-Informationsaufzeichnung 222 wird
unverschlüsselt
gesendet, ausgenommen davon ist der DB-Message-Schlüssel, der
mit dem Kundenschlüssel
CK verschlüsselt
ist. Die DB-Informationsaufzeichnung
enthält
weiterhin einen Preisfaktor (352 in 16) für die Datenbasis,
auf die sie sich bezieht. Die tatsächlichen Kosten für den Kaufvorgang
setzen sich zusammen aus dem Preisfaktor aus der DB-Informationsaufzeichnung 222 multipliziert
mit dem Kostenfaktor aus dem Kopf 254 oder 262.
-
Die
Routine für
das Datenpaket-Setup läuft wie
folgt ab: Der DB-Message-Schlüssel 256 aus
der DB-Informationsaufzeichnung 222 wird mit CK als Schlüssel in
der Verschlüsselungseinheit 252 verschlüsselt, um
den DB-Schlüssel
zu erzeugen, der als Schlüssel
zur Verschlüsselung
der Message-Schlüssel 256 in
der Verschlüsselungseinheit 268 verwendet
wird. Der sich am Ausgang der Verschlüsselungseinheit 268 ergebende
unverschlüsselte
DP-Schlüssel
wird im Normalmodus als Schlüssel zum
Entschlüsseln
von Daten in der Entschlüsselungseinheit 270 eingesetzt,
woraus sich unverschlüsselter
Text ergibt.
-
Wird
die Untereinheitsoption verwendet, dann wird der DP-Schlüssel außerdem als
ein Schlüssel
zum Verschlüsseln
des Untereinheits-Message-Schlüssels 264 in
der Verschlüsselungseinheit 272 verwendet,
um einen Untereinheitsschlüssel
SU zu bilden. Der sich ergebende unverschlüsselte Schlüssel SU für die Untereinheit wird dann
als Schlüssel
zur Entschlüsselung
der verschlüsselten Untereinheitsdaten 266 in
der Entschlüsselungseinheit 274 verwendet,
woraus sich unverschlüsselter Text
ergibt.
-
Im
Normalmodus ist der DP-Schlüssel
(als der Eingang zur Entschlüsselungseinheit 270)
ein einfacher Schlüssel.
Wird jedoch die Untereinheitsoption verwendet, handelt es sich bei
dem DP-Schlüssel
(als Eingang zur Entschlüsselungseinheit 272)
um einen Dreifachschlüssel
und der Schlüssel
SU für
die Untereinheit ist ein einfacher Schlüssel. Für die endgültige Datenentschlüsselung
in sowohl dem Normalmodus als auch dem Untereinheitsoptionsmodus
ist ein Verfahren mit einem einfachen Schlüssel wünschenswert, weil ein Entschlüsselungsvorgang
mit einem einfachen Schlüssel
schneller abläuft
als ein Entschlüsselungsprozess
mit einem Dreifachschlüssel.
Damit ist das Verfahren auf der Basis eines einfachen Schlüssels vorzuziehen, wenn
nicht die zusätzliche
Sicherheit eines Dreifachschlüssels
erforderlich ist.
-
UNTEREINHEITSOPTION
-
Üblicherweise
wird für
jedes getrennte Datenpaket ein getrennter Verschlüsselungscode
verwendet und für
jedes entschlüsselte
Datenpaket wird eine getrennte Gebührt berechnet. Die Untereinheitsoption
ist dann nützlich,
wenn es sich um viele kleine Datenpakete handelt und es wünschenswert
ist, jedes Datenpaket mit einem getrennten Schlüssel zu verschlüsseln.
-
Es
sei angenommen, dass es sich beispielsweise um eine Adressenliste
als Datenpaket 265 handelt. Jede der Adressenaufzeichnungen
der Liste ist zu klein, um einen getrennten Kopf mit einem Verschlüsselungs-
bzw. Entschlüsselungsschlüssel zu rechtfertigen.
Dennoch ist es erwünscht,
jede Adresse einzeln zu verschlüsseln
und getrennt zu berechnen, wenn jede der Datenaufzeichnungen der
Adressenliste entschlüsselt
wird. In einem solchen Fall könnte
der Verschlüsselungsschlüssel mehr
Speicherplatz verbrauchen als die Daten selbst, was zu einer ineffizienten
Datenspeicherung führt.
Darum kann der Message-Schlüssel für die Untereinheit
beispielsweise auf 40 Bits abgekürzt
werden. Ein Message-Schlüssel
für die
Untereinheit, der kürzer
ist als der Datenpaketschlüssel,
ist ein Kompromiss zwischen den miteinander konkurrierenden Werten
von Datenspeichereffizienz und kryptographischer Sicherheit. Bei
der dargestellten Ausführungsform
wird der Message-Schlüssel
für die
Untereinheit durch die Datenspeicherstruktur impliziert.
-
Der
Message-Schlüssel 264 für die Untereinheit
wird gebildet, indem die Datenadresse 263 innerhalb des
Datenpakets 265 als ein Schlüssel verwendet wird. Die Datenadresse 263 wird
maskiert, um der Länge
des gewünschten
Message-Schlüssels 264 für die Untereinheit
angepasst zu werden. Wenn die Adresse der gewünschten verschlüsselten Daten
als der verschlüsselte
Message-Schlüssel
der Untereinheit (welcher mit dem DP-Schlüssel zu verschlüsseln ist)
verwendet wird, dann wird zum Speichern der verschlüsselten
Message-Schlüssel
der Untereinheiten kein Speicherplatz benötigt.
-
Ein
Flussdiagramm der Logik zur Anwendung der Routine der Datenpaketzusammenstellung (DP-setup)
in einem Ferntransaktionsmodus (remote transaction mode RTM) ist
in 11B dargestellt. Nach dem Eingeben des DP-setup
bei Schritt 334 überprüft CRYPTO
die DB-Informationsaufzeichnung bei Schritt 336, um festzustellen,
ob der Datenbasisprovider RTM erlaubt. Ergibt die DB-Informationsaufzeichnung,
dass RTM nicht erlaubt ist und der Nutzer RTM anfordert, bricht
das Programm bei Schritt 338A ab. Fordert der Nutzer an
Schritt 338A kein RTM an, wird die Standardroutine für DP-setup bei
Schritt 340 durchgeführt.
Fordert der Nutzer bei Schritt 338 keine RTM an, wird die
Standardroutine für
DP-setup bei Schritt 340 durchgeführt. Fordert der Nutzer bei
Schritt 338 RTM an, wird RTM eingeführt. Nach der Rückkehr aus
einer erlaubten Ferntransaktion im RTM beginnt bei Schritt 340 die
Standardroutine für
DP-setup. Eine Beschreibung der im RTM ausgetauschten Messages oder
Nachrichten folgt in Verbindung mit den 12, 13, 14 und 15.
-
Nach
der Datenpaketzusammenstellung DP-setup 340 werden die
Kosten für
das Datenpaket einem Kreditregister debitiert und bei Schritt 342 wird ein
Kaufblockeintrag in den nicht-flüchtigen
RAM eingegeben, wenn das Datenpaket unter Verwendung lokalen Kredits
gekauft wurde. Wurde der Preis für den
Kauf des Datenpaketes in einer Ferntransaktion gezahlt, wird das
Kreditregister bei Schritt 342 nicht geändert und es wird kein Kaufblockeintrag
in den nicht-flüchtigen
RAM vorgenommen. Danach wird das gewünschte Datenpaket bei Schritt 344 entschlüsselt.
-
In 12 wird
das Generieren der Anforderung für
eine Ferntransaktion in der CRYPTO-Einheit dargestellt. Die Schlüssel UK
und TID werden wie zuvor generiert. Zusätzlich werden zwei temporäre Schlüssel, SC
und SB, generiert. SC wird durch das Verschlüsseln der Messeinheit-ID 30 mit
dem intermediären
Schlüssel
SA in der Verschlüsselungseinheit 276 generiert.
Der Kaufblock 278 aus dem nicht-flüchtigen RAM-Speicher wird mit
UK CBC-verschlüsselt,
und zwar in der Verschlüsselungseinheit 280,
um einen Kaufblock-MAC 281 zu liefern. Das Kre ditregister
wird mit dem temporären
Schlüssel
SC in der Verschlüsselungseinheit 284 verschlüsselt, um einen
verschlüsselten
Kreditregisterwert 285 zu liefern.
-
Die
Messversion, Messeinheit-ID, TID, Kaufblock mit generiertem Kaufblock-MAC und das verschlüsselte Kreditregister
werden bei 287 zusammengeführt in ein Paket mit einem
eigenen MAC und als eine Anforderung für eine Ferntransaktion 288 an das
OPC gesandt. Ein MAC für
die Anforderungs-Message für
eine Ferntransaktion wird durch die CBC-Verschlüsselung der Message-Daten mit dem
temporären
Schlüssel
SC in der Verschlüsselungseinheit 286 generiert.
Der temporäre
Schlüssel SB
wird generiert, indem in der Verschlüsselungseinheit 290 der
MAC für
die Anforderung einer Ferntransaktion mit dem temporären Schlüssel SC
verschlüsselt
wird.
-
Am
OPC wird die Anforderung für
eine Ferntransaktion 292 empfangen und verarbeitet, wie
in 13 dargestellt. Wie bei der Bearbeitung einer
sicheren Kopf-Message
werden CD, UK und SA am OPC generiert. Der temporäre Schlüssel SA
wird zur Verschlüsselung
der Messeinheit-ID in der CBC-Verschlüsselungseinheit 294 verwendet,
um einen temporären
Schlüssel
SC zu bilden. Das OPC errechnet den MAC für die Ferntransaktions-Message
durch CBC-Verschlüsselung
mit SC in der Verschlüsselungseinheit 298.
Der errechnete MAC wird in der Verschlüsselungseinheit 296 verschlüsselt, um
einen temporären
Schlüssel
SB zu bilden.
-
Der
MAC für
die Ferntransaktion wird mit SC in der CBC-Verschlüsselungseinheit 298 errechnet und
mit dem MAC für
Ferntransaktion von der CRYPTO-Einheit im Komparator 300 verglichen.
Ist der am OPC errechnete MAC für
die Ferntransaktion nicht gleich dem von der CRYPTO-Einheit gelieferten MAC
für Ferntransaktion,
wird die Sitzung bei Schritt 302 beendet. Der Kaufblock-MAC
wird ebenfalls mit dem UK in der CBC-Verschlüsselungseinheit 304 errechnet
und mit dem Kaufblock-MAC von der CRYPTO-Einheit im Komparator 306 verglichen.
Wenn der am OPC errechnete Kaufblock-MAC nicht gleich dem von der
CRYPTO-Einheit gelieferten
Kaufblock-MAC ist, wird die Sitzung bei Schritt 310 beendet.
-
Die
verschlüsselten
Kreditregisterinhalte werden in der Entschlüsselungseinheit 308 mit
SC entschlüsselt.
Der Inhalt des Kreditregisters wird in Verbindung mit der Messeinheit-ID
und dem Kaufblock bei 312 verarbeitet, um den vor sich
gehenden Kaufvorgang zu genehmigen. Der Kredit des Anfordernden
wird zur Feststellung der Kreditwürdigkeit überprüft und, wenn diese ausreicht,
wird die Genehmigung zur Durchführung
des derzeit anliegenden Datenkaufs erteilt. Zeigen die Vergleiche
der MAC 300 und 306 Gleichheit an und die Genehmigung
für die
Durchführung
des anliegenden Kaufs ist bei 312 gegeben, dann wird der
Ferntransaktion am Ausgang der UND-Gatter-Funktion 314 die
Erlaubnis erteilt.
-
Die
Genehmigung für
die Ferntransaktion wird bei 316 verarbeitet und der CRYPTO-Einheit wieder
mitgeteilt, wie in 14 dargestellt. Es werden ebenfalls
die DB-Schlüssel
aus der DB-Informationsaufzeichnung zurückgewonnen und in der Verschlüsselungseinheit 320 verschlüsselt. Die DB-Schlüssel 318 werden
in der Verschlüsselungseinheit 320 mit
SB als Verschlüsselungsschlüssel verschlüsselt, und
die chiffrierten DB-Schlüssel
werden der CRYPTO-Einheit in einer Ferntransaktionsantwort 322 übersandt.
-
Die
CRYPTO-Einheit empfängt
und verarbeitet die Ferntransaktionsantwort wie in 15 dargestellt.
Die Ferntransaktionsantwort wird bei 324 empfangen und
in der Entschlüsselungseinheit 326 mit SB
als Entschlüsselungsschlüssel entschlüsselt. Die DB-Message-Schlüssel von
der Ferntransaktionsantwort des OPC werden bei 328 verglichen
mit den DB-Message-Schlüsseln
aus der DB-Informationsaufzeichnung 222,
und wenn sie nicht gleich sind, wird die Transaktion bei Schritt 330 abgebrochen.
-
Zeigt
der Vergleich 328 an, dass die DB-Schlüssel von der DB-Informationsaufzeichnung der
CRYPTO-Einheit gleich den DB-Schlüsseln der vom OPC gelieferten
Ferntransaktionsantwort sind, dann wird die Routine der DP-Zusammensetzung
bei Schritt 332 fortgeführt.
Auf diese Weise wird ein online Kauf von Datenpaketen in Realzeit
bewirkt, der eine Fortführung
der Datensitzung des Nutzers ermöglicht.
-
DB-INFORMATIONSAUFZEICHNUNG
-
Wie
oben angegeben, wird die DB-Informationsaufzeichnung in einer getrennten
Kommunikationssitzung dem Nutzer zugesandt. Die in 16 dargestellte
DB- Informationsaufzeichnung
wird im Speicher des Nutzer-Terminals gespeichert. Die DB-Informationsaufzeichnung
enthält
den DB-Message-Schlüssel 340,
welcher der mit dem Kundenschlüssel
CK verschlüsselte
DB-Schlüssel
ist. Die anderen Datenfelder der DB-Informationsaufzeichnung, wie
der oben diskutierte Preisfaktor 352, sind unverschlüsselt. Die
DB-Informationsaufzeichnung enthält
ebenfalls zusätzliche
Felder, die für
die Steuerung zu verschlüsselten
Datenbasen nützlich
sind.
-
Insbesondere
wird die Konsumenten-ID 342 von der DB-Informationsaufzeichnung
mit der lokal gespeicherten Konsumenten-ID verglichen, die im voraus über die
sichere Message (238 in 2) als Antwort
auf eine sichere Anforderung (236 in 2) wie
oben beschrieben empfangen wurde. Passen die Konsumenten-ID aus
den beiden Quellen nicht zusammen, dann benutzt die CRYPTO-Einheit
nicht die gespeicherte DB-Informationsaufzeichnung 222.
Das hier beschriebene Merkmal ermöglicht es, dass ausgewählten Nutzern,
die durch ihre Konsumenten-ID identifiziert werden, Spezialpreise
geboten werden können.
-
Zusätzlich enthält die DB-Informationsaufzeichnung 222 ein
Kauffensterfeld 344. Das Kauffenster stellt die Zeitmenge
dar, während
der der Nutzer die gekauften Daten decodieren kann. Das Kauffenster
kann kurz eingestellt sein, um nur eine Datenentschlüsselung
zu ermöglichen,
oder bis zu einer Spanne von Tagen, Monaten oder sogar bis zur unbegrenzten
Möglichkeit
der Entschlüsselung
von gekauften Daten reichen.
-
Ein
Kauferlaubnisfeld 346 definiert, ob der Nutzer berechtigt
ist, einen Kaufvorgang im Modus einer Rechnungsprüfungsspur
(off-line) oder im Ferntransaktionsmodus (on-line) oder in beiden
Modi durchzuführen.
In bestimmten Fällen,
wenn der Informationsanbieter die Verteilung steuern möchte, üblicherweise
für ein
Produkt von hohem Wert, kann auch nur der Ferntransaktionsmodus
erlaubt sein.
-
Die
DB-Informationsaufzeichnung enthält ebenfalls
ein Startzeitfeld 348 sowie ein Ablaufzeitfeld 350.
Die DB-Informationsaufzeichnung 222 ist nur zwischen der
Startzeit 348 und dem Ablaufzeitfeld 350 gültig. Das
heißt,
vor der Startzeit 348 und nach der Ablaufzeit 350 benutzt
die CRYPTO-Einheit die DB- Informationsaufzeichnung 222 nicht.
Das hier beschriebene Merkmal erlaubt mehr als eine DB-Informationsaufzeichnung
für dieselbe
Datenbasis. Auf diese Weise können
spezielle Preise für
ausgewählte Zeitabschnitte
angeboten werden, die von der durch die Startzeit 348 und
die Ablaufzeit 350 definierten Zeitspanne identifiziert
werden.
-
Diese
Darstellung beschreibt ein umfassendes System für abgemessene, zu bezahlende
(metered) Daten und die entsprechende Kommunikation, wobei das System
die Möglichkeit
von Ferntransaktionen und die Verwendung von verschlüsselten
Datenstrukturen mit flexibler Systemkontrolle einschließt.