Andreas Gärtner
Freitag, 5. Januar 2007
Verfahren der Kryptografie

Kryptografie mit CrypTool

Das Open Source Programm CrpyTool eignet sich hervorragend, verschiedenste Arten von Verschlüsselungen selbst auszuprobieren. Dabei sind keinerlei Vorkenntnisse nötig, das Programm lässt sich spielend leicht bedienen. CrypTool ist auf dieser Website kostenlos zum Download verfügbar.

Hat man das Programm installiert und gestartet bietet der Startbildschirm eine Hilfsoption an.

Ich habe bei dieser Übung Methoden ausprobiert, die folgenden Verfahren zuzuordnen sind:

  1. Symmetrische Verschlüsselung (klassisch)
  2. Symmetrische Verschlüsselung (modern)
  3. Asymmetrische Verschlüsselung
  4. Hybride Verfahren

(Symmetrische Verfahren verwenden zum Ver- und Entschlüsseln den selben Schlüssel, Asymmetrische verwenden 2 verschiedene Schlüssel. Hybride Verfahren sind Mischformen, die Vorteile der beiden Formen kombinieren sollen.)

Dabei habe ich folgenden Text verwendet, den ich, je nach Verfahren, unterschiedlich verschlüsselt habe:

Im Folgenden sind die dazu nötigen Schritte und Vorgänge erläutert und das Ergebnis dokumentiert!

1. Symmetrische Verschlüsselung nach VIGENÈRE:

Die Vigenère-Verschüsselung basiert auf der Caesar Verschlüsselung und weist jedem Buchstaben des Klartextes ein Alphabet zu, nach dem der Buchstabe verschlüssel wird (also sind 26 verschiedene möglich, nicht nur eines wie beim Verfahren nach Caesar). Ein Schlüsselwort bestimmt die Reihenfolge der zur Verschlüsselung verwendeten Alphabete.

Das Schlüsselwort "TESTSCHLUESSEL" bestimmt somit, dass für den ersten Buchstaben des Klartextes das Alphabet beginnend mit "T" verwendet wird (also TUVWXYZABCD...), für den zweiten das Alphabet beginnend mit "E", usw.

Das Ergebnis ist folgender verschlüsselter Text, der jedoch von einem PC in sehr kurzer Zeit geknackt werden könnte:

Zum Entschlüsseln wählt man den entsprechenden Menüpunkt in CrypTool und gibt sein Schlüsselwort ein.

2. Symmetrische Verschlüsselung mit dem Data Encryption Standard (DES):

Der hier verwendete Standard DES zerlegt den Klartext in 64-Bit Blöcke, beim hier verwendeten ECB (Electronic Code Book) wird der letzte Block auf volle 64 Bit aufgefüllt. Die Blöcke werden mit dem selben Schlüssel voneinander unabhängig verschlüsselt.

Die Daten werden in 16 Runden sozusagen "verwürfelt". Dabei wird ein 64 Bit großer Klartextblock zu einem gleich großen Chiffretext. Der Chiffrierschlüssel besitzt ebenfalls 64 Bit, wobei 8 Bit zum sogenannten Paritäts-Check verwendet werden. Effektiv ist der Schlüssel somit nur 56 Bits lang. Das ergibt 2 hoch 56 (ca. 72 Billiarden) mögliche Schlüssel. Diese können bei einer Brute-Force Attacke (ein geeigneter Computer probiert alle möglichen Varianten der Reihe nach durch) relativ leicht geknackt werden. Dies ist auch der Grund, warum heute andere, verbesserte Verfahren zur Verschlüsselung verwendet werden.

Der selbe Algorithmus kommt bei der Entschlüsselung zum Einsatz, wobei die Schlüssel in umgekehrter Reihenfolge verwendet werden.

In CrpyTool gibt man nun einfach einen beliebigen Schlüssel ein.

Dann erhält man dieses Ergebnis.

3. Asymetrische Verschlüsselung nach dem RSA-Verfahren:

RSA (nach den Erfindern Ronald L. Rivest, Adi Shamir und Leonard Adleman) verwendet ein Schlüsselpaar: der (geheim gehaltene) private Schlüssel zum zum Entschlüsseln oder Signieren von Daten und einem (allgemein bekannten) öffentlichen Schlüssel zum Verschlüsseln oder Prüfen von Signaturen. Wichtig dabei ist, dass der private Schlüssel nur Nachrichten entschlüssen kann, die mit dem öffentlichen Schlüssel verschlüsselt wurden und umgekehrt. Des weiteren darf der private Schlüssel nicht öffentlich bekannt sein und soll nur unter extrem hohem Aufwand knackbar sein.

