Using a pfx file to sign and verify using signtool.exe
我正在尝试使用签名工具对我的WIX EXE之一进行签名。创建证书并将其安装到Windows证书存储区时,我可以使用签名工具轻松地验证EXE。但是,当我尝试创建一个PFX文件并对其进行签名时,便成功对其进行了签名。但是当我尝试验证它时,它会引发以下错误。
1 2 3 4 | 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和pvk2pfxexe-go?forum = windowssdk。但这也会导致相同的错误。我的要求是使用signtool使用PFX文件进行签名和验证。我无法使用Windows应用商店。任何帮助将不胜感激。
http://msdn.microsoft.com/zh-cn/library/ff699202.aspx中描述的方法将创建自签名测试证书。自签名测试证书不是由受信任的第三方签名的,因此,当您尝试验证由证书签名的文件时,会收到错误消息"无法为受信任的根颁发机构构建证书链。"
如果要解决该错误,则需要从证书颁发机构获取代码签名证书。通常需要付费。
购买代码签名证书时,证书颁发机构将采取某些步骤来验证您的身份。如果通过了这些步骤,那么证书颁发机构将向您颁发由其私钥签名的证书。他们的私钥是保密的。当您验证签名文件时,验证过程将从签名文件中提取代码签名,并根据所有证书颁发机构提供的已知公钥之一对其进行验证。