jarsigner:签名者的证书是自签名警告

问题描述

我正在向 Aptoide 应用商店发布一个应用。他们给了我一个空白的 apk,用我的主应用程序中使用的相同密钥库对其进行签名。我使用 command 和 jarsigner 签署了应用程序。

应用签名成功,但显示警告:

签名者的证书是自签名的

enter image description here

我搜索了它,但大多数可用的解决方案是针对 SSL 证书,而不是 apk 签名。

解决方法

tldr;它对 Android 应用没有任何影响。

首先,您应该使用 apksigner 而不是 jarsigner 来签署您的 APK:apksigner 是专门为 Android 创建的用于签署 APK 并且效率更高,而 jarsigner旨在签署任何 JAR,因此您看到的某些消息在 Android 世界中没有多大意义。

要解释此特定消息,您必须了解在创建证书(在密钥库中)时,该证书也经过加密签名。如果由“受信任的实体”签名,则看到此证书的人可以验证该证书是否由您有效创建。但是,Android 不验证证书的签名(注意:它确实验证APK的签名),所以这个签名是没有用的.由于证书需要签名,最简单的方法是使用颁发证书的私钥对其进行签名:这就是为什么它被称为自签名。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...