移动应用终端的安全及Android手机APP加密技术分析.docVIP

移动应用终端的安全及Android手机APP加密技术分析.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
移动应用终端的安全及Android手机APP加密技术分析

移动应用终端的安全 及Android手机APP加密技术分析 凡事都有两面性,各分利弊。科技的发展给人们带来便利的同时,也带来了想不到的隐患。手机越来越多,手机APP也越来越多,但是,你的安全感是否越来越多了呢?Android系统的开源性,手机APP易被黑客攻击、注入恶意代码、二次打包重新上市场。在此,受损失的不仅仅是手机用户,还有手机APP的开发者、开发商等。如今,寻求手机APP 加 密 方案,保护手机APP的安全已迫在眉睫! 伪加密 伪加密是Android4.2.x系统发布前的手机APP 加 密方案之一,通过java代码对APK(压缩文件)进行伪加密,其修改原理是修改连续4位字节标记为”P K 01 02”的后第5位字节,奇数表示不加密偶数表示加密。 虽然伪加密可以起到一定防破解作用,但也会出现问题,首先使用伪加密对其APK加密后市场无法对其进行安全检测,导致部分市场会拒绝这类APK上传;其次,伪加密的加密方式和解密方式也早已公布导致它的安全程度也大大降低;再次,Android4.2.x系统无法安装伪加密的APK;最后伪加密只是对APK做简单保护,在java层源码加壳保护、核心so库、资源文件、主配文件、第三方架包方面却没有任何保护处理。 混淆保护 把原来有具体含义的类名,变量名,方法名,修改成让人看不懂的名字,例如方法名getUserName编程了方法名。 混淆保护只是增加了代码阅读难度,对于破解基本上是没有实质性作用的! 运行时验证 运行时验证,主要是指在代码启动的时候本地获取签名信息然后对签名信息进行检验来判断自己的应用是否是正版,如果签名信息不是正版则提示盗版或者直接崩溃。当然你可以把必要的数据放在服务器端。 破解:找到smali文件中,判断是否相等的部分。改为常量true,即失效。 总之,反编译一些apk之后,只要是java代码写的总会有smil文件。对于smil文件,如果耐心读的话,还是可以查看到一些关键代码的。 相较于应用来说,游戏apk因为采用cocos2d-x或者 unity3D,采用的是c++和c# 编写的跨平台程序,在apk采用JNI的方式。所以没有smali,可以防止静态被破解apk包。 当然游戏包apk在运行的时候,会把.*so加载到内存中。动态也是可以在内存中抓取相应的数据。只不过NDK相对于smali破解来说,根部不是一个层级的关系。 使用第三方手机APP加密平台 举个栗子: 该classes.dex是原来的代码。没有混淆,没有做任何的手机APP加 密方案保护。反编译的话,源代码暴露无疑。 该classes.dex是经过Android?APK加 密之后的,现在看看反编译之后的效果。 NativeApplication类,加载exec.so和execmain.so?,里面应该是固定的代码,是对源码 SuperApplication继承自Application,程序主入口: 在手机APP加 密方案之后的apk包中,多了一个assets目录,该目录下,有一些ijiami.dat,其实这个就是原来的classex.dex? 综上,爱加密手机APP加密方案步骤: 1.把原来的classex.dex 用Android加密算法实现加密成assets/ijiami.dat,源classex.dex 隐藏起来了,在静态的时候就没有办法对其破解。 2.把事先写好的jni代码和相应的classex.dex替换到原有的位置 3.程序安装完运行起来以后,先运行手机APP加密方案 爱 加 密 的加壳程序,在jni里面动态加载原来的classex.dex代码,从而达到手机APP加密方案保护的目的。 4、其余更多针对内存安全保护、so库文件保护、及防止协议抓包的请前往官网。

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档