CH618803A5 - Method and device for encryption and decryption of binary data blocks - Google Patents
Method and device for encryption and decryption of binary data blocks Download PDFInfo
- Publication number
- CH618803A5 CH618803A5 CH916577A CH916577A CH618803A5 CH 618803 A5 CH618803 A5 CH 618803A5 CH 916577 A CH916577 A CH 916577A CH 916577 A CH916577 A CH 916577A CH 618803 A5 CH618803 A5 CH 618803A5
- Authority
- CH
- Switzerland
- Prior art keywords
- data
- key
- counter
- multiplexor
- character
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Image Processing (AREA)
- Facsimile Transmission Control (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
Die Erfindung bezieht sich auf ein Verfahren zum Verschlüsseln oder Entschlüsseln von Datenblöcken in binärer Darstellung, bei dem jeweils ein, eine Mehrzahl von Zeichen umfassender, zwischengespeicherter Datenblock mit Hilfe von gespeicherten Schlüsseldaten nichtlinearen Transformationen und dazwischen eingeschobenen linearen Transformationen unterworfen wird, und auf eine Einrichtung zum Durchführen dieses Verfahrens.
Mit der zunehmenden Verwendung von Datenbanken in der elektronischen Datenverarbeitung, insbesondere bei Mehrbenutzer-Systemen hat die Diskussion darüber eingesetzt, in welcher Weise man auch die dort gespeicherten, häufig persönlichen Daten gegenüber einem unbefugten Zugriff schützen kann oder muss. Wie z. B. in den Proceedings of the IEEE Band 63, Nov. 1975, Seiten 1545 ff. erläutert ist, ist es neben derTat-sache, solche Daten vor einem Entwenden zu schützen, durchaus auch notwendig, einen unzulässigen Zugriff zu vermeiden. Gerade in der Datenverarbeitung stehen einem versierten Datenverarbeitungsfachmann spezielle Methoden dafür insbesondere dann zur Verfügung, wenn in dem System Zugriffe in Grundsprachen zugelassen sind. Bei detaillierter Kenntnis des Datenverarbeitungssystems ist es dann durchaus möglich, auch zu in üblicher Weise geschützten Daten zuzugreifen, diese sogar zu verändern oder zu zerstören. Nicht zu unrecht ist daher auch der Gesetzgeber aufgefordert worden, dem Datenschutz seine Aufmerksamkeit zu widmen und gesetzliche Voraussetzungen dafür zu schaffen.
Der vorstehend genannte Artikel befasst sich mit den Möglichkeiten dafür und beschreibt unter anderem Datênverschlûs-selungsmethoden, die in der Fernschreibtechnik seit langem praktiziert werden. Die dort bekannten Methoden sind aber im allgemeinen nicht für eine Anwendung in der Datenverarbeitung geeignet. Sie bieten nämlich entweder einen zu geringen Schutz gegen einen unbefugten Zugriff oder setzen einen Datenstrom voraus, der nur bei der Übertragung, jedoch nicht bei der Speicherung von Daten gegeben ist.
Darüber hinaus ist in diesem Artikel aber auch eine Einrichtung beschrieben, die ebenfalls der deutschen Offenlegungs-
5
10
15
20
25
30
35
40
45
50
55
60
65
schrift 2 231 849 zugrunde liegt und speziell dem Schutz von Daten beim Betrieb einer elektronischen Datenverarbeitungsanlage dienen soll. Diese Einrichtung zum Chiffrieren oder Dechiffrieren eines Blocks binärer Daten besitzt eine Eingabevorrichtung zur Aufnahme wenigstens eines Datenblocks, der in einer Mehrzahl von Bitgruppen unterteilt ist. Die Einrichtung besitzt weiterhin eine erste Schaltvorrichtung, die wenigstens ein sechs Byte langes Schlüsselwort in binärer Form zur Verarbeitung der genannten binären Daten bereithält und eine zweite Schaltvorrichtung, mit der eine durch dieses Schlüsselwort gesteuerte, nichtlineare Transformation der binären Daten durchführbar ist. Diese Schaltvorrichtung besitzt dazu eine Anzahl von Substitutionsvorrichtungen, die an einer Untergruppe der binären Datensignale eine Permutation ausführen. Ferner ist eine dritte Schaltvorrichtung vorgesehen, mit der die Binärdaten anschliessend linear transformierbar sind. Sie umfasst interne Leitungsverbindungen, die eingegebene Signale in vertauschter Reihenfolge am Ausgang erscheinen lassen.
Die wesentlichen Eigenschaften dieser bekannten Einrichtung sind dadurch bestimmt, dass nichtlineare Transformationen und lineare Transformationen eines Datenblockes mehrfach aufeinanderfolgend durchgeführt werden, dass ein verhältnismässig kurzer Schlüssel verwendet und der Datenblock letztlich bitweise verarbeitet wird, um eine entsprechende sichere Verschlüsselung zu erreichen. Das Verschlüsselungsverfahren kann weiterhin sowohl programmiert als auch mit Hilfe einer fest verdrahteten Schaltungsanordnung durchgeführt werden. In beiden Fällen ist jedoch der Verschlüsselungsvorgang sehr aufwendig, was auf die bitweise Verarbeitung des Datenblocks zurückzuführen ist.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren der eingangs genannten Art zu schaffen, das zum Verschlüsseln von auf Leitungen übertragenen und gespeicherten Daten geeignet ist und ohne Kenntnis des verwendeten speziellen Schlüssels einen sicheren Schutz gegen eine unbefugte Entschlüsselung bietet. Dabei soll sich das Verfahren auf Mittel stützen, die gerade die spezifischen Möglichkeiten, die die Datenverarbeitung bietet, ausschöpfen und von dieser Seite her einen geringen technischen Aufwand benötigen, damit es auch im Bereich der Datenfernverarbeitung mit einem wirtschaftlich sinnvollen Aufwand einsetzbar ist.
Bei einem Verfahren der eingangs genannten Art wird diese Aufgabe erfindungsgemäss dadurch gelöst, dass aus dem in n, wobei n = 1,2,3..., Bitgruppen mit zwei Zeichen zu je k, wobei k = 1,2,3..., Elementen unterteilten Datenblock bei einer nichtlinearen Transformation mit jeder der n Bitgruppen sequentiell aus einem in einem ladbaren Schlüsselspeicher stehenden Schlüssel mit 22k Schlüsselgruppen ein 2k Elemente umfassendes Schlüsselzeichen adressiert und anstelle der ausgewählten Bitgruppe in den Datenblock eingesetzt wird, dass in einer anschliessenden linearen Transformation die Reihenfolge der Bitgruppen in dem Datenblock zyklisch vertauscht wird, indem das erste Zeichen der jeweils ersten Bitgruppe des Datenblocks an die n-te Bitgruppe angehängt und dabei die Bitgruppen derart neu geordnet werden, dass das zweite Zeichen einer i-ten Bitgruppe mit dem ersten Zeichen der (i+ l)-ten Bitgruppe eine transformierte i-te Bitgruppe bildet, und dass daran anschliessend in der genannten Weise abwechselnd nichtlineare und lineare Transformation mit den transformierten Werten der Bitgruppen durchgeführt werden, bis jeweils 2n nichtlineare und lineare Transformation durchlaufen sind.
Die wesentlichen Eigenschaften dieses Verfahrens bestehen darin, dass einmal die nichtlinearen Transformationen auf relativ einfachen Übersetzungsvorgängen beruhen, bei denen ein umfangreicher Schlüssel verwendet wird. Er erlaubt bei mehrmaligen Transformationen auch bestimmte Häufungen
618803
von Konfigurationen in den Bitgruppen völlig zu verwischen und damit eine Decodierung des Schlüssels aufgrund einer Analyse der verschlüsselten Daten mit Sicherheit auszuschalten. Zum anderen beruhen die linearen Transformationen auf einer einfachen zyklischen Vertauschung der Zeichen eines Datenblocks, so dass die Bitgruppen neu geordnet werden, mit denen bei der nächsten nichtlinearen Transformation der Schlüsselspeicher adressiert wird.
Das Verfahren bietet somit einen sehr sicheren Schutz gegen unbefugte Zugriffe zu gespeicherten Daten und ist trotzdem technisch nicht aufwendig. Insofern ist es besonders gut auch in der Datenfernverarbeitung anwendbar, da entfernt aufgestellte Datenstationen mit einem preiswerten Zusatzgerät zum Verschlüsseln bzw. Entschlüsseln von übertragenen Daten ausgerüstet werden können. Dabei ist davon auszugehen, dass es der jetzige Stand der Technik erlaubt, auf einfache Weise selbst einen umfangreichen Schlüssel mit einer Kapazität von einigen 100 Schlüsselgruppen auf einer beispielsweise magnetischen Ausweiskarte zu speichern, die in einer entfernt aufgestellten Datenstation gelesen werden kann. Im Rechenzentrum dagegen könnten ankommende und verarbeitete Daten per Programm ent- bzw. verschlüsselt werden. Dabei ist davon auszugehen, dass die Maschinenbefehlssätze heutiger datenverarbeitender Anlagen durchweg die beiden dafür benötigten Befehle «Übersetzen (Translate)» und «Übertragen mit Versetzen (Move with Offset)» bereits enthalten.
Eine besonders vorteilhafte Weiterbildung der Erfindung ergibt sich daraus, dass für die nichtlinearen Transformationen ein symmetrisch aufgebauter Schlüssel mit Paaren zueinander inverser Schlüsselzeichen verwendet wird, deren Elemente jeweils die Adresse der anderen zugehörigen Schlüsselgruppe im Schlüsselspeicher darstellen und damit der zum Verschlüsseln verwendete Schlüssel auch beim Entschlüsseln anwendbar ist, wobei der Entschlüsselungsvorgang analog zum Verschlüsselungsvorgang mit dem Unterschied abläuft, dass hier die nichtlinearen Transformationen mit den linearen Transformationen in der Reihenfolge vertauscht sind.
Dieser symmetrische Aufbau des Schlüsselspeichers mit zueinander inversen Paaren von Schlüsselgruppen erlaubt es also, ohne Änderung des Schlüsselspeichers sowohl einen Ver-schlüsselungs- als auch einen Entschlüsselungsvorgang durchzuführen, wobei auch die übrigen Schaltungseinheiten analog zu verwenden sind. Damit kann der Verschlüsselungszusatz in einer entfernt aufgestellten Datenstation noch kostengünstiger ausgebildet sein. Andere vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Patentansprüchen beschrieben.
Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand der Zeichnung näher erläutert. Dabei zeigt:
Fig. 1 ein Blockschaltbild einer erfindungsgemäss ausgebildeten Einrichtung zum Verschlüsseln oder Entschlüsseln eines Datenblocks,
Fig. 2 ein Beispiel für einen Schlüssel mit 256 Schlüsselzeichen in sedezimaler Darstellung der binären Schlüsselzeichen und
Fig. 3 den Ablauf eines Verschlüsselungs- und eines Entschlüsselungsvorganges für einen verkürzten Datenblock mit Hilfe des in Fig. 2 dargestellten Schlüssels.
Die in Fig. 1 dargestellte Einrichtung zum Verschlüsseln eines Datenblocks enthält ein Datenschieberegister DSR zum Speichern von n Bitgruppen. Jede dieser Bitgruppen besteht aus zwei Zeichen zu je k Elementen. Um einen Datenblock in das Datenschieberegister DSR einzuspeichern, ist seine n-te Stufe als Eingangsstufe ausgebildet, über die mit k Eingangsleitungen ein erster Multiplexor MUX1 angeschlossen ist, dessen Eingangsseite mehrfach jeweils k breit ausgelegte Datenleitungen, insbesondere auch Dateneingangsleitungen DE zugeführt sind.
3
5
10
15
20
25
30
35
40
45
50
55
60
65
618803
4
0
1
2
Die erste Stufe des Datenschieberegisters DSR ist die Ausgangsstufe für die dort enthaltene Bitgruppe eines zwischengespeicherten Datenblockes und besitzt zwei k Ausgänge, die sowohl mit Datenausgangsleitungen DA als auch mit der Eingangsseite eines zweiten Multiplexors MUX2 verbunden sind. 5 Dieser ist einem Schlüsselspeicher SP vorgeschaltet und dient dazu, wahlweise von aussen, z. B. von einem nicht mehr dargestellten Ausweisleser bzw. von dem Datenschieberegister DSR zugeführte Adressdaten mit 2k Elementen auf Auswahleinrich-tungen im Schlüsselspeicher SP durchzuschalten, mit denen 10 der Speicherplatz einer Schlüsselgruppe auswählbar ist. Zum Einlesen des Schlüssels in den Schlüsselspeicher SP werden vom zweiten Multiplexor MUX2 externe Schlüsseladressen EXA auf die Adressleitungen des Schlüsselspeichers SP durchgeschaltet und dieser Einschreibvorgang durch ein Steuer- 15 signal «Schlüsseldaten schreiben» auf einer Steuerleitung SDS ausgelöst. Dabei werden dem Schlüsselspeicher SP die Schlüsseldaten gruppenweise über Datenleitungen SD zugeführt.
An den Schlüsselspeicher SP ist ein Datenausgaberegister DAR über einen 2k breiten Datenweg angeschlossen. Dessen 20 Ausgangsleitungen sind über zwei jeweils k breite Datenwege DL mit Eingängen des ersten Multiplexors MUX1 verbunden,
die jeweils das erste bzw. zweite Zeichen einer Bitgruppe übertragen, was in der Zeichnung durch die Angabe kl bzw. k2 angedeutet ist. 25
Der Datenverkehr über diese beschriebenen Einrichtungen wird durch einen zentralen Taktgeber TG gesteuert, dessen Ausgangsleitung, die Taktleitung TL an den ersten Multiplexor MUX1 und über einen Taktuntersetzer TU, der die Taktfrequenz im Verhältnis 1 :2 untersetzt, an den zweiten Multiple- 30 xor MUX2 bzw. an das Datenausgaberegister DAR angeschlossen ist. Die Taktleitung TL ist ausserdem an einen Schiebeeingang SE des Datenschieberegisters DSR angeschlossen,
so werden mit Hilfe der Takte des Taktgebers TG die Daten eines Datenblocks zeichenweise, d. h. je k Element parallel 35 durch dieses Register taktgesteuert geschoben.
Zum Bilden der weiteren Durchschaltesignale für den ersten Multiplexor MUX1 sind weiterhin zwei Zähler vorgesehen. Einer dieser beiden Zähler stellt einen Zeichenzähler ZZ dar und ist mit seinem Zähleingang ZE unmittelbar an die Takt- 40 leitung TL angeschlossen. Er zählt die zeichenweisen Verschiebungen des Datenblocks im Datenschieberegister DSR. Jede seiner Stufen ist parallel an ein erstes UND-Glied UG1 derart angeschlossen, dass dieses aktiviert wird, sobald sein Zählerstand 2n beträgt. Das dem ersten Multiplexor MUX1 zuge- 45 führte Ausgangssignal dieses UND-Gliedes UG1 bildet damit das Kriterium dafür, dass ein Zeichen vollständig durch das Datenschieberegister DSR hindurchgeschoben wurde. Der erste Multiplexor MUX1 schaltet daraufhin eine k breite Schiebeleitung SL von der ersten Stufe auf die n-te Stufe des Daten- 50 Schieberegisters DSR durch. Die mit kl bezeichnete Datenbreite dieser Schiebeleitung SL deutet an, dass das erste Zeichen der in der ersten Stufe des Datenschieberegisters stehenden Bitgruppe übertragen wird.
Weiterhin ist ein zweiter Zähler, der sogenannte Durchlauf- 55 . zähler DZ vorgesehen, dessen Zähleingang ZE über ein weiteres UND-Glied UG2 mit der Taktleitung TL bzw. mit der Aus- • gangsleitung des ersten UND-Gliedes UG1 verbunden ist, so -z * dass das Ausgangssignal des Zeichenzählers ZZ einen Zählimpuls für den Durchlaufzähler DZ bildet. Wie schematisch ange- 60 32 deutet, ist auch an die Ausgänge der einzelnen Stufen dieses Durchlaufzählers ein weiteres UND-Glied UG3 angeschlossen 3 3 und so sein Zählerstand selektierbar. Wie in Fig. 1 schematisch angegeben, gibt das dritte UND-Glied UG3 beim Zählerstand • 2n-l ein Steuersignal an den ersten Multiplexor MUX1 ab und 65 kennzeichnet damit das Ende des Verschlüsselungsvorganges für einen Datenblock. Der verschlüsselte Datenblock wird dar- , aufhin aus dem Datenschieberegister DSR ausgespeichert und ein neuer Datenblock wird über die Dateneingangsleitungen DE eingespeichert.
Die Wirkungsweise dieser anhand von Fig. 1 erläuterten Einrichtung wird nachfolgend anhand der Fig. 2 und 3 näher erläutert. Dem allgemeinen Anwendungsfall durchaus ange-passt, ist es sinnvoll, die Anzahl von Bitgruppen in einem zu verschlüsselnden Datenblock mit n = 16 festzulegen. Jedoch ist dies nur ein Beispiel für eine optimale Blocklänge, die unter anderem auch dadurch bedingt sein kann, dass beispielsweise mit einem Maschinenbefehl «Übertragen mit Versetzen (Move with Offset)» eine bestimmte maximale Blocklänge vorgegeben ist. Praktischen Verhältnissen angepasst, umfasst eine Bitgruppe eine Anzahl von 2k = 8 Elementen mit zwei Zeichen zu je vier Elementen.
Mit vierstelligen Binärzahlen lassen sich bekanntlich die dezimalen Zahlen 0 bis 15 darstellen, was in einer bekannten sedezimalen Darstellung den Bezeichnungen v bis F entspricht. Analog lassen sich mit einer achtstelligen Binärzahl die dezimalen Zahlen 0 bis 255 bzw. die sedezimalen Zahlen/^ bis FF darstellen. Zur Erläuterung des Bildungsgesetzes dieser Zeichencodes sind diese Zahlen in der nachfolgenden Tabelle in den verschiedenen Darstellungen auszugsweise dargestellt.
Dezimal Sedezimal Binär
00
01
02
0000 0000
0000 0001 0000 0010
9
10
11
12
13
14
15
16
17
09 0A 0B 0C 0D 0E 0F
10
11
0000 1001 0000 1010 0000 1011 0000 1100 0000 1101 0000 1110
0000 1111
0001 0000 0001 0001
1F
20
21
0001 1111 0010 0000 0010 0001
Dezimal Sedezimal Binär
63
3F
0011
1111
64
40
0100
0000
65
41
0100
0001
•
«
•
255 FF 1111 1111
Die sedezimale Darstellung eines Zeichens verkürzt, wie ersichtlich, die binäre Darstellung und ist Ziffer für Ziffer in einer Zahl unmittelbar in eine Gruppe von vier Elementen einer Binärzahl übersetzbar. Sie folgt damit dem Bildungsgesetz dezimaler Zahlen und ist daher sehr übersichtlich.
Aus diesem Grund wurde auch hier die sedezimale Darstellung von Binärzahlen der Erläuterung der Wirkungsweise der oben beschriebenen Einrichtung zugrunde gelegt. In Fig. 2 ist nun in dieser Darstellung schematisch ein Schlüssel angegeben, wie er zum Verschlüsseln eines Datenblocks mit einer Länge von 16 Bitgruppen zu je 8 Elementen verwendet werden kann. In einem Matrixspeicher lässt sich jedes der 256 Schlüsselzeichen durch eine achtstellige Binärzahl eindeutig auswählen. Wenn beispielsweise die erste im Datenschieberegister DSR stehende Bitgruppe den Wert 6B besitzt, so ist damit ein Schlüsselzeichen E7 selektierbar.
Wie noch zu erläutern sein wird, besteht der Schlüssel aus Paaren zueinander inversen Schlüsselzeichen. Das bedeutet, dass die Bitgruppe E7 als Adresse für diesen Schlüssel verwendet, selbst wieder auf die ursprüngliche Bitgruppe 6B führt, eine zweimalige Übersetzung also wieder die ursprüngliche Bitgruppe ergibt. Abgesehen von dieser Einschränkung, die es erlaubt den Schlüssel sowohl für den Vorgang des Verschlüsseins als auch des Entschlüsseins zu verwenden, ist die Zuordnung zweier Bitgruppen zueinander über diesen Schlüssel völlig zufällig.
In Fig. 3 ist nun anhand einer Tabelle dargestellt, wie ein Verschlüsselungsvorgang bzw. Entschlüsselungsvorgang mit dem in Fig. 2 dargestellten Schlüssel in der oben beschriebenen Einrichtung abläuft. Der in Fig. 3 zugrundegelegte Datenblock besteht aus Gründen der übersichtlicheren Darstellung nur aus drei Bitgruppen. Er ist absichtlich so ausgewählt, dass nur ein einziges Zeichen von/5 verschieden ist. So lässt sich zeigen, wie sich sogar bei einem derart kurzen Datenblock nach mehreren Transformationen sehr schnell dieses Charakteristikum verwischt.
618803
Der in der linken Spalte in den aufeinanderfolgenden Zeilen dargestellte Verschlüsselungsvorgang des ursprünglichen Datenblocks ORIG beginnt mit einer sequentiellen Übersetzung TR der drei Bitgruppen gemäss dem oben bezeichneten Speicherschlüssel. Aus dem in Fig. 1 dargestellten Datenschieberegister DSR wird dabei jeweils die vorderste Bitgruppe ausgelesen, über den zweiten Multiplexor MUX2 dem Schlüsselspeicher SP zugeführt, damit ein Schlüsselzeichen ausgewählt und in das Datenausgangsregister DAR übertragen. Von dort wird es zeichenweise, ausgelöst durch den Takt des Taktuntersetzers TU, an den ersten Multiplexor MUX1 weitergegeben. Der Datenblock wird im Verlauf dieser Übersetzung, ausgelöst durch die Taktsignale auf der Taktleitung TL, zeichenweise im Datenschieberegister DS weitergeschoben, und in die freigewordene Eingangsstufe des Datenschieberegisters DSR werden aufeinanderfolgend zeichenweise die übersetzten Bitgruppen eingegeben. Am Ende dieser nichtlinearen Transformationen der drei Bitgruppen weist der Zeichenzähler ZZ den Zählerstand 6 auf, so dass das UND-Glied UG1 durchschaltet und mit dessen Ausgangssignal durch den ersten Multiplexor MUX1 die Schiebeleitung SL freigegeben wird.
Damit wird eine lineare Transformation eingeleitet, die in der dritten Zeile der linken Spalte von Fig. 3 als Schiebevorgang SH bezeichnet ist. Daran schliessen sich wieder nichtlineare Transformationen an, die in der eben beschriebenen Weise mit den so neu geordneten Bitgruppen im Datenschieberegister DSR durchgeführt werden. So wechseln sich nichtlineare und lineare Transformationen ab, bis der Zählerstand des Durchlaufzählers DZ das Ende des Verschlüsselungsvorganges über das Ausgangssignal des dritten UND-Gliedes UG3 anzeigt. Der verschlüsselte Datenblock ist in Fig. 3 mit CHIF bezeichnet.
In der rechten Spalte von Fig. 3 ist nun von unten nach oben der entgegengesetzt laufende Entschlüsselungsvorgang dargestellt, um aufzuzeigen, wie dabei inverse Übersetzungen wieder die ursprünglichen Bitgruppen ergeben. Der Entschlüsselungsvorgang setzt mit einer linearen Transformation SH ein und endet nach insgesamt 2n Durchläufen mit der letzten nichtlinearen Transformation, aus der wieder das Originalzeichen ORIG hervorgeht.
Das beschriebene Ausführungsbeispiel beschränkt sich zwar auf eine vereinfachte Darstellung, um die wesentlichen Merkmale herauszuheben, zeigt aber deutlich einen hohen Verschlüsselungsgrad mit diesem Verfahren bei sehr einfachen Transformationsvorgängen. Dabei ist wohl deutlich geworden, dass es hierbei vom Anwendungsfall abhängt, wie die zu verschlüsselnden Datenblöcke unterteilt werden. Es ist jedoch zweckmässig, die dabei entstehenden Bitgruppen nicht zu klein zu wählen, um einen entsprechenden Adressenvorrat für einen genügend grossen Schlüssel zu besitzen, da in dem Umfang der Schlüsselzeichen auch die besondere Stärke dieses Verfahrens liegt.
5
5
10
15
20
25
30
35
40
45
50
G
2 Blatt Zeichnungen
Claims (7)
1. Verfahren zum Verschlüsseln oder Entschlüsseln von Datenblöcken in binärer Darstellung, bei dem jeweils ein eine Mehrzahl von Zeichen umfassender, zwischengespeicherter Datenblock mit Hilfe von gespeicherten Schlüsseldaten nichtlinearen Transformationen und dazwischen eingeschobenen linearen Transformationen unterworfen wird, dadurch gekennzeichnet, dass aus dem in n, wobei n = 1,2,3.., Bitgruppen mit je zwei Zeichen zu je k, wobei k = 1,2,3..., Elementen unterteilten Datenblock bei einer nichtlinearen Transformation mit jeder der n Bitgruppen sequentiell aus einem in einem ladbaren Schlüsselspeicher (SP) stehenden Schlüssel mit 22k Schlüsselgruppen ein 2k Elemente umfassendes Schlüsselzeichen adressiert und anstelle der ausgewählten Bitgruppe in den Datenblock eingesetzt wird, dass in einer anschliessenden linearen Transformation die Reihenfolge der Bitgruppen in dem Datenblock zyklisch vertauscht wird, indem das erste Zeichen der jeweils ersten Bitgruppe des Datenblocks an die n-te Bitgruppe angehängt und dabei die Bitgruppen derart neu geordnet werden, dass das zweite Zeichen einer i-ten Bitgruppe mit dem ersten Zeichen der (i-f- l)-ten Bitgruppe eine transformierte i-te Bitgruppe bildet, und dass daran anschliessend in der genannten Weise abwechselnd nichtlineare und lineare Transformationen mit den transformierten Werten der Bitgruppen durchgeführt werden, bis jeweils 2n nichtlineare und lineare Transformationen durchlaufen sind.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass für die nichtlinearen Transformationen ein symmetrisch aufgebauter Schlüssel mit Paaren zueinander inverser Schlüsselzeichen verwendet wird, deren Elemente jeweils die Adresse der anderen zugehörigen Schlüsselgruppe im Schlüsselspeicher (SP) darstellen und damit der zum Verschlüsseln verwendete Schlüssel auch beim Entschlüsseln anwendbar ist, wobei der Entschlüsselungsvorgang analog zum Verschlüsselungsvorgang mit dem Unterschied abläuft, dass hier die nichtlinearen Transformationen mit den linearen Transformationen in der Reihenfolge vertauscht sind.
2
PATENTANSPRÜCHE
3. Einrichtung zum Durchführen des Verfahrens nach Anspruch 1, dadurch gekennzeichnet, dass die erste Stufe eines Datenschieberegisters (DSR), in dem ein Datenblock bzw. dessen transformierte Zwischenergebnisse zwischengespeichert sind, über einen der Eingangsseite des Schlüsselspeichers (SP) zugeordneten ersten Multiplexor (MUX2) an diesen Speicher angeschlossen ist, dessen Ausgangsseite mit einem Datenausgangsregister (DAR) zum Zwischenspeichern einer transformierten Bitgruppe verbunden ist, dass dieses Register über 2k, in Gruppen zu je k Elementen zusammengefasste Ausgangsleitungen (DL) mit einem weiteren Multiplexor (MUX1) verbunden ist, dem eingangsseitig ausserdem Dateneingangsleitungen (DE) für die Datenblöcke zugeführt sind und der an den Schiebeeingang des Datenschieberegisters angeschlossen ist.
4. Einrichtung nach Anspruch 3, dadurch gekennzeichnet, dass dem ersten Zeichen in der ersten Stufe des Datenschieberegisters (DSR) zugeordnete Schiebeleitungen (SL) über den weiteren Multiplexor (MUX1) an die die Eingangsstufe bildende n-te Stufe des Datenschieberegisters angeschlossen sind.
5. Einrichtung nach Anspruch 3 oder 4, gekennzeichnet durch einen zentralen Taktgeber (TG), dessen Taktleitung (TL) mit einem Taktschiebeeingang (SE) des Datenschieberegisters (DSR), dem weiteren Multiplexor (MUX1) und einem Taktuntersetzer (TU) verbunden ist, der den Takt im Verhältnis 1:2 untersetzt und mit seinem Ausgang an den mit dem Eingang des Schlüsselspeichers (SP) verbundenen Multiplexor (MUX2) und an das Datenausgangsregister (DAR) des Schlüsselspeichers angeschlossen ist.
6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, dass zum Bilden weiterer Durchschaltesignale des dem Datenschieberegister zugeordneten Multiplexors (MUX1) zwei über die Taktleitung (TL) des Taktgebers (TG) angesteuerte Zähler vorgesehen sind, von denen ein Zeichenzähler (ZZ) bei einem Zählerstand von 2n ein Steuersignal an den Multiplexor zum Durchschalten der Schiebeleitung (SL) und an den zweiten Zähler, einen Durchlaufzähler (DZ), einen Zählimpuls zum Zählen der Transformationen abgibt, und dass der Durchlaufzähler derart geschaltet ist, dass er bei einem Zählerstand 2n-l über ein Steuersignal an den Multiplexor das Ende des Codier- bzw. Decodiervorganges anzeigt und diesen parallel zum Ausspeichern des Datenblocks zum Einspeichern eines nächsten zu verarbeitenden Datenblocks in das Datenschieberegister (DSR) durchschaltet.
7. Einrichtung nach Anspruch 6, dadurch gekennzeichnet, dass ein Zähleingang (ZE) des Zeichenzählers (ZZ) unmittelbar an die Taktleitung (TL) des Taktgebers (TG) und seine Ausgänge parallel an ein erstes UND-Glied (UG1) angeschlossen sind, das seinerseits mit einem Rücksetzeingang (RS) des Zeichenzählers, dem an das Datenschieberegister (DSR) angeschlossenen Multiplexor (MUX1) und über ein zweites UND-Glied (UG2), dem die Taktleitung zugeführt ist, mit dem Zähleingang des Durchlaufzählers (DZ) verbunden ist, und dass die Ausgänge des Durchlaufzählers analog über ein drittes UND-Glied (UG3) verknüpft sind, dessen Ausgang mit einem Rücksetzeingang (RS) des Durchlaufzählers und einem Steuersignaleingang des Multiplexors verbunden ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762639806 DE2639806C2 (de) | 1976-09-03 | 1976-09-03 | Verfahren und Einrichtung zum Verschlüsseln oder Entschlüsseln von Datenblöcken in binärer Darstellung |
Publications (1)
Publication Number | Publication Date |
---|---|
CH618803A5 true CH618803A5 (en) | 1980-08-15 |
Family
ID=5987117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CH916577A CH618803A5 (en) | 1976-09-03 | 1977-07-25 | Method and device for encryption and decryption of binary data blocks |
Country Status (8)
Country | Link |
---|---|
AT (1) | AT372559B (de) |
BE (1) | BE858377A (de) |
CH (1) | CH618803A5 (de) |
DE (1) | DE2639806C2 (de) |
FR (1) | FR2363831A1 (de) |
GB (1) | GB1542350A (de) |
IT (1) | IT1087364B (de) |
NL (1) | NL7709716A (de) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2467515A1 (fr) * | 1979-10-10 | 1981-04-17 | Telediffusion Fse | Systeme de chiffrement et de dechiffrement d'un signal numerique |
NL188925C (nl) * | 1982-11-11 | 1992-11-02 | Philips Nv | Werkwijze en inrichting voor het weergeefbaar maken van vercijferde informatie. |
DE4114777A1 (de) * | 1990-05-22 | 1992-02-06 | Peter Elsner | Verfahren und einrichtung zur nachrichtenumschluesselung |
CN118094608B (zh) * | 2024-04-29 | 2024-08-30 | 山东水文印务有限公司 | 水文数据管理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3796830A (en) * | 1971-11-02 | 1974-03-12 | Ibm | Recirculating block cipher cryptographic system |
SE380696B (sv) * | 1974-03-20 | 1975-11-10 | Philips Svenska Ab | Sett att alstra en pseudoslumpbitfoljd och anordning for utforande av settet. |
-
1976
- 1976-09-03 DE DE19762639806 patent/DE2639806C2/de not_active Expired
-
1977
- 1977-07-25 CH CH916577A patent/CH618803A5/de not_active IP Right Cessation
- 1977-08-22 FR FR7725568A patent/FR2363831A1/fr active Granted
- 1977-08-25 AT AT616777A patent/AT372559B/de not_active IP Right Cessation
- 1977-09-01 IT IT2716377A patent/IT1087364B/it active
- 1977-09-01 GB GB3643877A patent/GB1542350A/en not_active Expired
- 1977-09-02 BE BE180658A patent/BE858377A/xx unknown
- 1977-09-02 NL NL7709716A patent/NL7709716A/xx not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
ATA616777A (de) | 1983-02-15 |
AT372559B (de) | 1983-10-25 |
FR2363831B1 (de) | 1982-12-10 |
NL7709716A (nl) | 1978-03-07 |
GB1542350A (en) | 1979-03-14 |
DE2639806B1 (de) | 1977-10-13 |
IT1087364B (it) | 1985-06-04 |
FR2363831A1 (fr) | 1978-03-31 |
BE858377A (fr) | 1978-03-02 |
DE2639806C2 (de) | 1978-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3885123T2 (de) | Anordnung und Verfahren für Kryptographie mit Anwendung. | |
EP0986872B1 (de) | Vorrichtung zur durchführung eines blockchiffrierverfahrens | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2457312B2 (de) | Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung | |
DE2432608C3 (de) | Speicheranordnung fur eine Datenverarbeitungseinrichtung | |
DE1474062B2 (de) | Datenverarbeitungsanlage mit einer anzahl von pufferspeichern | |
DE1449544A1 (de) | Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk | |
DE1774945C3 (de) | Elektronische Datenverarbeitungsanlage zum Mischen, Sortieren, arithmetischen Verarbeiten von aus Datenfeldern bestehenden Datensätzen und zum Umstellen von einzelnen Datenfeldern | |
DE2054941C2 (de) | Anordnung zur Auswahl von Datensätzen | |
CH618803A5 (en) | Method and device for encryption and decryption of binary data blocks | |
DE2459476C3 (de) | ||
DE1562051B2 (de) | Schaltungsanordnung zur erzeugung einer eindeutigen gruppe von m x n bits | |
DE2744886B2 (de) | Schaltungsanordnung zum Umschwenken einer Binärdatenmatrix | |
DE19645057C2 (de) | Vorrichtung zur Selektion von Adressenwörtern mittels Demultiplex-Decodierung | |
DE1250489B (de) | I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher | |
DE2459476A1 (de) | Schaltungsanordnung fuer nichtzyklische datenpermutationen | |
DE2717065C3 (de) | Einrichtung zur Prüfung der Zuordnung einer Geheimzahl zu einer auf einer Karte gespeicherten Kartenzahl | |
DE2702586C3 (de) | Schaltungsanordnung zum Steuern des Speicherzugriffs bei einem Rechner | |
DE2200744A1 (de) | Verfahren und Vorrichtung zum Aussortieren | |
DE2450669A1 (de) | Verfahren und schaltungsanordnungen zur verschluesselung und entschluesselung | |
DE1474041C3 (de) | Anordnung zum Sortieren von in zufälliger Reihenfolge aufgenommener Informationsbit Gruppen | |
DE1449411B2 (de) | Verfahren und schaltungsanordnung zum sequentiellen aus lesen mehrerer ungleicher waerter oder wortteile die einem oder mehreren suchbits entsprechende bits enthalten aus einem assoziativen speicher | |
DE1087834B (de) | Rechenmaschine | |
DE978059C (de) | Verfahren und Anordnung zur reproduzierbaren Erzeugung einer Schluesselimpulsfolge | |
DE2136536B2 (de) | Verfahren und Anordnung zur Korn pnmierung und Dekompnmierung binarer Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PL | Patent ceased |