Android混淆代码学习以及Android加密工具--APKProtect的使用ZZ

http://my.eoe.cn/yizhihenanjing/archive/18083.html

作者:一个人的旅程更新于10月21日访问(1771)评论(3)

一:情景分析

有时候看到其他应用App的一些效果很炫,或者是功能实现很好就想着参考参考,于是乎,下载APK----反编译APK---查看源码。。。。,但是悲剧来了。。。。源码都是些a,b,c。。。等等这样的东东,根本啥都看不明白,后来了解到这是程序的作者保护自己劳动成果的“手段”,于是乎自己就想咱也试着“保护一下”自己的劳动成果吧,至此开启了“Android混淆代码”的旅程

二:初始

了解到Android混淆代码这个名词以后,于是乎 百度。。谷歌。。。,哇哦看来大家都已经掌握了这门技能了(自己落后了。。。。),介绍此技能的技术文档,博客是一大批一大批的啊。。。。于是乎自己找了一个相对详细的教程开始学习

三:实践

  参考教程地址
  http://my.eoe.cn/eric_wu/archive/4358.html
  http://blog.sina.com.cn/s/blog_6944483201017oex.html
   (有了这些教程之后,接下来就要靠自己实践,自己掌握了)
  

根 据以上教程的介绍,混淆代码方法有两种,一种是低版本的混淆,一种是高版本的混淆

鉴于自己的版本是高版本的,因此就实践了高版本的混淆
  
按照教程步骤如下:
  

1:打开project.properties

  哇哦 一大段英文。。。。。。 不过仔细阅读 还是可以懂滴,看到一句这样的话
  

意思是说 想要混淆代码 就将下面那句话取消注释,于是乎 咱就取消注释呗。教程中有说要将配置信息放在target=android-8之后,至此简单的混淆代码就完成了(前人种树,后人乘凉啊)

在搜索Android混淆代码的知识点时,也有一些比较深层次的内容,比如如果项目引入了第三方库,该怎样混淆,如果自己将自己的项目作为第三方库给别人使用,又怎样混淆.鉴于自己还没有涉及这方面的知识,所以就暂且不深入学习,只做个大概了解(知识是无穷无尽的。。。。。)

四 扩展

在调查Android混淆代码的时候,看到了一个工具:APKProtect

地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=304353

虽然文档标题是混淆工具,不过因为我在实践的时候,发现它并没有提到混淆的作用,于是乎询问了作者,作者说这个不是混淆工具,是加密工具,目前只做了Activity,service,reciver的加密,加密的通俗意思是:反编译apk之后,就看不到Activity,service,reciver这些class文件了

接下来呢 就是咱们动手实践的时间了

下载APKProtect这个工具,下载完成后解压,看到

双击打开.exe文件

选择将要加密的apk,不做任何设置,工具会自动命名之后保存的加密的apk名字,你也可以自己命名
Android混淆代码学习以及Android加密工具--APKProtect的使用ZZ

点击protect按钮,然后等待,出现process done 对话框之后

至此 加密工作完成,反编译一下 瞧瞧 哇哦 Activity没有了!!!话说还不能高兴的太早,将加密后的文件运行到Android手机上 See See ,咦。。。。不幸的事情发生了。。。。。

不能安装,提示信息是证书有问题,后来询问了作者,作者说加密的apk要重新在签名一次并且需要设置
于是乎打开工具,在主界面看到了Protection option ,里面有一些设置信息,既然安装apk时说是我们的签名有问题,那就设置我们的签名,因为我用的是自己自定义的签名所以进入设置界面,进行相关设置,然后保存,再加密文件

在填写设置信息中,要填写keystore的相关信息,因为keystore创建很久了,一些信息忘记了,于是乎要查看keystore的相关信息怎么查看呢,百度。。。谷歌。。。。

查看Keystore相关信息:

在命令行中,到jdk/bin文件下 然后输入
keytool -list -v -keystore (keystore的位置)
就可以看到相关信息了

扩展,怎样生成自定义的keystore

在命令行中, 到jdk/bin文件下 然后输入

keytool -genkey -alias android.keystore -keyalg RSA -validity20000-keystore android.keystore

-alias 密钥别名

-keyalg 密钥算法

-validity 密钥有效期

总结:既然在加密apk的时候要重新签名APK,那么我们可以在Eclipse导出apk时,先不签名,然后在加密的时候在签名

五:感想
至此呢,我们就给APK加了“双层保护”,也保护了我们的劳动成果!完美收工

声明:eoe文章著作权属于作者,受法律保护,转载时请务必以超链接形式附带如下信息

原文作者:一个人的旅程

  

爱华网本文地址 » http://www.aihuau.com/a/25101014/227323.html

更多阅读

httpwatch抓包工具的使用方法 铁夹子夹野兔安装图片

httpwatch抓包工具的使用方法——简介火狐浏览器下有著名的httpfox,而HttpWatch则是IE下强大的网页数据分析工具。这个工具到底有哪些具体功能呢?这个我就不再赘述了,百度百科上列的很全面,但也比较抽象。我只想说我曾经用这个工具去分

硬盘坏道检测工具-MHDD详细使用教程 mhdd怎么修复硬盘坏道

?当系统磁盘出现坏道的时候,往往会出现开机就扫描硬盘,或在开机时一直卡在滚动条位置无法正常进入系统,又或者出现电脑蓝屏的问题,而这些问题只是让我们怀疑硬盘出现坏道,这时我们就得出现一些专业的工具进行专门的磁盘扫描了,这时可以用

声明:《Android混淆代码学习以及Android加密工具--APKProtect的使用ZZ》为网友凉心骚年分享!如侵犯到您的合法权益请联系我们删除