这个问题也困扰了我很久。
终于,在我不懈的努力之下,这个数字签名被我搞定了,现在来把我的经验分享给大家。
成功后如下图:
OK,现在开始正片干货!
1.准备工具。
需要准备的工具有:
1.makecert.exe
2.signcode.exe
2.开始制作。
第一步:
Win+R键"cmd"打开命令提示符,先是输入你makecert所在的盘符。如你的makecert在D盘,那么就输入 D: ,然后再回车
第二步:
输入 cd <你的makecert.exe所在的目录>
第三步(最重要的关键性的一步)
在命令提示符中输入命令:
makecert /sv "私钥名.pvk" /n "CN=授予人名称,E=邮箱,O=组织名" -r 文件名.cer
然后他会提示你创造私钥密码。
创建好私钥密码后,如果成功了,就会提示Succeeded。
第四步 (也很重要)
Win+R打开mmc
然后,按下Ctrl+M,会弹出添加或删除管理单元,找到“证书”
然后点击添加,直接点完成,确定,然后你就会发现你又回来了,然后,按图片所示操作。
再点击“所有任务--导入”,然后第一个直接确定,第二个选择你的证书的路径,
然后一直下一步,
点击确定,
成功后会显示导入成功。然后保存更改,关闭mmc,再打开signcode.exe。
然后先是下一步,
再选择你要签名的文件,
选择自定义,
再选择你的证书,(注意,筛选器中要选择 X.509证书)
然后选择你的私钥文件,输入你的私钥。
下一步两次,
想填的可以填。
然后添加时间戳。
有很多人不知道时间戳服务器,我这里放几个:
Digicert: http://timestamp.digicert.com
Symantec: http://sha256timestamp.ws.symantec.com/sha256/
Comodo: http://timestamp.comodoca.com
Starfield: http://tsa.starfieldtech.com
GlobalSign: http://timestamp.globalsign.com/scripts/timestamp.dll
Certum: http://time.certum.pl
或者直接去下载一个沃通代码签名工具,然后把文件拖进去,只点击一个时间戳就可以了。
第四步,大功告成。
成功后如下图。
是不是和开头的是一样的呀,这样就成功啦!