如何检查 apk 包的签名(例如来自 apkmirror)?

How can one check the signature of a apk bundle (e.g from apkmirror)?

我知道如何 check signatures of apk files,但不知道如何检查应用程序包 (apkm) 的可信度。有人给我提示吗?

当例如检查来自 apkmirror 的 google 相机包的签名,它表明该包是由 apkmirror 签名的,而不是 - 正如预期的那样 - 由 google.

我发现我可以简单地提取包中的 apk 文件并验证它们的签名(然后我得到一个 google 签名,如预期的那样)。但这并不适用于所有 apk:“base.apk”没有签名。是否有一个原因? base.apk 的签名是否可能以某种方式包含在其他签名中?

编辑:阅读 Pierres 的回答后,我发现 base.apk 确实也已签名。我的问题是 ubuntu 18.04 中的 apksigner 版本已过时,不支持使用的签名格式。

所有 APK 都应该有一个签名,包括基础。确保您使用的是 apksigner 而不是 jarsigner。

无法检查签名者是谁。证书有一些信息,但很容易被伪造,所以不可靠。

您基本上必须信任您从中下载 APK 的来源,最好的方法通常是询问开发人员他们在哪里发布他们的应用程序并从那里下载。对于 Google 个应用,即 Play 商店。

如果您知道该应用程序应使用的签名证书,您还可以将签名的证书与您期望的证书进行比较。