1. 研究目的与意义(文献综述)
随着计算机网络和分布式系统的发展,java语言凭借着其方便的可移植性和良好的平台无关性,可以兼容于各种平台,因此在软件产业中得到了极大比重的应用,从而开发人员可以使用java语言在各种不同的平台上开发不同的应用程序,据调查,目前java语言在编码语言方面目前使用率排第一,大量丰富而且便捷的开发资源和成熟的开发模式已经让java语言成为了目前最受欢迎的编程语言,是软件开发的一次新的革命性工具。目前,java已经非常广泛的应用在了各种嵌入式应用、企业级应用中,为当今高速发展的信息技术提供了新的动力。
然而,在java如此盛行的情况下,也出现了它自身的弊端。由于java程序本身的编译过程和c/c 编译的过程不同。c/c 编译器编译产生的是在特定平台、环境下才能够运行的代码,所有的方法符号的引用和变量都能通过查找表编译器来转换成特定的内存偏移量。但是java编译器不会讲此进行转换,而是将这些附带的引用的信息保留在了字节码文件.class中。因此.class文件中会保留所有的方法和变量以及符号的信息,更为重要的是,往往这些符号中都包含了重要的语义信息。正是由于java语言本身的这种特性,导致了它很容易被反编译,进而影响到了开发者的知识产权问题。因此,能够有效保护java软件的方法迫切需要。
为了防止这种情况的发生,代码混淆技术被提出,它的主要原理是使用代码混淆技术对需要进行保护的代码进行混淆变换,让变换之后的代码分析难度大大增加,从而在一定程度下可以防止别人对软件的窃取。代码混淆技术实际上就是对代码以及开发者知识产权进行保护的安全技术。虽然代码混淆不能够说对软件进行了绝对安全的保护,但是,至少让想攻击的人需要付出极高的代价,也就起到了保护作用。
2. 研究的基本内容与方案
本次毕业设计主要目的是实现一个代码混淆器,代码混淆器的核心在于一个有效并且高效的代码混淆方法,使其能够有效地对java代码进行混淆,以此用来保护java程序,进而防止开发者的知识产权受到侵犯,而且还能够实现这个程序的正常功能。当然,要在参考了别人的研究成果的基础上,对不足之处尽可能的完善,以便使代码混淆器更加高效、实用。
论文研究内容和技术方案如下:
(1)查阅有关代码混淆技术的历史背景、发展前景、当今现状;
3. 研究计划与安排
(1)2016/1/11—2016/1/22:查阅参考文献,明确选题;
(2)2016/1/23—2016/3/7:进一步阅读文献,并分析和总结;确定技术路线,完成并提交开题报告;
4. 参考文献(12篇以上)
[1]张晓锋.软件逆向工程相关技术研宄与实现[d].四川:电子科技大学,2007
[2]李富云.试论软件旳破解与保护[j].中小企业管理与科技(下旬刊),2011.
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。