Die Caesar-Chiffrierung
Die Caesar-Chiffrierung ist
eines der einfachsten Verfahren zum Verschlüsseln von Nachrichten. Sein
Name rührt von dem römischen Kaiser Julius Caesar her, der dieses
Verfahren bereits verwendet hat. Dieser benutzte es für den Briefwechsel
mit seinen Statthaltern, Generälen und Konsuln. Cäsar erhielt das
Geheimtextalphabet, indem er das Klartextalphabet um drei Stellen verschob,
aus dem A wurde ein D, aus dem B ein E usw.
Das Klartextalphabet befindet
sich in der ersten, das Geheimtextalphabet in der zweiten Zeile. In den folgenden,
entsprechenden Tabellen wird ebenso verfahren.
| A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
| D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
A |
B |
C |
Verschlüsselung nach Cäsar
Eine Sonderform des Cäsar-Codes ist auch als ROT13-Verfahren
bekannt, weil die Buchstaben um 13 Stellen verschoben werden. Sie zeichnet sich
dadurch aus, dass die Zuordnung der Buchstaben symmetrisch ist, d.h. (A=N, N=A
usw.), das ROT13-Verfahren wird heute nicht mehr zum Schutz angewendet, sondern
z.B. im Usenet zum Kaschieren von Text. Eine Besonderheit dieses Verfahrens
ist, das ein zweifaches Anwenden von ROT13 auf einen Text diesen als Original
zurückgibt, es gilt: K=ROT13(ROT13(K))
| A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
| N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
Verschlüsselung nach ROT13
Ein ebenfalls sehr altes Verfahren,
welches auf dem gleichen Prinzip basiert, ist die um 600 v.Chr. in Palästina
angewandte Atbash-Chiffrierung, bei dem das Schlüsselalphabet in
umgekehrter Reihenfolge dem Klartextalphabet zugeordnet wurde. Auch einige Textstellen
des Alten Testamentes sind mit Atbash verschlüsselt. Das Wort Atbash selbst
deutet auf den verwendeten Algorithmus hin, denn es besteht aus dem ersten Buchstaben
des hebräischen Alphabets, dem Alef, gefolgt von dem letzten Buchstaben
– Taw. Dann kommt der zweite Buchstabe Bet, gefolgt von dem vorletzten
– Schin. Beispiele für Atbash sind Jeremia 25,26 und 51,41.
| A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
| Z |
Y |
X |
W |
V |
U |
T |
S |
R |
Q |
P |
O |
N |
M |
L |
K |
J |
I |
H |
G |
F |
E |
D |
C |
B |
A |
Verschlüsselung mit dem Atbash-Verfahren
Bei der Caesar-Chiffrierung
wird durch zyklische Rotation des Alphabets um S Zeichen jedem Buchstaben
eines Textes eindeutig ein anderer Buchstabe zugeordnet. Dieses S ist
der Schlüssel.
Beispiel: Gegeben sei die Zeichenfolge K als Klartext.
K = MITTAGESSEN BEI CLEOPATRA
Der Schlüssel sei
S = 5.
Somit ergibt sich der Geheimtext mit
G = RNYYFLJXXJS GJN HQJTUFYWF
|
|
Begründung: Jeder Buchstabe
von K wird um S Zeichen weitergerückt. Somit wird aus 'M'
ein 'R', aus 'I' ein 'N' und so weiter. Da es sich um eine zyklische Rotation
handelt, fängt das Alphabet nach dem 'Z' wieder von vorne an; somit wird
aus dem 'Z' ein 'E'.
Mathematisch betrachtet wird jedem Buchstaben, entsprechend seiner Position im Alphabet, ein Wert zugewiesen:
('A' = 0, 'B' = 1, ..., 'Z' = 25). Somit ergibt sich eine Funktion mit
G* = (S + K*) mod 26.
K*
bezeichnet dabei die Position eines beliebigen Buchstaben des Klartextes im
Alphabet, G* die entsprechende Position im Geheimtext.
Achtung: Es ist wichtig, dass die Nummerierung der Buchstaben mit 0 beginnt
und nicht mit 1! Zur Vereinfachung der Chiffrierung hatte bereits 1470 Leon
Battista Alberti eine Maschine erfunden, die das Ver- und Entschlüsseln
nach der Methode von Cäsar mechanisiert.
Eine Chiffriermaschine nach Alberti
Im Bild ist allerdings nicht
die Original-Alberti-Scheibe zu sehen, diese enthält noch Ziffern. Ohne
die Ziffern kann die Cäsarchiffrierung vorgenommen werden. Sie lässt
sich ganz einfach aus zwei Pappringen nachbauen. So einfach dieses Verfahren
auch erscheint, es wurde z.B. viele hundert Jahre später von der Südstaaten-Armee
genutzt, wie nachfolgendes Bild zeigt.
Alberti-Scheibe
der Südstaaten
Da jedem Klartextbuchstaben
(das gilt prinzipiell für alle monoalphabetischen Chiffriermethoden) ein
eindeutiger Geheimtextbuchstabe zugewiesen ist, ändert sich die Verteilung
der Häufigkeiten der Buchstaben nicht. Somit ist es möglich (bei Kenntnis
der Sprache), eine statistische Analyse vorzunehmen und den Schlüssel zu
ermitteln. Das 'E' ist der häufigste Buchstabe in der deutschen Sprache
(er besitzt einen Anteil von 17,48%). Um das dem 'E' entsprechende Zeichen im
Chiffre zu finden, muss man also das häufigste Zeichen ermitteln – dies
ist dann bei langen Texten mit großer Wahrscheinlichkeit das 'E'. Anschließend
muss man nur noch die Differenz zwischen der Position des Buchstabens und dem
'E' bilden – schon hat man den Schlüssel S. Aber auch bei kürzeren
Texten ist es recht einfach, den Originaltext zu restaurieren. Man bildet mit
Hilfe des Computers alle Möglichkeiten der Verschlüsselung (das sind
nur 25, wenn die Abbildung auf sich selbst entfällt) und sieht nach, ob
der Klartext sinnvoll erscheint. Dazu zieht man von jedem Geheimtextbuchstaben
ein variierendes S ab und betrachtet wiederum den Rest, der bei einer
Division durch 26 entsteht:
K* = (26+ G* - S) mod 26
Die Addition von 26 ist in
den meisten Programmiersprachen notwendig, da G* -
S negativ sein könnte, was der allgemeinen Vereinbarung der modulo-Division
widerspricht.
Programme:
caesar1.html,caesar2.html,caesar3.html,caesardechiff.html