声明:本文非原创,是网上相关资料的一个总结!
参考:
Android查看应用签名方法
获取apk证书MD5值的方法
查看apk文件的签名
方法一
首先解压要查看的apk包,通过数据证书管理工具keytool查看apk的签名信息。具体步骤如下:
1)将apk修改后缀为.rar
文件后进行解压;
2)进入解压后的META-INF
目录,找到该目录下的xxx.RSA
文件;
3)打开Terminal终端,输入命令 :
keytool -printcert -file [RSA文件路径]
方法二
直接执行命令:
keytool -printcert -jarfile xxx.apk
查看keystore文件的信息
利用keytool查看
如果我们直接有签名的.jks文件,可以直接查看其相关信息。
执行下边命令:
keytool -list -v -keystore xxxx.jks -storepass 签名文件密码
或者手动输入密码:
keytool -list -v -keystore xxxx.jks
利用Android Studio查看
如果是我们自己的项目,可以通过AS直接查看:
打开 AS工具窗口栏右边的Gradle -> Project -> app -> Tasks -> android -> signingReport
,双击运行 signingReport
signingReport
运行完后,就可以看到debug和release版签名的相关信息。
AS新建签名文件报警告⚠️
在最近的几个版本的AS中,新建keystore之后,会弹出一个警告:
JKS 密钥库使用专用格式。建议使用 “keytool -importkeystore -srckeystore xxx.jks -destkeystore xxx.jks -deststoretype pkcs12” 迁移到行业标准格式 PKCS12。
这里先了解一下两种格式的不同:
JKS(Java KeyStore)
:是 Java 的 keytools 证书工具支持的证书私钥格式。jks 包含了公钥和私钥,可以通过 keytool 工具来将公钥和私钥导出。因为包含了私钥,所以 jks 文件通常通过一个密码来加以保护。一般用于 Java 或者 Tomcat 服务器。
PKCS #12
:定义了一种存档文件格式,用于实现存储许多加密对象在一个单独的文件中。通常用它来打包一个私钥及有关的 X.509 证书,或者打包信任链的全部项目。
那么就按提示操作即可:
1)在终端输入命令 :keytool -importkeystore -srckeystore [签名文件路径] -destkeystore [签名文件路径] -deststoretype pkcs12
命令把 JKS 格式证书转换成 PKCS12 格式证书;
2)转换成功后,就会在目标文件夹看到新的替换签名证书xxx.jks
和旧的重命名签名证书xxx.jks.old
。
转载地址:https://blog.csdn.net/aiynmimi/article/details/102709981