ENCIPHERING/DECIPHERING METHOD

Abstract: 1. Encoding/decoding process, in which the transformation of clear text into encoded text and vice versa takes place by means of an encoding algorithm determined by at least one key, a first section of the clear text being encoded according to a block encoding process in the ECB mode and the corresponding section of the coded text being correspondingly decoded, and in addition the remaining part of the clear text or encoded text being encoded or decoded respectively by using the first coded text section as the initialisation vector for the encoding algorithm, characterized in that one and the same initialisation vector is used for the whole remaining part of the clear text or encoded text following the first section.

Description: Chiffrier/Dechiffrierverfahren Die Erfindung betrifft ein Chiffrier/Dechiffrierverfahren gemäss dem Oberbegriff des Anspruchs 1. Eines der bekanntesten Chiffrierverfahren ist die sog. Bitstromchiffrierung (Stream Cipher), bei der die Nachricht bitweise mit einer gleichlangen (pseudo-) zufälligen Schlüsselsequenz verknüpft wird. Zur Erzielung einer hohen Sicherheit muss der die Schlüsselsequenz determinierende Chiffrierschlüssel häufig gewechselt bzw. variiert werden, wozu aber die Uebertragung von zussätzlicher Information nötig ist. Ein weiteres Standard-Chiffrierverfahren ist die sogenannte Block chiffrierung, bei der mittels eines durch einen Schlüssel determinierten Algorithmus mehr oder weniger grosse Klartextblöcke in entsprechende Chiffratblöcke und umgekehrt umgewandelt werden. Dabei werden im wesentlichen zwei Betriebsweisen unterschieden (siehe z.B. ANSI X3.106 1983). Es sind dies der sogenannte ECB-Mode (Electronic Code Book Mode und der sogenannte CBC-Mode (Cipher Block Chaining Mode). Ersterer bietet vielfach nur eine ungenügende Sicherheit, da gleiche Klartextblöcke immer in gleiche Chiffratblöcke abgebildet werden. Letzterer bietet zwar aufgrund der Verkettung von Klar textblöcken eine erhöhte Sicherheit, benötigt dafür aber die Uebertragung eines Initialisierungsvektors beim Start. Zum Stand der Technik ist die Zeitschrift Electronics, 3d. 52, No. 13, 21. Juni 1979, Seiten 107-120, zu nennen. Diese beschreibt die verschiedenen Betriebsmöglichkeiten des sog. DEA (Data Encription Algorithm). In DE-A-32 44 537 ist ferner ein Chiffrierverfahren beschrieben, bei dem die Nachricht in zwei Blöcke unterteilt und von jedem Block ein Schlüssel abgeleitet wird, mit dem dann der jeweils andere Block chiffriert wird. In IBM's Technieal Disclosure Bulletin, Vol 26, No. 1, Juni 1983, Seiten 188-201 ist weiter ein Authentfizierverfahren angegeben, bei dem die Nachricht blockweise chiffriert wird, wobei jeweils ein Chiffratblock mit dem nächstfolgenden Klartextblock verknüpft wird usf., bis die gesamte Nachricht in einen einzigen Authentifikationsblock (MAC) konzentriert ist. Schliesslich ist in US-A-4 074 066 noch ein Block-Chiffrierverfahren offenbart, bei dem der für die Chiffrierung eines Blockes verwendete Schlüssel jeweils aus dem Klartext, dem Chiffrat und dem Chiffrierschlüssel des vorsngehenden BlaeBEs gebildet wird. Durch die Erfindung soll nun ein verbessertes Chiffrierverfahren geschaffen werden, welches keine Uebertragung von zusätzlicher Inforuation benötigt und trotzdem eine erhöhte Sicherheit gewährleistet Das erfindungsgemässe Verfahren ist im Anspruch 1 beschrieben. Bevorzugte Ausführungsformen und Weiterbildungen sind Gegenstand der abhängiges Ansprüche. Im folgenden wird die Erfindung anhand der Zeichnung näher er läutert. Die Figuren 1-2 zeigen das Funktionsschema von zwei verschiedenen Ausführungsbeispielen des erfindungsgemässen Chiffrierverfahrens. Das allgemeine Prinzip ist in Fig. 1 dargestellt. Der zu chiffrie rende Klartext PT wird in einen ersten Abschnitt PT1 und in einen zweiten, den restlichen Text umfassenden Abschnitt PT2 unterteilt. Der erste Abschnitt PTl wird nun nach irgendeinem Standard-Block chiffrierverfahren ECB im ECB-Mode (Electronic Code Book Mode) chiffriert, wobei der Chiffrieralgorithmus durch einen Chiffrierschlüssel K determiniert ist. Das Ergebnis dieses ersten Chiffriervorgangs ist ein erster Abschnitt CT1 des Chiffrats CT. Dieser erste Chiffratabschnitt CT1 wird nun gemäss der Erfindung bei der Chiffrierung des zweiten Textabschnitts PT2 als Initialisierungsvektor IV für das dabei zum Einsatz gelangende Chiffrierverfahren CHI verwendet. Dabei kann der erste Chiffratabschnitt CT sowohl unmittelbar als auch passend transformiert (Transformation A1) als Inititalisierungsvektor IV verwendet werden. Die Transformation A1 kann eventuell auch vom Chiffrierschlüssel K abhängig sein. Als Ergebnis dieser zweiten Chiffrierung entsteht ein zweiter Abschnitt CT2 des Chiffrats CT. Die Rückumwandlung des Chiffrats CT in den Klartext PT erfolgt analog. Zuerst wird der erste Chiffratabschnitt CT1 mittels einer zum Blockchiffrierverfahren ECB inversen Operation ECB 1 dechiffriert, um den ersten Abschnitt PT1 des Klartexts PT zu ergeben. Danach wird der erste Chiffratabschnitt CT1, gegebenenfalls nach Transformation A1, als Initialisierungsvektor IV dem zum Chiffrierprozess CHI inversen Dechiffrierprozess DECHI zugeführt und der zweite Abschnitt CT2 des Chiffrats CT entsprechend dechiffriert, um wieder zum zweiten Abschnitt PT2 des Klartexts PT zu führen. Bei beiden Dechiffrierprozessen wird natürlich wieder der Chiffrierschlüssel K zur Determinierung der Chiffrier/Dechiffrieralgorithmen verwendet. Für die Blockchiffrierung ECB kann im einfachsten Fall ein 64-Bit Standard-Blockchiffrieralgorithmus gewählt werden (beispielsweise gemäss ANSI X3.106). Dies hat aber gewisse Nachteile, da der erste Klartextabschnitt in der Praxis normalerweise redundanzbehaftet ist. Sehr oft, und speziell in den ersten 8 Zeichen des Klartexts, werden bei weitem nicht alle Bitkombinationen ausgenützt, oder jedenfalls mit stark unterschiedlichen Auftretenswahrscheinlichkeiten. Demzufolge weist auch der daraus abgeleitete Initialisierungsvektor IV eine zu kleine Mannigfaltigkeit auf. Dieses Problem kann nun zum Beispiel dadurch gelöst werden, dass die Länge des ersten Klartextabschnitts grösser, beispielsweise mindestens etwa 128 bit gewählt wird. Der dabei entstehende entsprechend lange Chiffratabschnitt kann dann durch eine passende Transformation auf die für die Verwendung als Initialisierungsvektor übliche Form bzw Lange (meist 64 bit) gebracht werden. Eine für die Praxis günstigere Lösung des erwähnten Redundanzproblems ist in Fig. 2 dargestellt. Hier wird der erste Abschnitt PT1 des Klartexts PT in zwei 64 bit lange Blöcke PT11 und PT12 unterteilt, und jeder dieser Blöcke wird für sich nach einem 64-Bit Standard-Blockchiffrierverfahren im ECB-Mode chiffriert. Das Resultat dieser ersten beiden Chiffrieroperationen sind zwei Chiffrat-Blöcke CT11 und CT12, die zusammen wieder den ersten Chiffratabschnit CT1 ergeben. Diese beiden Chiffrat-Blöcke CT11 und CT12 werden nun in einer Abbildung A2 zum Initialisierungsvektor IV für die Chiffrierung/Dechiffrierung des folgenden Textteils kombiniert. Wie sehos erwähnt, kann als Blockchiffrierverfahren irgendein beliebiger Blockchiffrieralgorithmus im ECB-Mode verwendet werden. Speziell kommt z.B. ein DES (Data Encryption Standard)- Verfahren im EBC-MDde infrage (siehe z.B. FIPS Pub. 46 und ANSI X3.106). Analoges gilt fur den für den restlichen Text verwendeten Chiffrieralgo ritlins. Es kann sich hier z.B. um einen DES-Algorithmus im CBC-(cipher Block Chaining)-Mode oder im CFB (Cipher Feed Back)-Mode oder auch um ein Bitstromchiffrierverfahren (Stream Cipher) handeln. Der Rernpunkt des erfindungsgemässen Verfahrens besteht also gemäss vorstehenden Ausführungen darin, dass die Initialisierungsinformation für den Chiffrieralgorithmus dem Text selbst entnommen wird. Auf diese Weise ist es möglich, ohne Uebermittlung von Zusatz informationen zu einer Sicherheit zu kommen, die derjenigen von herkömmlichen Bitstromchiffrierverfahren oder Blockchiffrierverfahren im CBC-Mode entspricht.

Claims: Patentansprüche 1. Chiffrier/Dechiffrierverfahren, bei dem die Transformation von Klartext zu Chiffrat und umgekehrt mittels eines durch wenigstens einen Chiffrierschlüssel determinierten Chiffrieralgorithmus erfolgt, dadurch gekennzeichnet, dass ein erster, relativ kurzer Abschnitt des Klartexts nach einem Blockchiffrierverfahren im ECB-Mode chiffriert und der entsprechende Abschnitt des Chiffrats entsprechend dechiffriert wird, und dass der übrige Teil des Klartexts bzw. Chiffrats unter Mitverwendung des ersten Chiffratabschnitts als Initialisierungsvektor für den Chiffrieralgorithmus chiffriert bzw. dechiffriert wird. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der erste Abschnitt des Chiffrats vor seiner Verwendung als Initialisierungsvektor mittels einer vorzugsweise schlüsselabhängigen Abbildung transformiert wird. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der erste Abschnitt wenigstens 128 bit lang ist. 4. Verfahren nach einem der Ansprüche 1-3, dadurch gekennzeichnet, dass die Chiffrierung/Dechiffrierung des übrigen Teils des Klartexts bzw. Ghiffrats mittels Blockchiffrierung im CBC-Mode erfolgt, wobei als Initialisierungsvektor für die Chiffrierung/Dechiffrierung des ersten auf den ersten Abschnitt folgenden Textblocks der erste Abschnitt des Chiffrats direkt oder in transformierter Form verwendet wird. 5. Verfahren nach einem der Ansprüche 1-3, dadurch gekennzeichnet, dass die Chiffrierung/Dechiffrierung des übrigen Teils des Klartexts bzw. Chiffrats im CFB-Mode (Cipher Feed Back Mode) erfolgt. 6. Verfahren nach einem der Ansprüche 1-3, dadurch gekennzeichnet, dass die Chiffrierung/Dechiffrierung des übrigen Teils des Klartexts bzw. Chiffrats mittels Bitstromchiffrierung erfolgt. 7. Verfahren nach einem der Ansprüche 1-6, dadurch gekennzeichnet, dass zur Chiffrierung/Dechiffrierung des ersten Abschnitts des Klartexts bzw. Chiffrats ein DES-Verfahren (Data Encryption Standard) verwendet wird. 8. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass als im CBC-Mode arbeitende Blockchiffrierung ein DES-Verfahren (Data Encryption Standard) verwendet wird. 9. Verfahren nach einem der Ansprüche 1-8, dadurch gekennzeichnet, dass der erste Abschnitt des Klartexts in zwei Blöcke eingeteilt wird, dass diese zwei Blöcke je für sich mittels Blockchiffrierung im ECB-Mode chiffriert werden, und dass der Initialisierungsvektor für die Chiffrierung des übrigen Teils des Klartexts aus den beiden bei der Chiffrierung der beiden Blöcke des Klartexts entstandenen Chiffratblöcken gebildet wird. 10. Verfahren nach den Ansprüchen 7-9.

Inventors: WIDMER, WALTER RUDOLF
Applicants: GRETAG AKTIENGESELLSCHAFT
Application year: 1985
Main classification: H04L9
IPC codes: H04L9