使用微软的工具生成证书


一,使用微软的工具不采用私钥文件

1.制作根证书

makecert -sk "myPK" -ss mySSName -n "CN=公司名称" -r myroot.cer

sk-表示主题的密钥容器位置,ss-主题的证书存储名称, n-证书颁发对象,r-证书存储位置;

2.制作子证书

makecert -sk "myPK" -is mySSName -n "CN=公司名称" -$ commercial -ic myroot.cer test.cer
sk-表示主题的密钥容器位置,is-颁发者的证书存储名称, n-证书颁发对象,ic-颁发者的证书存储位置,-$-授权范围(用于代码签名);

3.使用Cert2Spc生成spc发行者证书

cert2spc test.cer test.spc

4.使用signcode为你的程序,库或cab包签名:
双击signcode,或在控制台键入signcode,不带参数会启动签名向导。在第三步选择“自定义选项”,第四步选择“从文件选择”选择test.spc或test.cer,第五步选择“CSP中的私钥”,在密钥容器中选择我们定义的myPK,其他步骤默认即可,如果想添加时间戳,请在时间戳服务器地址上键入:(免费时间戳认证)
http://timestamp.wosign.com/timestamp
完成后,观察你所签名的文件属性,应该已经添加数字签名项。

5.将myroot.cer导入“受信任的根证书颁发机构”,使用chktrust测试刚才的文件是否签名成功

二,使用微软的工具采用私钥文件

1.制作根证书

makecert -sv "myroot.pvk" -ss mySSName -n "CN=公司名称" -r myroot.cer

sv-私钥文件名,ss-主题的证书存储名称, n-证书颁发对象,r-证书存储位置;

2.制作子证书

makecert -sv "test.pvk" -iv myroot.pvk -n "CN=公司名称" -$ commercial -ic myroot.cer test.cer
sv-私钥文件名,iv-根证书的私钥文件, n-证书颁发对象,ic-颁发者的证书存储位置,-$-授权范围(用于代码签名);

3.使用Cert2Spc生成spc发行者证书

cert2spc test.cer test.spc

4.使用signcode为你的程序,库或cab包签名:
双击signcode,或在控制台键入signcode,不带参数会启动签名向导。在第三步选择“自定义选项”,
第四步选择“从文件选择”选择test.spc或test.cer,
第五步选择“文件中的私钥”选择test.pvk,其他步骤默认即可,如果想添加时间戳,请在时间戳服务器地址上键入:(免费时间戳认证)
http://timestamp.wosign.com/timestamp
完成后,观察你所签名的文件属性,应该已经添加数字签名项。

用命令方式:signcode -spc test.spc -v test.pvk -n test的软件 test.cab

注意:用signcode.exe签署自己的软件。假如是.cab文件,需要在用cabarc.exe制作的时候
用-s参数留出签名的空间(一般6144字节即可)。

5.将myroot.cer导入“受信任的根证书颁发机构”,使用chktrust测试刚才的文件是否签名成功

你可能感兴趣的:(软件测试)