Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Openssl 如何使用osslsigncode执行代码签名_Openssl_Code Signing_Signtool - Fatal编程技术网

Openssl 如何使用osslsigncode执行代码签名

Openssl 如何使用osslsigncode执行代码签名,openssl,code-signing,signtool,Openssl,Code Signing,Signtool,你能帮我弄清楚如何用证书签署我的软件吗。您知道signtool只能在windows机器上工作,但我需要在linux服务器上对文件进行签名。现在系统就是这样工作的,文件构建在linux服务器上,然后移动到win服务器进行签名,然后再返回linux 我尝试了谷歌,发现了一种新的程序签名方式 我现在的问题是如何将证书从MS转换为osslsigncode格式。 所以现在我做这些步骤 永久拥有两个文件: cert.crt和key.blob 首先,我需要将它们转换为.pfx格式 我有: 然后我可以用命令签署

你能帮我弄清楚如何用证书签署我的软件吗。您知道signtool只能在windows机器上工作,但我需要在linux服务器上对文件进行签名。现在系统就是这样工作的,文件构建在linux服务器上,然后移动到win服务器进行签名,然后再返回linux

我尝试了谷歌,发现了一种新的程序签名方式

我现在的问题是如何将证书从MS转换为osslsigncode格式。 所以现在我做这些步骤 永久拥有两个文件: cert.crt和key.blob 首先,我需要将它们转换为.pfx格式 我有:

然后我可以用命令签署我的软命令

signtool.exe sign /v /f cert.pfx /p 1234 soft.exe
您能告诉我使用osslsigncode程序需要执行哪些转换步骤吗?

对我很有用。。。原作者的荣誉

如果丢失了,相关步骤如下:

要进行签名,基本上必须将密钥从密钥库[…]导出为PKCS12/PFX文件,以便使用openssl[…]进行转换


感谢您复制此处的相关步骤。该链接现在已失效,但这些命令对我来说很有价值。您可以使用PFX进行签名,然后跳过将PFX转换为单独的DER/PEM文件。转换为spc和密钥文件是一个冗余且不必要的步骤
osslsigncode符号-pkcs12-pass-n“您的应用程序”-ihttp://www.yourwebsite.com/ -在yourapp.exe中-退出yourapp signed.exe
signtool.exe sign /v /f cert.pfx /p 1234 soft.exe
openssl pkcs12 -in authenticode.pfx -nocerts -nodes -out key.pem
openssl pkcs12 -in authenticode.pfx -nokeys -nodes -out cert.pem
openssl rsa -in key.pem -outform DER -out authenticode.key
openssl crl2pkcs7 -nocrl -certfile cert.pem -outform DER -out authenticode.spc
osslsigncode -spc authenticode.spc -key authenticode.key -t http://timestamp.verisign.com/scripts/timstamp.dll -in install.exe -out install-signed.exe