Site Overlay

亚博APP|浅谈安卓apk加固原理和实现

本文摘要:章节目录:在安卓系统产品研发中,包发布是产品研发的最后一个阶段,apk是全部新项目的源代码和資源的集合体;针对不明白点反汇编原理的人能够精彩纷呈编译器出有apk的源代码資源,而且能够修改資源编码、新的包编译器,轻松变成自身的apk或是修改在其中一部分窃取客户信息。

亚博APP官方版

章节目录:在安卓系统产品研发中,包发布是产品研发的最后一个阶段,apk是全部新项目的源代码和資源的集合体;针对不明白点反汇编原理的人能够精彩纷呈编译器出有apk的源代码資源,而且能够修改資源编码、新的包编译器,轻松变成自身的apk或是修改在其中一部分窃取客户信息。编码被反汇编针对apk的开发人员和使用人来讲十分疑惑。apk修整、防止反汇编这时越来越至关重要。

尽管有许多给apk修整的第三方,有可能并不一定自身保证apk修整,可是了解apk修整原理還是很有适度的。文中关键向大伙儿解读apk修整原理和比较简单搭建。文件目录:一、apk罕见修整方法二、apk修整原理三、apk修整搭建四、apk该方法修整后缺少一、apk罕见修整方法(1)编码等级数据加密--编码误会编码误会是一种常见的加密算法。实质是把工程项目中本来的有确立含意的类名、用户标识符、方式名,修改成令人不明白的姓名。

亚博APP官方版

罕见的编码误会专用工具proguard(有兴趣爱好的能够自身看一下该专用工具:http://t.cn/ELjgHdi)。该加密算法仅仅对工程项目获得了超过的维护保养,并并不是讲到没法反向登陆密码;仅仅讲到可玩度降低,务必理智。(2)Dex文件数据加密dex是Android工程项目中的编码資源文件,根据dex能够反汇编出有java编码。

dex的加壳是罕见的加密算法。根据对dex文件数据加密拼接加壳,能够合理地的对工程项目编码进行维护保养。apk工程项目在改装成功后,app起动的时候会有dex破译的全过程,随后新的载入破译后的dex文件。

第二种加密算法也就是文中要为大伙儿共享资源的加密算法。基础原理是在jni层,用以DexClassLoader动态性载入技术性顺利完成对数据加密classex.dex的动态性载入,dex文件能够附设在assert或raw文件目录。二、apk修整原理(1)apk文件构造可实行文件一个apk包在,能够看到以下文件目录构造:assets:储放在工程项目資源(照片、当地html等)文件的文件目录Lib:储放在ndk编译器出去的so文件(so:C/C++编译器出带的文件)META-INF:该文件目录下储放在的是手写签名信息,用于保证 apk包到的一致性和系统软件的安全系数:CERT.RSA:存留着该应用软件的资格证书和批准信息CERT.SF:存留着SHA-1信息資源目录MANIFEST.MF:报表信息res:储放在資源(合理布局xml、合理布局xml提及照片等)文件的文件目录AndroidManifest.xml:报表文件,它描述了运用于的姓名、版本号、管理权限、备案的服务项目等信息classes.dex:java源代码编译器历经编译器后溶解的dalvik字节码文件,关键在Dalvikvm虚拟机上经营的关键编码一部分resources.arsc:编译器后的二进制資源文件META-INF文件主要是跟手写签名相关的文件,保证 了apk的一致性和安全系数。

亚博APP官方版

apk每一次新的手写签名务必清除该文件夹。务必大伙儿关键瞩目的是classes.dex文件:由于apk修整主要是对dex文件进行的数据加密。(2)Dex文件构造Java源文件溶解Dex文件的同构关联dex文件能够讲解为由java文件编译器生产制造的,形象化展示出便是dex文件能够编译器出有java源代码;dex文件的具有是纪录全部工程项目(一般来说是一个Android工程项目)的全部类文件的信息;dex文件是指class文件演变而成的,class文件不会有校检信息,dex文件则去除开校检,而且整合了全部工程项目的类信息。

Dex文件构造文件头header包含了dex文件的信息,也是大伙儿务必瞩目的一部分。由于下边的作业者中会出现dex文件的修改作业者,而鉴别是不是精确的dex文件是由header一部分规定的。

下边看一下header一部分的信息:structDexFile{DexHeaderheader;DexStringIdStringIds[StringIdsSize];DexTypeIdTypeIds[typeIdsSize];DexProtoIdProtoIds[protoIdsSize];DexFieldIdFieldIds[fieldIdsSize];DexMethodIdMethodIds[methodIdsSize];DexClassDefData[];DexLinkLinkData;}Dex文件header一部分建筑结构信息Header一部分有务必注意的三个字段:checksum字段、signature字段、filesize字段。checksum字段:checksum是检验码字段,校检dex数据信息的一致性signature字段:signature是SHA-1手写签名字段,dex数据库安全校检signature字段:存留classes.dex文件总长往往瞩目这三个字段,是由于后边不容易有对dex的新的拼接。dex拼接后要修改这三个字段,字段修改精确后才能够保证 dex的精确载入。

本文关键词:亚博APP下载,亚博APP,亚博APP官方版

本文来源:亚博APP下载-www.nnetis.com

网站地图xml地图