网上介绍数字签名的文章,大多使用signtool的signwizard命令实现,这种方式虽说简单,却需要人为干预,不能自动执行。msdn上说signtool的sign命令可以在命令行中完成签名,但描述的相当模糊,试了半天,终于找到了它的使用方法,一共执行四条命令即可,前三条一次性执行,最后生成一个个人证书(pfx),最后一条用于实际签名,可以放在post build event中去自动执行。 1. makecert生成x.509证书和私钥, 会弹出界面要求输入两次密码, 我输的是123, 其中localvar studio是公司名 2. 把x.509证书转换为Software Publisher Certificate 3. 把pvk转换为pfx, 例子中的123是私钥密码 4. 签名, 稍微调整一下,就能写在post build event里了,123是密码 上面的例子只是演示签名过程,由于证书是本机做出来的,所以签了名也没用,用户那看到的仍然是“未知发行商”。向证书颁发机构申请真正的证书时,能直接得到.spc和.pvk文件,所以就不用执行前两步了。 http://blog.csdn.net/localvar/article/details/3647960
|
|