3.3 Asymmetrische Krypto-Verfahren

Public-Key-Verfahren

Das Prinzip

Asymmetrische 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.
Eine anschauliche Beschreibung ist folgende: Das Verschlüsseln mit dem Public-Key entspricht dem Einwerfen eines Briefes in einen Briefkasten. Ist der Brief einmal in diesem Briefkasten, kann er von niemandem mehr gelesen werden. Nur wenn der Besitzer des Briefkastens diesen mit seinem (Private-)Key aufschließt, kann er den Brief lesen.

Vor- und Nachteile

Der 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.
Der große Nachteil ist, daß das Berechnen der Ver- und Entschlüsselung sehr aufwendig ist und wesentlich mehr Zeit in Anspruch nimmt, als die symmetrischen Verfahren.

Einwegfunktion mit Falltür

Bei 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.
Der Person, die zu dem Public-Key den passenden Private-Key d besitzt sollte es aber doch möglich sein, das Kryptogramm wieder zu entschlüsseln. Daher wurde eine Einwegfunktion mit einer sogenannten Falltür zur Verschlüsselung verwandt. In d sind die Falltürinformationen der Einwegfunktion fe abgelegt, so daß diese Person die Inverse zu fe berechnen kann und somit auch den Klartext.

RSA, das bekanntest Verfahren

Dieses 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 .
Auch dieses Verfahren ist schon an anderer Stelle ausführlich beschrieben, so daß hier nur auf [BSW98] und RSA verwiesen sei.

Die Diffie-Hellman-Schlüsselvereinbarung

Die 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.

 
Alice
  Bob
einigen sich auf
 

g Î N,
p prim

 
wählt zufällige Zahl
a
  b
berechnet

A = ga mod p

  B = gb mod p
beide tauschen
 
A, B  
berechnet
Ba mod p
  Ab mod p

Beide berechnen die gleiche Zahl, da

k = Ba = (gb)a = gab = (ga)b = Ab (mod p) Gl.3.3.1

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.
Viele Krypto-Verfahren beruhen darauf, daß der diskrete Logarithmus modulos einer Primzahl nicht effektiv zu berechen ist.[BSW98]
Taher ElGamal erweiterte die Diffie-Hellman-Schlüsselvereinbarung zu einem Krypto-Verfahren, das die Verschlüsselung der Daten erlaubt.[BSW98]

Zertifizierung

Ein 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 Signatur

Eine 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:

  1. Echtheitseigenschaft: Diese stellt sicher, daß das Dokument wirklich vom Unterschreibenden stammt. Hier wird gefordert, daß ein enger Zusammenhang zwischen Dokument und Unterschrift besteht.
  2. Identitätseigenschaft: Jede digitale Signatur ist persönlich, d.h. sie kann nur von einem einzigen Menschen ausgestellt 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.
Wenn nun dieser Hash mit einem asymmetrischen Kryptoverfahren verschlüsselt wird, ist auch Forderung 2. erfüllt. Diese Verschlüsselung erfolgt aber genau andersherum. Es wird mit dem privaten Schlüssel verschlüsselt und jeder kann mit dem öffentlichen Schlüssel die Unterschrift entschlüssen und an den Hash gelangen. Da privater und öffentlicher Schlüssel ein eindeutiges Paar bilden, ist der Unterzeichner genau festzustellen. Wird nun noch einmal der Hash des übermittelten Dokuments berechnet, läßt sich durch Vergleichen mit dem entschlüsselten Hash die Unversehrtheit des Dokuments feststellen.

 

 

zum Anfang | Home
Copyright 1999 by Thomas Laubrock
Zurück zur letzen Seite nächste Seite