So funktioniert das Verfahren nun mit Cryptool:

Zuerst muss ein asymmetrisches Schlüsselpaar erzeugt werden. Dies macht man unter dem Menüpunkt "Digitale Signaturen/PKI". Dort legt man einen Namen fest und gibt einen Pincode (als Passwort) ein.

Will man nun einen Klartext verschlüsseln wählt man das RSA-Verfahren aus. Daraufhin zeigt das Programm eine Textbox, aus der man den soeben generierten Schlüssel auswählt. CrypTool generiert daraufhin durch Mausbewegungen oder Eingaben per Zufallszahlengenerator einen zufälligen Code.

Damit wird der Klartext verschlüsselt.

Zum Entschlüsseln gibt man das zuvor vergebene Passwort ein und erhält den Klartext zurück.

4. Hybride Verfahren mit RSA-AES:

Da Asymmetrische Verfahren zwar viel sicherer, aber auch um ein Vieles langsamer sind als Symmetrische sollen Hybride Verfahren die Vorteile der jeweiligen Methode kombinieren. RSA wird dabei lediglich zum Austausch des Schlüssels für die symmetrische Verschlüsselung der Daten benutzt.

Bei der in CrypTool verfügbaren RSA-AES-Verschlüsselung öffnet sich folgende interaktive Box:

Man generiert einen zufälligen Sessionkey und wählt einen (vorgefertigten) asymmetrischen Schlüssel. Dann verschlüsselt man den Klartext symmetrisch und den Sessionkey asymmetrisch. Dies wird per Mausklick automatisch gespeichert und zusammengeführt. Was in der Theorie schwierig klingt ist mit Hilfe des Programmes sehr einfach. Die grafische Darstellung vermittelt außerdem eine gute Vorstellung, welche Vorgänge nacheinander ablaufen.

Man erhält nun folgenden Chiffretext:

Zum Entschlüssen geht das Programm logischerweise umgekehrt vor. Man gibt das Passwort für den asymmetrischen Schlüssel ein, um den Sessionkey zu erhalten. Anschließend dechiffriert CrypTool die Daten und man erhält den Klartext.

Wer über die einzelnen Themen nachlesen möchte, der klicke einfach auf die folgenden Links, entnommen von Wikipedia.org:

Kryptografie

RSA

... comment

 
Alexandra.Berger.Uni-Linz, Dienstag, 9. Januar 2007, 12:38
Benutzt du immer CrpyTool zum Verschlüsseln oder kannst du einen Vergleich zu anderen Anwendungen anstellen? I kenn nur WinPT, aber ich werds in Zukunft auch mal mit CrpyTool versuchen. Mehr zu Verschlüsseln mit WinPT auf meinem Weblog: /0255247/

... link  


... comment


To prevent spam abuse referrers and backlinks are displayed using client-side JavaScript code. Thus, you should enable the option to execute JavaScript code in your browser. Otherwise you will only see this information.

Online for 6630 days
Last update: 2008.02.06, 20:21
status
You're not logged in ... login
menu
... home
... topics
... galleries

... ::collabor:: home
search
 
calendar
Januar 2007
Mo
Di
Mi
Do
Fr
Sa
So
 1 
 2 
 3 
 4 
 6 
 7 
 8 
 9 
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
 
 
 
 
recent updates
Finale Version: Neues...
I. Status Quo Einleitung und Problemformulierung Das...
by Andreas.Gärtner.Uni-Linz (2008.02.06, 20:20)
Prüfung in IV2
pruefung_iv2 (xls, 24 KB)
by Andreas.Gärtner.Uni-Linz (2008.01.30, 18:16)
Neues Geschäftsmodell...
I. Evaluierung des Status Quo 1. Problemformulierung Die...
by Andreas.Gärtner.Uni-Linz (2008.01.22, 19:57)
Neues Geschäftsmodell...
I. Status quo: Die rasanten Veränderungen in...
by Andreas.Gärtner.Uni-Linz (2007.12.11, 22:05)
5. Tutorium - Abfrage...
Bitte Datum (Format: JJJJ-MM-DD) eingeben, um Umsatzergebnisse...
by Andreas.Gärtner.Uni-Linz (2007.11.28, 13:16)

xml version of this page

made with antville