首页 > 代码库 > 对CAB文件进行数字签名
对CAB文件进行数字签名
对CAB文件进行数字签名 传说中数字签名之后就可以不出现提示而自动下载,所以也试试: 在\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin 中间有三个小工具,就用他们来实现数字签名。 1.Makecert.exe ---证书创建工具 2.Cert2Spc.exe ---发行者证书测试工具 3.Signcode.exe ---文件签名工具
步骤: 1) makecert -ss name -n "CN=公司名" -sv d:\pos.pvk -r d:\pos.cer 其中sk-表示主题的密钥容器位置,ss-主题的证书存储名称, n-证书颁发对象,r-证书存储位置,-sv 导出私钥文件(为了签名使用)。注意:这个时候会让输入三次密码,三次要完全一致。 2) 使用Cert2Spc生成spc发行者证书(可选):cert2spc d:\pos.cer c:\pos.spc 3) 双击signcode,不带参数会启动签名向导。先选择要签名文件,下一步,选择“自定义”,下一步,选择“从文件选择”,添加刚生成的pos.cer证书,下一步,选择刚生成的私钥pos.pvk,再下一步,可spc证书,再一直下一步。添加时间戳,在时间戳填入http: //timestamp.verisign.com/scripts/timstamp.dll TestCAB.CAB,再下一步完成。
这样就对CAB文件进行了签名,但是这个时候点击这个文件会发现证书不可用,原因是证书没有安转。文件属性->数字证书->详细信息-〉查看证书-〉安装证书,进入安装证书向导,存放区域选择“受信任的根证书颁发机构”,点击完成即可。
在客户端测试: 1) 加入证书,浏览器-〉工具-〉Internet选项-〉内容-〉证书-〉受信任的颁发机构-〉导入证书。 2) 在有证书的情况下,如果服务器没有加入“可信任网址”,提示下载的时候会显示证书所签内容,没有证书则提示为“未知”。 3) 如果服务器已加入“可信任网址”,并且已导入证书,则不提示任何信息,在用户毫无感觉情况下下载。如果没有加入“可信任网址“,控件可以正常下载但仍然不能正常使用,与是否签名无关。
四、问题: 1.是否可以不添加“可信任网址”。 2.数字签名的作用,授权证书与不授权证书的区别。