论文摘要
由于Java程序很容易被反编译和逆向工程,使得保护知识产权和保密信息在不信任环境中不被窃取变得很困难,因此迫切需要有效的保护Java软件的方法。而目前最实用的解决方法就是对Java程序进行混淆。代码混淆技术就是在不改变语义的情况下,使得混淆后的程序很难被反编译工具破解或者破解后的程序可读性很差,从而达到保护Java软件的目的。目前,对代码混淆技术的研究主要集中在控制流混淆和数据流混淆上,这两种混淆技术在提高程序的复杂度和抗攻击能力的同时,增加了程序额外的执行开销,这种执行开销有时甚至会导致程序不能正常运行。针对上面的情况,本文以保护Java软件、提高程序复杂度和抗攻击能力、同时不增加程序额外的执行开销为目的,深入研究了标识符重命名混淆技术,并设计实现了一种Java软件混淆工具。本文主要工作如下:1.研究Java类文件、代码混淆技术及其研究现状,对现有的混淆技术进行详细的分类和比较,并在此基础之上针对控制流混淆和数据流混淆的不足,提出四种标识符重命名混淆算法,包括滥用标识符、重载无关联方法、非法标识符替换以及重写静态方法,并分析了四种算法对程序执行开销的影响。2.设计并实现一种Java软件混淆工具——JIRO(Java Identifier RenamingObfuscator),该混淆工具主要包括代码优化和代码混淆两种功能,其中代码混淆功能模块所使用的关键技术是本文提出的四种标识符重命名混淆算法。3.在JIRO上做大量实验,并结合实验从混淆变换的正确性、混淆变换的强度和混淆变换耐受性三个方面对JIRO的功能进行分析。根据统计得到的实验数据,分析JIRO对程序执行开销的影响,并对JIRO进行测试和对其应用情况进行分析。论文工作表明,基于标识符重命名混淆技术的混淆工具JIRO,具有很好的混淆效果,同时没有增加程序的额外执行开销,能够有效的保护Java软件。
论文目录
相关论文文献
- [1].《Java程序设计》教材二次开发的多元化策略研究[J]. 电脑知识与技术 2019(32)
- [2].Java中的正则表达式应用探讨[J]. 电脑知识与技术 2019(32)
- [3].Java随机文件读写操作探讨[J]. 南方农机 2019(24)
- [4].Java技术在图像处理中的应用探究[J]. 信息与电脑(理论版) 2019(24)
- [5].基于专业认证的Java课程建设[J]. 计算机教育 2020(02)
- [6].“Java程序设计”课程教学改革与作业批改系统的构建[J]. 教育教学论坛 2020(03)
- [7].论如何在应用型本科高校培养Java全栈工程师[J]. 电脑与电信 2019(11)
- [8].Java程序设计项目化教学的研究与实践[J]. 电脑知识与技术 2020(02)
- [9].基于JAVA语言的异常处理探讨分析[J]. 自动化技术与应用 2020(02)
- [10].Java程序设计立体化教材建设的思考[J]. 计算机产品与流通 2020(03)
- [11].基于计算机软件开发的Java编程语言分析[J]. 信息与电脑(理论版) 2020(02)
- [12].基于Java的购物网站设计与开发[J]. 农家参谋 2020(08)
- [13].项目化教学在《Java程序设计》教学中的应用研究[J]. 皖南医学院学报 2020(01)
- [14].基于Java的在线考试系统设计与实现[J]. 中国教育技术装备 2019(24)
- [15].JAVA编程技术在计算机软件开发中的优势与应用[J]. 信息记录材料 2020(03)
- [16].浅谈基于JAVA的俄罗斯方块游戏的设计与实现[J]. 农家参谋 2020(13)
- [17].基于目标管理的Java面向对象程序设计在线教学[J]. 计算机教育 2020(08)
- [18].混合学习在中职Java课程中的应用探讨[J]. 计算机产品与流通 2020(10)
- [19].计算机软件Java编程特点及其技术分析[J]. 计算机产品与流通 2020(10)
- [20].基于Java的企业进销存管理系统的设计与开发[J]. 信息通信 2020(09)
- [21].Java编程语言在大数据开发中的应用[J]. 黑龙江科学 2020(22)
- [22].Java类整合课程在线教学的研究[J]. 信息系统工程 2020(09)
- [23].大学生初学Java多线程思路的反思与优化[J]. 中国新通信 2020(19)
- [24].基于JAVA的社团管理后台系统设计[J]. 中阿科技论坛(中英文) 2020(09)
- [25].基于Java语言对10种经典排序算法的研究[J]. 电脑知识与技术 2020(25)
- [26].浅析《Java程序设计》课程项目化[J]. 信息系统工程 2019(11)
- [27].基于Java技术的数字图像处理系统的开发[J]. 电脑知识与技术 2019(28)
- [28].基于Java语言的排课系统的设计与实现[J]. 科技风 2017(01)
- [29].《Java程序设计》与《软件工程》综合教学改革初探[J]. 现代计算机(专业版) 2016(33)
- [30].“项目+任务”教学法在高职《Java面向对象程序设计》教学中的应用——以佛山职业技术学院计算机应用技术专业为例[J]. 教育现代化 2016(37)
标签:反编译论文; 代码混淆论文; 标识符重命名混淆论文; 混淆工具论文;