关于wix:使用pfx文件签名并使用signtool.exe进行验证

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中描述的方法将创建自签名测试证书。自签名测试证书不是由受信任的第三方签名的,因此,当您尝试验证由证书签名的文件时,会收到错误消息"无法为受信任的根颁发机构构建证书链。"

如果要解决该错误,则需要从证书颁发机构获取代码签名证书。通常需要付费。

购买代码签名证书时,证书颁发机构将采取某些步骤来验证您的身份。如果通过了这些步骤,那么证书颁发机构将向您颁发由其私钥签名的证书。他们的私钥是保密的。当您验证签名文件时,验证过程将从签名文件中提取代码签名,并根据所有证书颁发机构提供的已知公钥之一对其进行验证。