Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何检查apk捆绑包的签名(例如来自apkmirror)?_Android_Android App Bundle - Fatal编程技术网

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

Android 如何检查apk捆绑包的签名(例如来自apkmirror)?,android,android-app-bundle,Android,Android App Bundle,我知道如何检查应用程序包(apkm)的可信度,但不知道如何检查。有人给我一个提示吗 例如,当检查来自apkmirror的google摄像头捆绑包的签名时,它显示捆绑包是由apkmirror签名的,而不像预期的那样是由google签名的 我发现我可以简单地提取捆绑包中的apk文件并验证它们的签名(然后我会得到一个google签名,如预期的那样)。但这并不适用于所有apk:“base.apk”没有签名。这有什么原因吗?base.apk的签名是否以某种方式包含在其他签名中 编辑:在阅读了Pierres

我知道如何检查应用程序包(apkm)的可信度,但不知道如何检查。有人给我一个提示吗

例如,当检查来自apkmirror的google摄像头捆绑包的签名时,它显示捆绑包是由apkmirror签名的,而不像预期的那样是由google签名的

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


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

所有APK都应该有签名,包括基本签名。确保使用apksigner而不是jarsigner

无法检查签名人是谁。证书包含一些信息,但很容易被伪造,因此不可靠

你必须信任你下载APK的来源,最好的方法通常是询问开发者他们在哪里发布应用并从那里下载。对于谷歌应用,这就是Play商店

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