Wie funktioniert die digitale Signatur?
Die digitale Signatur stützt auf den Gebrauch eines Hashing-Algorithmus, kombiniert mit einem asymmetrischen Verschlüsselungsalgorithmus (z.B. RSA). Der Prozess stützt auf zwei aufeinander folgende Aktionen, die anhand folgender Abbildungen beschrieben werden:
Abbildung 1: die Signatur eines Berichts
So wird ein Bericht unterschrieben:
- Der Absender berechnet erst den "Digest"-Wert (Hash 1) des Originalberichts mithilfe eines Hashing-Algorithmus.
- Anschließend verschlüsselt er diesen Digest-Wert über asymmetrische Verschlüsselung durch Verwendung eines persönlichen Schlüssels.
- Schließlich fügt er diesem letzten Ergebnis seine Identifikationsangaben hinzu, verfasst in einem Zertifikat. Er versendet alles (unverschlüsselten Bericht, verschlüsselten Digest und Zertifikat) an den Empfänger.
Abbildung 2: Überprüfung der Signatur
Der Empfänger des Berichts kann diese Technik umgekehrt anwenden, um die Gültigkeit der Signatur zu überprüfen:
- Er berechnet selbst den Digest-Wert (Hash 1) des empfangenen Berichts.
- Er holt das Zertifikat ab, um die Identität des vermutlichen Absenders und seinen öffentlichen Schlüssel zu bestimmen; er benutzt diesen öffentlichen Schlüssel, um den Digest (Hash 2) mittels desselben asymmetrischen Verschlüsselungsalgorithmus wie der Absender zu benutzen.
- Er vergleicht den Digest-Wert (Hash 1), den er berechnet hat, mit dem der Signatur (Hash 2): Die Übereinstimmung zwischen den Werten (Hash 1 und Hash 2) der zwei Digest-Werte garantiert die Echtheit des Berichts.
Falls das Ergebnis dieser Entschlüsselung Hash 2 entspricht, dann ist das Ergebnis dieser Überprüfung positiv, d.h. der Empfänger des Berichts kann sicher sein, dass der empfangene Bericht unterzeichnet wurde mit dem privaten Schlüssel, der an den im Zertifikat verfassten öffentlichen Schlüssel gekoppelt ist (Identität des Absenders) und dass der Bericht inzwischen nicht geändert wurde (Garantie der Integrität des versandten Berichts).
Es ist das Zertifikat, das garantiert, dass der öffentliche Schlüssel und der private Schlüssel tatsächlich die Schlüssel des vermutlichen Absenders und nicht die Schlüssel einer Entität sind, die versucht, sich für den vermutlichen Absender auszugeben. Darum ist es wichtig, dieses Zertifikat zu überprüfen: Der Empfänger wird sich also vergewissern, dass das Zertifikat des Absenders durch eine “zugelassene Zertifizierungsstelle ausgegeben wurde, dass es nicht gefälscht wurde, dass es nicht widerrufen wurde und dass das Gültigkeitsdatum nicht überschritten wurde. Eventuell wird er kontrollieren, ob sonstige Akzeptierungsbedingungen (z.B. ob das Zertifikat einer Zertifikatklasse angehört, die als “zulässig” betrachtet wird) erfüllt sind.