CN103544414B - 一种Android系统应用的深度代码混淆方法 - Google Patents

一种Android系统应用的深度代码混淆方法 Download PDF

Info

Publication number
CN103544414B
CN103544414B CN201310509882.XA CN201310509882A CN103544414B CN 103544414 B CN103544414 B CN 103544414B CN 201310509882 A CN201310509882 A CN 201310509882A CN 103544414 B CN103544414 B CN 103544414B
Authority
CN
China
Prior art keywords
code
obscured
instruction
dex file
obfuscation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310509882.XA
Other languages
English (en)
Other versions
CN103544414A (zh
Inventor
汪德嘉
宋超
刘家郡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu pay shield information Safe Technology Ltd
Original Assignee
JIANGSU PAYEGIS INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JIANGSU PAYEGIS INFORMATION TECHNOLOGY Co Ltd filed Critical JIANGSU PAYEGIS INFORMATION TECHNOLOGY Co Ltd
Priority to CN201310509882.XA priority Critical patent/CN103544414B/zh
Publication of CN103544414A publication Critical patent/CN103544414A/zh
Application granted granted Critical
Publication of CN103544414B publication Critical patent/CN103544414B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明揭示了一种Android系统应用的深度代码混淆方法,采用分级代码混淆处理实现,该分级代码混淆处理包括第一级的名称替换混淆,第二级的指令插入混淆,第三级的结构流程混淆和第四级的指令反转混淆,对任意已开发完毕待发布的应用安装包,提取dex文件并分析文件结构、Dalvik指令集和程序运行流程,确定选用相应级别或多级组合的混淆方案对dex文件进行深度代码混淆,生成新的dex文件并重新打包。应用本发明深度代码混淆的技术方案,能突破传统基于源代码的代码混淆方案的局限,对dex可执行文件从要素名称、指令、流程结构等方面直接进行混淆,能有效地防止应用程序被非法破解或者逆向,提高了Android系统上应用程序的安全性,保证了商业软件的机密性。

Description

一种Android系统应用的深度代码混淆方法
技术领域
本发明涉及一种应用程序代码的混淆隐藏方法,尤其涉及一种在保持代码语义不变的前提下,对代码进行尽可能的系统改写和变形,隐藏代码原本的结构,从而达到提高代码静态阅读和理解难度的目的,可应用在Android等移动平台的应用软件的开发中,对应用软件版权强化保护。
背景技术
对于以软件开发为支柱的企业而言,任何一个软件系统都是各个公司付出极大的人力和物力后获得的成果,因此软件代码的保护对每个公司或团体来说都是至关重要的。如果一个团队凭借夜以继日的工作开发出来的功能被竞争对手轻易复制并集成到自己的系统中,这对公司的打击和对行业的公平性都有极大的影响。
为了增大竞争对手或其它黑客对软件代码的逆向难度,进而增强对软件的保护能力,代码混淆技术才不断发展。假定只要有足够的时间和资源,黑客总能成功地逆向分析出任何一个程序。换而言之,即没有哪个隐含在程序中的秘密能够永远不被发现。使用代码混淆技术的目标只是尽量延长黑客破解所需的时间,使其因破解获取的信息的价值远小于其耗费的时间和精力的价值,同时又不使由此增加的性能开销大到自己承受不了的地步。一般而言,只要代码被混淆得足够复杂,基于理性的分析黑客可能就会放弃攻击。而在混淆代码时一般也会考虑效率问题,所以要选择正确的混淆方式和混淆算法(或者混淆算法的组合),对最重要的代码进行混淆,以保证混淆后的代码不会慢到(或大到)客户无法忍受的地步。
在Android平台,已经引入了代码迷惑技术。但是经过技术人员的研究表明,Android平台现有的代码迷惑技术主要包括类名的混淆、类中字段名的混淆、类中方法名的混淆。从技术上看,这些混淆技术还处于比较低级的层次,这种层级的混淆对提高黑客逆向工程的难度没有多大的作用。特别针对程序的核心Activity使用常见的代码混淆技术是不能对其进行混淆的,否则将影响程序的正常运行。另一方面,Android系统中现有的代码迷惑技术没有很好的处理程序的控制结构和调用结构,很多成熟的代码混淆技术没有得到充分使用。
此外,还考虑到即使在Android应用的Java源码级别对程序进行更高级别的混淆,例如插入大量迷惑代码、改变代码结构等。因为Android可执行文件dex的生成需经过从Java源码到class文件再由class文件到dex文件两个阶段,Java编译器和dex编译器都会对代码进行一定程度上的优化,所以源码级别上的代码混淆能收到怎样的效果是一个未知数。
发明内容
针对上面提到的种种当前Android代码混淆方面的不足,本发明的目的旨在提出一种Android系统应用的深度代码混淆方法,从一个全新的角度诠释Android代码混淆技术。
本发明的上述目的,其得以实现的技术解决方案为:一种Android系统应用的深度代码混淆方法,其特征在于:所述深度代码混淆方法针对Android系统中应用的dex文件并对其中Dalvik指令做分级代码混淆处理实现,所述分级代码混淆处理包括第一级的名称替换混淆,第二级的指令插入混淆,第三级的结构流程混淆和第四级的指令反转混淆,对任意已开发完毕待发布的应用安装包,提取dex文件并分析文件结构、Dalvik指令集和程序运行流程,确定选用相应级别或多级组合的混淆方案对dex文件进行深度代码混淆,生成新dex文件并重新打包,其中所述名称替换混淆指的是通过解析dex文件获知对应变量、类、方法的具体定义和名称,采用算法或算法组合将名称改为意义不同的字符-数字组合;
所述指令插入混淆指的是将未使用的无效指令或有效指令掺合无效数据自定制成无效指令集合,在无效指令集合中随机抽取部分指令插入dex文件中对程序功能代码的执行流程无影响的位置;
所述结构流程混淆指的是对程序功能代码的执行流程进行乱序混淆,使Dalvik虚拟机运行乱序混淆后的代码流程与原始代码流程一致,而反编译乱序混淆后的代码流程静态阅读时与原始代码流程无相关性;
所述指令反转混淆指的是在dex文件中复合一个隐密性的预启动程序,dex文件被预启动程序依据正确的Dalvik指令集对应的二进制码进行大小端反转后重新打包,并在Dalvik虚拟机中首先运行预启动程序对大小端再进行复原。
应用本发明深度代码混淆的技术方案,能突破传统基于源代码的代码混淆方案的局限,对dex可执行文件从要素名称、指令、流程结构等方面直接进行混淆,能有效地防止应用程序被非法破解或者逆向,提高了Android系统上应用程序的安全性,保证了商业软件的机密性。
附图说明
图1为本发明深度代码混淆的系统框图。
图2为本发明深度代码混淆的方法流程图。
具体实施方式
本发明为应对日益严重的移动操作系统的客户端安全,创新地提出了一种针对Android系统中应用程序深度代码混淆的技术。该技术方案能突破传统基于源代码的代码混淆方案的局限,利用应用程序安装包中dex文件可以在Dalvik虚拟机中直接运行的便利条件,从而对dex文件直接进行混淆。
(1)从Dalvik指令的角度对程序进行全新的混淆。对已经开发完毕准备发布的Android应用的安装包进行混淆,提取其中的dex可执行文件,对程序的Dalvik指令进行混淆。
(2)根据Dalvik指令的特点确定混淆级别(深入到Dalvik指令组成结构)并定制有效的分级代码混淆处理,确定选用相应级别或多级组合的混淆方案对dex文件进行深度代码混淆。该分级代码混淆处理包括第一级的名称替换混淆,第二级的指令插入混淆,第三级的结构流程混淆和第四级的指令反转混淆。
本发明在不影响程序开发人员正常的开发流程的情况下直接对Android应用的安装包进行混淆,生成新dex文件并重新打包。其中根据dex可执行文件的结构以及Dalvik指令集的特点可以进行如下混淆。
作为第一级的名称替换混淆,参考源代码级混淆方案,依照其原理并将其在dex文件中实现,即对dex文件中的Dalvik指令的相应位置进行改写,混淆变量名、类名以及方法名等。由于这不是基于源代码的,省去了编译器的优化和处理,在不影响运行的情况下得到的混淆结果就是虚拟机最终的执行结果。其具体实现应该首先需要对dex文件的结构进行完整解析,分别找到对应变量、类和方法定义在dex文件中的入口;然后通过入口接触到所有的变量、类和方法的具体定义并获取到这些定义中所需要的名称;最后将这些变量、类和方法的名称用某些算法(或者是算法的组合)进行改写,将其转变成一些无意义的字符或者数字的组合。此外最好将此次改写定义为一种不可逆的行为,这样使黑客很难将程序可逆成原本的面目,进而可以防止黑客根据变量、类或者方法的名称对程序的功能进行猜测。
作为第二级的指令插入混淆,对dex文件进行分析,在合适的部位插入一些在Dalvik指令集中定义但是并未正式使用的无效指令,或者在有效指令之后插入一些无效数据。这样不会对应用程序的安装和运行造成影响,但是却对正常的程序运行逻辑进行干扰,并且对反编译工具有很好的对抗效果。其具体实现应该首先先对Dalvik指令集进行完整的分析,找出那些预留的并没有正式使用的无效指令,或者自定义一些有效指令和无效数据的组合,将其形成一个指令集合;然后对dex文件进行分析,在程序的代码区找出一些对程序本身运行流程没有影响的位置;最后,从无效指令集合中随机选取一些指令,分别插入到这些对应的位置上,由此就形成了一个在随机位置包含随机无效指令的新的dex文件。这样使得自动化的反编译工具在大部分情况下会崩溃,但是对于手动分析程序结构的黑客影响仅限于增加了其逆向工作的工作量。
作为第三级的结构流程混淆,在详细分析dex文件结构的基础上,对整个应用程序的组成结构进行混淆,使程序的整个运行流程看似发生了改变,更好地隐藏应用程序的本身的运行逻辑。其具体实现需要在掌握整个程序运行流程的基础上对功能代码的执行流程进行乱序混淆,而当Dalvik虚拟机运行乱序混淆后的代码流程却和原始代码流程是一样的,但反编译出来的代码流程静态阅读时与原始流程有很大差异,使破解者很难通过静态分析理解代码功能,从而保护代码不被逆向分析。比如,原始的代码流程是a-b-c-d-e,经过乱序混淆后静态反汇编查看到的代码流程可能变成b-d-c-a-e,但是代码在实际运行时流程仍然是a-b-c-d-e。
作为第四级的指令反转混淆,基于Dalvik指令集,将应用程序中涉及到的指令对应的二进制码进行大小端的反转,通过运行时在程序启动之前用特殊方法再转变过来。黑客去静态分析这样一个经过大小端反转的安装程序是根本无效的,极大地提高了应用程序的安全性。其具体实现为提取应用程序安装包中的dex,并添加一个自己的预启动程序,这个程序实现的功能是,依据正确的Dalvik指令集对原本的dex文件进行大小端反转,包括正向和逆向。经过反转之后的dex文件重新打包成应用程序安装包,在系统中运行时预启动程序首先运行,对大小端反转的程序进行复原使得虚拟机可以正确运行。这样处理之后,如果黑客拿到程序的安装包进行逆向分析,那么其逆向之后得到的将是一个字节码完全混乱的文件,很难获取到有用的信息。
本发明深度代码混淆器综合利用上述四种混淆方案,然后再辅以有效的算法通过Dalvik指令集的组成结构计算不同dex文件中Dalvik指令的构成,从而确定混淆级别,对不同的dex文件可以实现不同级别的混淆方案或者多种混淆方案的组合。
从图1的深度混淆系统框图中可以看到,本发明深度代码混淆方法针对进入系统中的dex文件,首先利用dex文件分析模块进行处理,该模块利用Dalvik指令集的特点,对dex文件中的指令类型进行分析,从而确定可以实施的混淆方案,得到的混淆方案可以是单独的某一种混淆方案,也可以是几种方案的组合。将确定的混淆方案传递给方案选择模块,选取合适的混淆模块进行处理,最后将处理好的dex文件输出。
从图2可以看到深度代码混淆方案是整个程序从发布到运行的流程中的作用。首先深度代码混淆器根据应用程序安装包提取对应的dex文件,然后自己通过图1中的各个模块处理之后得到混淆过后的dex文件,把这个dex文件重新打包到应用程序安装包里面并由Android操作系统进行安装,进过操作系统的处理将此安装包中的dex文件交由Dalvik虚拟机进行运行,经过混淆的dex文件由此得到执行。
实施例一:当有黑客拿到经过本发明深度代码混淆器第一级混淆的安装包之后,如果利用现有的反编译工具进行反编译可以得到反编译的文件,但是得到的文件中所有的变量、类和方法名都会变为无意义的字符或数字序列,增加其静态分析的工作量。
实施例二:当有黑客拿到经过本发明深度代码混淆器第二级混淆的安装包之后,使用反编译工具进行反编译直接会造成反编译工具的崩溃,导致得不到任何有用的文件;若黑客自己针对dex文件进行手动分析,那么其中插入的各种无效指令以及有效指令和无效数据的组合会对分析流程造成很大障碍,造成其逆向工作的工作量飙升。
实施例三:当有黑客拿到经过本发明深度代码混淆器的第三级混淆的安装包之后,不管是使用反编译工具还是自己对dex文件手动分析,在表面上都只能看到伪造的程序流程,真正的执行流程被隐藏起来,虽说不能彻底防止逆向分析,但是也很好地实现了增加逆向分析复杂度的目的。
实施例四:当有黑客拿到经过本发明深度代码混淆器的第四级混淆的安装包之后,首先根本不能使用反编译工具进行反编译,会直接导致反编译工具的崩溃,而且当手动针对dex文件分析时也不能得到有用的信息,因为dex文件中的字节码都是大小端反转的,因此此时参考Dalvik对指令进行分析只可能得到错误的结果,此种方案具备很强的安全性。
若是综合使用其上两个以上的组合混淆方案进行深度代码混淆,令黑客或黑客工具同时崩溃,势必彻底杜绝Android系统或其它移动平台下所开发的功能应用的逆向破解。
综上所述可见,应用本发明深度代码混淆的技术方案,能突破传统基于源代码的代码混淆方案的局限,对dex可执行文件从要素名称、指令、流程结构等方面直接进行混淆,能有效地防止应用程序被非法破解或者逆向,提高了Android系统上应用程序的安全性,保证了商业软件的机密性。

Claims (1)

1.一种Android系统应用的深度代码混淆方法,其特征在于:所述深度代码混淆方法针对Android系统中应用的dex文件并对其中Dalvik指令做分级代码混淆处理实现,所述分级代码混淆处理包括第一级的名称替换混淆,第二级的指令插入混淆,第三级的结构流程混淆和第四级的指令反转混淆,对任意已开发完毕待发布的应用安装包,提取dex文件并分析文件结构、Dalvik指令集和程序运行流程,确定选用相应级别或多级组合的混淆方案对dex文件进行深度代码混淆,生成新dex文件并重新打包;其中
所述名称替换混淆指的是通过解析dex文件获知对应变量、类、方法的具体定义和名称,采用算法或算法组合将名称改为意义不同的字符-数字组合;
所述指令插入混淆指的是将未使用的无效指令或有效指令掺合无效数据自定制成无效指令集合,在无效指令集合中随机抽取部分指令插入dex文件中对程序功能代码的执行流程无影响的位置;
所述结构流程混淆指的是对程序功能代码的执行流程进行乱序混淆,使Dalvik虚拟机运行乱序混淆后的代码流程与原始代码流程一致,而反编译乱序混淆后的代码流程静态阅读时与原始代码流程无相关性;
所述指令反转混淆指的是在dex文件中复合一个隐密性的预启动程序,dex文件被预启动程序依据正确的Dalvik指令集对应的二进制码进行大小端反转后重新打包,并在Dalvik虚拟机中首先运行预启动程序对大小端再进行复原。
CN201310509882.XA 2013-10-25 2013-10-25 一种Android系统应用的深度代码混淆方法 Active CN103544414B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310509882.XA CN103544414B (zh) 2013-10-25 2013-10-25 一种Android系统应用的深度代码混淆方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310509882.XA CN103544414B (zh) 2013-10-25 2013-10-25 一种Android系统应用的深度代码混淆方法

Publications (2)

Publication Number Publication Date
CN103544414A CN103544414A (zh) 2014-01-29
CN103544414B true CN103544414B (zh) 2015-08-19

Family

ID=49967858

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310509882.XA Active CN103544414B (zh) 2013-10-25 2013-10-25 一种Android系统应用的深度代码混淆方法

Country Status (1)

Country Link
CN (1) CN103544414B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049897A (zh) * 2019-12-10 2020-04-21 北京百度网讯科技有限公司 小程序包的加密上传和解密部署方法、装置、设备和介质

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866293B (zh) * 2014-02-25 2018-04-03 北京娜迦信息科技发展有限公司 一种对Android应用程序扩展功能的方法及装置
CN104866734B (zh) * 2014-02-25 2018-10-09 北京娜迦信息科技发展有限公司 一种dex文件的保护方法及装置
CN104573426B (zh) * 2015-01-06 2017-06-06 北京邮电大学 一种可执行应用的混淆方法和装置
CN104573427B (zh) * 2015-01-06 2017-09-08 北京邮电大学 一种可执行应用的混淆方法和装置
WO2016164520A1 (en) * 2015-04-07 2016-10-13 Kaprica Security, Inc. System and method of obfuscation through binary and memory diversity
CN104834838B (zh) * 2015-04-29 2017-11-24 福建天晴数码有限公司 防止dex文件从内存中转存的方法及装置
CN104992083B (zh) * 2015-07-09 2018-02-16 广州视源电子科技股份有限公司 应用程序的代码混淆方法和系统
CN105912893A (zh) * 2016-01-19 2016-08-31 北京鼎源科技有限公司 一种基于Android系统微指令即时编译的加固方法
CN105956425B (zh) * 2016-04-28 2018-07-24 西北大学 一种基于smali代码混淆的Android应用保护方法
CN106682460B (zh) * 2016-11-25 2019-05-31 西北大学 一种基于两次变换的代码混淆方法
CN106648638B (zh) * 2016-12-09 2019-08-23 武汉斗鱼网络科技有限公司 一种基于python的R.java文件的优化方法及优化系统
CN107391223B (zh) * 2017-03-30 2021-03-19 创新先进技术有限公司 一种文件处理方法及装置
CN107229848A (zh) * 2017-06-12 2017-10-03 北京洋浦伟业科技发展有限公司 一种代码加固方法和装置
CN107632832B (zh) * 2017-09-27 2020-12-15 电子科技大学 一种面向dalvik字节码控制流混淆方法
CN109697339A (zh) * 2017-10-20 2019-04-30 南京理工大学 一种基于动态虚拟指令变换的Android应用安全保护方法
CN108021792B (zh) * 2017-12-04 2021-05-28 北京元心科技有限公司 镜像软件的生成方法、装置及相应终端
CN108153518B (zh) * 2017-12-25 2021-02-26 厦门市美亚柏科信息股份有限公司 一种java程序反混淆方法及终端
CN108537012B (zh) * 2018-02-12 2021-11-16 北京梆梆安全科技有限公司 基于变量和代码执行顺序的源代码混淆方法及装置
CN108446536B (zh) * 2018-02-12 2021-08-13 北京梆梆安全科技有限公司 一种基于符号执行和单点逻辑的源代码加固方法及装置
CN108446542B (zh) * 2018-02-12 2021-09-03 北京梆梆安全科技有限公司 一种基于符号执行的源代码混淆方法及装置
CN108446541B (zh) * 2018-02-12 2021-10-29 北京梆梆安全科技有限公司 基于有限状态机和符号执行的源代码加固方法及装置
CN108733990B (zh) * 2018-05-22 2022-04-05 深圳壹账通智能科技有限公司 一种基于区块链的文件保护方法及终端设备
CN108932436B (zh) * 2018-07-06 2020-07-28 四川长虹电器股份有限公司 一种基于安卓系统的app说明书的软件安全加固方法
CN109033765A (zh) * 2018-08-07 2018-12-18 麒麟合盛网络技术股份有限公司 应用安装包的处理方法和装置
CN109241707A (zh) * 2018-08-09 2019-01-18 北京邮电大学 应用程序的混淆方法、装置和服务器
CN109344574B (zh) * 2018-09-19 2020-09-22 四川长虹电器股份有限公司 一种基于说明书的自适应安卓加固方法
CN109409037B (zh) * 2018-09-29 2022-04-29 创新先进技术有限公司 一种数据混淆规则的生成方法、装置及设备
US10929153B2 (en) 2018-10-26 2021-02-23 International Business Machines Corporation Bidirectional protection of application package
CN109614771B (zh) * 2018-10-31 2020-07-03 同盾控股有限公司 一种基于Java代码的混淆方法和装置
CN109815651A (zh) * 2019-01-18 2019-05-28 北京智游网安科技有限公司 基于中间代码的iOS应用程序处理方法、系统及介质
CN110135133B (zh) * 2019-04-19 2021-08-17 佛山市微风科技有限公司 一种面向微控制器的压缩整合式源代码混淆方法及系统
CN110210190A (zh) * 2019-05-30 2019-09-06 中国科学院信息工程研究所 一种基于二次汇编的代码混淆方法
CN110618967B (zh) * 2019-06-13 2022-07-15 北京无限光场科技有限公司 应用程序运行方法、安装包生成方法、装置、设备及介质
CN111198710B (zh) * 2020-01-03 2022-08-26 厦门美图之家科技有限公司 程序安装包处理方法、装置和电子设备
CN111680271A (zh) * 2020-06-02 2020-09-18 浙江大学 基于智能合约字节码特征的合约代码混淆平台和混淆方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760219A (zh) * 2011-12-20 2012-10-31 北京安天电子设备有限公司 一种Android平台软件保护系统、方法及设备
CN102831342A (zh) * 2012-07-28 2012-12-19 北京深思洛克软件技术股份有限公司 一种提高安卓系统中应用程序保护强度的方法
CN103224872A (zh) * 2013-04-27 2013-07-31 齐鲁制药(内蒙古)有限公司 一种提高泰乐生产水平的发酵罐

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760219A (zh) * 2011-12-20 2012-10-31 北京安天电子设备有限公司 一种Android平台软件保护系统、方法及设备
CN102831342A (zh) * 2012-07-28 2012-12-19 北京深思洛克软件技术股份有限公司 一种提高安卓系统中应用程序保护强度的方法
CN103224872A (zh) * 2013-04-27 2013-07-31 齐鲁制药(内蒙古)有限公司 一种提高泰乐生产水平的发酵罐

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049897A (zh) * 2019-12-10 2020-04-21 北京百度网讯科技有限公司 小程序包的加密上传和解密部署方法、装置、设备和介质
CN111049897B (zh) * 2019-12-10 2023-02-17 北京百度网讯科技有限公司 小程序包的加密上传和解密部署方法、装置、设备和介质

Also Published As

Publication number Publication date
CN103544414A (zh) 2014-01-29

Similar Documents

Publication Publication Date Title
CN103544414B (zh) 一种Android系统应用的深度代码混淆方法
CN105683990B (zh) 用于保护动态库的方法和装置
RU2439669C2 (ru) Способ предотвращения обратного инжиниринга программного обеспечения, неавторизованной модификации и перехвата данных во время выполнения
CN105005718A (zh) 一种利用马尔可夫链实现代码混淆的方法
KR101521765B1 (ko) 분간이 난해한 식별자 변환을 이용한 코드 난독화 장치 및 방법
CN104680039B (zh) 一种应用程序安装包的数据保护方法及装置
CN106778100B (zh) 基于安卓平台和ios平台的混淆编译方法及混淆编译器
CN106682460B (zh) 一种基于两次变换的代码混淆方法
CN105354449A (zh) 一种面向Lua语言的加扰混淆方法和解密方法
CN107092518A (zh) 一种保护拟态防御系统软件层安全的编译方法
CN109344612A (zh) 针对程序代码静态分析逆向攻击的主动防御方法及系统
CN103413075A (zh) 一种通过虚拟机保护java可执行程序的方法及设备
CN105718765A (zh) 一种利用有限自动机实现代码混淆的方法
CN111819542A (zh) 编译设备和方法
CN107632832A (zh) 一种面向dalvik字节码控制流混淆方法
CN113366474A (zh) 用于通过将计算机程序的控制流表示为数据来混淆计算机程序的系统、方法和存储介质
CN112115427A (zh) 代码混淆方法、装置、电子设备及存储介质
CN101872393A (zh) 一种Java程序防篡改响应方案
Balachandran et al. Function level control flow obfuscation for software security
Coffman et al. ROP gadget prevalence and survival under compiler-based binary diversification schemes
CN105956425B (zh) 一种基于smali代码混淆的Android应用保护方法
Fu et al. A watermark-aware trusted running environment for software clouds
Jeon et al. A robust steganography-based software watermarking
CN108021790B (zh) 文件保护方法、装置、计算设备及计算机存储介质
CN104077504B (zh) 一种应用程序加密的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: JIANGSU TONGFUDUN INFORMATION TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SUZHOU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.

Effective date: 20141114

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20141114

Address after: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Applicant after: JIANGSU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.

Address before: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Applicant before: Suzhou PayEgis Information Technology Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Patentee after: Jiangsu pay shield information Safe Technology Ltd

Address before: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Patentee before: JIANGSU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.