Kryptologie
Inhaltsverzeichnis
Definitionen
a. Sender und Empfänger
b. Nachrichten und Verschlüsselung
c. Authentifizierung, Integrität und Verbindlichkeit
d. Symmetrische Algorithmen
e. Public-Key-Algorithmen
f. Kryptanalyse
g. Chiffierungsarten
i. Chiffierung durch Substitution
ii. Chiffierung durch Transposition
h. Einwegfunktionen
i. Einweghashfunktionen
Geschichte der Kryptologie
a. Einführung
b. Kurzer Überblick über die Geschichte
c. Rotormaschinen
d. Enigma
e. Kryptologische Institute
Protokolle
a. One Time Pads
b. Kommunikation mit symetrischen Verfahren
c. Kommunikation mit asymetrischen Verfahren
d. Hybride Kryptologie
e. Merkles Rätsel
f. Digitale Signatur
2 Beispiele für Verschlüsselung
a. DES
b. RSA
Politische Situation
2.Definitionen
Sender und Empfänger
Angenommen, ein Sender möchte eine Nachricht an einen Empfänger schicken. Außerdem möchte der Sender die Nachricht sicher übermitteln; er mächte verhindern, dass die Nachricht von jemanden mitgelesen wird.
Nachricht und Verschlüsselung
Eine Nachricht besteht aus Klartext. Das Verfahren eine unverständlich zu machen, um ihren Inhalt zu verbergen, heißt Verschlüsselung. Eine verschlüsselte Nachricht besteht aus dem Chiffretext. Die Umwandlung von Chiffretext in Klartext wird Entschlüsselung genannt.
Alternativ dazu spricht man auch von "chiffrieren" und "dechiffrieren"
Kryptographie ist die Wissenschaft, die sich mit der Absicherung von Nachrichten beschäftigt. Sie wird von den Kryptographen praktiziert. Kryptanalytiker befassen sich mit der Kryptanalyse, der Kunst, Chiffretext aufzubrechen, d.h. dessen geheimen Inhalt lesbar zu machen. Der Zweig der Mathematik, der Kryptographie sowie Kryptanalyse umfasst, ist die Kryptologie. Ihre Vertreter heißen Kryptologen. Moderne Kryptologen sind in der Regel auch theoretische Mathematiker - das ist auch unbedingt notwendig.
Neben der Geheimhaltung soll Kryptographie oft noch andere Ansprüche erfüllen
Algorithmen und Schlüssel
Ein krptographischer Algorithmus, auch Chiffrierung genannt, ist die mathematische Funktion, die zur Ver- und Entschlüsselung verwendet wird. (Im allgemeinen werden zwei verwandte Funktionen benutzt: eine zur Ver- und eine zur Entschlüsselung)
Wenn die Sicherheit eines Algorithmus davon abhängt, dass seine Arbeitsweise geheim bleibt, handelt es sich um einen eingeschrängten Algroithmus.
Eingeschränkte Algorithmen sind nur noch von historischem Interesse, da sie den heutigen Standards in keiner Weise gerecht werden. Von großen Benutzergruppen oder Gruppen mit häufig wechselnden Benutzern können sie nicht verwendet werden, da die gesamte Grupee jedes Mal auf einen anderen Algorithmus umsteigen müsste, sobald ein Benutzer die Gruppe verlässt. Auch wenn jemand das Geheimnis versehentlich preisgibt, müssen alle zu einem neuen Algorithmus wechseln.
Außerdem kann die Qualität der Algorithmus nicht geprüft werden, da nur die ausgewählten Benutzer den Algorithmus kennen.
Trotz dieser entscheidenden Nachteile sind eingeschränkte Algorithmen bei Anwendungen mit niedrigen Sicherheitsanforderungen sehr beliebt. Benutzer erkennen oder kümmern sich nicht um die sicherheitsrelevanten Probleme, die ihre Systeme mit sich bringen.
In der modernen Kryptographie werden diese Schwierigkeiten mit einem Schlüssel gelöst, der mit K (für eng. key) abgekürzt wird. Dieser Schlüssel kann aus einem sehr umfangreichen Wertebereich gewählt werden. Der Bereich aller möglichen Schlüsselwerte wird Schlüsselraum genannt.
Der Schlüssel wird sowohl bei der Ver- als auch bei der Entschlüsselung verwendet (d.h. beide Operationen stützen sich auf denselben Schlüssel.
Bei manchen Algroithmen werden zur Ver- und Entschlüsselung unterschiedliche Schlüssel verwendet.
Die Sicherheit dieser Algorithmen besteht ausschließlich auf dem oder den Schlüsseln und nicht auf den Eigenschaften des Algorithmus. Folglich kann der Algorithmus veröffentlicht und analysiert werden, so dass er sich auch in Massenprodukten einsetzen lässt.
Es spielt keine Rolle, ob ein Schnüffler über den Algorithmus Bescheid weiß. Ohne Kenntnis Ihres Schlüssels kann er Ihre Nachricht nicht lesen.
Ein Kryptosystem besteht aus einem Algorithmus einschließlich aller möglichen Klartexte, Chiffretexte und Schlüssel.
Es gibt generell zwei Arten von Algorithmen, die auf Schlüsseln basieren: symmetrische Algorithmen und Algorithmen mit öffentlichen Schlüsseln (public key).
Bei symetrischen Algorithmen, die manchmal auch konventionelle Algorithmen genannt werden, lässt sich der Chiffrierschlüssel aus dem Dechiffrierschlüssel berechnen und umgekehrt. Chiffrier- und Dechiffrierschlüssel sind meist identisch. Bei solchen Algorithmen, die auch Algorithmen mit geheimen (secret key) oder einzelnem (single key) Schlüssel heißen, müssen Sender und Empfänger einen Schlüssel vereinbaren, bevor sie sicher mit einander kommunizieren können. Die Sicherheit eines symmetrischen Algorithmus liegt im Schlüssel; nach Preisgabe des Schlüssels können beliebige Personen Nachrichten ver- und entschlüsseln. Solange die Kommunikation geheim bleiben muß, ist auch der Schlüssel geheimzuhalten.
Bei Algorithmen mit öffentlichen Schlüssel (auch asymmetrische Algorithmen genannt) unterscheiden sich Chiffrier- und Dechiffrierschlüssel.
Demzufolge kann der Dechiffrierschlüssel auch nicht aus dem Chiffrierschlüssel berechnet werden (zumindest nicht in angemessener Zeit). Diese Verfahren heißen Algorithmen mit öffentlichem Schlüssel (public key algorithmus), da der Chiffrierschlüssel öffentlich bekannt gemacht werden kann:
Ein völlig Unbekannter kann damit eine Nachricht verschlüsseln, aber nur die Person mit dem entsprechenden Dechiffrierschlüssel kann die Nachricht wieder entschlüsseln. In solchen Systemen wird der Chiffrierschlüssel oft "öffentlicher Schlüssel" und der Dechiffrierschlüssel "privater Schlüssel" gennant.
Es gibt auch die umgekehrte Version, bei der mit dem privaten Schlüssel verschlüsselt wird, und mit dem öffentlichen entschlüsselt wird. Dies wird vor allem bei der Digitalen Signatur verwendet.
Sinn und Zweck der Kryptgraphie ist es, den Klartext (oder den Schlüssel oder beides) vor Schnüfflern zu verbergen. Man setzt dabei voraus, dass die Gegner vollständigen Zugriff auf die Kommunikation zwischen Sender und Empfänger besitzen.
Kryptanalyse ist die Wissenschaft der Widerherstellung des Klartexts einer Nachricht ohne Zugriff auf den Schlüssel. Die Kryptanalyse ist erfolgreich, wenn der Klartext oder der Schlüssel ermittelt wird.
Ein Grundsatz der Kryptanalyse ist, dass die Sicherheit eines Verfahren nur von der Geheimhaltung des Schlüssels abhängen darf.
Es gibt mehrere Arten von kryptanalytischen Angriffen.
Die wichtigsten wären:
Der Kryptanalytiker verfügt über den Chiffretext mehrerer Nachrichten, die mit demselben Verschlüsselungsalgorithmus chiffriert wurden. Seine Aufgabe besteht nun darin, den Klartext möglichst viler Nachrichten wieder herzustellen oder besser noch, den oder die zur Chiffrierung der Nachrichten verwendeten Schlüssel abzuleiten, um damit weitere mit denselben Sclüsseln chiffrierten Nachrichten zu entschlüsseln.
Der Kryptanalytiker besitzt nicht nur Zugang zum Chiffretext diverser Nachrichten, sondern auch zum dazugehörenden Klartext. Seine Aufgabe besteht nun darin, den oder die zur Verschlüsselung der Nachrichten verwendeten Schlüssel herauszubekommen oder einen Algorithmus zu finden, mit dem weitere Nachrichten entschlüsselt werden können, die mit denselben Schlüssel chiffriert wurden.
Der Analytiker verfügt nicht nur über den Chiffre- und Klartext verschiedener Nachrichten, sondern darüber hinaus kann er den zu verschlüsselnden Klartext selbst festlegen. Diese und die vorher gehende Variante sind gebräuchlicher als man denkt. Man muß sich gar nicht komplizierter Mittel zu erreichen. Man spielt z.B einem Botschafter ein geheimes Dokument zu dessen Inhalt man kennt. Dieser wird dieses dann vermutlich verschlüsselt nach Hause schicken. Und schon hat man sein Dokument mit seinem Schlüssel verschlüsselt.
Chosen-chipertext-Angriff
Hier verfügt der Analytiker über einen Chiffretext und hat die Möglichkeit diesen zu entschlüsseln. (Kommt häufig bei public Key Algorithmen vor).
Brute-Force Angriff
Der Analytiker probiert einfach alle möglichen Schlüssel aus und überprüft die Ergebnisse auf Sinnhaftigkeit.
Kryptanalyse mit Gewalt
Klingt zwar sehr primitiv. Ist in der Praxis aber die wirkungsvollste Methode.
Bevor es Computer gab, waren kryptographische Algorithmen zeichenorientiert. Zeichen wurden durch andere Zeichen ersetzt oder miteinander vertauscht. Bessere Algorithmen kombinierten diese beiden Methoden oft mehrmals hintereinander.
Der einzige Unterschied heutzutage ist das statt des Alphabets Bits verwendet werden - also statt 26 Zeichen nur 0 oder 1.
Substitution
Bei der einfachen Subsitions-Chiffierung wird jedes Zeichen des Klartexts durch ein entsprechendes Zeichen Chiffretext ersetzt. (sehr einfache Verschlüsselung)
Die homophone Subsitions-Chiffrierung ähnelt der Chiffrierung durch einfache Substation, ein Zeichen des Klartexts kann jedoch durch verschiedene Zeichen Chiffretext abgebildet werden.
Bei der polygraphischen Substition-Chiffierung werden Blöcke von Zeichen zu Gruppen verschlüsselt. So könnte "ABA" auf "RTQ und "ABB" auf "SLL" usw. abgebildet werden.
Eine polyalphabetische Substitutions-Chiffierung besteht aus mehreren Chiffierung durch einfache Substation. Welche Art der Chiffierung gewählt wird hängt von der Position des Zeichens ab.
Ein schönes Beispiel um Substitions-Chiffierung zu demonstrieren ist das "Caesar-Verfahren" das wir etwas später noch näher erläutern werden.
Transposition
Bei der Chiffrierung durch Transposition bleibt der Klartext im Prinzip erhalten, es werden lediglich die einzelnen Zeichnen durcheinandergewürfelt. Bei einer Chiffrierung mit einfacher Spaltentransposition wird der Klartext horizontal in festgelegter Breite auf ein Stück Karopapier geschrieben und der Chiffretext dann vertikal davon abgelesen (siehe Abbildung 1.4). Bei der Entschlüsselung wird der Chiffretext vertikal auf Karopapier gleicher Breite geschrieben und der Klartext dann horizontal abgelesen.
Transpositon ist leider sehr unpraktisch da er zusätzlich Speicherplatz benötigt und gelegentlich nur Nachriten bestimmter Länge verträgt.
Einwegfunktionen spielen in der Kryptographie eine zentrale Rolle. Vor allem in der Verschlüsselung mit privaten Schlüssel. Die Einwegfunktion selbst stellt keine Verschlüsselung dar.
Einwegfunktionen lassen sich relativ leicht berechnen - ihre Umkehrung ist aber erheblich schwieriger.
Bsp:
Das Fallenlassen eines Tellers. Es ist leicht ihn in tausend Stücke zu zerschlagen -
Jedoch sehr schwer ihn wieder zusammen zusetzen.
Oder ein Mathematisches Beispiel:
x² ist leichter zu berechnen als die Wurzel von x.
Einweg Hashfunktionen haben viele Namen: Kompressionsfuntion, Figerabdruck, kryptographische Prüfsumme, Erkennung von Manipulationen usw.
Sie sind auf jeden Fall ein wichtiger Bestandteil der modernen Kryptographie.
Eine Hashfunktion ist eine Funktion die eine (norm. Längere) Eingabe in eine Ausgabe fester Länge umwandelt.
Der Sinn der Sache liegt darin einen "Fingerabdruck" der Datei zu machen.
Eine weitere Funktion die eine Einweg Hashfunktion haben sollte ist, das sie möglichst kollisionsfrei sein sollte.
Damit können sie verhindern, dass jemand ihre Nachricht verändert ohne das es bemerkt wird. (sie würden beim Prüfen der Einweg Hashfunktion einen anderen Wert errechnen)
Wenn der Hashwert nur vom Empfänger überprüft werden soll, muß der Schlüssel ein Teil der Hashfunktion sein.
Schon in den früheren Jahren spielte die Kryptologie eine besondere Rolle, allerdings überwiegend im militärischen Bereich.
Nach Meinung vieler Wissenschaftler begann die Geschichte der Kryptologie bereits vor der Zeit Caesars. Die Verschlüsselungsmethoden waren nach unserem heutigen Wissensstand sehr einfach, aber im Laufe der Zeit verbesserte sich die Geheimhaltungstechnik. Manche Methoden sind bis heute immer noch ein wichtiger Baustein für moderne Algorithmen.
Kurzer Überblick der Geschichte
Um 400 v. Chr. |
Die Griechen setzen die Skytale ein, um Nachrichten zu chiffrieren. |
Um 50 v. Chr. |
Cäsar verschlüsselt Texte mit der nach ihm benannten Chiffre. Er soll meist den Schlüssel 3 eingesetzt haben. So schreibt es zumindest der 70 nach Christus geborene Sueton. |
|
Vignére (1523-1596) beschreibt das nach ihm benannte Verfahren in dem Buch Traicté de Chiffres. |
Um 1860 |
Kasiski und Friedman entwickeln statistische Methoden zur Kryptoanalyse. |
|
Claude E. Shannon veröffentlicht seine Arbeit Communication theory of secret systems. Diese Arbeit zeigt die Grundlagen der modernen Kryptologie auf und beweist die Sicherheit des One-Time-Pad. |
|
Diffie und Hellman beweisen, dass Public-Key-Verfahren theoretisch möglich sind. |
|
DES wird Standard. IBM war an der Entwicklung des Verfahrens maßgeblich beteiligt. |
|
Rivest, Shamir und Adleman veröffentlichen das nach ihren Anfangsbuchstaben benannte RSA-Verfahren. Es ist das erste Public-Key-Verfahren. |
|
Goldwasser, Micali und Racoff stellen sogenannte Zero-Knowledge-Protokolle vor. Dabei beweist ein Teilnehmer, dass er einGeheimnis kennt, ohne es zu verraten. Diese Protokolle sind für Authentifikation geeignet. |
|
Xueija Lai und James Massey entwickeln IDEA, das als eines der sichersten symmetrischen Verfahren gilt. Das E-Mail-Programm PGP setzt IDEA ein. |
|
In Deutschland tritt das Signaturgesetz in Kraft. |
Rotormaschinen
Für Rotormaschinen wurden ab 1920 mehrere Patente eingereicht, wobei im folgenden Abschnitt nur der allgemeine mechanische Aufbau und die Funktionsweise der Rotormaschinen im
Vordergrund stehen soll.
Rotormaschinen sind elektromechanische Verschlüsselungsgeräte. Sie bestehen, wie es der Name schon verrät, aus Rotoren. Rotoren sind dicke, elektronisch isolierte Scheiben, auf denen
auf den gegenüberliegenden Flächen je 26 Schleifkontakte ringförmig angebracht sind und jeder Schleifkontakt einen Buchstaben des Alphabetes darstellt (Bild 3) .
Bild 3 Bild 4
Da jeder Schleifkontakt der linken Seite mit genau einem auf der rechten Seite verbunden ist, erhalten wir eine einfache Substitution (Bild 4).
Nun werden auf der rechten Seite die Schleifkontakte mit je einem Lämpchen verbunden und auf der linken Seite wird an einem Kontakt eine Spannung angelegt. Das aufleuchtende Lämpchen ist abhängig von der inneren Verdrahtung des Rotors. Das Anlegen der Spannung kann man mit der Eingabe eines Zeichenes gleichsetzen, das Aufleuchten des entsprechenden Lämpchens ist vergleichbar mit der Ausgabe des chiffrierten Zeichens (durch Substitution). Wenn wir nun nach jedem Zeichen den Rotor um eine Position weiter drehen, erhalten wir eine polyalphabetische Substitution (Bild 5/6/7) mit der Periode 26.
Bild 5 Bild 6 Bild 7
Nun wurden zur Erschwerung der Kryptoanalyse statt einer, mehrere Scheiben benutzt, hintereinander gestellt und über ihre Schleifkontakte verbunden. Die einzelnen Rotoren besitzen eine Rändelscheibe und ein Zahnrad, über die der Rotor während der Verschlüsselung mechanisch und manuell gedreht werden konnte. Auf Bild 8 sind zwei Enigmarotoren abgebildet, wobei beim oberen klar die Rändelscheibe und das Zahnrad, beim unteren die Schleifkontakte und das aufgedruckte Alphabet zu sehen sind.
Während des zweiten Weltkrieges machte eine deutsche Chiffriermaschine von sich Reden. Die 'Enigma' war nicht nur Inhalt vieler kryptoanalytischer Forschungen der Alliierten. Heute ist sie das bekannteste Beispiel einer elektromechanischen Verschlüsselung.
Die Enigma wurde aus einer holländischen Erfindung von ca. 1920 entwickelt. Mehrere Räder permutieren Zeichen durch elektrische Kontakte, die im inneren der Räder verdrahtet sind. Bei jeder Eingabe eines Zeichens dreht sich ein Rad, bzw. beim 'Überlauf' dreht dieses das nächste Rad mit, wodurch ständig das Substitutionsalphabet geändert wird. Es werden drei Räder verwendet, die teilweise unregelmäßig fortgeschaltet werden, so dass insgesamt 26*25*26=16900 verschiedene Alphabete benutzt werden.
Zusätzlich können noch über eine feste Verdrahtung auf einem Schaltbrett die ein- und ausgehenden Zeichen permutiert werden. Die Scheiben und die Schaltbrettverdrahtung wurden regelmäßig ausgewechselt, so dass eine Entschlüsselung sehr schwierig erschien. Dennoch konnten die meisten mit der Enigma verschlüsselten Texte regelmäßig entziffert werden.
Im Jahre 1926 veränderte Willi Korn den Aufbau der Enigma.
In seiner Konstruktion benutzt Korn nur noch 3 Rotoren, die nun allerdings einen beweglichen Ring hatten, auf dem die Zahlen 1-26 (das Alphabet) aufgedruckt waren. Über diesen Ring
konnte nun die innere Verkabelung in bezug auf die äußere Numerierung geändert werden. Die Vorteile des Ringes waren eine Vergrößerung des Schlüsselraumes und ein zusätzlicher
Schutz vor Spionage. Ohne den Ring konnte man von außen schon die Rotorpositionen des Rotorensystems erkennen. Nun, da die relative Position von Verkabelung und Ring nicht zu sehen
war, hatte man zwar die Ziffer, aber die eigentliche Rotorposition war unbekannt. Um das Verhältnis von Verkabelung und Ring zu ändern, mußte man den Rotor ausbauen. Eine weitere
Neuerung war ein vierter Rotor, der zur Anwendung kam. Dieser, auch als Reflektor bezeichnete Rotor, hatte nur auf einer Seite Schleifkontakte. Jeder Schleifkontakt war mit einem anderen
des Reflektors fest verdrahtet.
Die Enigma wurde noch nach 1945 von Deutschland und der Schweiz nach Afrika, den Nahen Osten und Südamerika verkauft.
Sie wurde dort für die militärische und diplomatische Kommunikation eingesetzt.
Ebenfalls sollen die USA die Enigma an Länder der 3.Welt verkauft haben, um Geheimnachrichten abhören zu können.
Beim heutigen Stand der Technik sollte die Enigma kaum noch den Angriffen gewachsen sein.
Der Bletchley Park
Kurz vor dem zweiten Weltkrieg richtete die britische Regierung eine neue große
kryptologische Abteilung ein. Auf dem Gelände des Landguts 'Bletchley Park' waren
mehrere tausend Mitarbeiter damit beschäftigt, Funksprüche der Deutschen zu
entschlüsseln.
Schon während des ersten Weltkriegs war Fregattenkapitän Alistair Denniston im berühmten Room 40 der Admiralität (eine Abteilung für Kryptologie in London, die bereits im 1. Weltkrieg eingerichtet wurde) als Kryptologe beschäftigt. 1939 war er der Leiter der kryptologischen Abteilung - die Briten nannten sie offiziell 'Government Code and Cipher School'.
Mit dem Beginn des zweiten Weltkriegs gewann auch die kryptologische Abteilung der Briten wieder an Bedeutung. Im August 1939 zog die Chiffrierschule daher in einen abgeschiedenen Landsitz nahe der Ortschaft Bletchley, etwa 50 Kilometer nördlich von London. Viele Veteranen aus dem Room 40 waren noch mit dabei, aber auch viele weitere Fachleute wurden angeworben. Mathematiker kamen hauptsächlich von der Universität Cambridge.
Dieses Institut besteht auch heute noch.
2. Protokolle
One Time Pads
Es ist unglaublich, aber wahr: es gibt das perfekte Verschlüsselungskonzept. Es nennt sich One-Time-Pad (Einmalblock).
Es folgt wie folgend.
Ein One Time Pad ist einfach eine Folge von zufällig! Gewählten Zeichen.
Obwohl es sehr einfach klingt ist es ein großes Problem wirklich zufällige Zahlen zu erzeugen. Eigens dafür wurden sehr viele Algorithmen und Verfahren entwickelt.
Beide, Sender und Empfänger verfügen über einen identischen solchen "Block".
Der Sender zählt zum ersten Zeichen der zu verschlüsselnden Nachricht die erste Ziffer auf seinem Block modulo 26 (um nicht aus dem Alphabet zu fallen) und sendet dies als sein erstes Zeichen.
Dann nimmt er das 2te Zeichen des Blocks + 2tes Zeichen der Nachricht usw.
Dies geht solange weiter bis die gewünschte Nachricht gesendet wurde.
Der Empfänger kann auf selbe Art und Weiße die Nachricht entschlüsseln.
Nach erfolgreichen verschlüsseln/entschlüsseln wird das One-Time-Pad vernichtet.
Jemand der die Nachricht abfängt ist nicht in der Lage diese zu entschlüsseln.
Denn die Chiffierung "PWEC" könnte "Name" ebenso gut heißen wie "Gelb".
Eben je nachdem was auf dem "One Time Pad" gestanden ist.
Warum wird dann nicht immer dieses Verfahren verwendet?
Für jedes Zeichen Nachricht muss ein Zeichen des "One Time Pads" vorhanden sein.
Sender und Empfänger brauchen exakt das gleiche "One Time Pad".
Kommunikation mit symmetrischer Kryptographie
A und B einigen sich auf ein Kryptosystem.
A und B vereinbaren einen Schlüssel
A chiffriert ihre Klartext Nachricht anhand des Verschlüsselungsalgorithmus und des Schlüssels. Das Ergebnis ist eine Chiffretext-Nachricht
B dechiffriert die Chiffretext-Nachricht anhand desselben Algorithmus und Schlüssels und liest den Klartext.
Probleme bei dieser Methode:
Schlüssel müssen geheim verteilt werden. Sie sind ebenso wertvoll wie alle Nachrichten, die mit ihnen chiffiert werden, da bei Kenntnis der Schlüssel auch alle Nachrichten zugänglich sind. Bei weltumspannenden Verschlüsselungssystemen stellt die geheime Verteilung der Schlüssel ein großes Problem da.
Wenn ein Schlüssel einer anderen Person zugänglich ist, kann sie alle abgefangen / mitgehörten Nachrichten lesen. Und sie kann sich auch als eine der beiden Parteien ausgeben und sie mit falschen Nachrichten hinters Licht führen.
Die Anzahl der benötigten Schlüssel in einer Benutzergruppe ist enorm. Wenn jeweils 2 Netzbenutzer einen gemeinsamen Schlüssel haben benötigen allein 10 Benutzer 45 Schlüssel um miteinander kommunizieren zu können.
Kommunikation mit Public-Key-Kryptographie
Symetrische Kryptographie kann man sich wie einen Safe vorstellen. Jeder der den Schlüssel hat, kann den Safe öffnen, etwas hineinlegen, wieder herausnehmen usw.
Asymetrische Kryptographie stellt man sich am einfachsten wie einen Postkasten vor.
Jeder der den öffentlichen Schlüssel hat (ist für jeden erhältlich) kann "Post" hineinwerfen.
Den Kasten öffnen und die ganze Post herausnehmen kann jedoch nur derjenige der den "privaten Schlüssel" hat.
Das ganze verläuft wie folgend:
A und B einigen sich auf ein Kryptosystem mit öffentlichen Schlüssel
B sendet A seinen öffentlichen Schlüssel
A chiffiert ihre Nachricht mit B´s öffentlichen Schlüssel und sendet sie an B
B dechiffriert A´s Nachricht mit seinem privaten Schlüssel.
Das heißt, das bei dieser Verschlüsselungsmethode das Problem mit der Schlüsselverwaltung gelöst ist.
Hypride Kryptographie
In der Praxis stellen Public-Key-Algorithmen keinen Ersatz für symetrische Algorithmen dar . Sie werden nicht zur Chiffrierung von Nachrichten sondern von Schlüsseln verwendet. Dafür gibt es 2 Gründe:
Public-Key-Algorithmen sind langsam. Symetrische Algorithmen sind im allgemeinen mindestens tausendmal schneller.
Public Key Kryptosysteme sind durch chosen plaintext (er verschlüsselt alle möglichen Texte mit dem ihm zugänglichen Schlüssel und vergleicht das Ergebnis mit dem gewünschten verschlüsselten Text)
In der Praxis werden öffentliche Schlüssel zum Schutz und zum Verteilen von Sitzungsschlüsseln verwendet:
B sendet A seinen öffentlichen Schlüssel
A generiert einen zufälligen Sitzungsschlüssel K, chiffiert ihn mit B`s öffentlichen Schlüssel und schickt ihn an B
B dechiffriert A´s Nachricht und verwendet von nun an den neuen Sitzungsschlüssel für eine symmetrische Verschlüsselung.
Merkles Rätsel
Ralph Merkle hat 1974 ein anderes System entwickelt mit dem man einen Schlüssel für eine symetrische Verschlüsselung sicher übermitteln kann.
Merkles Verfahren basieren auf "Rätseln", die für Sender und Empfänger einfacher zu lösen sind als für einen Lauscher. Im folgenden wird gezeigt, wie A B eine verschlüsselte Nachricht sendet, ohne vorher einen Schlüssel mit ihm auszutauschen.
B generiert eine Millionen Nachrichten der Form: "Dies ist Rätsel mit der Zahl x. Der Schlüssel ist y. B verschlüsselt die Nachrichten mit einem jeweils unterschiedlichen 20Bit Schlüssel und sendet sie an A.
A wählt eine Nachricht zufällig aus und führt einen Brute-Force-Angriff durch, um den Klartext zu ermitteln. Der dafür erforderliche Arbeitsaufwand ist zwar groß - aber nicht unmöglich.
A chiffiert ihre geheime Nachricht mit einem symmetrischen Algorithmus mit dem Schlüssel y, und sendet sie mit der Zahl x an B
B weiß, welcher geheime Schlüssel y zur Zahl x gehört, so dass er die Nachricht dechiffrieren kann.
Der Sinn dieser Methode ist, dass A nur eine Nachricht aufbrechen muß.
Jemand der diese Nachrichten mithört muß alle Nachrichten aufbrechen bis er einmal den richtigen erwischt.
Digitale Signaturen
Unterschriften werden seit langem als Beweis für die Urheberschaft eines Dokuments oder zumindest das Einverständnis mit seinem Inhalt verwendet.
Eine Unterschrift soll folgende Kriterien erfüllen:
Eine Unterschrift ist authentisch. Sie überzeugt den Empfänger des Dokuments davon,
dass der Unterzeichner das Dokument willentlich unterschrieben hat.
Eine Unterschrift ist fälschungssicher. Sie beweist, dass der Unterzeichner und kein anderer das Dokument unterschrieben hat.
Eine Unterschrift ist nicht wiederverwendbar. Sie ist Bestandteil des Dokuments und kann in kein anderes Dokument übertragen werden.
Das unterzeichnete Dokument ist unveränderbar. Nachdem das Dokument unterschrieben ist, kann es nicht mehr verändert werden.
Die Unterschrift kann nicht zurückgenommen werden.
Das ganze wurde auf Computer Ebene so realisiert:
Durch das Verschlüsseln mit seinem privaten Schlüssel ist ein Beweis gegeben das dieses Dokument nur von dieser Person unterschrieben worden ist.
Jeder kann mit seinem öffentlichen Schlüssel das Dokument entschlüsseln und sich damit der Echtheit der Unterschrift bestätigen.
Damit erfüllt ein so verschlüsseltes Dokument alle oben gestellten Anforderungen.
Trotzdem ist eine Erweiterung erforderlich.
Um zu verhindern das jemand z.B elektronisches Geld 2 mal (die Datei einfach kopiert), wird zusätzlich ein Zeitstempel angehängt.
Banken z.B speichern den Zeitstempel einer jeden Überweisung in einer Datenbank - sollte ein Stempel doppelt vorkommen, hat jemand das Dokument kopiert und versucht damit noch mal Transaktionen auszuüben.
In der Praxis ist es zu zeitaufwendig das komplette Dokument zu unterzeichnen. Daher wird ein Hashwert dieses Dokumentes unterzeichnet.
Keiner der gewünschten Eigenschaften geht verloren.
Sollte jemand versuchen das Dokument zu verändern stimmt der Hashwert nicht mehr und die Unterschrift ist ungültig.
Stellen wir uns vor sie haben eine geheime Information. Sie wollen jemanden anderen davon überzeugen das sie, eben über diese geheime Information verfügen, ohne dass sie preisgegeben wird.
Um dies zu bewerkstelligen wird ein sogenannter "Zero-Knowledge" Beweiß verwendet.
Zu Illustration dieser Theorie verwende ich ein Bespiel mit einer Höhle.
Die Höhle in der nächsten Abbildung birgt ein Geheimnis. Wer die Zauberformel kennt, kann die geheime Tür zwischen C und D öffnen. Für alle anderen enden beide Wege in einer Sackgasse.
Sie kennen das der Höhle anhaftende Geheimnis. Sie wollen jemand anderen ihr Wissen beweisen, möchten die Zauberformel aber nicht preisgeben. Sie überzeugen ihn wie folgt:
Die zu überzeugende Person befindet sich an Punkt A.
Sie begeben sich in die Höhle, entweder zu Punkt C oder zu Punkt D.
Nachdem Sie in der Höhle verschwunden sind, geht die Person zu Punkt B.
Die Person ruft ihnen zu, entweder:
Aus dem Gang links
oder aus dem Gang rechts zu erscheinen.
Sie kommen seiner Aufforderung nach, wobei sie die geheime Türe unter Umständen mit der Zauberformel öffnen müssen.
Sie beide wiederholen die Schritte (1) bis (5) n Mal.
Mit jedem Versuch wird die Gewissheit, dass sie das Geheimnis kennen größer.
Beim ersten Mal stehen die Chancen 50 : 50 die Tür nicht zu durchschreiten müssen.
Beim zweiten Mal stehen sie bereits bei 25%. Nach 16 Runden beträgt die Wahrscheinlichkeit 1 zu 65536. Desto mehr Runden gemacht werden, desto höher die Wahrscheinlichkeit, dass sie das Geheimnis kennen.
In der Praxis werden solche "Zero Knowledge Beweise" dazu verwendet, seine Identität digital zu beweisen. Und zwar zeigt man, dass man über seinen privaten Schlüssel verfügt, ohne das man den Schlüssel selbst preisgibt.
Diese Methoden sind leider noch nicht so ausgereift und haben noch große Schwachstellen.
Es basieren jedoch einige noch komplexere Verfahren auf diesem Protokoll, die wir jedoch nicht erwähnen werden.
Beispiele für Algorithmen:
Der Data Encryption Standard (DES), bei ANSI als Data Encryption Algorithm (DEA) und bei ISO als DEA-1 bezeichnet, stellt seit zwanzig Jahren eine weltweiten Standad dar. DES zeigt zwar einige Alterserscheinungen, hat jedoch jahrelanger Kryptanalyse erstaunlich gut widerstanden und bietet immer noch Schutz vor den meisten Angreifern, sofern diese ihre Attacken nicht höchst aufwendig gestalten.
Der DES wurde von der Regierung in Auftrag gegeben und schließlich von der IBM mit Hilfe des NSA entwickelt. Die Schlüssellänge beträgt 56 Bit. Der Dechiffrierschlüssel entspricht den Chiffrierschlüssel - nur in umgekehrter Reihenfolge (von hinten nach vorne).
Die Sicherheit des DES wurde lange Zeit in Frage gestellt, da es große Einflüsse durch die NSA gab und vermutet wurde, das diese eine Hintertür in den Algorithmus eingebaut habe, um chiffrierte Nachrichten einfach entschlüsseln zu können.
Mittlerweile gilt der Algorithmus als veraltet. Sein Schlüssel gibt nicht mehr genügend Sicherheit (1993 knackte eine 1 Million Dollar Maschine den DES mittels Brute Force Attacke in 3,5 Stunden). Er dient jedoch als Grundlage für viele neue Algorithmen.
Unter all den Public-Key-Algorithmen, die im Laufe der Jahre veräffentlicht wurden, ist RSA bei weitem am einfachsten zu verstehen und zu implementieren. Er ist sowohl für Verschlüsselung, als auch für digitale Signatur gut geeignet.
Der RSA ist nach seinen Erfindern Ron Rivest, Adi Schamir und Leonard Adleman bennant.
Er überstand jahrelang gründliche Kryptanalyse. Die Kryptanalyse konnte die Sicherheit von RSA zwar weder beweisen noch widerlegen, aber sie stärkte das Vertrauen in den Algorithmus.
Die Sicherheit von RSA beruht auf der Schwierigkeit, große Zahlen zu faktorisieren. Öffentlicher und privater Schlüssel hängen von einem Paar großer Primzahlen ab (100 bis 200 Stellen und mehr). Man vermutet, dass die Wiederherstellung des Klartexts aus dem öffentlichen Schlüssel und dem Chiffretext äquivalent zur Faktorisierung des Produkts der beiden Primzahlen ist.
Das Problem bei diesem und allen anderen Public - Key Verfahren ist, dass ihre Sicherheit allein von der Schwierigkeit der Umkehrfunktion abhängt.
Und es wurde bisher mathematisch nicht bewiesen das es die sogenannten "Einwegfunktionen" gibt.
D.h. sollte jemals ein mathematisches Verfahren gefunden werden, welches das Faktorisieren von großen Zahlen drastisch erleichtert, geht die Sicherheit von RSA verloren.
Politische Situtation
Österreich ist ein Land in dem die "Computer Gesetze" noch nicht sehr ausgereift sind.
Ganz anders ist es in den Vereinigten Staaten. Hier gelten sehr strenge Gesetze der Kryptographie betreffend. In den U.S.A wird die ausfuhr eines modernen Algorithmus gleich behandelt wie z.B. die Ausfuhr einer Lenkrakete oder eines M1 Panzers.
So stehen kryptologische Algorithmen auf der "U.S Munitions List" und der "International Munitions List".
Die U.S.A will damit verhindern das sich andere Staaten Wissen aneignen, welche sie vor der Aufdeckung derer Informationen hindert.
Innerhalb der U.S.A gilt rein formel kein Verbot von Kryptologischen Entwicklungen.
In der Wirklichkeit hält jedoch die NSA jegliche Kontrolle über Kryptographie in ihren Händen.
Die NSA ist eine Organisation der Regierung, die sich mit der Überwachung anderer beschäftigt. Unter anderem zählt hier eben das knacken von verschlüsselten Nachrichten dazu.
Haupt | Fügen Sie Referat | Kontakt | Impressum | Nutzungsbedingungen