1、安装OpenSSL工具
下载地址:Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions (slproweb.com)
注意:win7下选择1.1的版本,3以上的版本生成的证书无法安装.(可能是自己的电脑问题)
2、通过OpenSSL创建*.pfx文件
1、打开OpenSSL
1)、生成秘钥文件
openssl genrsa -des3 -out key.2022.pem 2048
)2、生成公钥文件
openssl req -x509 -days 7650 -newkey rsa:2048 -sha1 -keyout key.2022.pem -out cert.2022.pem
说明:days(有效天数) sha1(加密方式,可以改为-sha256)
3)、生成pfx文件
openssl pkcs12 -export -in cert.2022.pem -inkey key.2022.pem -out my.2022.pfx
4、可以在C:\Program Files\OpenSSL-Win64\bin目中找到生成的pfx文件。
3、在InnoSetup中配置签名工具
sha1=C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe sign /v /fd sha1 /f "C:\Program Files\OpenSSL-Win64\bin\my.2022..pfx" /p 密码 /t http://timestamp.digicert.com $f
sha256=C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe sign /f "C:\Program Files\OpenSSL-Win64\bin\my.2022.sha256.pfx" /p 密码 /fd sha256 /tr http://timestamp.digicert.com /td sha256 /as /v $f
说明:my.2022.sha256.pfx文件是以sha256加密方式生成的文件,可以参照上述第二点进行创建
4、编辑脚本文件
[setup]
SignTool=sha1
SignTool=sha256
SignedUninstaller=yes
[Files]
Source: "启动文件路径"; DestDir: "{app}"; Flags: ignoreversion signonce (对启动文件进行电子签名)
5、编译生成安装包形成双电子签名
如果编译生成失败,可以先对生成的*.pfx文件进行安装,如下图所示:
6、最终效果