本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:
1.如何验证apk是否签名成功2.apk比对keystore的签名信息发布过Android应用的朋友们应该都知道,Android APK的发布是需要签名的。签名机制在Android应用和框架中有着十分重要的作用。 —— [ csnd博客 ]
cmd命令代码:jarsigner -certs -verbose -verify xxx.apk 下面是验证过签名apk的输出结果:
1.第一步需要输出keystore的签名信息,如所有者,发布者,序列号,创建时间等等,还有最为重要的证书指纹。证书指纹里面就有加签的算法 ,MD5,SHA1,SHA256,签名算法名称,这些信息。 cmd命令行代码:keytool -list -v -keystore apk.keystore 下面是keystore的签名信息: 2.第二步将XXX.apk的签名信息打印出来 (1)查找apk里的rsa文件 Windows 平台: jar tf demo .apk |findstr RSA Linux 平台: jar tf demo .apk |grep RSA META-INF/CERT.RSA (2) 从apk中解压rsa文件 jar xf demo .apk META-INF/CERT.RSA (PS:获取rsa文件也可以将apk解压里面就META-INF文件夹,该目录下就可以找到相应的rsa文件了) 获取签名的fingerprints (3)keytool -printcert -file META-INF/CERT.RSA 根据上一步得到keystore 的签名信息来比对,签名证书的MD5 和 SHA1 相同就是,否则不是。
cmd命令行: keytool -printcert -jarfile XXX.apk