Programmieren - alles kontrollieren 4.935 Themen, 20.621 Beiträge

C# und .NET: Digitale Signatur aus Datei extrahieren

Yves3 / 1 Antworten / Flachansicht Nickles

Hallo

Im MSDN wird beschrieben wie eine digitale Signatur überprüft werden kann. Man benötigt dafür:

1. Den öffentlichen Schlüssel
2. Die Signatur
3. den verwendeten Hash-Algorithmus
4. Den signierten Inhalt

Den öffentlichen Schlüssel speichere ich irgendwo und der Hash-Algorithmus ist bekannt, das ist also kein Problem. Die Frage ist wie ich die Signatur und die signierten Daten aus einer Datei heraus bekomme. Ich suche jetzt schon eine Ewigkeit und finde einfach nichts...

Was mich noch interessiert ist, wie sich das verhält, wenn digitale Zertifikate zum Signieren verwendet werden. In diesem Fall wird ja das Zertifikat selber auch irgendwie in die Datei gespeichert. Signiert wird die Datei aber ansonsten "ganz normal" (mit dem privaten Schlüssel, der zum Zertifikat gehört), oder? Ist jetzt das Zertifikat im Hash eingeschlossen, der beim Signieren verwendet wird, oder ist der Hash bei einer Datei gleich, wenn sie mit oder ohne Zertifikat signiert wird?

Ich hoffe meine Frage ist verständlich formuliert und mir kann jemand helfen. ;)

Vielen Dank im Voraus!

bei Antwort benachrichtigen
xafford Yves3 „C# und .NET: Digitale Signatur aus Datei extrahieren“
Optionen

Also ich kann Dir leider nicht im Detail helfen, aber die Signatur dürfte rein logisch nicht mit im Hash stecken, denn ansonsten würde dies einen Angriff auf den Hash erleichtern, denn man könnte ja leichter einen geeigneten Hash erzeugen, wenn man eine passende Signatur dazu frei wählen könnte.

PS: Es ist schon spät und eventuell unterliege ich dabei auch einem Denkfehler.

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen