Digitale Signaturen: Wie ein Computer eine Unterschrift leistet
20.07.2026 7 Min. Lesezeit
Im vorherigen Artikel haben wir gesehen, wie ein Schlüsselpaar aus öffentlichem und privatem Schlüssel entsteht und wie man damit Nachrichten verschlüsseln und wieder entschlüsseln kann. Am Ende haben wir eine überraschende Eigenschaft entdeckt: Man kann die beiden Rechenoperationen auch in umgekehrter Reihenfolge anwenden, sodass etwas, das mit dem privaten Schlüssel bearbeitet wurde, sich mit dem passenden öffentlichen Schlüssel wieder rückgängig machen lässt. Genau auf dieser einen Beobachtung baut das gesamte Konzept der digitalen Signatur auf, mit dem wir uns in diesem Artikel beschäftigen wollen. Digitale Signaturen begegnen dir ständig, auch wenn du sie meistens gar nicht bewusst wahrnimmst: Jedes Mal, wenn dein Betriebssystem ein Update installiert, jedes Mal, wenn dein Browser dir ein Schloss-Symbol neben der Adresse anzeigt, und oft auch beim Versenden verschlüsselter E-Mails steckt im Hintergrund eine digitale Signatur.
Was eine digitale Signatur überhaupt leisten soll
Bevor wir uns die Technik anschauen, lohnt sich ein Blick darauf, welches Problem eine digitale Signatur eigentlich löst, denn es ist ein anderes als das der Verschlüsselung. Bei der Verschlüsselung ging es darum, eine Nachricht vor fremden Blicken zu schützen. Bei einer digitalen Signatur geht es dagegen um zwei andere Fragen: Stammt diese Nachricht wirklich von der Person, die als Absender angegeben ist – man nennt das Authentizität – und wurde diese Nachricht seit dem Versenden auf dem Weg zu mir nicht heimlich verändert – man nennt das Integrität. Eine digitale Signatur beantwortet also nicht die Frage “kann das jemand mitlesen”, sondern die Frage “kann ich dem, was ich hier sehe, vertrauen”. Das ist derselbe Gedanke, der auch hinter einer Unterschrift auf Papier steckt: Eine Unterschrift auf einem Vertrag verhindert nicht, dass jemand anderes den Vertrag liest, aber sie soll belegen, wer ihn tatsächlich unterschrieben hat, und im Idealfall auch, dass das Dokument seither nicht mehr verändert wurde.
Warum man nicht einfach die ganze Nachricht signiert
Der naheliegendste Gedanke wäre nun vielleicht, die gesamte Nachricht mit dem privaten Schlüssel zu bearbeiten, ganz so, wie wir es im vorherigen Artikel mit unserer kleinen Beispielzahl getan haben, und das Ergebnis als Signatur mitzuschicken. Das würde technisch sogar funktionieren, hat in der Praxis aber zwei entscheidende Nachteile. Zum einen sind die Rechenoperationen der asymmetrischen Kryptographie, wie wir gesehen haben, vergleichsweise aufwendig – bei einer kurzen Nachricht mag das kein Problem sein, aber bei einer mehrere hundert Megabyte großen Videodatei oder einem umfangreichen Installationspaket für ein Programm würde die komplette Datei auf diese Weise zu bearbeiten, spürbar lange dauern und enorm viel Rechenleistung kosten. Zum anderen würde die entstehende Signatur genauso groß wie die ursprüngliche Nachricht selbst, was beim Übertragen und Speichern unnötig Platz verschwendet. Man braucht also eine Methode, mit der man eine beliebig große Nachricht zunächst auf eine kurze, aber dennoch eindeutige Kennung verdichtet – und genau das leisten sogenannte Hashfunktionen.
Hashfunktionen: der digitale Fingerabdruck
Eine Hashfunktion ist im Grunde eine Rechenvorschrift, die eine beliebig lange Eingabe – ein einzelnes Wort, ein ganzes Buch, eine Videodatei – nimmt und daraus eine Ausgabe fester Länge berechnet, üblicherweise eine Zeichenfolge von immer exakt derselben Anzahl an Zeichen, egal wie groß die ursprüngliche Eingabe war. Diese Ausgabe nennt man den Hashwert, manchmal auch Prüfsumme oder digitalen Fingerabdruck. Eine gute Hashfunktion hat dabei einige bemerkenswerte Eigenschaften. Erstens liefert dieselbe Eingabe immer wieder exakt denselben Hashwert, die Berechnung ist also vollkommen deterministisch. Zweitens führt schon die kleinste Veränderung der Eingabe – und sei es auch nur ein einziges vertauschtes Zeichen irgendwo in einem riesigen Dokument – zu einem völlig anderen, komplett unvorhersehbaren Hashwert; man spricht hier vom sogenannten Lawineneffekt, weil sich eine winzige Änderung am Anfang wie eine Lawine durch die gesamte Berechnung fortpflanzt. Und drittens lässt sich aus einem Hashwert nicht auf die ursprüngliche Eingabe zurückschließen; die Hashfunktion arbeitet also, ähnlich wie die Multiplikation von Primzahlen aus dem vorherigen Artikel, nur in eine Richtung.
Stell dir zur Veranschaulichung eine stark vereinfachte, keineswegs sichere Hashfunktion vor: Man nimmt einen Text und addiert einfach die Positionsnummern aller enthaltenen Buchstaben im Alphabet zusammen. Aus “AB” würde dann 1 plus 2 gleich 3, aus “BA” ebenfalls 2 plus 1 gleich 3 – bei dieser primitiven Beispielfunktion würden also unterschiedliche Eingaben denselben Wert erzeugen, was für eine echte Hashfunktion ein großes Problem wäre. Echte, in der Praxis verwendete Hashfunktionen wie SHA-256 sind mathematisch so konstruiert, dass solche Kollisionen zwar theoretisch nicht ausgeschlossen, aber praktisch verschwindend unwahrscheinlich sind – die Wahrscheinlichkeit, zufällig zwei unterschiedliche Dateien mit demselben Hashwert zu finden, ist astronomisch klein. SHA-256 erzeugt dabei übrigens, egal ob man ein einzelnes Wort oder eine riesige Videodatei hineingibt, immer einen Hashwert von exakt 256 Bit Länge, üblicherweise dargestellt als eine Folge von 64 Buchstaben und Ziffern.
Wie Signieren und Prüfen tatsächlich ablaufen
Mit diesem Werkzeug ausgestattet, lässt sich der eigentliche Signaturvorgang nun recht einfach beschreiben. Möchte jemand eine Nachricht signieren, berechnet er zunächst den Hashwert der gesamten Nachricht – egal, wie groß diese ist, das Ergebnis ist immer kompakt. Diesen Hashwert bearbeitet er anschließend mit seinem privaten Schlüssel, genau nach dem Prinzip, das wir im letzten Artikel anhand unseres kleinen Zahlenbeispiels durchgerechnet haben. Das Ergebnis dieser Rechnung ist die digitale Signatur. Diese Signatur wird zusammen mit der ursprünglichen, unveränderten Nachricht verschickt – die Nachricht selbst bleibt dabei übrigens völlig lesbar, denn wie eingangs erwähnt, geht es hier nicht um Geheimhaltung, sondern um Beweisbarkeit.
Wer die Nachricht empfängt, geht nun zwei getrennte Wege gleichzeitig. Zum einen berechnet er selbst, unabhängig, den Hashwert der erhaltenen Nachricht, mit genau derselben Hashfunktion. Zum anderen nimmt er die mitgeschickte Signatur und bearbeitet sie mit dem öffentlichen Schlüssel des angeblichen Absenders – jenem Schlüssel, den, wie wir wissen, jeder besitzen darf. Diese Operation macht die private Bearbeitung von vorhin wieder rückgängig und legt den ursprünglichen Hashwert offen, den der Absender berechnet hatte. Stimmen nun die beiden Hashwerte überein – der selbst berechnete und der aus der Signatur zurückgewonnene –, dann ist damit zweierlei bewiesen: Die Nachricht muss tatsächlich exakt so, wie sie beim Empfänger angekommen ist, bereits beim Absender vorgelegen haben, denn schon die kleinste Änderung hätte wegen des Lawineneffekts zu einem völlig anderen Hashwert geführt – das ist die Integrität. Und die Signatur muss von jemandem erzeugt worden sein, der über den passenden privaten Schlüssel verfügt, denn nur damit lässt sich überhaupt ein Wert erzeugen, der sich mit dem öffentlichen Schlüssel sinnvoll zurückrechnen lässt – das ist die Authentizität. Stimmen die Hashwerte dagegen nicht überein, weiß der Empfänger sofort, dass entweder die Nachricht unterwegs verändert wurde oder die Signatur gar nicht vom angeblichen Absender stammt, und verwirft sie entsprechend.
Ein wichtiger Unterschied zur Verschlüsselung
An dieser Stelle lohnt sich noch einmal ein genauer Blick auf die Rollenverteilung der beiden Schlüssel, denn sie ist bei der digitalen Signatur genau umgekehrt zu dem, was wir bei der reinen Verschlüsselung kennengelernt haben. Beim Verschlüsseln einer geheimen Nachricht wird der öffentliche Schlüssel des Empfängers zum Verschlüsseln benutzt, und nur dessen privater Schlüssel kann die Nachricht wieder lesbar machen – hier steht also der Empfänger im Mittelpunkt. Beim Signieren dagegen wird der private Schlüssel des Absenders benutzt, um die Signatur zu erzeugen, und jeder, der den öffentlichen Schlüssel des Absenders besitzt, kann diese Signatur überprüfen – hier steht also der Absender im Mittelpunkt. Beide Anwendungen lassen sich übrigens auch kombinieren, was in der Praxis auch ständig geschieht: Eine Nachricht kann gleichzeitig mit dem öffentlichen Schlüssel des Empfängers verschlüsselt und mit dem privaten Schlüssel des Absenders signiert werden, sodass am Ende sowohl Geheimhaltung als auch Authentizität und Integrität gewährleistet sind.
Wo dir digitale Signaturen tatsächlich begegnen
Digitale Signaturen sind aus der modernen IT praktisch nicht mehr wegzudenken. Wenn dein Betriebssystem ein Update herunterlädt, prüft es üblicherweise, bevor es dieses Update installiert, ob die Signatur des Herstellers gültig ist – so wird verhindert, dass jemand ein manipuliertes, mit Schadsoftware versehenes Update unterschieben kann, denn ohne den privaten Schlüssel des Herstellers ließe sich keine gültige Signatur dafür erzeugen. Beim Surfen mit “https” spielt ebenfalls eine Signatur eine zentrale Rolle, wenn auch eingebettet in ein etwas größeres System, das sogenannte Zertifikate benutzt; damit werden wir uns in einem der nächsten Artikel dieser Reihe noch ausführlicher beschäftigen. Und wer E-Mails mit Verfahren wie PGP oder S/MIME digital signiert, ermöglicht seinen Empfängern, zweifelsfrei zu prüfen, dass die Nachricht tatsächlich von ihm stammt und nicht unterwegs manipuliert wurde.
Eine offene Frage zum Schluss
Ein aufmerksamer Punkt bleibt an dieser Stelle allerdings noch offen: Woher weiß der Empfänger eigentlich, dass ein bestimmter öffentlicher Schlüssel wirklich zu der Person gehört, die er zu sein vorgibt, und nicht etwa zu einem Betrüger, der sich als diese Person ausgibt? Die Mathematik, die wir in diesem und im vorherigen Artikel besprochen haben, kann diese Frage nämlich für sich genommen gar nicht beantworten – sie stellt lediglich sicher, dass eine Signatur zu einem bestimmten öffentlichen Schlüssel passt, nicht aber, wem dieser Schlüssel tatsächlich gehört. Dieses Vertrauensproblem und wie es in der Praxis mit sogenannten Zertifikaten und vertrauenswürdigen Ausstellern gelöst wird, ist ein spannendes Thema für sich – und ein guter Kandidat für einen der nächsten Artikel in dieser Reihe.