3.3 Asymmetrische Krypto-VerfahrenPublic-Key-Verfahren |
Das PrinzipAsymmetrische Krypto-Verfahren sind Verfahren, bei denen jeweils zum
Ver- und Entschlüsseln ein anderer Schlüssel benutzt wird.
Sie werden auch als Public-Key-Verfahren bezeichnet. "Public-Key"
deshalb, weil nur ein Schlüssel geheim gehalten werden muß,
der andere kann bzw. soll öffentlich gemacht werden. Daher wird
bei den Schlüsseln zwischen Public- und Private-Key unterschieden.
Die beiden Schlüssel bilden immer ein Paar. Mit dem Public-Key
können Klartexte nur verschlüsselt, und mit dem Private-Key
können die erstellten Kryptogramme nur entschlüsselt werden.
Wichtig ist natürlich, daß sich aus dem Public-Key nicht
der Private-Key berechnen läßt. Vor- und NachteileDer Vorteil von asymmetrischen Verfahren ist, daß es vor einer
verschlüsselten Kommunikation nicht mehr nötig ist, einen
Schlüssel auf einem geheimen Weg auszutauschen. Weiter sind viele
dieser Verfahren nach Abwandlung auch zum Signieren
einer Nachricht geeignet. Einwegfunktion mit FalltürBei der Verschlüsselung mit einem asymmetrischen Krypto-Verfahren
wird der Klartext mit einer vom Public-Key e abhängigen
Einwegfunktion
fe verschlüsselt. Da es die Eigenschaft einer
Einwegfunktion ist, daß sie sich nicht invertiebar ist, ist es
niemandem möglich, aus der bekannten Verschlüsselungsfunktion,
dem Public-Key und dem Kryptogramm den Klartext zu berechnen. RSA, das bekanntest VerfahrenDieses Verfahren wurde von R. Rivest, A. Shamir und L. Adelman erfunden,
als sie versuchten zu zeigen, daß asymmetrische Kryptoverfahren
unmöglich sind. Der Name dieses Verfahrens bildet sich aus den
Anfangsbuchstaben der Erfinder. RSA arbeitet mit unterschiedlichen Schlüssellängen.
Früher galt eine Länge von 512 Bit noch als sicher, heute
gilt dies für eine Länge von 1024 Bit. Das Kryptoprogramm
PGP empfiehlt sogar einen 2048 Bit langen Schlüssel . Die Diffie-Hellman-SchlüsselvereinbarungDie Diffie-Hellman-Schlüsselvereinbarung ist nicht in dem Sinne ein Krypto-Verfahren, daß sich damit Daten verschlüsseln laßen, sondern es ermöglicht, einen Schlüssel, z.B. für eine symmetrische Verschlüsselung, auszutauschen, ohne dabei einen geheimen Kanal benutzen zu müssen. Angenommen Alice und Bob wollen einen Schlüssel für eine DES-Verschlüsselung vereinbaren, dann einigen sich beide auf eine Primzahl p und eine natürliche Zahl g. Diese Einigung muß nicht geheim erfolgen. Dann wählt Alice eine nur ihr bekannte Zahl a und Bob wählt eine nur ihm bekannte Zahl b. Daraufhin berechnen beide jeweils A = ga mod p bzw. B = gb mod p und tauschen A und B aus. Dann können sie den Schlüssel k durch Ba mod p bzw. Ab mod p berechnen.
Beide berechnen die gleiche Zahl, da
Auch k ist keinem außer Alice und Bob bekannt, denn
es ist keine effiziente Methode bekannt, aus g, p, A, B,
die öffentlich übertragen werden, k zu berechnen.
Eine Möglichkeit wäre es, k so zu berechnen, wie
Alice es tut: k = Ba mod p. Das unbekannte
a dieser Gleichung könnte mit dem auch bekannten A
= ga mod p berechnet werden. Das hieße
aber, daß der diskrete Logarithmus von A zur Basis
g gelöst werden müßte, und das ist wiederum
bei großen g, p, A nicht effektiv möglich. Es
wird in diesem Zusammenhang von einem Discret Logarithm Problem, kurz
DLP,
gesprochen. ZertifizierungEin weiterer Vorteil der freien Verfügbarkeit des öffentlichen Schlüssels ist, daß sogenannte Cerfication Authorities (CA) den öffentlichen Schlüssel einer bestimmten Person zuordnen können. So kann Alice , wenn sie Bob eine verschlüsselte Nachricht senden möchte, den öffentlichen Schlüssel, den sie auf einem unsicheren Kanal erhalten hat, bei einer CA überprüfen lassen, ob er wirklich von Bob stammt. Die Redaktion der Computerzeitung c't des Heise Verlags, bietet diesen Service auf Messen kostenlos an. Es wird hier der öffentliche Schlüssel für das hier schon einige Male erwähnte Verschlüsselungs-Programm PGP zertifiziert. Die Redaktion nimmt einen öffentlichen Schüssel gegen Vorlage eines gültigen Personal- oder Reisepasses entgegen. Die Daten im Schlüssel und die ausgewiesenen Personalien werden verglichen und dann versieht die c't-Redaktion den Schlüssel mit einer digitalen Signatur. Jeder, der nun diesen öffentlichen Schlüssel erhält, kann anhand der Signatur feststellen, wem der Schlüssel gehört. Digitale SignaturEine digitale Signatur soll eine eigenhändige Unterschrift in der elektronischen Kommunikation ersetzen. Dazu müssen von einer digitalen Signatur im Wesentlichen folgende zwei Eigenschaften gefordert werden:
Punkt 1. bedeutet, daß das unterschriebene Dokument nicht nachträglich
verändert werden kann, bzw. eine nachträgliche Veränderung
festgestellt werden kann. Dazu wird von dem zu unterschreibenden Dokument
ein sogenannter Hash berechnet, das ist grob gesprochen eine Quersumme
des Textes. So können Veränderungen festgestellt werden, allerdings
darf der Hash nicht so einfach sein, daß das Dokument verändert
werden kann, ohne daß sich der Hash ändert. Würde man
z.B. die klassische Quersummer berechnen, könnte am aus einem Überweisungs-Betrag
von 101,88 DM einen von 990,00 DM machen, ohne daß sich die Quersumme
ändern würde.
|
zum
Anfang | Home
Copyright 1999 by Thomas Laubrock |