当前位置:首页 > 安卓软件 > 正文
Apk分析 Pro+中文手机版 安卓软件

Apk分析 Pro+中文手机版

2023-05-29 15:10 类别:安卓软件

  • 发布日期:2023-05-29
  • 所属类别:安卓软件
  • 下载人数:546
  • 版本:4.2 安卓最新版
  • 大小:16.7M

立即下载

扫二维码手机浏览

Apk分析 Pro+中文手机版介绍

用户自己制作的一款apk签名分析工具,Apk分析 Pro+是一个支持中文的免费工具,软件中用户可以一键去除一些低中稍高的签名校验,还可以支持多种方式一键去签,对于喜欢研究apk文件的朋友来说非常实用。

Apk分析 Pro 中文手机版

Apk分析 Pro+使用注意

1、因为某加固问题导致首次启动较慢。

2、第二次启动或多次启动几次即可解决。

软件特色

可一键去除一些低中稍高的签名校验

支持多种方式一键去签

Apk分析 Pro 中文手机版

很专业的apk分析工具

支持文件标签时间转换,十六进制转换

APK签名校验分析

找到PackageParser类,该类在文件“frameworks/base/core/java/android/content/pm/PackageParser.java”中。PackageParser类的collectCertificates方法会对APK进行签名校验,在该方法会遍历APK中的所有文件,并对每个文件进行校验。

Apk分析 Pro 中文手机版

APK是一个ZIP格式的文件所以使用ZIP相关的类进行读写。上面代码中调用了loadCertificates方法,这个方法返回一个二维数组,如果APK中的文件签名校验失败那么loadCertificates方法会返回一个空数组(可能是null,可能是数组长度为0),按照上面代码的逻辑如果数组为空则会抛出异常。

verifiedEntries是一个键值对,键是APK中经过了签名的文件名,如:classes.dex文件,值是证书数组。如果向已经签过名的APK中新添加一个文件然后安装这个APK,当程序逻辑执行到JarVerifier.getCertificateChains方法中时,在verifiedEntries变量中无法找到新添加的文件名(因为这个新文件是在APK签名之后添加),那么JarVerifier.getCertificateChains方法将返回null。

扩展阅读

安卓系统本身在安装app时会对app验证签名。

测试步骤: 在本机上有一个低版本的app,然后安装一个高版本的app(分发时用不同的证书签名),

安装提示:安装失败“更新包与已安装应用的签名不一致”

建议卸载,卸载当前版本后,可以安装成功!(这个没法控制用户,,所以可以考虑在app启动时验证签名)

App启动时检测签名是否正确

对比apk签名证书的SHA1值是否自己用的签名证书的值,而不是被别人篡改过的证书的值(防止自己的应用被反编译后重新打包)

1、获取自己对app分发时签名证书的SHA1值

首先进入CMD,然后输入:

keytool -exportcert -list -v -alias huyNew -keystore "C:\Users\huy\AppData\Local\Xamarin\Mono for Android\Keystore\huyNew\huyNew.keystore"

回车

在提示下输入密钥口令(是自己设置的密码) (注:此时输入字符cmd是不显示的,请输入完整后直接回车。如果失败说明你输错了)

版权说明:如非注明,本站文章均为 PS自学网 原创,转载请注明出处和附带本文链接;

本文地址:https://app.pszxw.com/app/45305.html