Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DEVICE FOR DECODING DECODING ALGORITHMS AND METHOD OF ENCRYPTING AND DECODING SUCH ALGORITHMS USING THE DEVICE
Document Type and Number:
WIPO Patent Application WO/1995/034968
Kind Code:
A1
Abstract:
The aim of the invention is to develop a system and method which can work with variable encryption algorithms and which ensures the secure transfer of the algorithm without it being detected and prevents the algorithm without it being detected and prevents the algorithm being broken. This aim is achieved by virtue of the fact that the decoding device consists of an integrated circuit (1) associated with a central processing unit (2), an internal non-readable volatile random-access memory (3) used as working memory and an internal non-readable non-volatile read-only memory (4) plus an interface (5), each decoding device differing from every other by the content of the ROM (4) and being partly integrated in an integrated circuit (1) and that the interface (5) is located between the central processing unit (2) and the personal computer (6) and connected, together with central processing unit (2), to the personal computer (6) by a data path (a).

Inventors:
BUGOVICS JOZSEF (DE)
Application Number:
PCT/DE1995/000733
Publication Date:
December 21, 1995
Filing Date:
May 30, 1995
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ESD VERMOEGENSVERWALTUNGSGESEL (DE)
BUGOVICS JOZSEF (DE)
International Classes:
H04L9/08; (IPC1-7): H04L9/08
Foreign References:
EP0033014A11981-08-05
FR2681165A11993-03-12
FR2608338A11988-06-17
Other References:
PATENT ABSTRACTS OF JAPAN vol. 7, no. 186 (E - 193) 30 May 1983 (1983-05-30)
Download PDF:
Claims:
Patentansprüche
1. Entschlüsselungseinrichtungen von Entschlüsselungsalgorithmen, dadurch gekennzeichnet, daß vom Verteiler des Entschlüsselungsalgorithmus dieser mit einem Verschlüsselungsalgorithmus (EIU) verschlüsselt wird, welcher dem Entschlüsselungsalgorithmus (EI) entspricht, der in der jeweiligen empfangenden Entschlüsselungseinheit intern vorhanden ist, daß der Entschlüsselungsalgorithmus (EI) der Öffentlichkeit nicht zugänglich und auch nicht erkundbar ist, der Nutzer der Entschlüsselungseinrichtung den verschlüsselten Entschlüsselungsalgorithmus in der Entschlüsselungseinrichtung eingibt und dieser innerhalb der Entschlüsselungseinrichtung entschlüsselt wird, wobei die Entschlüsselungs¬ einrichtung aus einem integrierten Schaltkreis(l ), dem ein Zentralprozessor CPU(2), ein interner nichtauslesbarer flüchtiger Speicher mit wahlfreiem Zugriff RAM(3) als Arbeitsspeicher und ein interner nichtauslesbarer nichtflüchtiger Speicher mit wahlfreiem Zugriff ROM(4) und einem Interface (5) zugeordnet sind, indem sich jede Entschlüsselungseinrichtung von jeder weiteren unterscheidet durch den Inhalt des internen nichtflüchtigen Speichers mit wahlfreiem Zugriff ROM(4) und teilweise in einem integrierten Schaltkreis(l ) integriert ist und daß das Interface (5) zwischen dem Zentralprozessor CPU(2) und dem Personalcomputer (6) angeordnet ist und mit dem Zentralprozessor CPU(2) mit dem Datenpfad (a) verbunden sind.
2. Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen und Verfahren zur Durchführung der Ver und Entschlüsselung derselben dadurch gekennzeichnet, daß im 1 Schritt vom Verteiler der Entschlüsselungsalgorithmen diese mit einem, nur dem Hersteller der Entschlüsselungseinrichtung bekannten Verschlüsselungsalgorithmus (EIU) (welcher dem Entschlüsselungsalgorithmus (EI) in der Entschlüsselungseinheit entspricht, wie folgt verschlüsselt werden: EEV := EIU(EE) und dieser verschlüsselte Algorithmus (EEV) der Entschlüsselungseinrichtung übertragen wird, wonach die Entschlüsselungseinrichtung, mit dem Zentralprozessor CPU(2) mit dem internen nichtauslesbaren nichtflüchtigen Speicher mit wahlfreiem Zugriff ROM(4) einen Selbsttest durchfuhrt, und das Einlesen des verschlüsselten Entschlüsselungsalgorithmus (EEV) in das Entschlüsselungsgerät über das Interface (5) erfolgt und nun mit Hilfe des im internen nichtauslesbaren nichtflüchtigen Speicher mit wahlfreiem Zugriff ROM (4) gespeicherten Entschlüsselungsalgorithmus (EI) der verschlüsselt vorliegende Entschlüsselungsalgorithmus (EEV) mit dem internen Entschlüsselungsverfahren (EI) entschlüsselt nach EE := EI(EEV) wird, wobei bei diesem Verfahren wieder der ursprüngliche Entschlüsselungsalgorithmus (EE) entsteht, welcher im internen nichtauslesbaren flüchtigen Speicher mit wahlfreiem Zugriff RAM(3) abgespeichert, und somit nicht von außen erkundbar ist, womit die Entschlüsselungseinrichtung mit dem Entschlüsselungsalgorithmus (EE) einsatzbereit ist und die Entschlüsselung einer Nachricht (NV) folgendermaßen erfolgt, daß die CPU über das Interface (5) den Schlüssel (K), welcher über einen sicheren Übertragungsweg, z. B. Verschlüsselung, übertragen werden muß, und die Nachricht (NV) lädt und die Nachricht von dem Zentralprozessor CPU(2) mit dem Entschlüsselungsalgorithmus (EE) unter Nutzung des Schlüssels (K) entschlüsselt wird, nach NE := EE(NV, K) und die entschlüsselte Information (NE) von dem Zentralprozessor CPU(2) über das Interface (5) ausgegeben wird und dem Empfänger zur Verfugung steht.
Description:
Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen und Verfahren zur Durchführung der Ver- und Entschlüsselung derselben

Die Erfindung betrifft eine Entschlüsselungseinrichtung von Entschlüsselungs¬ algorithmen und das Verfahren zur Durchführung der Ver- und Entschlüsselung derselben, indem die Entschlüsselungseinrichtung Berechtigten den Zugriff gewährt und Unberechtigte vom Zugriff ausschließt.

Digitale Informationen werden in immer größerem Maßstab über gesicherte Verteilungskanäle versandt. Diese Informationen sollen aber nur bestimmte Empfänger erreichen und nicht von Unbefugten gelesen werden können. Die Prozeduren zur Übertragung von solchen Informationen sind heute schon sehr an die Bedürfnisse der Industrie angepaßt.

Die weitere Entwicklung der Rechentechnik zeigt aber Probleme bei der Sicherheit der gegenwärtig verwendeten Ver-/ Entschlüsselungsalgorithmen auf.

Ein Verschlüsselungsalgorithmus der zur Zeit vorrangig von der Industrie verwendet wird, ist der „data-encryption algorithm" DEA, der von IBM seit 1960 entwickelt und 1977 vom U.S. National Bureau of Standards zur Norm erklärt wurde.

Dieser Verschlüsselungsalgorithmus ist zur Zeit in der Prüfung zur deutschen und internationalen Normun *g».

Es hat immer wieder Versuche zur Entschlüsselung von mit dem DEA verschlüsselten Informationen Gegeben. Diese waren bisher nach dem Stand der Technik (da die Rechenleistungen nicht zur Verfügung standen) nicht erfolgreich.

Es wurden jedoch in jüngster Zeit Spezialprozessoren entwickelt, welche speziell zur Entschlüsselung von Verschlüsselungssystemen geeignet sind. Damit ist es z. B. möglich, den Standard DEA zu brechen (mit Hardwarekosten von ca. 80000 $,

Stand 1992). Einen guten Überblick über die Entwicklung gibt Richard Zippel, in „Programming the Data structure accelerator" in Proceedings of Jerusalem Conference of Information, Technology, Jerusalem, Israel, October 1990.

Damit kommt der Entwicklung und Verwendung von neuen Verschlüsselungsalgorithmen große Bedeutung zu.

Da es aber nicht möglich ist, einen sicheren Verschlüsselungsalgorithmus zu entwickeln, ist es notwendig, eine Austauschbarkeit der Algorithmen zu ermöglichen.

Die modernen Möglichkeiten zum Brechen eines Verschlüsselungsalgorithmus beruhen auf dem Vorhandensein von sogenannten Plaintexten (unverschlüsselte

Informationen) und der dazugehörigen Ciphertexte (verschlüsselte Information). Um Blocksysteme, wie z. B. den DEA zu brechen, muß die Menge diese Texte sehr groß sein. Dies ist z. B. notwendig, um solche Methoden, wie die differentielle Cryptoanalyse von Biham und Shamir, durchzuführen. Diese Methode ist der beste zur Zeit bestehende Angriff auf Bockverschlüsselsysteme wie den DEA

(beschrieben in Eli Biham und Adi Shamir „Differential Cryptoanalysis of DES-like Cryptosystems" in Journal of Cryptology vol. 4 pp 3-72, 1991).

Es ist also nötig, die Menge der Dritten zur Verfugung stehenden Plain- /Ciphertexte möglichst gering zu halten. Dies ist möglich, wenn die Informationen mit öfter wechselnden Verschlüsselungsalgorithmen verschlüsselt werden. Dritte, welche die Nachrichten entschlüsseln wollen, müssen dann jedesmal einen neuen „Knackalgorithmus" entwickeln, wenn das Verschlüsselungsverfahren gewechselt wird.

Es ist folglich nötig, ein System zu schaffen, welches mit variablen Verschlüsselungsalgorithmen arbeiten kann.

Es ist weiterhin nötig, die Übertragung des Verschlüsselungsalgorithmus gegen Erkennen zu sichern und somit das Brechen des Entschlüsselungsalgorithmus weiter zu erschweren. Dies beruht auf der einfachen Tatsache, daß ein Verschlüsselungsalgorithmus, welcher unbekannt ist, wesentlich schwerer zu brechen ist als ein bekannter. Dies ist ebenfalls nötig, damit nicht bekannt ist, welcher Verschlüsselungsalgorithmus zur Verschlüsselung welcher Informationen eingesetzt wird.

Es besteht also die Notwendigkeit, ein Verfahren zu finden, mit dem es möglich ist, Verschlüsselungsalgorithmen zu verteilen und die Übertragung dieser gegen Erkunden zu schützen.

Weiterhin ist es notwendig, daß es selbst dem Besitzer eines

Entschlüsselungsgerätes nicht möglich ist, das Entschlüsselungsverfahren weiterzugeben und damit die Erkundung des Verschlüsselungsalgorithmus zu ermöglichen.

Es ist ein Spezialprozessor als Teil dieses Verfahrens zu schaffen, der die

Verteilung sowie den Schutz der Entschlüsselungsalgorithmen vor Weitergabe preiswert und sicher realisiert.

Erfindungsgemäß wird diese Aufgabe durch die im Patentanspruch 1 und Patenanspruch 2 angegebenen Merkmale gelöst.

Die Erfindung wird nachstehend anhand der Figur 1 , die die

Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen zeigt und dem Verfahren zur Durchfuhrung der Ver- und Entschlüsselung von digitalen Informationen, dargestellt.

Die in Figur 1 dargestellte Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen wird zur Verdeutlichung anhand eines Einsatzes in

mehreren Personalcomputern gezeigt, wobei digitale Informationen an ausgewählte Besitzer von Entschlüsselungseinrichtungen gesandt werden.

Dabei besteht die dargestellte Entschlüsselungseinrichtung aus einem -integrierten Schaltkreis- 1, dem ein -Zentralprozessor CPU-2, ein -interner nichtauslesbarer flüchtiger Speicher mit wahlfreiem Zugriff RAM-3 als Arbeitsspeicher und ein

-interner nichtauslesbarer nichtflüchtiger Speicher mit wahlfreiem Zugriff ROM-4, in welchem ein interner nichtauslesbarer Entschlüsselungsalgorithmus (EI) gespeichert ist, und ein Interface 5 zugeordnet sind, welches zwischen dem - Zentralprozessor CPU-2 und dem Personalcomputer 6 angeordnet ist und mit dem Personalcomputer 6 mit dem Datenpfad a verbunden ist, und teilweise in einem integrierten Schaltkreis integriert ist.

Das Verfahren zur Durchführung der Übertragung des Entschlüsselungsalgorithmus wird anhand der Figur 1 gezeigt, indem die Entschlüsselungseinrichtung in mehreren Personalcomputern eingesetzt ist, wobei digitale Informationen an ausgewählte Besitzer von Entschlüsselungseinrichtungen gesandt werden.

Die Übertragung eines Entschlüsselungsalgorithmus an eine Entschlüsselungseinrichtung ist wie folgt:

Der Verteiler wählt einen Verschlüsselungsalgorithmus VE. Dieser sei zum Verschlüsseln der später übertragenen Informationen gedacht. Dieser

Verschlüsselungsalgorithmus soll geheim gehalten werden und muß weiterhin sicher genug sein, um Sicherheit bei der Verschlüsselung von Nachrichten zu bieten. Dafür würden sich z. B. verschiedene Abarten des DES (z. B. mit verschiedenen S-Boxen) oder andere Verschlüsselungsverfahren eignen.

Nun wird der zum Verschlüsselungsalgorithmus VE passende

Entschlüsselungsalgorithmus EE zum unleserlichen Algorithmus EEV verschlüsselt.

Nun kann jeder Benutzer einer Entschlüsselungseinrichtung, der einen Entschlüsselungsalgorithmus erhalten will, sich bei der Verteilerstelle melden. Dies kann z. B. verbal (auch über Telefon), schriftlich oder elektronisch erfolgen. Anhand der öffentlichen Seriennummer der Entschlüsselungseinrichtung muß er sich identifizieren. Da diese Seriennummer nur einmal vergeben wurde, ist eine eindeutige Identifikation der Entschlüsselungseinrichtung möglich. Die Verteilungsstelle kann nun darüber entscheiden, ob der Empfänger berechtigt ist, den Entschlüsselungsalgorithmus zu empfangen. Das kann auch von einer Bezahlung abhängen.

Wenn dies geklärt ist, wird der verschlüsselte Entschlüsselungsalgorithmus zum

Benutzer der Entschlüsselungseinrichtung übertragen und dort in der Entschlüsselungseinrichtung zum Algorithmus EE entschlüsselt. Damit ist es dann möglich, Nachrichten, die mit dem Verschlüsselungsalgorithmus VE verschlüsselt wurden, zu entschlüsseln.

Dies soll nun an einem Ausfuhrungsbeispiel dargestellt werden.

Als Beispiel sei der Empfang eines Entschlüsselungsalgorithmus durch den Besitzer der Entschlüsselungseinrichtung mit der Seriennummer SN=1 erläutert.

Die Erzeugung des an die Entschlüsselungseinrichtung mit der Seriennummer SN=1 zu übertragenden verschlüsselten Entschlüsselungsalgorithmus erfolgt folgendermaßen:

Der Verteiler der Nachrichten wählt einen Verschlüsselungsalgorithmus VE, welcher dann zur Verschlüsselung der später zu übertragenden Nachricht genutzt werden soll. Dieser Verschlüsselungsalgorithmus wird nie öffentlich zugänglich, sondern nur in verschlüsselter Form übertragen.

Der Hersteller der Entschlüsselungseinrichtung (die Verteilerstelle der

Entschlüsselungsalgorithmen und Nachrichten) verfugt über die internen

Entschlüsselungsalgorithmen EI und auch die zugehörigen

Verschlüsselungsalgorithmen EIU aller Entschlüsselungseinrichtungen. Diese sind in einer Datenbank beim Hersteller oder auch beim Verteiler gespeichert.

Es sei EIIA, der nur dem Hersteller der Entschlüsselungseinrichtung bekannte interne Entschlüsselungsalgorithmus EI der Entschlüsselungseinrichtung mit der internen Seriennummer SN=1. Weiterhin sei EI1UA, der ebenfalls nur dem Hersteller der Entschlüsselungseinrichtung bekannte Verschlüsselungsalgorithmus, passend zu EI IX.

Nun wird der, der Entschlüsselungseinrichtung zu übertragende Entschlüsselungsalgorithmus EE verschlüsselt. Dies erfolgt in der Art, daß der

Entschlüsselungsalgorithmus EE mit dem zum internen

Entschlüsselungsalgorithmus EI passenden Verschlüsselungsalgorithmus EIU zum unleserlichen Algorithmus EEV nach folgender Formel verschlüsselt wird:

EEV:=EI1U(EE).

Dieser verschlüsselte Algorithmus EEV wird der Entschlüsselungseinrichtung mit der Seriennummer SN=1 übertragen.

Dies kann z. B. verbal (auch über Telefon), schriftlich oder elektronisch erfolgen.

■ Der übermittelte Algorithmus ist relativ kurz. Damit ist ein Knacken des internen Entschlüsselungsalgorithmus der Entschlüsselungseinrichtung EI schwer möglich. Wie oben gezeigt, müssen für ein Brechen der Verschlüsselung viele Piain- und

Ciphertexte vorhanden sein, um erfolgsversprechende Knackalgorithmen verwenden zu können. Dies ist aber in diesem Fall wegen der Kürze des übermittelten verschlüsselten Entschlüsselungsalgorithmus EEV nicht möglich.

Nun wird beim Empfänger das Entschlüsselungsgerät funktionstüchtig gemacht.

Der Ablauf nach dem Einschalten der Versorgungsspannung oder nach einer Unterbrechung der Abarbeitung ist folgender.

Der -Zentralprozessor CPU-2 führt mit dem -internen nichtauslesbaren nichtflüchtigen Speicher mit wahlfreiem Zugriff ROM-4 und dem -internen nichtauslesbaren flüchtigen Speicher mit wahlfreiem Zugriff RAM-3 einen

Selbsttest durch. Dies könnte z. B. durch eine Prüfsummenbildung geschehen.

Nun erfolgt das Einlesen des verschlüsselten Entschlüsselungsalgorithmus EEV in die Entschlüsselungseinrichtung über das Interface 5. Der Entschlüsselungsalgorithmus wurde vorher in verschlüsselter Form vom Benutzer der Entschlüsselungseinrichtung eingegeben oder in anderer Form eingelesen.

Als nächstes wird mit Hilfe des im -internen nichtauslesbaren nichtflüchtigen Speicher mit wahlfreiem Zugriff ROM-4 gespeicherten

Entschlüsselungsalgorithmus EI der verschlüsselt vorliegende

Entschlüsselungsalgorithmus EEV mit dem internen Entschlüsselungsverfahren EI entschlüsselt. Dies geschieht in der Weise, daß der -Zentralprozessor CPU-2, die im -internen nichtauslesbaren nichtflüchtigen Speicher mit wahlfreiem Zugriff ROM-4 gespeicherte Entschlüsselungseinrichtung, in den Personalcomputer 6 eingegeben werden, Anweisungen des Entschlüsselungsalgorithmus EI ausfuhrt und den verschlüsselten Entschlüsselungsalgorithmus EEV folgendermaßen entschlüsselt:

EE:=EI1(EEV).

Bei diesem Verfahren entsteht wieder, da der interne Entschlüsselungsalgorithmus Eil mit dem Verschlüsselungsalgorithmus EIU1 zusammenpaßt, mit dem der Entschlüsselungsalgorithmus EE verschlüsselt wurde, der ursprüngliche Entschlüsselungsalgorithmus EE.

Dieser wird im -internen nichtauslesbaren flüchtigen Speicher mit wahlfreiem Zugriff RAM-3 abgespeichert und ist somit nicht von außen erkundbar. Damit ist es nicht möglich, den Entschlüsselungsalgorithmus weiterzugeben, da er in verschlüsselter Form wertlos ist und in unverschlüsselter Form nicht vorliegt.

Nun ist die Entschlüsselungseinrichtung einsatzbereit.

Die Entschlüsselung einer verschlüsselten Nachricht NV, die z. B. verbal (auch über Telefon), schriftlich oder elektronisch übertragen wurde, in der Entschlüsselungseinrichtung mit der Seriennummer SN=1 erfolgt nun folgendermaßen:

Die CPU lädt über das Interface 5 den Schlüssel K und die Nachricht NV. Dieser

Schlüssel muß auf einem sicheren, Dritten nichtzugänglichen Weg übertragen werden, dies kann auch durch Verschlüsselung geschehen.

Dann wird die Nachricht von dem -Zentralprozessor CPU-2 mit dem Entschlüsselungsalgorithmus EE unter Nutzung des Schlüssels K entschlüsselt:

NE:=EE(NV, K).

Danach wird die entschlüsselte Information NE von dem -Zentralprozessor CPU-2 über das Interface 5 ausgegeben und steht dem Empfänger zur Verfügung.

Es ist somit möglich, Informationen mit verschiedenen Verschlüsselungsalgorithmen zu verschlüsseln und mit verschiedenen Entschlüsselungseinrichtungen zu entschlüsseln, ohne daß der

Entschlüsselungsalgorithmus bekannt gemacht werden muß oder vorher schon in der Entschlüsselungseinrichtung vorliegt.

Weiterhin ist der übertragene Entschlüsselungsalgorithmus weder weitergebbar oder erkundbar, da er individuell für jedes Entschlüsselungsgerät verschlüsselt

übertragen wird und dort nichtauslesbar gespeichert und nur zum internen Gebrauch des Entschlüsselungsgerätes mit der entsprechenden Seriennummer verfugbar ist.

Verwendete Bezugszeichen

1 -integrierter Schaltkreis-

2 -Zentralprozessor CPU-

3 -interner nichtauslesbarer flüchtiger Speicher mit wahlfreiem Zugriff RAM-

4 -interner nichtauslesbarer nichtflüchtiger Speicher mit wahlfreiem Zugriff ROM-

5 Interface

6 Personalcomputer

a Datenpfad

Verwendete Abkürzungen

CPU = Zentralprozessor

DEA = data encryption Standard

EI = Entschlüsselungsalgorithmus intern

Eil = Entschlüsselungsalgorithmus intern für die Entschlüsselungs¬ einrichtung mit der Seriennummer SN=1

EIU = zum internen Entschlüsselungsalgorithmus EI passender

Verschlüsselungsalgorithmus

EI1U = zum internen Entschlüsselungsalgorithmus Eil passender Verschlüsselungsalgorithmus für die Entschlüsselungs¬ einrichtung mit der Seriennummer SN=1

EE = Entschlüsselungsalgorithmus zur Verschlüsselung von

Nachrichten

EEV = verschlüsselter Entschlüsselungsalgorithmus zur Über- tragung

NE = nichtverschlüsselte oder entschlüsselte Nachricht

NV = verschlüsselte Nachricht

Schlüssel K = Schlüssel zur Entschlüsselung von Nachrichten

VE = Verschlüsselungsalgorithmus beim Verteiler der Informationen zur Verschlüsselung der digitalen Informationen passend zu EE

(:=) = ergibt sich aus