Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— |
openssl:pfx_create_and_fix_for_windows_code_sign [2022/08/25 14:01] (aktuell) raiser angelegt |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== OpenSsl PFX, P12 erstellen und Fix Windows Code-Sign====== | ||
+ | |||
+ | Eigentlich ist das Erstellen eines PKCS12 Public-Private-Key-Pair unter openssl __nicht__ schwierig.\\ | ||
+ | Das Ding lässt sich auch bequem unter Windos in den Zertifikatsspeicher mit Zertifikat und Schlüssel installieren.\\ | ||
+ | Nur das Signieren von Assemblies (.Net => SN.exe) oder die Digitale Signatur als Herausgeber (SIGNTOOL) gestalten sich als schwierig. Aber nun Step by Step. | ||
+ | |||
+ | Der Schlüssel muss zum Signieren auch freigegeben sein. Achtet daher darauf, dass der CSR (Certificate Request) die Verwendung des Schlüssels beinhaltet. | ||
+ | Was bedeutet: | ||
+ | * nonRepudiation | ||
+ | * digitalSignature | ||
+ | * keyEncipherment | ||
+ | |||
+ | |||
+ | <WRAP center round important> | ||
+ | Wer es besser weiß, bitte mal ne Info an mich. Ich habe es nur so hinbekommen. Zumal es auch noch die **//extendedKeyUsage//** gibt, wo **//codeSigning//** angegeben werden kann: Hat bei mir aber nicht funktioniert. | ||
+ | </WRAP> | ||
+ | |||
+ | |||
+ | Hat man von der CA das Zertifikat, so erstellt man die PFX mit folgendem Befehl: | ||
+ | <code> | ||
+ | openssl pkcs12 -export -in certificate.pem -inkey key.pem -out dein.pfx | ||
+ | </code> | ||
+ | Super. PFX erstellt - aber das Ding geht eben noch nicht wirklich. | ||
+ | |||
+ | |||
+ | Fix: | ||
+ | Schlüssel extrahieren | ||
+ | <code> | ||
+ | openssl pkcs12 -in dein.pfx -out tmp.key | ||
+ | </code> | ||
+ | |||
+ | So: Nun Schlüssel wieder rein in das PFX .... | ||
+ | <code> | ||
+ | openssl pkcs12 -export -out dein.pfx -kaysig -in tmp.key | ||
+ | </code> | ||
+ | |||
+ | Der tmp.key kann auch gleich wieder gelöscht werden, den braucht man nicht :D | ||
+ | |||