- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈基于JAVA 语言的混淆器设计模型研究
浅谈基于JAVA 语言的混淆器设计模型研究
随着软件事业的不断发展和应用,产生了很大的利润,因此逐渐出现了很多盗版软件,对软件开发企业的利益造成了很大的损害,也影响了软件产业的健康发展。代码混淆技术是目前保护软件版权的重要技术,它能够混淆转换源程序,产生性能等价的混淆代码,使逆向工程的难度增加,对于软件盗版是一种很有效的打击手段。
一、基于JAVA 语言混淆器的设计思路
1.1 防御静态分析
1、设计混淆。设计混淆是在外形方面进行混淆,它作为第一道保护软件的措施,目前已经相对成熟。主要方式为改名和删除操作,以此来混淆转换代码。2、类结构混淆。类结构混淆要首先融合或分裂软件的类结构,然后隐藏具体的类型,使系统类图的结构得到破坏,进而对真正的设计目的进行隐藏,以完成相应的混淆转换。3、类内混淆。首先应当隐藏类内部的控制流跳转,通过类内部的方法进行融合,防止调用重构方法。然后进一步缩小粒度,考虑内部循环操作。再加入不透明谓词在程序控制流当中。最后交换整个方法的控制流,使攻击者无法理解程序控制流的转换,从而达到保护软件安全的目的。4、数据混淆。在类内部方法间和方法内完成混淆转换控制流之后,虽然能够起到有效的软件保护作用,但是一些重要数据仍然显示存在于程序之中。而软件盗版者恰恰极为重视这一方面,因此,还需要混淆转换数据,例如变量重组混淆、数组重构混淆等,将关键性数据进行隐藏。5、预防性混淆。预防性混淆的主要目的是为了防止反编译算、反汇编等方法进行软件盗版,对这些方法的实际应用进行阻止,以达到对软件安全的保护。
1.2 防御动态分析
防御动态主要是将一些动态运行过程中的标记性信息和程序中的调试信息进行删除,同时将反跟踪调试代码进行嵌入。不过,在当前的实际应用中,防御动态分析技术还缺乏足够的成熟性。由于它主要是用来对相应程序的运行信息进行分析,而就目前的相关技术来说,要实现这一点还存在着很大的困难。因此,防御动态分析技术还需要不断的进行提高和完善,以达到更好的软件保护效果。
二、混淆转换系统的设计
1、预处理模块的设计。在混淆转换系统中,开始运行的是模块预处理模块,主要是预先分析源程序代码,在选择阶段提供相应的信息给混淆转换算法选择。程序代码分析技术是预处理模块的主要技术,通过预处理模块的数据流程分析、控制流程分析和其它基本分析,源程序会生成JAVA 类关系树、数据流程图、程序符号表等程序信息,在以后的程序分析中,以这些信息作为主要信息。预处理模块中包含了数据流程、控制流程、基本程序等几种分析方法,每种分析方法都具有不同的作用,各种方法的合作,共同完成了预处理模块的设计。
2、混淆算法池的设计。由于软件的种类很多,因此没有任何一种混淆算法能够满足所有种类软件的安全要求。对此,应当将几种混淆算法进行组合,形成混淆算法池,这样才能有效的对各类软件的安全进行保护。要进行这样的设计,就应当具有一个能够对大量的混淆算法进行管理和储存的模块存在于代码混淆转换系统当中。其中的基本操作对象就是各种混淆算法,混淆算法池的任务是对这些混淆算法进行运用、存储和管理。
3、混淆转换执行器的设计。在混淆算法的应用中,混淆转换执行器应当具有选择功能以及排序功能。在混淆转换执行器的设计过程中,需要设计混淆算法应用模块和混淆算法选择模块。将混淆算法池中选择的混淆算法和预处理模块分析处理后的程序信息输入到混淆转换执行器当中,混淆算法选择模块对最为合适的混淆算法进行选择和组合,实现程序的混淆转换。在每次执行完混淆算法之后,如果并没有达到预期的性能要求,将会返回混淆算法应用模块当中,重新选择和组合混淆算法进行混淆转换,直到最后达到要求,才会输出混淆之后的程序信息。
结论:在当今社会中,随着计算机技术和信息技术的快速发展和广泛应用,软件产业在迅速发展的同时产生了十分可观的利润,这Yuvj就给盗版软件的出现创造了可能。为此,应当加强对软件安全的保护,降低盗版软件带来的危害。基于JAVA 语言的混淆技术是一种十分有效的技术,本文对其设计思想及设计模块进行了分析,希望能够推动软件安全保护的进一步发展。
您可能关注的文档
- 浅谈后现代语境中的原子弹哲学.doc
- 浅谈向合格的生态公民迈进评《生态公民论》.doc
- 浅谈含硅芳炔单体的流变性及聚合物热分解.doc
- 浅谈启蒙的天敌:犬儒理性论略.doc
- 浅谈员工在套房内抢劫同住套房的老板娘是否构成“入户抢劫”-.doc
- 浅谈吴茱萸中生物碱类成分的研究进展.doc
- 浅谈周敦颐对《中庸》的诠释.doc
- 浅谈周杰伦歌词中的凄美爱情.doc
- 浅谈周家何时迁居淮安.doc
- 浅谈周杰伦音乐的美与时尚.doc
- 浅谈基于ERP应用的企业网络数据传输设计和实现.doc
- 浅谈基于JSP的中小型企业门户网站设计.doc
- 浅谈基于MBD的数字化仿真技术在航天制造企业应用.doc
- 浅谈基于MPLAYER 的RTSP 客户端设计与实现.doc
- 浅谈基于Openstack 的网络攻防实验平台设计与实现.doc
- 浅谈基于OPC技术的上位机与S7-300的通信研究.doc
- 浅谈基于OSEK- VDX 嵌入式操作系统的AMT TCU 设计与硬件在环试验研究.doc
- 浅谈基于PBL 教学法的车辆工程专业实践教学体系的构建研究.doc
- 浅谈基于ITSS的高职计算机实训基地“校企双元”建设模式研究.doc
- 浅谈基于PCA算法的人脸识别的图片搜索引擎.doc
- 软件下载与安装、电脑疑难问题解决、office软件处理 + 关注
-
实名认证服务提供商
专注于电脑软件的下载与安装,各种疑难问题的解决,office办公软件的咨询,文档格式转换,音视频下载等等,欢迎各位咨询!
文档评论(0)