转载自:http://www.willrey.com/support/signcode_guide_pfx.html
微软的代码签名软件 SignCode.exe 的缺省的“典型”签名类型,就是“从存储区选择”签名证书,同时由于微软的 Office 宏代码签名只支持同时包含了私钥和公钥的 PFX 格式签名证书,也就是直接“从存储区选择”签名证书。在收到证书后请用户先 Windows 的证书存储区导出备份签名证书,导出的证书格式为 PFX 格式,保管好证书的密码。
下载Thawte代码签名证书的中级根证书:
https://search.thawte.com/support/ssl-digital-certificates/index?page=content&id=AR1382
下载VeriSign代码签名证书的中级根证书:
http://www.verisign.com/support/verisign-intermediate-ca/code-signing-intermediate/index.html
使用微软的 SignCode.exe 就可以对微软的代码进行签名,如果您没有此文件,您可以点击 这里下载。 Signcode.exe 可以使用 DOS 命令行方式实现签名,我们推荐用户使用数字签名向导方式,简单方便。请注意:如果您开发的ActiveX为IE加载项,请先数字签名每个CAB文件中的.dll和.ocx等文件,再把这些文件打包成.cab文件后再数字签名.cab文件,以确保所有IE加载项都被IE验证和信任,否则会显示“未验证”而可能影响正常运行。
具体签名向导过程如下:
(1) 运行 Signcode.exe ,要求您选择需要签名的文件,支持:可执行文件 (*.exe; *.dll; *.ocx) ; Cabinet 打包文件 (*.cab) 和目录文件 (*.cat) ,如下图 1 所示 ( 如: TestSign.cab) ,请注意:如果签名的文件已经有数字签名,则会被新的签名覆盖
(2) 点击“下一步”后,如下图 2 所示,会要求您选择“签名类型”, 直接点击“下一步”即可,即选择缺省的“典型”签名类型:
(3) 如下图 3 所示,点击“从存储区选择”,则会显示您的电脑证书存储区的所有证书,包括存储在电脑和 USB Key 中的所有数字证书,选择您的签名证书即可:
(4) 如下图 4 所示,要求填写该签名代码的功能描述,推荐一定要认真填写,因为此信息将会在最终用户下载此代码时显示,有助于最终用户了解此代码的功能以确定是否下载安装。第一行“描述”是指此代码的功能文字描述,第二行“ Web 位置”则让最终用户点击文字描述来详细了解此代码的功能和使用方法等。
(5) 点击“下一步”后,如下图 9 所示,选中“将时间戳添加到数据中”,请使用:
VeriSign 免费提供的时间戳URL:http://timestamp.verisign.com/scripts/timestamp.dll
时间戳服务非常重要,添加时间戳后,即使您的代码签名证书已经过期,但由于您的代码是在证书有效期内签名的,则时间戳服务保证了此代码仍然可信,最终用户仍然可以放心下载,使得即使代码签名证书已经过期,您也无需重签已经签名的代码。
(6) 点击“下一步”后,如下图 6 所示,会提示已经完成数字签名向导,点击“完成”就完成了中文版代码签名证书的代码签名。