我正在尝试使用签名工具签署我的一个WIX EXE。当我创建证书并将其安装到Windows证书库时,我可以使用签名工具轻松验证EXE。但是当我尝试创建PFX文件并对其进行签名时,它会成功签名。但是当我尝试验证它时,会抛出以下错误。
SignTool Error: WinVerifyTrust returned error: 0x800B010A
A certificate chain could not be built to a trusted root authority.
Number of errors: 1
我尝试使用证书链并使用https://social.msdn.microsoft.com/Forums/sqlserver/en-US/da5d1aef-5dbc-4400-8972-fef4d7139d99/where-windows-sdk-tools-like-cert2spcexe-and-pvk2pfxexe-go?forum=windowssdk答案中提到的命令进行签名。但这也会导致同样的错误。我的要求是使用signtool使用PFX文件进行签名和验证。我无法使用Windows应用商店。任何帮助将不胜感激。
答案 0 :(得分:1)
http://msdn.microsoft.com/en-us/library/ff699202.aspx中描述的方法创建了自签名测试证书。自签名测试证书未由受信任的第三方签名,因此您会收到错误“无法将证书链构建到受信任的根颁发机构”。尝试验证证书签名的文件时。
如果要修复错误,则需要从证书颁发机构获取代码签名证书。通常是收费的。
购买代码签名证书时,认证机构会采取某些步骤来验证您的身份。如果这些步骤通过,则认证机构会向您颁发由其私钥签名的证书。他们的私钥是保密的。验证签名文件时,验证过程将从签名文件中提取代码签名,并根据所有认证机构提供的已知公钥对其进行验证。