Der
Recherchekompass
|
[ home | anleitungen | recherchen | hilfe | sitemap | index | suchen ] |
---|
home » recherchen » kryptologie » modern » asymmetrisch | hashfunktionen » |
Verschlüsselte Botschaften Moderne asymmetrische Verfahren |
Als asymmetrische Verschlüsselungsverfahren bezeichnet man Verfahren, bei denen zwischen dem Schlüssel zur Chiffrierung und dem zur Dechiffrierung kein einfacher Zusammenhang besteht, so dass es nicht möglich ist - ohne zusätzliches Wissen - aus dem einen Schlüssel auf den Anderen zu schließen. Es kann also aus einem einmal erzeugten Chiffretext der Klartext nicht wieder zurückgewonnen werden, wenn man nicht im Besitz des Schlüssels für die Dechiffrierung ist. Vielmehr ist der hierzu erforderliche Aufwand, so hoch, dass ein Angriff auf diesem Weg nicht praktikabel ist. Bei asymmetrischen Verfahren wird also nicht mit nur einem Schlüssel, sondern immer mit einem geeigneten Schlüsselpaar gearbeitet.
Abbildung: Kryptografisches System (asymmetrisch) |
Der Vorteil asymmetrischer Verfahren liegt auf der Hand: Es muss kein sicherer
Kanal für den Schlüsseltausch vorhanden sein, der Austausch kann öffentlich stattfinden.
Außerdem wird für die Kommunikation eine geringere Anzahl von Schlüsseln benötigt: Bei
der symmetrischen Verschlüsselung ist pro "Kommunikationspärchen" ein Schlüssel
erforderlich, was bei n Teilnehmern
Als Nachteil ist insbesondere der sehr hohe Aufwand für Ver- und Entschlüsselung zu sehen. So muss bereits der Schlüssel - bei gleicher Sicherheit - erheblich länger sein als bei einem symmetrischen Verfahren, was denn auch zum höheren Aufwand beiträgt. Des weiteren entstehen Chiffretexte die länger sind als die originären Klartexte und die Algorithmen sind in der Regel nur schwer hardwareseitig umzusetzen. Als weiteren Nachteil ist gewiss die Unsicherheit zu sehen, dass das zugrundeliegende mathematische Problem eben doch einer einfachen Lösung zugeführt werden kann.
Diffie-Hellman ist ein Algorithmus zum sicheren Schlüsselaustausch über einen unsicheren Kanal. Mit diesem Algorithmus wird bei zwei oder mehr Partnern ein gemeinsamer Schlüssel erzeugt, den die Partner zur symmetrischen Verschlüsselung benutzen können. Es handelt sich also nicht um ein Verfahren zur Verschlüsselung von Nachrichten. Der 1976 vorgestellte Algorithmus ist ein Meilenstein für die Kryptologie, war es doch der erste Public-Key Algorithmus.
Für zwei Parteien läuft die Schlüsselerzeugung wie folgt ab:
Der Angreifer kann nun g und p und die beiden Y kennen, ohne ein x ist ihm die Berechnung des Schlüssels aber nicht möglich, es sei denn es gelingt ihm den diskreten Logarithmus aus Y zu ermitteln.
Die Schlüsselerzeugung funktioniert bei mehreren Parteien:
In dieser Form wird weiterverfahren, bis jeder Partner den gemeinsamen Schlüssel berechnen kann.
Dem Angreifer bleibt hierbei für jedes Y mindestens ein x verborgen, so dass ihm auch hierbei die Berechnung des Schlüssels unmöglich gemacht ist.
Die Sicherheit des Verfahrens beruht auf dem Problem des diskreten Logarithmus,
zwar ist es einfach,
Das ElGamal-Verschlüsselungsverfahren wurde 1985 von Taher ElGamal veröffentlicht und stellt eine Abänderung und Erweiterung des Verfahrens zum Schlüsselaustausch von Diffie und Hellman dar. Die zugrundeliegende Mathematik ist dieselbe. Zur Erzeugung der Schlüssel wird wie folgt vorgegangen:
Hat der Sender einer Botschaft den öffentlichen Schlüssel des Empfängers, so gestaltet sich die Chiffrierung und Dechiffrierung einer Nachricht wie folgt:
Diese Y wird zusammen mit dem Chiffretext C an den Empfänger versendet. Das Chiffre wird gebildet indem der Klartext M folgendermaßen umgerechnet wird:
Der Nachweis das die dechiffrierte Nachricht gleich der ursprünglichen ist, lässt sich allgemein führen und soll hier nicht dargestellt werden.
Die Sicherheit des Verfahrens beruht, wie bei Diffie-Hellmann auf dem Problem des diskreten Logarithmus. Da auch ElGamal keine Authentifizierung der Partner beinhaltet, ist es ebenfalls durch einen Man-in-the-Middle Angriff gefährdet.
Dieses Verfahren ist wohl das verbreitetste Public-Key-Verfahren. Es wurde 1977/78 von Ron Rivest, Adi Shamir und Len Adleman am MIT entwickelt, woher das Verfahren aus den Namen bekommen hat. RSA wurde 1983 bis ins Jahr 2000 für die USA patentiert. Das Patent wurde nicht verlängert.
Bei diesen Verfahren benutzt man bekannte Probleme aus der Numerik. Die Sicherheit von RSA basiert auf dem Problem, eine große ganze Zahl in ihre Primfaktoren zu zerlegen. Daher darf die Schlüssellänge auch nicht zu klein gewählt werden. Die beiden Schlüssel werden wie folgt erzeugt:
Die Stärke dieses Verfahrens liegt im Schlüssel, bzw. dessen Erzeugung. Die Chiffrierung und Dechiffrierung der Nachrichten ist vergleichsweise einfach und gestaltet sich wie folgt:
Öffentlich zugänglich ist natürlich das Verfahren zur Ver- und Entschlüsselung, was eine Forderung für alle kryptografisch starken Verfahren ist. Unbedingt öffentlich muss der öffentliche Schlüssel e und das Primzahlprodukt (n) sein. Der Chiffretext kann nun bekannt werden oder nicht, der Sicherheit der Übermittlung tut dies keinen Abbruch. Der verschlüsselte Text kann nur vom Empfänger entschlüsselt werden, da dieser als einziger den geheimen, privaten Schlüssel hat.
RSA kann nur so lange als sicheres Verfahren gelten, wie es nicht möglich ist eine Faktorisierung von n in p und q zu erreichen, um dann den geheimen Schlüssel zu berechen. Noch 1993 schätzte man, dass die Zerlegung einer 130-stelligen Zahl in ihre zwei Primzahlen Millionen von Jahren benötigen würden. Tatsächlich gelang bereits ein Jahr später die Auflösung. Shamir selbst entwarf einen Computer, der einen 512-Bit-Schlüssel in 3 Tagen knacken kann.
Ständig wird die Grenze der faktorierbaren Zahlen höher gesetzt, sei es durch verbesserte Berechnungstechniken oder durch bessere Rechner. Eine RSA-codierte Nachricht kann nur für eine begrenzte Zeit sicher sein, nämlich solange, bis diese Grenze die Höhe erreicht, die das n ihrer Verschlüsselung hatte.
Die Beispielverschlüsselung der Tabelle macht deutlich, dass die Sicherheit des RSA-Verfahrens von der Blocklänge abhängt. Da gleiche Blöcke auch gleich verschlüsselt werden, muss die Länge eines Blockes derart sein, dass die Wahrscheinlichkeit für die Wiederholung eines solchen Blockes sehr gering ist. Dies ist im obigen Beispiel nicht immer der Fall, bei einer Blocklänge von einem oder zwei Byte (m > 65536) ist das Verfahren kaum besser als die Cäsar-Chiffre.
Fußnoten:
[1] |
Gesucht ist ein e das kleiner m ist, so dass der größte gemeinsame Teiler (ggT) von e und
|
[2] |
Ist zum Beispiel |
Verweise | ||
---|---|---|
(Ich bin nicht verantwortlich für Inhalte externer Internetseiten.) |
[Seitenanfang] | geändert: 01.12.2010 by hgm |
© 2002, Hans-G. Mekelburg, all rights reserved. [ impressum |; datenschutz | haftungsausschluss ] |