我怎样才能签署代码签名证书的ActiveX控件,是一个经过验证的出版商?
-
26-09-2019 - |
题
我试图签署由Thawte颁发的代码签名证书的ActiveX控件。我能够使用signtool.exe成功登录控制。
当我看一下这个文件的属性,它说:“在签名证书无法验证。”
当我认为它说证书“Windows没有足够的信息来验证证书。”
在证书路径选项卡,它说:“此证书的发行者无法找到。”
在Internet Explorer中的证书是作为签名确认,但用户接收警告,发布者没有被验证。
我试图创建包含我的证书与根和中间的证书链到我Thawte的显影剂的证书,然后重新签名使用PFX文件中的控制沿着单个PFX文件。没有骰子。
任何建议?
解决方案
在问题实际上包含正确procedure--做使用包含根证书,中间证书,开发者证书,和私钥PFX文件的签字。此外,使用时间戳服务器。我的问题是,我已经包括在我PFX错误的根证书,所以用来签署证书不能回链到根。
根据要求,这里是关于如何创建PFX文件中的信息。的cert2spc和pvk2pfx,我使用以下也都在平台SDK。
cert2spc certpath1.cer certpath2.cer certpath3.cer codesign.spc
其中的.CER文件的列表包括根,中间,和代码签名证书,并且codesign.spc是输出文件。然后:
pvk2pfx -pvk privkey.pvk -spc codesign.spc
以这种方式运行pvk2pfx启动一个向导,提示私钥密码短语,并输出文件的位置,并输出文件的密码。
最后,signtool执行实际代码签名:
signtool sign /f my_certificates.pfx /p my_passphrase /t http://timestamp.verisign.com/scripts/timstamp.dll my_activex_control.ocx
在回想起来,我可能会用signcode.exe又名代码签名向导(我认为这是在.NET SDK的一部分),节省了时间,其用途.SPC和.pvk文件直接。
不隶属于 StackOverflow