Kryptografie (10) : Digitale Signatur

in steemstem •  7 months ago 

Bei dem MAC-Verfahren kennen beide Kommunikationspartner denselben Schlüssel. Im letzten Beitrag zum Message Authentication Code wurde dadurch ein Problem sichtbar. Der Empfänger könnte eine Nachricht m samt dazugehörigen MAC selber berechnen, aber auch der Sender kann sagen, dass er keine Nachricht gesendet hat.

Tauscht man den symmetrischen Verschlüsselungsalgorithmus bei dem MAC-Verfahren gegen einen asymmetrischen Algorithmus aus (bspw. RSA), so erhält man das Prinzip der digitalen Signatur.

Ein Angreifer könnte zwar die übertragene Nachricht verändern, aber die passende digitale Signatur nicht selbst erzeugen. Aber auch der Empfänger kann jetzt keine passende digitale Signatur zu einer Nachricht erstellen. Der Empfänger kann nur prüfen, ob die digitale Signatur zur empfangenen Nachricht passt. Nur der Sender, der den Private-Key kennt, kann Nachrichten mit passender digitaler Signatur erstellen. Dadurch kann auch der Sender nicht mehr bestreiten, dass er diese Nachricht gesendet hat. Es sei denn der Sender ging mit seinem Private-Key unachtsam um, sodass nun eine andere Person diesen besitzt. Sollte jemals diese Situation auftreten, so muss unverzüglich der dazugehörige Public-Key gesperrt werden.
Die asymmetrische Verschlüsselung garantiert auch, dass eine mit einem Public-Key entschlüsselbare Nachricht nur vom Besitzer des zugehörigen Private-Keys stammen kann.

Zur Berechnung digitaler Signaturen kann man den RSA-Algorithmus oder den Digital Signature Algorithm (DSA) [1] einsetzen.

Prinzip der digitalen Signatur

Die Änderung im Gegensatz zum MAC ist fett markiert.
ds.png

Eine Frage bleibt noch offen die geklärt werden muss: Ist die Person, bspw. der Sender, tatsächlich diejenige, die sie vorgibt zu sein?

Quelle
[1] https://www.researchgate.net/publication/325571665_DIGITAL_SIGNATURE_ALGORITHM_DSA

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Alles richtig gemacht, weiter viel Erfolg...

Du hast ein kleines Upvote vom German-Steem-Bootcamp erhalten.

Du findest uns im Discord unter https://discord.gg/HVh2X9B

Aktueller Kurator ist @don-thomas

Du möchtest keine Upvotes (mehr) von uns erhalten? Eine kurze Mittelung unter diesen Kommentar reicht.
Dem Upvote von uns folgt ein Trail der weitere Upvotes von unseren Unterstützern beinhaltet. Hier kannst du sehen wer diese sind und auch erfahren wie auch du uns und somit die deutschsprachige Community unterstützen kannst.

Congratulations @ozelot47! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You distributed more than 400 upvotes. Your next target is to reach 500 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

You can upvote this notification to help all Steem users. Learn how here!



This post has been voted on by the SteemSTEM curation team and voting trail. It is elligible for support from @curie.

If you appreciate the work we are doing, then consider supporting our witness stem.witness. Additional witness support to the curie witness would be appreciated as well.

For additional information please join us on the SteemSTEM discord and to get to know the rest of the community!

Please consider setting @steemstem as a beneficiary to your post to get a stronger support.

Please consider using the steemstem.io app to get a stronger support.