-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung bezieht sich allgemein auf eine gesicherte
Datenübertragung
in einem Kommunikationssystem und insbesondere auf ein verbessertes
Verfahren und System zum Verschlüsseln, Übertragen
und Entschlüsseln
eines Datensatzes in einem Telekommunikationssystem unter Verwendung
von unterschiedlichen Sicherheitsstufen für unterschiedliche Teile des
Datensatzes.
-
Hintergrund
der Erfindung
-
Der
Wunsch nach vertraulicher Kommunikation ist ein Wesenszug des Menschen,
der bis in früheste
Zeiten zurückdatiert.
Es gibt auch gute geschäftliche
Gründe
zur Einhaltung der Privatsphäre in
Telekommunikationssystemen. Benutzer dieser Telekommunikationssysteme übertragen
zum Beispiel häufig
sensitive Daten, wie z. B. Finanzdaten oder Passwörter, um
geschäftliche
Transaktionen abzuwickeln, oder zugangssensitive Daten oder Kontrollen.
Bei der Beschaffung von Waren und Diensten über das Internet handelt es
sich um ein weiteres Beispiel, wo sensitive Daten unter Verwendung
eines Telekommunikationssystems, des Internets, übertragen werden.
-
In
einem zellularen Kommunikationssystem werden zellularen Teilnehmern
zugehörige
sensitive Daten routinemäßig überall in
dem zellularen Kommunikationssystem und anderen Netzen, die eine Verbindung
zu anderen Datenbanken oder Zentren herstellen, zur Autorisierung übertragen.
Solch sensitive Information kann eines Teilnehmers Kreditkarte, Geheimschlüssel, Mobilgeräteseriennummern, Passwörter und ähnliches
umfassen. Diese Information kann über Hochfrequenz (RF)-Transceiver,
Mobilvermittlungseinrichtungen und Standleitungen im öffentlichen
Fernsprechnetz (PSTN) kommuniziert werden.
-
In
der Vergangenheit richteten sich die meisten Bestrebungen im Sicherheitsmanagement
auf eine Detektion, Eindämmung
und Wiedergewinnung; es fehlten Bemühungen, die darauf gerichtet
sind, zu verhindern, dass gesicherte Information abgefangen wird.
-
Zusätzlich zu
dem Bedarf an zusätzlicher
Sicherheit sind staatliche Exportüberwachungen bei starken Verschlüsselungsalgorithmen
für Hersteller von
Telekommunikationssystemen, die auf internationalen Märkten konkurrieren,
zu einem Problem geworden. In den Vereinigten Staaten zum Beispiel
genehmigt die Regierung den Export starker Verschlüsselungsalgorithmen
nicht, während
viele andere Regierungen in der Welt nicht dieselben Beschränkungen
ausüben.
Dadurch können
sich Hersteller in den Vereinigten Staaten im Nach teil befinden,
wenn sie sich um Installationen von Telekommunikationssystemen im
Ausland bewerben.
-
Innerhalb
der Vereinigten Staaten gestattet die Regierung die Verschlüsselungen
von unterschiedlichen Datentypen auf unterschiedlichen Sicherheitsstufen.
Die U.S.-Regierung verfügt
zum Beispiel, dass Sprachinformation oder Sprachdaten auf einer
Stufe verschlüsselt
werden, die durch autorisierte Behörden überwacht werden kann, oder
auf andere Weise eine Überwachungstauglichkeit
durch eine autorisierte Behörde
zur Verfügung
stellen. Die U.S.-Regierung genehmigt eine höhere Verschlüsselungsstufe
für Finanz-,
Zugangs- und Steuerdaten. Die Sicherheitsstufe des Verschlüsselungsverfahrens
hängt mit
der Komplexität
des Verschlüsselungsalgorithmus,
der Länge
des während
der Verschlüsselung
verwendeten Schlüssels
und – bei
Verschlüsselungsverfahren
höherer
Sicherheit in geringerem Maße – der Zugangskontrolle
zu den operativen Einzelheiten des Algorithmus zusammen.
-
Deshalb
verwendet eine Lösung,
die die gleichzeitigen Erfordernisse eines Abhörens durch eine autorisierte
Behörde
und des Schutzes von hoch sicherer Finanz- und Steuerinformation
berücksichtigt,
zwei unterschiedliche Verschlüsselungsmechanismen:
einen, um Sprachdaten auf einer geringeren Sicherheitsstufe zu verschlüsseln, und
einen weiteren, um Finanz- oder Steuerdaten auf einer höheren Sicherheitsstufe
zu verschlüsseln.
Ein Problem bei dieser Lösung
besteht darin, dass, wenn die Datenströme höherer und geringerer Sicherheit überwacht werden,
die Ströme
durch Header, die zum Trennen der zwei Stufen von verschlüsselten
Daten erforderlich sind, eindeutig identifizierbar sein können. Das weist
den unautorisierten Lauscher darauf hin, wo genau in dem Datenstrom
sich die hoch sensitiven Daten befinden. Diese exponierte Lage hoch
sensitiver Daten erhöht
die Wahrscheinlichkeit, dass der Lauscher die sensitive Information
dechiffrieren kann, da für
den Lauscher etliche Beispiele der verschlüsselten sensitiven Information
leicht verfügbar sind.
-
Die
US 5,444,782 offenbart eine
Computernetz-Verschlüsselung/Entschlüsselungsvorrichtung,
die zumindest einen Mikroprozessor, Mikroprozessorsupporthardware,
zumindest zwei Netzports zur Verbindung mit Upstream- und Downstreamnetzen,
Speicherhardware zum Speichern von Programm-, Konfigurations- und
Schlüssellistdaten
und Datenverschlüsselung/-entschlüsselungshardware umfasst.
Die Vorrichtung arbeitet durch selektives Verschlüsseln oder
Entschlüsseln
von Paketen oder Teilen von Paketen basierend auf in einem Paketheader
umfasster Information in einem von zwei Modi. Die durch die
US 5,444,782 offenbarte
Vorrichtung liest den Header von jedem Paket gegen eine vorgespeicherte
Liste mit Zielen, um zu ermitteln, ob das Paket auf einer von zwei
Verschlüsselungsstufen verschlüsselt werden
sollte. Bei der geringeren Stufe handelt es sich um eine Standardstufe,
wo nur der Datenteil verschlüsselt
wird. Die zweite Stufe verschlüsselt
sowohl den Header als auch den Datenteil des Pakets. Die
US 5,444,782 offenbart nicht,
dass Daten mit einer höheren
Sensitivität
von Daten mit einer geringeren Sensitivität innerhalb eines Datensatzes
identifiziert werden und solche Daten folglich unterschiedlich verschlüsselt werden.
-
A
Menezes, Vanstone, Oorschot: "Handbook of
applied Cryptography",
1997, CRC Press LLC, USA XP002280422, Seite 234 bezieht sich auf
Verschlüsselungsdefinitionen.
-
Die
US 5,596,718 offenbart ein
gesichertes Computernetz unter Verwendung eines Subsystems mit vertrauenswürdigem Pfad,
das die durch das Computernetz übertragene
Information bei Aufruf durch den Benutzer verschlüsselt und
entschlüsselt.
-
Es
besteht deshalb ein Bedarf an einem verbesserten Verfahren und System
zum gesicherten Übertragen
eines Datensatzes in einem Telekommunikationssystem, wobei Daten
in dem Datensatz mit unterschiedlichen Sicherheitsstufen verschlüsselt werden
können
und der gesichertere Teil des Datensatzes für einen Lauscher nicht leicht
erkennbar ist.
-
Kurze Beschreibung
der Zeichnungen
-
Die
für die
Erfindung charakteristisch gewähnten
neuen Funktionen werden in den angehängten Ansprüchen dargelegt. Die Erfindung
selbst – ebenso
wie eine bevorzugte Verwendungsart, weitere Ziele und Vorteile davon – wird allerdings
am besten mit Bezug auf die folgende ausführliche Beschreibung bei Lesen
in Verbindung mit den Begleitzeichnungen verstanden, wobei:
-
1 ein
Telekommunikationssystem darstellt;
-
2 ein
logisches Ablaufdiagramm auf hoher Ebene ist, das die Datenverschlüsselungsoperation
des Verfahrens und Systems der vorliegenden Erfindung darstellt;
-
3 die
Selektion und Verschlüsselung von
Daten mit mehreren Sensitivitätsstufen
gemäß dem Verfahren
und System der vorliegenden Erfindung graphisch darstellt;
-
4 einen
Header gemäß dem Verfahren und
System der vorliegenden Erfindung darstellt;
-
5 ein
logisches Ablaufdiagramm auf hoher Ebene ist, das die Datenentschlüsselungsoperation
des Verfahrens und Systems der vorliegenden Erfindung darstellt;
-
6 ein
Datenverarbeitungssystem darstellt, das verwendet werden kann, um
einen Verschlüsselungsteil
einer Sendeeinheit gemäß dem Verfahren
der vorliegenden Erfindung zu implementieren; und
-
7 ein
Datenverarbeitungssystem darstellt, das verwendet werden kann, um
einen Entschlüsselungsteil
einer Empfangseinheit gemäß dem Verfahren
und System der vorliegenden Erfindung zu implementieren.
-
Ausführliche
Beschreibung der Erfindung
-
Bezieht
man sich nun auf 1, erkennt man, dass ein Blockdiagramm
eines Telekommunikationssystems dargestellt wird, das verwendet
werden kann, um das Verfahren und System der vorliegenden Erfindung
zu implementieren. Wie dargestellt, umfasst ein Telekommunikationssystem 20 eine
Sendeeinheit 22 und eine Empfangseinheit 24. Die
Sendeeinheit 22 und die Empfangseinheit 24 können über irgendwelche
von etlichen bekannten Kopplungsmitteln, wie z. B. einem drahtlosen
Datenkanal 26 oder einem Netz 28, gekoppelt werden.
Um Sicherheit für
Datensätze,
die von der Sendeeinheit 22 zu der Empfangseinheit 24 übertragen
werden, zur Verfügung
zu stellen, umfasst die Sendeeinheit 22 eine Verschlüsselungseinheit 30 und
die Empfangseinheit 24 umfasst eine Entschlüsselungseinheit 32.
-
In
diesem Dokument bedeutet Datenverschlüsselung mehr als eine Datencodierung
zum Zwecke einer Verbesserung der Verlässlichkeit oder Sensitivität eines
Datenkanals. Wie hier verwendet, handelt es sich bei einer Datenverschlüsselung
um die Manipulation von Daten zu dem ausdrücklichen Zweck, die Bemühungen eines
unerwünschten
oder unautorisierten Empfängers
oder Abfängers
der durch den Datensatz repräsentierten
Nachricht zu vereiteln. Dieser Typ von "Datenmanipulation" erfordert gewöhnlich einen Schlüssel sowohl
zum Verschlüsseln
als auch zum Entschlüsseln
der Daten.
-
Der
drahtlose Datenkanal 26 kann mit irgendeinem von etlichen
bekannten Luftschnittstellenstandards, wie z. B. denjenigen Standards,
die in der Zellulartelefonindustrie, der Mikrowellenkommunikationsindustrie
oder der Landmobilfunkindustrie verwendet werden, implementiert
werden. Ausführlichere
Information in Bezug auf Luftschnittstellenstandards kann man von
den Hauptkommunikationsnormungsgremien – umfassend die Internationale
Fernmeldebehörde
(ITU), das United States ANSI Committee T1 für Telekommunikation und die
Telecommunications Industry Association (TIA), das Europäische Institut
für Telekommunikationsnormen
(ETSI), das japanische Telecommunications Technology Committee (TTC)
und das Institute of Electrical and Electronics Engineers (IEEE) – erhalten.
Ebenso werden auch Standards, die eine Kommunikation mit dem Netz 28 beschreiben,
von einigen dieser selben Normungsgremien unterstützt. Man
beachte, dass das Netz 28 auch das öffentliche Fernsprechnetz (PSTN)
umfasst, für
das das Consultive Committee on International Telephone and Telecommunications (CCITT)
Telefonsystemstandards führt.
-
Mit
Bezug auf 1 ist es entscheidend zu erkennen,
dass die Mittel, die die Sendeeinheit 22 mit der Empfangseinheit 24 koppeln,
für die
vorliegende Erfindung nicht maßgeblich
sind. Bei den Mitteln kann es sich um jegliche bekannte Mittel umfassend Luft,
Draht oder Faser handeln. Die vorliegende Erfindung befasst sich
mit der Verarbeitung von Daten in der Sendeeinheit 22 und
der Empfangseinheit 24, und nicht mit den Mitteln, durch
die die Daten zwischen den zweien übertragen werden.
-
Bezieht
man sich nun auf 2, erkennt man, dass ein logisches
Ablaufdiagramm auf hoher Ebene dargestellt wird, das einen Verschlüsselungsprozess
gemäß dem Verfahren
und System der vorliegenden Erfindung darstellt. Wie dargestellt,
beginnt der Prozess bei einem Feld 200 und führt danach
zu einem Feld 202, wobei der Prozess ermittelt, ob Daten
zur Übertragung
von der Sendeeinheit zu der Empfangseinheit bereitstehen oder nicht.
Falls Daten zur Übertragung
nicht bereitstehen, schlingt sich der Prozess wie durch den "Nein"-Zweig dargestellt
iterativ aus dem Feld 202. Etliche Bedingungen können dazu
führen,
dass Daten nicht zur Übertragung
bereitstehen. Falls die Daten zum Beispiel Sprache repräsentieren,
muss jemand sprechen, damit Sprachdaten erzeugt werden. Falls die
Daten Finanzinformation oder Zugangsinformation repräsentieren,
muss eine Transaktion, die solche Information erforderlich macht,
initiiert werden. Während
solch einer Transaktion kann das System den Benutzer auffordern,
eine Kreditkartennummer einzugeben.
-
Falls
Daten zur Übertragung
bereitstehen, dann identifiziert der Prozess in der Gruppe von Daten,
die zur Übertragung
bereitsteht, Daten mit einer höheren
Sensitivität
und Daten mit einer geringeren Sensitivität, wie in einem Feld 204 dargestellt
wird. Daten mit einer höheren
Sensitivität
können
Kreditkartendaten oder andere Finanzdaten um fassen. Weitere Daten,
die als eine höhere
Sensitivität
aufweisend betrachtet werden können,
können
Passwortdaten, Entschlüsselungsschlüsseldaten,
Daten, die einen Zugang zu Systemen oder anderer Information kontrollieren,
persönliche
Daten, wie z. B. Privatadressen und Telefonnummern oder ähnliches umfassen.
Daten mit einer geringeren Sensitivität können Daten, die Sprach- oder
andere Audioinformation repräsentieren,
Daten, die Bilder oder Grafik repräsentieren, Daten, die Text
oder andere computergenerierte Information geringer Sicherheit repräsentieren,
oder ähnliches
umfassen.
-
Sind
die Daten mit einer höheren
Sensitivität erst
einmal identifiziert, verschlüsselt
der Prozess die Daten mit höherer
Sensitivität
unter Verwendung eines selektierten Verschlüsselungsalgorithmus und selektierten
Schlüssels,
um verschlüsselte
sensitive Daten zu erzeugen, wie in einem Feld 206 dargestellt wird.
In einigen Ausführungsformen
der vorliegenden Erfindung können
mehrere Verschlüsselungsmechanismen
zum Verschlüsseln
von Daten verfügbar
sein. Beispiele für
Algorithmen, die von diesen verfügbaren
Verschlüsselungsmechanismen
verwendet werden, umfassen DES (Digital Encryption Standard), einen
RSA (Rivest Shamir Adleman)-Verschlüsselungsalgorithmus, wie z.
B. RC-2 und RC-4,
staatlich kontrollierte Fascinator/Indictor-Algorithmen und ähnliche.
Darüber
hinaus können
die verfügbaren Verschlüsselungsmechanismen
die Fähigkeit
aufweisen, Dateien auf unterschiedlichen Stufen von Verschlüsselungssicherheit
zu verschlüsseln.
Vorzugsweise wird der Verschlüsselungsalgorithmus
höherer Sicherheit
selektiert, um die Daten höherer
Sensitivität
zu verschlüsseln.
-
Darüber hinaus
kann jeder verfügbare
Verschlüsselungsmechanismus
mit etlichen Verschlüsselungsschlüsseln verbunden
werden, die ebenfalls individuell selektiert werden können. Somit
werden der Verschlüsselungsmechanismus
und ein geeigneter Schlüssel
als ein Paar selektiert, um zu gewährleisten, dass der Schlüssel mit
dem Verschlüsselungsmechanismus
wirksam wird. Wie hier verwendet, bedeutet Schlüssel nicht nur eine Seed-Zahl oder
eine andere wohlbekannte Primärschlüsselinformation,
sondern auch jegliche erforderliche Zeit- oder Sequenzoffsetinformation
für synchrone
Algorithmen.
-
Nachdem
die Daten höherer
Sensitivität
verschlüsselt
sind, hängt
der Prozess einen Header an die verschlüsselten sensitiven Daten an,
wobei der Header Entschlüsselungsinformation,
wie z. B. eine Bezeichnung eines selektierten Entschlüsselungsalgorithmus,
eines selektierten Entschlüsselungsschlüssels, umfasst,
wie in einem Feld 208 dargestellt wird. Dieser Header umfasst
Information, die von der Empfangseinheit verwendet wird, um einen Entschlüsselungsalgorithmus
und einen Entschlüsselungsschlüssel zu
selektieren. Benutzerdefinierte Daten können in dem Header ebenfalls
umfasst sein. Benutzerdefinierte Daten können die Empfangseinheit anweisen,
wie unter bestimmten Bedingungen zu antworten ist.
-
Als
nächstes
hängt der
Prozess die Daten mit geringerer Sensitivität an den Header und die verschlüsselten
sensitiven Daten an, wie in einem Feld 210 dargestellt
wird. Dieser Vorgang erzeugt einen Datenblock, der dann unter Verwendung
eines zweiten selektierten Verschlüsselungsalgorithmus und eines
zweiten selektierten Schlüssels
verschlüsselt wird,
wie in einem Feld 212 dargestellt wird.
-
Gemäß einem
wesentlichen Aspekt der vorliegenden Erfindung werden die verschlüsselten
sensitiven Daten unter Verwendung des zweiten selektierten Verschlüsselungsalgorithmus
und des zweiten selektierten Schlüssels ein zweites Mal verschlüsselt. Diese
zweite Verschlüsselung
verstärkt
die Sicherheit der verschlüsselten
sensitiven Daten dadurch, dass sie sie in einen später verschlüsselten Datenblock
einbettet. Dieser Schritt verbirgt auch den Header, der deutlich
auf die Gegenwart und Position der verschlüsselten sensitiven Daten hinweisen
kann.
-
In
einer bevorzugten Ausführungsform
der vorliegenden Erfindung weisen der in dem Feld 206 verwendete
Verschlüsselungsalgorithmus
und Schlüssel
eine höhere
Sicherheitsstufe auf als der in dem Feld 212 verwendete
Verschlüsselungsalgorithmus
und Schlüssel
zur Durchführung
der zweiten Verschlüsselungsoperation.
In anderen Ausführungsformen
der Erfindung können
allerdings in beiden Feldern 206 und 212 derselbe
Verschlüsselungsalgorithmus
und selbe Verschlüsselungsmechanismus
verwendet werden.
-
Zwar
kann derselbe Verschlüsselungsmechanismus
verwendet werden, doch verwendet eine bevorzugte Ausführungsform
der Erfindung unterschiedliche Schlüssel für die Operationen der Felder 206 und 212.
Es werden zwei Schlüssel
bevorzugt, da einige Untersuchungen ergeben, dass eine Neuverschlüsselung
mit demselben Schlüssel
die Sicherheit der verschlüsselten
Daten verringern kann.
-
Schließlich erzeugt
der Prozess einen verschlüsselten
Datensatz, indem ein Header an die unter Verwendung des zweiten
selektierten Verschlüsselungsalgorithmus
verschlüsselten
Daten angehängt
wird, wobei der Header Entschlüsselungsinformation
umfasst, die von der Empfangseinheit zum Identifizieren eines zweiten
selektierten Entschlüsselungsalgorithmus
und eines zweiten selektierten Entschlüsselungsschlüssels verwendet
wird, wie in einem Feld 214 dargestellt wird. Dann endet
der Prozess, wie in einem Feld 216 dargestellt wird.
-
Zwar
verschlüsselt
der in 2 dargestellte Verschlüsselungsalgorithmus einen Datenblock
mit zwei Sensitivitätsstufen,
doch können
Datenblöcke mit
mehr als zwei Sensitivitätsstufen
gemäß der vorliegenden
Erfindung verschlüsselt
werden, indem das Ablaufdiagramm von 2 für jede in
den zur Übertragung
bereiten Daten repräsentierte
Sensitivitätsstufe
von zum Beispiel dem Feld 210 bis zu dem Feld 216 durchschleift
wird.
-
Um
dieses Prinzip weiter zu erläutern,
stellt 3 zur Übertragung
bereite Daten 40 mit drei Sensitivitätsstufen dar: hochsensitive
Daten 42, mittelsensitive Daten 44 und geringsensitive
Daten 46. Wie mit Bezug auf 2 erörtert, werden
die hochsensitiven Daten 42 verschlüsselt und ein Header 48 wird angehängt, um
einen geeigneten Entschlüsselungsalgorithmus
und Entschlüsselungsschlüssel zu
identifizieren. Als nächstes
werden die mittelsensitiven Daten 44 angehängt, um
einen Datenblock 50 zu erzeugen, der dann verschlüsselt wird,
um einen verschlüsselten
Datenblock 52 zu erzeugen. Als nächstes werden ein Header 54 und
die geringsensitiven Daten 46 an den verschlüsselten
Datenblock 52 angehängt,
um einen Datenblock 56 zu bilden. Der Datenblock 56 wird
dann verschlüsselt,
um einen verschlüsselten
Datenblock 58 zu erzeugen. Danach wird dann ein Header 60 an
den verschlüsselten
Datenblock 58 angehängt,
was einen Datensatz 62 bildet, der zur Übertragung von der Sendeeinheit 22 zu der
Empfangseinheit 24 bereit ist.
-
Der
Datensatz 62 repräsentiert
die Verschlüsselung
von Daten mit drei Sensitivitätsstufen. Diese
Verschlüsselung
kann unter Verwendung jeglicher Kombination von Verschlüsselungsmechanismen
und Verschlüsselungsschlüsseln durchgeführt werden.
Man beachte, dass der Datenstrom einem Lauscher als der Header 60 gefolgt
von dem verschlüsselten
Datenblock 58 erscheint. Der Header 54 und der
Header 48 sind innerhalb des verschlüsselten Datenblocks 58 verschlüsselt und
setzen den Lauscher deshalb nicht über die Position von hoch sensitiven
Daten in Kenntnis. Das Verbergen der sensitiven Daten und der ihnen
zugeordneten Header erschwert dem Lauscher ein Abfangen von Information,
was ein maßgeblicher
Vorteil der vorliegenden Erfindung ist.
-
In
einer alternativen Ausführungsform
des in 3 dargestellten Beispiels kann jeder Datenblock 50 oder 56 mehr
als einen Header umfassen, wobei jeder einem verschlüsselten
Datenblock zugeordnet ist. Während
der Decodierung werden die verschlüsselten Datenblöcke und
zugeordneten Header gemäß der Information
in jedem Header lokalisiert und separat entschlüsselt.
-
Bezieht
man sich nun auf 4, erkennt man, dass ein Beispielheader
dargestellt wird, der verwendet werden kann, um das Verfahren und
System der vorliegenden Erfindung zu implementieren. Wie dargestellt,
umfasst ein Header 70 einen Anfang des Headers-Bezeichner 72,
einen Algorithmusbezeichner 74, einen Schlüsselbezeichner 76 und
benutzerdefinierte Daten 78. Bei dem Anfang des Headers-Bezeichner 72 kann
es sich um eine Reihe von Bits oder Zeichen handeln, die in einem
Datenblock, der während
einer Entschlüsselung
abgetastet wird, leicht lokalisiert wird. Ein Beispiel für solch
ein Zeichen ist das ASCII (American Standard Code for Information
Interchange)-SOH (Anfang des Kopfes – also "Headers")-Zeichen oder jedes andere nicht druckbare
Zeichen, das zwischen der Sendeeinheit und der Empfangseinheit vermittelt
wird.
-
Der
Algorithmusbezeichner 74 wird in der Empfangseinheit verwendet,
um einen geeigneten Entschlüsselungsalgorithmus
zum Entschlüsseln
des verschlüsselten
Datenblocks, der dem Header folgt, zu identifizieren. Auf ähnliche
Weise identifiziert der Schlüsselbezeicher 76 einen
geeigneten Schlüssel
in der Empfangseinheit, der verwendet werden sollte, um den verschlüsselten
Datenblock zu entschlüsseln.
Sowohl der Algorithmusbezeichner 74 als auch der Schlüsselbezeichner 76 können als
Zeiger, die eine Tabelle von verfügbaren Entschlüsselungsmechanismen
und Entschlüsselungsschlüsseln adressieren,
implementiert werden. Man beachte, dass die Sendeeinheit Daten auf
eine Art und Weise verschlüsseln
muss, die die Empfangseinheit entschlüsseln kann. Das umfasst, dass
beachtet wird, welche Entschlüsselungsmechanismen
und welche Entschlüsselungsschlüssel in
der Empfangseinheit verfügbar
sind. Bevor die Sendeeinheit einen Verschlüsselungsmechanismus selektiert,
kann es deshalb eine Verhandlung bezüglich einer Kompatibilität von verfügbaren Verschlüsselungs-
und Entschlüsselungsmechanismen
geben. Ähnlich
kann, bevor ein Schlüssel
zur Verschlüsselung
selektiert wird, die Verfügbarkeit
von Schlüsseln
abgefragt werden oder neue Schlüssel
können
auf eine in der Technik bekannte Art und Weise ausgetauscht werden.
-
Die
benutzerdefinierten Daten 78 können Information umfassen,
die die Entschlüsselungsverarbeitung
in der Empfangseinheit 24 unterstützt. Solche Information kann
die Größe des verschlüsselten Datenblocks,
der dem Header folgt, ein Ziel für
die entschlüsselte
Information, Fehlerüberwachungsinformation,
eine Sequenzzahl zum Rekonstruieren eines Informationsblocks oder ähnliches
umfassen. Darüber
hinaus können
benutzerdefinierte Daten Information, die die Empfangseinheit anweist,
wie auf den Datensatz zu antworten ist, umfassen. Zum Beispiel kann
die Sendeeinheit benutzerdefinierte Daten beifügen, die die Empfangseinheit
anweisen, den Empfang des Datensatzes zu bestätigen oder eine erfolgreiche
Entschlüsselung
des Datensatzes zu bestätigen.
Benutzerdefinierte Daten können
verwendet werden, um die Empfangseinheit anzuweisen, wie nach einem
Entschlüsselungsfehler
eine Wiederherstellung erfolgt.
-
Diese
Typen von benutzerdefinierten Daten oder Entschlüsselungsinformation können allgemein als
Empfängerantwortanweisungen
kategorisiert werden, wobei die Anweisungen dazu führen, dass der
Empfänger
auf eine bestimmte Bedingung in einer bestimmten Art und Weise antwortet.
-
In
einer noch weiteren Ausführungsform
können
benutzerdefinierte Daten verwendet werden, um zusätzliche
Entschlüsselungsinformation
zu lokalisieren, indem zum Beispiel ein Treuhänder, der Entschlüsselungsinformation
in Bezug auf den Entschlüsselungsschlüssel und
Algorithmusbezeichner treuhänderisch
verwaltet, identifiziert wird. Bei dem Treuhänder kann es sich um einen
vertrauenswürdigen
Dritten, wie z. B. eine Zertifizierungsstelle, handeln. Mit dieser "Hinterlegungsinformation" müsste eine
autorisierte Person oder Behörde
den Entschlüsselungsschlüssel somit
nicht rechnerisch ermitteln. Stattdessen könnte der Entschlüsselungsschlüssel mit
einer geeigneten Prozedur und Nachweis aus der Hinterlegung eingeholt
werden.
-
Bezieht
man sich nun auf 5, erkennt man, dass ein logisches
Ablaufdiagramm auf hoher Ebene dargestellt wird, das den Prozess
zum Entschlüsseln
eines Datensatzes gemäß dem Verfahren und
System der vorliegenden Erfindung darstellt. Wie dargestellt, beginnt
der Prozess bei einem Feld 300 und führt danach zu einem Feld 302,
wobei der Prozess ermittelt, ob der Datensatz empfangen worden ist
oder nicht. Falls der Datensatz nicht empfangen worden ist, macht
der Prozess iterativ eine Schleife über den "Nein"-Zweig, bis der Datensatz
empfangen worden ist.
-
Ist
der Datensatz erst einmal empfangen worden, entschlüsselt der
Prozess den Datensatz unter Verwendung des durch Entschlüsselungsinformation
in dem Header identifizierten Entschlüsselungsschlüssels und
Entschlüsselungsalgorithmus, wie
in einem Feld 304 dargestellt wird.
-
Als
nächstes
gibt der Prozess die entschlüsselten
Daten aus und sucht nach weiteren Headern, die jegliche verbleibenden
verschlüsselten
Daten identifizieren, wie in einem Feld 306 dargestellt
wird. Man beachte, dass die ausgegebenen entschlüsselten Daten keine weitere
Entschlüsselung
benötigen, um
in der Empfangseinheit nützlich
zu sein. Falls der Prozess weitere Header findet, muss die Empfangseinheit
eine zusätzliche
Entschlüsselung
durchführen,
um nützliche
Daten wiederherzustellen. Der Prozess in dem Feld 306 kann
auch als die Trennung von entschlüsselten Daten von jeglichem
verbleibenden Header und verschlüsselten
Daten bezeichnet werden.
-
Als
nächstes
ermittelt der Prozess, ob in den entschlüsselten ausgegebenen Daten
ein weiterer Header gefunden wurde oder nicht, wie in einem Feld 308 dargestellt
wird. Falls bei der Suche ein Header nicht gefunden wurde, gibt
es keine zu entschlüsselnden
verbleibenden Daten und der Prozess endet, wie in einem Feld 310 dargestellt
wird. Falls allerdings bei der Suche ein weiterer Header gefunden
wurde, entschlüsselt
der Prozess die verbleibenden verschlüsselten Daten unter Verwendung
des durch den neu gefundenen Header identifizierten Entschlüsselungsschlüssels und
Entschlüsselungsalgorithmus,
wie in einem Feld 312 dargestellt wird. Man beachte, dass mehr
als ein Header und sein zugeordneter verschlüsselter Datenblock auf jeder
Stufe oder Ebene der Verschlüsselung
gefunden werden kann.
-
Danach
gibt der Prozess die verbleibenden entschlüsselten Daten aus, wie in einem
Feld 314 dargestellt wird, und endet, wie in dem Feld 310 dargestellt
wird.
-
Man
beachte, dass das in 5 dargestellte Beispiel die
Entschlüsselung
eines Datensatzes mit zwei Stufen von Datensensitivität darstellt.
Wie oben erwähnt
und wie in 3 dargestellt, können weitere Stufen
von Datensensitivität
in dem empfangenen Datensatz entschlüsselt werden. Jede weitere
Stufe von Datensensitivität
wird durch einen Header gefolgt von einem verschlüsselten
Block identifiziert.
-
Bezieht
man sich nun auf 6, erkennt man, dass ein Datenprozessor
dargestellt wird, der verwendet werden kann, um eine Verschlüsselungseinheit 30 gemäß dem Verfahren
und System der vorliegenden Erfindung zu implementieren. Wie dargestellt,
umfasst die Verschlüsselungseinheit 30 Verschlüsselungsmechanismen 90–94,
die durch einen Schalter 98 selektiv mit eingehenden Daten 96 gekoppelt
sein können.
Der Schalter 98 wird durch einen Ausgang von einem Datensensitivitätsdetektor 100 gesteuert,
der die eingehenden Daten 96 überwacht und eine Datensensitivitätsstufe
ermit telt. Der Datensensitivitätsdetektor
ist zum Beispiel im Stande hochsensitive Kreditkarteninformation,
mittelsensitive persönliche
Information und geringsensitive Sprachdaten, wie in 3 dargestellt,
zu identifizieren.
-
In
dem in 6 dargestellten Beispiel befindet sich der Schalter 98 in
einer Position, um hochsensitive Daten an den Verschlüsselungsmechanismus 90 zu
leiten. Ein Verschlüsselungsmechanismus-
und Schlüsselselektor 102 kann
verwendet werden, um aus mehreren verfügbaren Verschlüsselungsmechanismen
und Schlüsseln,
die in dem Verschlüsselungsmechanismus 90 verfügbar sind,
zu selektieren. Innerhalb des Verschlüsselungsmechanismus 90 werden
verfügbare
Verschlüsselungsmechanismen
A, B und C dargestellt, aus denen der Verschlüsselungsmechanismus 90 selektieren
kann, um die hochsensitiven Daten zu verschlüsseln; verfügbare Schlüssel können in einem Speicher gespeichert
sein.
-
Sind
an einem Eingang 104 empfangene Daten unter Verwendung
des selektierten Verschlüsselungsmechanismus
und Schlüssels
erst einmal verschlüsselt
worden, erstellt ein Headerersteller 106 einen geeigneten
Header, der einen Entschlüsselungsmechanismus
und einen Entschlüsselungsschlüssel, die
in der Empfangseinheit zum Entschlüsseln der verschlüsselten
Daten verwendet werden können, identifiziert.
Bei dem Ausgang des Verschlüsselungsmechanismus 90 handelt
es sich um einen verschlüsselten
Datenblock 108 und einen angehängten Header 110.
-
Der
verschlüsselte
Datenblock 108 und der Header 110 werden dann
in den Verschlüsselungsmechanismus 92 an
einem Eingang 112 eingegeben. Danach selektiert der Verschlüsselungsmechanismus 92 einen
seiner verfügbaren
Verschlüsselungsmechanismen
und einen Verschlüsselungsschlüssel unter Verwendung
eines Verschlüsselungsmechanismus-
und Schlüsselselektors 114.
Der Verschlüsselungsmechanismus 92 gibt
dann einen verschlüsselten
Datenblock 116 und einen Header 118, der durch einen
Headerersteller 120 erstellt wird, aus.
-
Auf
eine ähnliche
Art und Weise werden der verschlüsselte
Datenblock 116 und der Header 118 in den Verschlüsselungsmechanismus 94 eingegeben, der
schließlich
einen Datensatz 122 erzeugt, der zur Übertragung von der Sendeeinheit
zu der Empfangseinheit bereit ist.
-
Man
beachte, dass in dem Verschlüsselungsmechanismus 92 der
verschlüsselte
Datenblock 108 und der Header 110 mit Daten von
einem Eingang 124, der eine geringere Sensitivität aufweist, wie
durch den Datensensitivitätsdetektor 100 ermittelt,
kombiniert oder angehängt
werden können. Ähnlich können Daten
an Eingängen 126 und 128 vor
einer Verschlüsselung
kombiniert oder angehängt
werden, was schließlich
den Datensatz 122 erzeugt, der durch den Verschlüsselungsmechanismus 94 ausgegeben
wird. Somit kann eine geeignete Verzögerung an den Eingängen 124 und 128 erforderlich
sein, um einen Datenblock zu bilden, der verschlüsselte Daten, einen zugehörigen Header
und unverschlüsselte Daten
geringerer Sensitivität
umfasst. Diese Verzögerung
gewährleistet,
dass die in 3 dargestellte Mehrstufenverschlüsselung
mit dem geeigneten Timing stattfindet.
-
Zwar
stellt 6 drei Verschlüsselungsmechanismen 90–94 dar,
wobei jeder mehrere verfügbare
Verschlüsselungsmechanismen
aufweist, aus denen er selektieren kann, doch kann eine alternative Ausführungsform
der vorliegenden Erfindung einen einzelnen Verschlüsselungsmechanismus
iterativ wieder verwenden, indem für die verschlüsselten
Daten und den Header eine Rückkopplungsschleife
zur Verfügung
gestellt wird. Diese Rückkopplungsschleife
würde die
verschlüsselten
Daten und Header an dem Ausgang zurück an den Eingang des Verschlüsselungsmechanismus
leiten. Falls irgendwelche Daten geringerer Sensitivität verfügbar wären, würden sie
an die rückgekoppelten
verschlüsselten
Daten und Header angehängt
werden, um einen einzigen Datenblock zur Verschlüsselung zu bilden.
-
Mit
Bezug auf 7 schließlich erkennt man, dass ein
Blockdiagramm auf hoher Ebene eines Datenprozessors dargestellt
wird, der verwendet werden kann, um eine Entschlüsselungseinheit gemäß dem Verfahren
und System der vorliegenden Erfindung zu implementieren. Wie dargestellt,
umfasst eine Entschlüsselungseinheit 32 verfügbare Entschlüsselungsmechanismen 140–144.
Empfangene Daten 146 umfassen einen verschlüsselten
Datenblock 148 und einen Header 150. Ein Entschlüsselungsmechanismus-
und Schlüsselselektor 152 empfängt den
Header 150 und verwendet ihn, um einen der verfügbaren Entschlüsselungsmechanismen
A, B und C zu selektieren. Ein geeigneter Entschlüsselungsschlüssel wird
basierend auf Information in dem Header 150 ebenfalls selektiert.
-
Im
Anschluss an die Entschlüsselung
durch den selektierten Entschlüsselungsmechanismus trennt
ein Datenseparator 154 entschlüsselte Daten von jeglichem
verbleibenden Header und verschlüsselten
Daten und gibt entschlüsselte
Daten 156 und einen verschlüsselten Datenblock 158 mit
einem angehängten
Header 160 aus. Falls es in den empfangenen Daten 146 nur
eine Verschlüsselungsstufe gab,
werden alle Daten als die entschlüsselten Daten 156 von
dem Entschlüsselungsmechanismus 140 ausgegeben.
Falls allerdings mehrere Verschlüsselungsstufen
detektiert werden, werden die verschlüsselten Daten 158 und
der angehängte
Header 160 getrennt und an den Entschlüsselungsmechanismus 142 weitergegeben.
-
Der
Entschlüsselungsmechanismus 142 funktioniert
auf eine Art und Weise, die derjenigen mit Bezug auf den Entschlüsselungsmechanismus 140 beschriebenen ähnlich ist.
Dasselbe trifft auch auf den Entschlüsselungsmechanismus 144 zu – abgesehen
von der Tatsache, dass der Entschlüsselungsmechanismus 144 keinen
Datenseparator umfasst, da die Entschlüsselungseinheit 32 in
diesem Beispiel nur für
drei Datensensitivitätsstufen
ausgelegt ist. Eine Entschlüsselungseinheit
mit mehr als drei Datensensitivitätsstufen kann gemäß den oben
erörterten
und dargestellten Prinzipien entwickelt werden.
-
Zwar
ist die Entschlüsselungseinheit 32 in 7 mit
drei separaten Entschlüsselungsmechanismen 140–144 dargestellt
worden, doch kann eine alternative Ausführungsform der vorliegenden
Erfindung einen Entschlüsselungsmechanismus
mit einer Rückkopplungsschleife
iterativ verwenden, um die empfangenen Daten 146 mit mehreren
Verschlüsselungsstufen
zu entschlüsseln.
In dieser alternativen Ausführungsform
können
die verschlüsselten
Daten 158 und der Header 160 in den Eingang des
Entschlüsselungsmechanismus 140 rückgekoppelt
werden, um die Daten höherer
Sensitivität
weiter zu entschlüsseln.
-
In
einer noch weiteren Ausführungsform
der Erfindung kann ein einzelner Verschlüsselungsmechanismus mit nur
einem Verschlüsselungsalgorithmus
zum mehrfachen Verschlüsseln
eines Datensatzes in der Sendeeinheit iterativ verwendet werden und
desgleichen kann eine Einzelalgorithmusent schlüsselung in der Empfangseinheit
iterativ verwendet werden, um die mehreren Verschlüsselungsebenen
zu entschlüsseln.
-
Bei
Implementierung dieser Einzelalgorithmusverschlüsselungseinheit belegen einige
Untersuchungen, dass für
die Verschlüsselung
jeder Datensensitivitätsstufe
unterschiedliche Schlüssel
verwendet werden sollten, um die Sicherheit von Daten zu erhöhen, die
mit demselben Algorithmus neu verschlüsselt werden.
-
In
einer alternativen Ausführungsform
der vorliegenden Erfindung, wo entweder die Framestruktur konstant
ist oder im Voraus in der Empfangseinheit bekannt ist, können die
Header weggelassen werden, da sie keine Information beitragen, die
die Empfangseinheit nicht schon kennt. In einer noch weiteren Ausführungsform
können
die Struktur und Decodierinformation eines folgenden Datensatzes
in einem vorhergehenden Datensatz verschlüsselt werden.
-
Die
vorangehende Beschreibung einer bevorzugten Ausführungsform der Erfindung wurde zum
Zwecke der Darstellung und Beschreibung vorgelegt. Vollständigkeit
oder eine Beschränkung
der Erfindung auf genau die offenbarte Form werden nicht beabsichtigt.
Angesichts der obigen Lehren sind Modifikationen oder Änderungen
möglich.
Die Ausführungsform
wurde gewählt
und beschrieben, um die beste Darstellung der Prinzipien der Erfindung und
ihrer praktischen Anwendung zur Verfügung zu stellen und um es einem
ordentlichen Fachmann zu ermöglichen,
die Erfindung in verschiedenen Ausführungsformen und mit verschiedenen
Modifikationen, wie für
die bestimmte vorgesehene Verwendung geeignet, zu verwenden. All
solche Modifikationen und Änderungen
befinden sich innerhalb des Umfangs der Erfindung.