Můžete zkusit osslsigncode
Pro podepsání souboru EXE nebo MSI nyní můžete:
osslsigncode sign -certs <cert-file> -key <der-key-file> \
-n "Your Application" -i http://www.yourwebsite.com/ \
-in yourapp.exe -out yourapp-signed.exe
nebo pokud používáte soubor klíčů PEM nebo PVK s heslem a certifikátem PEM:
osslsigncode sign -certs <cert-file> \
-key <key-file> -pass <key-password> \
-n "Your Application" -i http://www.yourwebsite.com/ \
-in yourapp.exe -out yourapp-signed.exe
nebo pokud chcete přidat také časové razítko:
osslsigncode sign -certs <cert-file> -key <key-file> \
-n "Your Application" -i http://www.yourwebsite.com/ \
-t http://timestamp.verisign.com/scripts/timstamp.dll \
-in yourapp.exe -out yourapp-signed.exe
Můžete použít certifikát a klíč uložený v kontejneru PKCS#12:
osslsigncode sign -pkcs12 <pkcs12-file> -pass <pkcs12-password> \
-n "Your Application" -i http://www.yourwebsite.com/ \
-in yourapp.exe -out yourapp-signed.exe
Jak podepsat soubor CAB obsahující soubory třídy Java:
osslsigncode sign -certs <cert-file> -key <key-file> \
-n "Your Application" -i http://www.yourwebsite.com/ \
-jp low \
-in yourapp.cab -out yourapp-signed.cab
Ve skutečnosti je to docela jednoduché udělat pomocí Mono
's signtool; záludnou částí (podrobněji popsanou v odkazovaném článku Mozilly) je zkopírování certifikátu ve správném formátu z Windows do Linuxu.
Převod souboru certifikátu Windows PFX na soubory PVK a SPC je potřeba provést pouze jednou při kopírování certifikátu z Windows do Linuxu;
openssl pkcs12 -in authenticode.pfx -nocerts -nodes -out key.pem
openssl rsa -in key.pem -outform PVK -pvk-strong -out authenticode.pvk
openssl pkcs12 -in authenticode.pfx -nokeys -nodes -out cert.pem
openssl crl2pkcs7 -nocrl -certfile cert.pem -outform DER -out authenticode.spc
Ve skutečnosti je podepsání exe přímo vpřed;
signcode \
-spc authenticode.spc \
-v authenticode.pvk \
-a sha1 -$ commercial \
-n My\ Application \
-i http://www.example.com/ \
-t http://timestamp.digicert.com/scripts/timstamp.dll \
-tr 10 \
MyApp.exe