14 Stimmen

Wie signiere ich Exes und Dlls mit meinem Code Signing-Zertifikat?

(Ich habe ein Code-Signing-Zertifikat von Thawte gekauft und bin vor Frustration über den ganzen Prozess fast verrückt geworden.

Was ich von ihnen habe, sind:

  • .spc / .p7b Datei
  • .pvk-Datei

(HINWEIS: Ich habe keine pfx-Datei von ihnen. Gott weiß warum, aber ich kämpfe seit einer Woche mit ihrem technischen Support)

Auf jeden Fall finde ich auf ihrer Website und bei MS "Hilfe"-Links für signcode.exe, die für mich nutzlos sind, weil ich diese Datei auf meinem Rechner nicht finden kann, aber ich habe signtool.exe.

Leider bin ich über die Befehlszeilenparameter verwirrt die auf dieser MS-Hilfeseite aufgeführt sind .

Welche Parameter verwende ich konkret und welche Werte? Ich habe versucht, was ich dachte, war offensichtlich, aber es funktioniert überhaupt nicht.

Ich kann den Signierassistenten zum Laufen bringen, aber ich brauche dies, um nicht-interaktiv in einer Hudson CI-Batch-Datei zu arbeiten.

Es scheint wirklich nicht so schwierig zu sein, aber bis jetzt ist es nur schwarze Magie.

danke für jede Hilfe

15voto

Stewart Punkte 3880

Zunächst können Sie Ihre eigene pfx-Datei mit dem Tool pvk2pfx erstellen, das unter http://msdn.microsoft.com/en-us/library/ff549703(VS.85).aspx

Etwas wie

pvk2pfx -pvk cert.pvk -spc cert.spc -pfx cert.pfx -pi password

Das sollte genügen.

Zweitens: signtool ist das Werkzeug, das Sie suchen. http://msdn.microsoft.com/en-us/library/aa387764(VS.85).aspx

signtool sign /?

bringt Ihnen die Hilfe, aber der grundlegende Befehl, den Sie wahrscheinlich suchen, ist

signtool sign /f cert.pfx /p password target.exe

Dadurch wird target.exe signiert. Komplexer wird es, wenn Sie das Zertifikat in den Zertifikatspeicher des Rechners stellen wollen (das ist das CSP-Bit). Dies ist sehr nützlich, wenn Sie die Signierung auf vielen Entwicklungsrechnern oder auf Build-Lab-Rechnern durchführen, bei denen Sie vermeiden wollen, das Zertifikat in die Versionskontrolle zu stellen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X