之前一篇文章Android proguard代码混淆,我们讲解了如何实现APK的代码混淆,让反编译者不那么容易阅读我们的源代码。虽然我们混淆,做到native层,但是这都是治标不治本的。反编译的技术在更新,那么保护Apk的技术就不能停止。现在有很多Apk加固的第三方平台,譬如爱加密,360加固,梆梆加密等,但是这些平台都是收费的。今天我们给大家介绍一个免费的APK加固工具APK Protect。

测试点评

APK Protect是一款Android APK加密服务,PC Edition免费,其他高级版收费。

服务支持Android 2.1-4.2。

对于APK而言,使用PC Edition加密后其体积增加30-50KB,影响较小。

企业版同时提供Java和C++代码的加密。

提供加密操作流程和视频教程(英文)。

更新比较及时,目前最高支持Android 4.2。

开发建议

APK Protect的免费版(PC Edition)只能保护Java代码,可以满足开发者的部分需求。

APK Protect的高级版本均需付费,且已经停止提供免费试用,加密C++代码需要使用最高级的企业版。

服务不提供中文支持,对开发者的英语水平有一定要求。

集成过程

加固流程

(1)选择版本:有多个版本,此处选用免费版(APK Protect PC Edition)。

我把软件也上传到CSDN服务器,下载地址。

下载后解压目录如下:

(2)目标应用:SplashAct.apk

(3)加密过程:

无需安装,解压后直接运行apkcrypt.exe;

选择需要加密的APK;

指定生成目标的名字;

点击按钮开始加密,软件会在同一目录下生成加密后的APK。

加密前:18823KB

加密后:18885KB

注:点击开始后,可能会弹出错误信息:The application need Java jre , please install jre and retry

解决办法:由于电脑是64位的,我只安装了64位的jre,再去装个32位的jre就可以了

重新签名

获取到加固之后的APK文件,这时还不能立即安装,会提示APK未签名,所以我们需要使用签名工具对其进行签名。

步骤:将刚才生成的加固后的APK文件和keystore放在同一目录下,使用命令行进行签名。

jarsigner -verbose -keystore eastday_sign.keystore -signedjar SplashAct_signed.apk SplashAct.apk eastday

说明:

-verbose 输出签名的详细信息

-keystore eastday_sign.keystore 使用key的绝对路径

-signedjar SplashAct_signed.apk SplashAct.apk eastday 正式签名,三个参数中依次为签名后产生的文件SplashAct_signed.apk ,要签名的文件SplashAct.apk和密钥库(也就是alias)eastday

签名成功,在相同目录下会生成签名后的APK文件。

zipalign(压缩对齐)优化

签名之后的APK文件现在已经可以安装到手机上了,不过在此之前Android还极度建议我们对签名后的APK文件进行一次对齐操作,因为这样可以使得我们的程序在Android系统中运行得更快。对齐操作使用的是zipalign工具,该工具存放于/build-tools/目录下,将这个目录配置到系统环境变量当中就可以在任何位置执行此命令了。命令格式如下:

zipalign -v 4 SplashAct_signed.apk SplashAct_aligned.apk

压缩对齐成功,在相同目录下会生成对齐后的APK文件。

反编译

关于反编译APK不熟悉的同学请看我的这篇文章Android APK的反编译和重新打包。

我们将刚刚加固之后的APK文件(SplashAct_signed.apk或SplashAct_aligned.apk)进行反编译,会报错:

注:关于APK加固的原理有兴趣的同学可以看看这篇文章,Android中的Apk的加固(加壳)原理解析和实现。

用gui工具看反编译后代码也是看不了的,说明APK已经被成功加固了。

