Digitale Signaturen

🎯 Um was geht es? 

Alice 👧 möchte Bob 🧔 eine Nachricht zukommen lassen, aber so, dass Bob sicher sein kann, dass die Nachricht 1:1 von Alice stammt. Bob soll überprüfen können, ob die Nachricht von einer anderen Person geschickt wurde, welche sich als Alice ausgibt. Und er soll auch überprüfen können, ob eine andere Person die originale Nachricht von Alice abgefangen und abgeändert hat. Beides kann mit einer Digitale_Signatur erreicht werden.

Beim digitalen Signieren geht es nciht darum, die Nachricht zu verschlüsseln. Es geht um die Authentifizierung der herausgebenden Person (z.B.  Alice) und um die Integritätsprüfung der Nachricht (wurde es verändert)? 


Um die Integrität prüfen zu können, wird ein Fingerabdruck der Nachricht erstellt. Dazu werden spezielle Verfahren verwendet, die man Hash-Funktionen nennt. Diese Funktionen berechnen eine kurze charakteristische (hexadezimale) Zahl - dem Hash aus der Nachricht. Aus dem Hash heraus können die Original-Daten nicht wieder hergestellt werden. Jede Änderung der Nachricht führt zu einem anderen Hash.


Um die herausgebende Person authentifizieren zu können, wird der Hash mit dem privaten Schlüssel der herausgebenden Person verschlüsselt, sodass der Hash nur mit dem öffentlichen Schlüssel der herausgebenden Person entschlüsselt werden kann.

Ablauf 

Auftrag

Wieso kann Bob davon ausgehen, dass wenn die beiden Hashwerte gleich sind, die Nachricht von Alice gekommen sein muss und die Nachricht nicht verändert worden ist? 

2. Man in the Middle Attack

Die Frage, die sich nun stellt ist Folgende: 

Bis jetzt sind wir immer davon ausgegangen, dass es sicher ist, wenn man den öffentlichen Schlüssel einfach teilt. Ist es das aber? 

Auftrag

Stell Dir vor, Alice schickt Bob ihren öffentlichen Schlüssel per Post. 

Was könnte der böse Hacker Mallory anstellen, um Alice und Bob zu überlisten? 

Lösung 

Mallory könnte den Schlüssel von Alice abfangen und seinen eigenne Schlüssel an Bob weiterleiten. 

Da der öffentliche Schlüssel nur aus Zahlen besteht, ist es für Bob nicht erkennbar, ob er den richtigen Schlüssel erhalten hat. 

Auftrag

Wie könnte man eine Man-In-The-Middle-Attacke verhindern? Kann man irgendwie dafür sorgen, dass die öffentlichen Schlüssel besser überprüfbar sind?

Lösung 

Wir könnten eine weitere Person, Trent, einsetzen. Trent ist bekannt udn akzepiert als Zertifizierungsstelle. Alle kennen seinen öffentlichen Schlüssel. Wenn Trent die Kunden gut überprüft und deren Schlüssel signiert, kann Bob sicher sein, den richtigen Schlüssel zu verwenden. Er akzeptiert folglich keine unsignierten Schlüssel mehr.r