Eine Unterschrift dient dazu, die Echtheit (Authentizität) eines Dokumentes zu gewähren. Mit Hilfe des Schlüsselpaares eines asymmetrischen Kryptosystems lässt sich eine digitale Unterschrift generieren: Dazu verschlüsselt der Absender die Nachricht mit seinem privaten Schlüssel. Der Empfänger kann diese Nachricht entschlüsseln, wenn er den öffentlichen Schlüssel des Absenders besitzt. Da der öffentliche Schlüssel allen und der private Schlüssel nur dem Absender bekannt ist, kann also sichergestellt werden, dass die Nachricht von genau dieser Person ist.

Signatur[1]

Mit PGP z.B. kann man E-Mails entweder nur signieren, also eine digitale Unterschrift hinzufügen, oder eben verschlüsseln. Beim Signieren braucht der Empfänger keinen eigenen Schlüssel. Beim Verschlüsseln wird meistens gleich auch noch signiert, damit die Authentizität gewährleistet ist.

# Hash

In der Praxis wird mit einer Hashfunktion ein sogenannter Fingerabdruck (Hashwert) der Nachricht generiert. Dieser ist viel kleiner als die gesamte Nachricht, identifiziert die Nachricht aber fast eindeutig.

Fingerabdruck erstellen

# Signatur

Es wird dann nur dieser Hashwert signiert.

Fingerabdruck erstellen und signieren

# mit hybrider Verschlüsselung

Natürlich kann die digitale Unterschrift auch bei einer verschlüsselten Nachricht eingesetzt werden, was in der Praxis normalerweise der Falls ist.

Signieren und Verschlüsseln

Vom Klartext wird ein Hashwert generiert. Dieser wird mit dem privaten Schlüssel des Absenders «verschlüsselt». So kommt man zur signierten Nachricht. Diese signierte Nachricht kann man nun mit dem öffentlichen Schlüssel des Empfängers verschlüsseln.

Der Empfänger kann die Nachricht mit seinem privaten Schlüssel entschlüsseln. Die entschlüsselte signierte Nachricht kann er verifizieren, indem er selbst den Hash der Nachricht erzeugt und diesen mit der mit dem öffentlichen Schlüssel des Absenders entschlüsselten Signatur vergleicht.


  1. https://de.wikipedia.org/wiki/Datei:Orange_blue_digital_signature_de.svg (opens new window) ↩︎

Letzte Änderung: 23.12.2020, 14:45:57