安卓应用加固壳判断java厂商_Android APK加固(加壳)工具相关推荐

  1. 壳学习一:PECompact 2.x 加壳脱壳

    壳学习一:PECompact 2.x 加壳脱壳 SkyJacker Http://blog.csdn.net/skyjacker Email:HeMiaoYu <At> gmail.com ...

  2. 【Android 逆向】加壳技术简介 ( 动态加载 | 第一代加壳技术 - DEX 整体加固 | 第二代加壳技术 - 函数抽取 | 第三代加壳技术 - VMP / Dex2C | 动态库加壳技术 )

    文章目录 一.动态加载 二.第一代加壳技术 ( DEX 整体加固 ) 三.第二代加壳技术 ( 函数抽取 ) 四.第三代加壳技术 ( Java 函数 -> Native 函数 ) 五.so 动态库 ...

  3. 安卓逆向笔记--apk加固

    安卓逆向笔记–apk加固 资料来源: 浅谈安卓apk加固原理和实现 Android中的Apk的加固(加壳)原理解析和实现 前两个太老了所以具体代码借鉴下面的 Android Apk加壳技术实战详解 一 ...

  4. 关于apk软件的加固加壳和签名打包

    昨天搞了个apk软件.软件首先通过android killer进行反编译了一下.编译签名后是可以正常使用的.但是和朋友交流后结论是要学习进行一个加固处理. 由于自身目前是小白一个.正在学习网络技术知识 ...

  5. 方舟编译器来了,APK加固还怎么搞

    方舟编译器来了,apk里的代码都变成so文件了,还怎么做加固? 热烈欢迎方舟编译器上线开源! 根据华为发布的方舟编译器架构图可看出,应用方舟编译器后,输出变成了二进制文件,并添加编译器运行时库后最终链 ...

  6. Android之Apk加壳

    基于ADT环境开发的的实现,请参考: Android中的Apk的加固(加壳)原理解析和实现  类加载和dex文件相关的内容,如:Android动态加载Dex机制解析 一.什么是加壳? 加壳是在二进制的 ...

  7. Android Apk加壳技术实战详解

    前言 前几天面试了一家信息加密相关的公司,经过两轮面试原以为坐等HR,结果还有一个实践测试ORZ-面试这么多家公司,真心觉得这家公司很特殊,尤其是那个逻辑测试-算了,不扯远了,走回正题. 面试官加我Q ...

  8. 【胖虎的逆向之路】02——Android整体加壳原理详解实现

    [胖虎的逆向之路](02)--Android整体加壳原理详解&实现 Android Apk的加壳原理流程及详解 文章目录 [胖虎的逆向之路](02)--Android整体加壳原理详解& ...

  9. 病毒加壳技术与脱壳杀毒方法解析

    壳是什么?脱壳又是什么?这是很多经常感到迷惑和经常提出的问题,其实这个问题一点也不幼稚.当你想听说脱壳这个名词并试着去了解的时候,说明你已经在各个安全站点很有了一段日子了.下面,我们进入"壳 ...

最新文章

  1. LeetCode 873. 最长的斐波那契子序列的长度 题目详解
  2. R语言:异常数据处理
  3. spring中需要掌握的25个常用注解
  4. Timeout occurred while waiting for latch: class 'ACCESS_METHODS_DATASET_PARENT'
  5. 三年后,人工智能将彻底改变前端开发?
  6. 定位日站大法之-社会工程学
  7. java 解析json数据流的几种方式
  8. 深入理解配准任务中的STN
  9. 电脑前面板耳机没声音
  10. 如何写linux软件专利,Linux之父:软件专利和方法专利都挺扯淡
  11. 世界生产力科学院院士(中国籍)名单
  12. Vue+ .netcore3.1 模拟QQ邮箱发送验证码
  13. 一些基础的算法知识——《图解算法》
  14. Fenix:Mozilla推出的新型移动浏览器
  15. 刀片服务器部署VMWare vSphere遇到的问题总结
  16. repr函数输出调试信息
  17. JVM/JDK/JRE/IDE—区别
  18. 【精选】小白是如何挖漏洞的(技巧篇)
  19. linux系统网络备份,备份Linux操作系统的几种方法
  20. 断之不疑,奸不能惑,佞不能移

热门文章

  1. 自制黑科技------桌面整理工具
  2. 社团c语言程序设计,C语言课程设计-大学社团管理系统.doc
  3. mysql内嵌插入语句_MySQL中添加或插入语句(Insert)的几种使用方式
  4. Gamma、Linear、sRGB 和Unity Color Space,你真懂了吗?
  5. Embodied Question Answering导读
  6. paraview热流图(1):添加glyphs
  7. 【2023亲测有效】Pandownload 归来!加速效果极佳!
  8. python判断特殊字符的函数,python学习--quote()函数,,屏蔽特殊的字符、比如
  9. 三种查看文件MD5 SHA*等校验值的方法
  10. windows 使用 perfDog 连接 ios手机