windows下发布安装程序签名

您所在的位置:网站首页 软件签名在哪个文件夹 windows下发布安装程序签名

windows下发布安装程序签名

2024-01-17 20:06| 来源: 网络整理| 查看: 265

 转自:https://blog.csdn.net/lichao201005/article/details/107938023

问题描述: Qt自制了一款exe安装包,放在互联网上供别人下载,但下载后运行,提示:

经查安装包需要进行数字签名。

数字证书的目的就是防止软件被篡改,表明软件的签发日期。对于我们来说最重要的防止被当病毒查杀。所以这就需要受信任的机构颁发的证书。

主要使用的工具:signTool.exe,命令行运行,但不能cmd,需要“VS开发人员命令提示”,且以管理员运行。

步骤:

1、创建 X.509 证书

工具:Makecert.exe(证书创建工具)

证书创建工具生成仅用于测试目的的 X.509 证书。 它创建用于数字签名的公钥和私钥对,并将其存储在证书文件中。 此工具还将密钥对与指定发行者的名称相关联,并创建一个 X.509 证书,该证书将用户指定的名称绑定到密钥对的公共部分。

使用这个命令行创建证书:

Makecert -sv abc.pvk -r -n “CN=XXX公司” abc.cer

-sv abc.pvk创建一个密钥文件,来保存私钥,创建时需要输入一个密码。

2、创建发行者证书

工具:Cert2spc.exe(软件发行者证书测试工具)的介绍:

发行者证书测试工具通过一个或多个 X.509 证书创建发行者证书 (SPC)。 Cert2spc.exe 仅用于测试目的。 可以从证书颁发机构(如 VeriSign 或 Thawte)获得有效的 SPC。

使用下面的命令行创建发行者证书:

Cert2spc abc.cer abc.spc

3.导出pfx证书文件

使用pvk2pfx.exe工具从pvk文件中导出pfx文件:

pvk2pfx -pvk abc.pvk -pi mypassword -spc abc.spc -pfx abc.pfx -f

把"mypassword "密码替换为第二步时输入的密码

4.对自己的软件签名

使用signtool.exe进行签名,MSDN对SignTool.exe(签名工具)的介绍:

签名工具是一个命令行工具,用于对文件进行数字签名,验证文件和时间戳文件中的签名。

如果要对abc.exe进行签名:

signtool sign /f abc.pfx /p mypassword abc.exe

把其中的密码替换为自己的密码。

5.对自己的软件加盖时间戳

可以使用WoSign提供的时间戳服务:http://timestamp.wosign.com/timestamp

signtool timestamp /t http://timestamp.verisign.com/scripts/timstamp.dll abc.exe

实操:

C:\Users\lc\Desktop\Output\1111>Makecert -sv test.pvk -r -n "CN=lc" test.cer Succeeded C:\Users\lc\Desktop\Output\1111>Cert2spc test.cer test.spc Succeeded C:\Users\lc\Desktop\Output\1111>pvk2pfx -pvk test.pvk -pi 1234 -spc test.spc -pfx test.pfx -f C:\Users\lc\Desktop\Output\1111>signtool sign /f test.pfx /p 1234 IosMobileRecovery.exe Done Adding Additional Store Successfully signed: IosMobileRecovery.exe C:\Users\lc\Desktop\Output\1111>signtool timestamp /t http://timestamp.verisign.com/scripts/timstamp.dll IosMobileRecovery.exe Successfully timestamped: IosMobileRecovery.exe



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3