Das Cäsar-Verfahren

Aus ProgrammingWiki

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Monoalphabetische Verschlüsselung

Schematische Darstellung einer Verschiebung um drei Buchstaben
Gaius Julius Caesar

Bei der monoalphabetischen Verschlüsselung wird jeder Buchstabe des Klartexts auf ein "Geheimalphabet" abgebildet. Dieses Geheimalphabet ergibt sich, indem man die Zeichen eines geordneten Alphabets um eine bestimmte Anzahl zyklisch nach rechts verschiebt (rotiert) und beim Verschieben über Z hinaus bei A beginnend weiterzählt. Die Verschiebungsweite bildet den Schlüssel, der für die gesamte Verschlüsselung unverändert bleibt. Als Schlüsselbuchstaben bezeichnet man den Anfangsbuchstaben des Geheimalphabets. Die Entschlüsselung erfolgt mit dem gleichen Schlüssel bzw. Schlüsselbuchstaben in umgekehrter Richtung.

Der Name der Cäsar-Verschlüsselung geht auf den römischen Feldherrn Gaius Julius CAESAR (* 13. Juli 100 v. Chr.; † 15. März 44 v. Chr.) zurück, der diese Art der geheimen Kommunikation für seine militärische Korrespondenz verwendet haben soll. Dabei soll er eine Verschiebung des Alphabets um drei Buchstaben benutzt haben.

Verschlüsselungen, bei denen Texte mit dem gleichen Schlüssel sowohl ver- als auch entschlüsselt werden, heißen symmetrische Verschlüsselungsverfahren.

Implementation

Zunächst definieren wir das zulässige Alphabet, bestehend aus Groß- und Kleinbuchstaben sowie Ziffern. Um Textstrukturen zu erhalten, wollen wir die Sonderzeichen nicht in die Verschlüsselung einbeziehen.
Der Schlüsselbuchstabe ist eine Zeichenkette mit der Länge 1.
Das Ver- und Entschlüsseln soll mit den gleichen Prozeduren erfolgen. Lediglich "verschiedene Richtungen" müssen dabei berücksichtigt werden.

 

Quelltext überprüfen:

Wir legen einen gültigen Schlüsselbuchstaben fest:

 

Quelltext überprüfen:

Nun verschlüsseln wir einen einfachen Text:

Häufigkeitsuntersuchungen

Eine monoalphabetische Verschlüsselung ist natürlich schnell zu "knacken". Im ungünstigsten Fall benötigen wir die Anzahl von Versuchen, die der Länge des verwendeten Alphabets entspricht.
Im Allgemeinen geht es noch schneller, wenn wir den Schlüsselbuchstaben geschickt "erraten". Dazu ermitteln wir zunächst den häufigsten Buchstaben im Geheimtext. Zu ihm bestimmen wir die Verschiebungsweite, die sich zu einem häufig vermuteten Buchstaben im Klartext ergibt. Mit wenigen Versuchen lässt sich so der Klartext ermitteln.

Wir suchen den häufigsten Buchstaben im Geheimtext...

... und führen ihn auf den vermutlich häufigsten Buchstaben des Klartextes zurück:

Sollte der erste Versuch nicht zum Ziel führen, kann dieses Vorgehen natürlich auch "automatisiert" werden:

Zusammmenfassung

  • Das Cäsar-Verfahren ist ein symmetrisches monoalphabetisches Verschlüsselungsverfahren, d.h. dem Empfänger muss auf einem sicheren Weg der Schlüssel bzw. der Schlüsselbuchstabe übermittelt werden.
  • Das Verfahren ist sehr unsicher, da der Klartext durch systematisches Probieren mit geringem Zeitaufwand ermittelt werden kann.
    Eine Häufigkeitsanalyse der verwendeten Zeichen führt noch schneller zum Ziel.
  • Neben seinen algorithmischen Aspekten hat das Cäsar-Verfahren heute keine praktische Bedeutung mehr.

Zurück zu ausgewählten Algorithmen der Kryptologie.

Persönliche Werkzeuge