试图重新打包了APPX包时SignTool内部错误?(SignTool internal error

2019-07-31 21:31发布

我在分析现有Windows应用商店的应用程序和修改,以确保我公司的混淆器的工作与他们。

我跑进了一下这样做,虽然有问题的。 从商店很轻松了(需要提琴手获得网址),我可以抓住一个APPX包。 然后我就可以使用任何解压缩程序的APPX解压到一个文件夹。 那么我可以坐组件在APPX和修改IL一点。 然后,我翻拍并签署包:

makeappx pack /d "mypackage" /p "mypackage.appx"
signtool sign /fd sha256 /f temporarykey.pfx mypackage.appx

然后我得到signtool一个错误,但:

SignTool Error: An unexpected internal error has occured
Error information: "Error: SignerSign() failed." (-2147024885/0x800700b)

然后尝试与由Visual Studio安装/侧面加载任何APPX包创建标准的PowerScript文件安装它时,当然会出错。

Found package: C:\....mypackage.appx 
Error: The package is not digitally signed or its signature is corrupted

我已经用了从Visual Studio生成包这个确切的过程。 是临时密钥绑定到一个特定的包什么的? 我在想什么? 这是signtool的错误吗?

Answer 1:

显然,你不能只是采取任何临时密钥,并用它签署APPX。 尤其是证书主题行必须(以下简称“发行人名称”)相匹配。 我不知道什么确定的主题行多少实际上是一个更好的方式。 首先,尽量使用signtool并签订任何临时密钥的APPX文件。 现在去到事件查看器。 然后到应用程序和服务,然后微软,然后Windows,然后AppxPackaging,最后微软Windows的AppxPackages /运营。 应该有,只是从构建发生的错误事件。 核实。 应该这样说

Error 0x800700B: The app manifest publisher name (CN=random-hex-number) must match the subject name of the signing certificate (CN=MyWrongName)

所以,现在一定要挂到随机的十六进制数。 需要进行证书的主题行,是错误的原因。 要生成一个工作证:

makecert.exe mycert.cer -r -n "CN=random-hex-number" -$ individual  -sv private.pkv -pe -cy end
pvk2pfx -pvk private.pkv -spc mycert.cer -pfx mytemporarykey.pfx

现在最后,你应该有一个临时密钥,将与signtool工作!

希望这个答案提供其他人好。



文章来源: SignTool internal error when trying to repackage an APPX package?