Frage 17: Wie wird RSA zur praktischen Authentifizierung herangezogen? Was sind RSAs elektronische Unterschriften?

RSA wird gewöhnlich mit einer Hashfunktion (siehe Frage 94) verknüpft, um eine Nachricht zu unterzeichnen.

Nehmen wir an, Alice möchte eine unterschriebene Nachricht an Bob senden. Sie wendet die Hashfunktion auf die Nachricht an und erhält eine "Prüfsumme", die als "digitaler Fingerabdruck" der Nachricht gelten kann. Diesen Hashwert verschlüsselt sie mit ihrem privaten Schlüssel, es wird ihre elektronische Unterschrift, die sie mit der Nachricht an Bob sendet. Dieser prüft die Unterschrift, indem er sich Alice öffentlichen Schlüssel besorgt und damit die Unterschrift in den Hashwert zurückverwandelt. Bildet er den Hashwert selbst über die Nachricht und gelangt er zum gleichen Ergebnis, so wurde die Unterschrift als gültig verifiziert. Er kann dann sicher sein, daß die Nachricht von Alice stammt und auf dem Transport nicht verändert wurde. Stimmen die Werte nicht überein, weist Bob die Nachricht zurück.

Mit diesem Verfahren kann jeder die Nachricht lesen und die Unterschrift überprüfen. Das ist nicht immer wünschenswert, besonders, wenn Alice den Nachrichteninhalt geheim halten möchte. In diesem Falle unterzeichnet sie das Dokument und verschlüsselt es dann zusammen mit der elektronischen Unterschrift mit Bobs öffentlichen Schlüssel. So kann nur Bob mit seinem privaten Schlüssel die Nachricht dechiffrieren und die Unterschrift und überprüfen. Nach der Entschlüsselung kann Bob andere Parteien von der Echtheit der Unterschrift überzeugen.

Normalerweise ist der öffentliche RSA Exponent sehr viel kleiner als der private. Das bedeutet, daß die Überprüfung einer Unterschrift deutlich schneller abläuft als das Unterschreiben selbst. Das ist vertretbar, da eine Unterschrift nur von einer Partei einmal geleistet wird, jedoch die Überprüfungen häufig von vielen Parteien erfolgen können.

Es muß für jeden unmöglich sein, entweder eine Nachricht zu einerm gegebenen Hashwert oder zwei Nachrichten mit dem gleichen Hashwert zu finden. Wenn nur eines von beiden möglich ist, kann ein Eindringling Alice eine gefälschte Nachricht als unterschrieben unterschieben. Hashfunktionen wie MD5 oder SHA (siehe Frage 99 und 100) wurden speziell dafür entwickelt, diese Übereinstimmungen unmöglich vorhersagen zu können, und sind deshalb für kryptographische Anwendungen gut geeignet.

Ein oder mehrere Zertifikate (Siehe Frage 123) können eine elektronische Unterschrift begleiten. Ein Zertifikat ist ein unterschriebenes Dokument, daß einen öffentlichen Schlüssel an eine bestimmte Identität einer Partei bindet. Es dient dazu, zu verhindern, daß eine Partei ihre Identität durch untergeschobene öffentliche Schlüssel verliert. Wenn ein Zertifikat vorliegt, kann der Empfänger den Zusammenhang zwischen dem Absender und dem benutzen Schlüssel überprüfen, vorausgesetzt er traut der Unterschrift des Zertifikates.

[Zurück zur Titelseite]