Dies ist eine alte Version des Dokuments!
D. Symmetrische Kryptographie
1. Grundlagen
Kryptographie ist die Wissenschaft der Verschlüsselung und Entschlüsselung von Informationen, um sie vor unbefugtem Zugriff zu schützen. Diese Disziplin hat eine lange und faszinierende Geschichte. Schon in der Antike wurde die Cäsarverschlüsselung verwendet, bei der Buchstaben um eine bestimmte Anzahl Positionen im Alphabet verschoben wurden, um Nachrichten zu verschleiern. Im 16. Jahrhundert nutzte Maria Stuart eine Nomenklatur, um wichtige Informationen durch den Ersatz von Wörtern zu schützen. Im Laufe der Zeit entwickelte sich die polyalphabetische Verschlüsselung, bei der verschiedene Verschiebungen innerhalb einer Nachricht angewendet wurden, was die Entschlüsselung erschwerte. Während des Zweiten Weltkriegs wurde die deutsche Enigma Maschine verwendet, um komplexe Verschlüsselungen zu erzeugen, die von den Alliierten jedoch erfolgreich entschlüsselt wurden. Diese historischen Meilensteine legten den Grundstein für die moderne Kryptographie, die heute eine entscheidende Rolle im Schutz digitaler Kommunikation und Daten spielt.
Alle oben erwähnten Verfahren haben etwas gemeinsam: es handelt sich um symmetrische Verfahren, d.h. die Nachricht wird mithilfe eines bestimmten Schlüssels verändert und sie kann dann mithilfe desselben Schlüssels wieder entschlüsselt werden (indem man die Schritte der Verschlüsselung rückgängig macht).
Aufgabe 1
- Was ist bei den oben erwähnten Verschlüsselungsarten jeweils der Schlüssel?
- Cäsarverschlüsselung
- Allgemeine Monoalphabetische Verschlüsselung
- Nomenklatur von Maria Stuart
- Polyalphabetische Verschlüsselung
- Enigma
Die Kryptograpie besteht aus einem immer wiederkehrenden Kreislauf: neue Methoden werden entwickelt, diese sind eine Zeit lang sicher und werden dann aber schliesslich geknackt, sodass wieder neue Methoden erfunden werden müssen. So ist es nicht verwunderlich, dass alle erwähnten Verfahren durch das clevere Ausnutzen von Schwachstellen und durch die Anwendung von statistischen Verfahren geknackt wurden.
2. Moderne symmetrische Verfahren
2.1 Blockchiffre vs. Stromchiffre
In der binär digitalisierten Welt bestehen die zu verschlüsselnden Daten aus einem Datenstrom, der aus lauter Einsern und Nullen besteht. Man unterscheidet grundsätzlich zwei Verfahren: Stromchiffren und Blockchiffren. Blockchiffren unterteilen die Meldung in gleich grosse Blöcke (z.B. 32, 64 128 Bit) und verschlüsseln dann jeden Block für sich. Stromchiffren chiffrieren einen Datenstrom direkt Bit für Bit mit Hilfe von xOr-Verknüpfungen (mit einem nicht endenden Schlüssel und mit Hash-Tricks, damit sie nicht geknackt werden können). Wir werden uns im Folgenden auf Blockchiffren konzentrieren.
2.2 Moderne Blockchiffren: Feistel-Netzwerk oder Feistel-Chiffre
Die Feistel-Chiffre ist nicht eine eigentliche Verschlüsselung, sondern ein Prinzip, welches es erlaubt eine Verschlüsselung für einen Block (z.B. für 128 Bit) zu definieren. Dieses Prinzip wurde vom IBM-Mitarbeiter Horst Feisel in den 1970er-Jahren definiert und viele aktuelle Verschlüsselungsverfahren basieren darauf. In Worten beschrieben läuft eine Runde der Feistel-Chiffre folgendermassen:
- Der Block wird in zwei gleich grosse Teile zerlegt (L und R)
- Der rechte Teil wird durch eine (beliebige) Verschlüsselungsfunktion F verschlüsselt
- Der verschlüsselte rechte Teil wird mit dem linken Teil xOr-Verknüpft und wird zum neuen rechten Teil.
- Der ursprüngliche rechte Teil wird zum neuen linken Teil
- Nun wird der oben beschriebene Ablauf mit einer neuen Verschlüsselungsfunktion wiederholt (n Runden).
- Ganz am Schluss tauscht man die linke und die Rechte Seite aus.
Das verblüffende bei diesem Feistel-Prinzip ist, dass die Entschlüsselung sehr einfach abläuft: man macht genau dasselbe, wobei man jedoch die Verschlüsselungsfunktionen umkehrt.
Das Prinzip wird auch im Bild auf der rechten Seite verdeutlicht (Quelle: https://www.tokenex.com/blog/vh-what-is-a-feistel-cipher/). Ein Video zum Feistel-Netzwerk von Computerphile: Feistel Networks (Computerphile)
Viele moderne Kryptografieverfahren basieren auf diesem Prinzip von Feistel: DES, 3DES, Twofish etc.
Aufgabe 2
- Führe zwei Runden des Prinzips von Feistel durch für die Bitfolge
110001111010, wobei die erste Verschlüsselungsfunktion eine Verknüpfung mitandund der Bitfolge111010ist, und die zweite Verschlüsselungsfunktion „das n-te Bit von links wird zur Summe der ersten n-Bits von rechts modulo 2“ nimmst. - Führe die Entschlüsselung für das obige Problem durch und zeige, dass du wieder auf den Ursprungstext
110001111010kommst. - Zeige allgemein, dass man bei zwei Runden wieder den Ursprungstext erhält, wenn man das Verfahren umkehrt. Um die Schreibweise etwas zu erleichtern, nimm für die Verschlüsselungsfunktionen F und G.
- *) Recherchiere wie das Verfahren DES funktioniert - dieses war lange Zeit der Standard in der symmetrischen Kryptographie.
Im Jahr 2000 wurde ein grosser Wettbewerb durchgeführt, um den neuen Verschlüsselungsstandard zu definieren (Advanced Encryption Standard AES), da der damals vorherrschende Standar DES nicht mehr sicher war. Dabei setzte sich ein Algorithmus namens Rijndael durch, der seither als AES die Standardverschlüsselung bei sehr vielen Anwendungen bildet. Zurück zur Übersicht <\WRAP>
- ef/kryptographie/symmetrischekryptographie.1692813401.txt.gz
- Zuletzt geändert: 2023/08/23 19:56
- von lehmannr