APK包签名相关

查看APK包签名公钥信息,可以比对两个APK包的签名是否一样。执行的步骤如下:

1、用解压文件打开APK包,接入META-INF目录可以看到如下三个文件:


三个文件的说明如下:

MANIFEST.MF:这个是摘要文件。是对APK包每个文件(非文件夹,非签名文件)逐个用SHA1算法生成摘要并且用Base64进行编码。如果你改变了apk包中的文件,那么在apk安装校验时,改变后的文件摘要信息与MANIFEST.MF的检验信息不同,程序就不能成功安装。并且此文件名是不能修改的。


CERT.SF:这个文件是对摘要文件进行SHA-RSA算法用开发者的秘钥进行签名。只能用开发者公钥解密。如果解密后的文件盒MANIFEST.MF文件对应不上,就说明APK包是被修改过的,此时APK包是安装不了的。(名字可以修改,比如改成TEST.SF,但后缀不能改,并且要和.RSA文件名保持一致)


CERT.RSA:保存了公钥和相关的加密算法信息。(名字可以修改,比如改成TEST.RSA,但后缀不能改,并且要和.SF文件名保持一致)


二、拷贝出CERT.RSA文件出来

三、使用keytool.exe提取公钥的命令

命令行:C:\Program Files (x86)\Java\jdk1.6.0\bin>keytool.exe -printcert -file APK包的.RSA路径

就可以查看到签名公钥信息。比如我的Eclipse默认签名公钥如下:



如果要对比两个APK包签名是否使用同一个签名,那么只要对比证书指纹就可以了,如果相同的话,那么就是使用的同一个签名。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值