0

我正在做一个安装项目,我想签署我的“setup.exe”文件。

对于这个问题,我有;

  • “setup.exe”文件
  • 一个“aaa.pfx”文件(我也使用这个 pfx 文件作为我的站点 ssl 证书。)

首先,

我将 pfx 文件转换为 crt 和 pvk 以上命令。

  • 导出私钥:openssl pkcs12 -in filename.pfx -nocerts -out key.pvk
  • 出口证明:openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.crt

我正在使用 windows signwizard 工具进行签名,

脚步:

  • 我选择了我的“setup.exe”文件
  • 我选择了我的“cert.crt”
  • 我选择了“key.pvk”这会得到一个像图片一样的错误;

在此处输入图像描述

有什么建议么?

4

2 回答 2

0

您说您对 SSL 站点证书使用相同PFXPKCS#12等效)。

这就是问题所在:您不能使用这种类型的证书TLS Web Server Authentication, TLS Web Client Authentication来签署代码,例如setup.exe

读取导出的证书时

openssl x509 -in cert.crt -text

你必须寻找X509v3 Extended Key Usage:线。

要签署代码,必须是:Code Signing, Microsoft Commercial Code Signing对于证书颁发机构提供商来说,这是一项不同的服务和不同的价格!

于 2012-08-16T09:54:07.503 回答
0

您是否尝试过类似的方法:

1.
openssl sha256 -out digest.txt setup.exe
2.
openssl dgst -sha256 -sign key.pvk -out signed_setup.exe digest.txt
于 2012-05-25T16:56:30.997 回答