防止工具(八门神器)进行内存修改的方法

来源:互联网 发布:雅思作文 知乎 编辑:程序博客网 时间:2024/05/09 04:42

http://www.eoeandroid.com/home.php?mod=space&uid=1297371&do=blog&id=48170


Android内存修改器有很多。拿其中的比较出名的八门神器来说,该应用通过修改正在运行的游戏的内存数据,可以非常方便地修改游戏的HP、MP、生命数等等参数。辛辛苦苦开发的游戏或应用被修改器一修改就悲催了。下面就通过一个demo来讲下,怎么通过多数据关联来保护应用的重要数据不被修改。<<<安卓APP破解技术有哪些?如何防反编译

这个demo很简单,只有一个TextView和一个Button。点击Button,TextView加一。

运行八门神器,锁定gold内存地址,把值改为999。然后点击Button,click方法中,代码从内存中读取了被修改的gold值,并把它+1显示到TextView。TextView显示1000,数据修改成功。

 

下面我们对代码进行下修改,增加一个变量goldMd5用来存放加密后的gold值。这样我们就用了两个变量来保存gold的值,一份加密的和一份未加密的变量。

 

 

  每次使用gold值时都对获取的gold进行md5加密然后与goldMd5进行比较。如果不相同,说明gold值被修改了。我们可以判断为作弊了,我这里对作弊的处理是把gold值改为0,并提示作弊。如果加密数据使用的des算法,还可以通过解密goldMd5,来获取真实的gold值。

 

下面测试下demo还能不能被修改。使用八门神器把gold改为999。

 

然后点击Button,数据修改失败。


0 0
原创粉丝点击