Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Ein paar Fragen zum Code-Siging-Zertifkat (https://www.delphipraxis.net/194416-ein-paar-fragen-zum-code-siging-zertifkat.html)

Hobbycoder 17. Nov 2017 17:42

Ein paar Fragen zum Code-Siging-Zertifkat
 
Hi,

ich habe mir ein Code-Signing-cerficate über KSoftware vom Comodo ausstellen lassen.
Das habe ich heute über die Webseite von Comodo installiert bekommen.

Dazu hätte ich noch ein paar Fragen, bei deren Beantwortung ihr mir vielleicht helfen könnt:

1. Was muss ich aus meinem Zertifkatsspeicher alles sichern, damit ich im Falle eine Totalcrash des Rechners/Windows und einer Neuinstallation das Zertikat vollständig wieder herstellen kann?
Bei der Installation des Zertifikats von Comodo hieß es, ich muss das unbedingt auf dem Rechner machen, von dem aus ich das Zertifikat beantragt habe.
Reicht es aus, das Zertifikat über die mmc zu exportieren? Muss ich das Comodo-Zertifikat auch noch exportieren?

2. Wenn ich damit per KSign von KSoftware eine Anwendung signieren möchte, dann verwende ich das exportierte Zertikat (.pfx)? Oder muss ich damit erst noch was machen. Nicht dass dann jemand aus der Anwendung das Zertifikat extrahieren kann. (Ich muss zugeben, dass ich von dem ganzen Zertifizierungsgedöns sehr wenig Ahnung habe, und recht unsicher unterwegs bin).

3. Der einzige Unterschied, der mir zwischen der nicht zertifierten und der zertifizierten Anwendung auffällt ist, dass das Hinweisfenster (welches kommt, wenn die Anwendung mit Adminrechten ausgeführt wird) eine andere Farbe hat. Klar steht jetzt noch mein Name drin, aber wer liest das denn wirklich. Gibt es noch andere Auswirkungen, die ich bisher noch nicht bemerkt habe (z.B. bei der Ausführung auf einem Server vielleicht)?

4. Beim Hinweisfenster, das beim Starten kommt, kann ich mir das Zertifikat anschauen. Mehr nicht. Wenn ich mir aber die Eigenschaften der EXE anschaue, dann kann ich das Zertifikat installieren. Welchen Sinn macht das, bzw. wenn das ein Anwender macht, hat er dann mein Zertifikat, oder vertraut er dann generell meinen zertifizierten Anwendungen?

5. Mach es Sinn auch eine Serviceanwendung zu zertifizieren? (Mal abgesehen davon, dass er Anwender sich das über die Eigenschaften der EXE anschauen kann).

Danke für eure Erleuchtung ;-)

generic 18. Nov 2017 01:20

AW: Ein paar Fragen zum Code-Siging-Zertifkat
 
Zitat:

Zitat von Hobbycoder (Beitrag 1386520)
Hi,
1. Was muss ich aus meinem Zertifkatsspeicher alles sichern, damit ich im Falle eine Totalcrash des Rechners/Windows und einer Neuinstallation das Zertikat vollständig wieder herstellen kann?
Bei der Installation des Zertifikats von Comodo hieß es, ich muss das unbedingt auf dem Rechner machen, von dem aus ich das Zertifikat beantragt habe.
Reicht es aus, das Zertifikat über die mmc zu exportieren? Muss ich das Comodo-Zertifikat auch noch exportieren?

Auf jeden Fall den privaten Schlüssel.

Zitat:

Zitat von Hobbycoder (Beitrag 1386520)
2. Wenn ich damit per KSign von KSoftware eine Anwendung signieren möchte, dann verwende ich das exportierte Zertikat (.pfx)?

Eine Signatur funktioniert mit public/private Key Verfahren. Die Signatur enthält nicht den privaten Schlüssel.

Zitat:

Zitat von Hobbycoder (Beitrag 1386520)
3. Der einzige Unterschied, der mir zwischen der nicht zertifierten und der zertifizierten Anwendung auffällt ist, dass das Hinweisfenster (welches kommt, wenn die Anwendung mit Adminrechten ausgeführt wird) eine andere Farbe hat. Klar steht jetzt noch mein Name drin, aber wer liest das denn wirklich. Gibt es noch andere Auswirkungen, die ich bisher noch nicht bemerkt habe (z.B. bei der Ausführung auf einem Server vielleicht)?

Ja, man kann Windows dazu bringen, dass nur signiert Software ausgeführt wird. Treiber müssen sogar signiert sein. Wenn du ein Verisign Zert hättest, dann könntest du noch das Windows Error Reporting nutzen.
Zitat:

Zitat von Hobbycoder (Beitrag 1386520)
5. Mach es Sinn auch eine Serviceanwendung zu zertifizieren? (Mal abgesehen davon, dass er Anwender sich das über die Eigenschaften der EXE anschauen kann).

Jedes Binary sollte signiert sein, alle DLLs und alle EXEn.


Hast du nicht gefragt aber:
6. verwende IMMER einen Timestampserver bei der Signierung.

CCRDude 18. Nov 2017 09:18

AW: Ein paar Fragen zum Code-Siging-Zertifkat
 
2. Ich kenne ksign nicht, aber signtool kann man angeben, dass es das entweder aus dem Certificate Store (per Hash oder Teil des Namens) oder aus einer Datei (deine pfx) nimmt. Muss also nicht die exportierte Datei sein, die würde ich aus Sicherheitsgründen "wegschließen" (TrueCrypt-Archiv auf Backupmedium o.ä.), selbst wenn sie auch passwortgeschützt ist.

3. Diverse Microsoft-Abkommen schreiben eine Signierung vor. Treiber müssen inzwischen nicht nur signiert, sondern auf SecureBoot-Systemen sogar von MS co-signiert sein.

Ich lese das übrigens :D Und ich kenne von unseren Anwendern, dass die auch viel Wert darauf legen, haben wir direkt gemerkt, als Updates einmal ungeschickt signiert waren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz