本文每一个字都是kiwen手敲出来的,原创文章,未经许可,禁止转载
话不多说,直接开始
首先准备好软件:cert2spc.exe,makecert.exe,pvk2pfx.exe,signtool.exe
(点击上面的软件名称应该就可以跳到下载页)
将他们放到一个文件夹里

地址栏改成cmd如下图

第一行签署一个根证书
makecert -n "CN=SkyStudios,O=SkyStudios,OU=sky233.com,C=China" -r -sv RootIssuer.pvk RootIssuer.cer
例如这样,其中CN,O,OU,C的值都可以改, RootIssuer.cer 的名字是指生成一个名为 RootIssuer.cer 的证书,按下回车
自己填密码,如果不想用密码可以直接点无
第二部,用这个 RootIssuer.cer 根证书发布一个证书
代码如下
makecert -n "CN=SkyStudios-kiwen" -iv RootIssuer.pvk -ic RootIssuer.cer -sv Subject.pvk Subject.cer
这里就不多说了
下面两行代码是把 Subject.cer 转为可以signtool可以看得懂的格式
代码如下
cert2spc RootIssuer.cer TestRoot.spc
pvk2pfx -pvk RootIssuer.pvk -spc TestRoot.spc -pfx TestRoot.pfx
之后打开signtool,这里给的是GUI版
vs里面自带signtool也可以
按照上面的提示搞就好了,匙包是TestRoot.pfx文件

之后就点代码签名,最后签时间戳,不出意外的话,你的软件就数字签名成功了
但是这只是你自己签的,然而,微软的数据库里面没有你
这就需要去专业签发机构购买证书了,通常价格不菲
最后发个SkyStudios的证书(没密码):SkyStudios CA.zip