基于JAVA的代码混淆研究

被引量 : 0次 | 上传用户:ZXX198811
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
由于计算机软件是一种极易复制篡改的特殊商品,因此,过去的几年,许多关注于软件数据的机密性、完整性和可用性的研究得以展开。特别是随着多媒体的应用和网络的普及,多媒体数据的安全也成为了保护的焦点。同时,软件产品的唯一性也给软件的保护提出了一个巨大的挑战,这主要是基于:首先,由于软件可以被逆向工程破解,从而导致机密算法等的流失;其次,软件可以被有目的性的修改,从而使软件做出超出预期和准许的行为。目前,商业软件越来越普遍的采取非二进制的代码形式发行,比如JAVA的字节码,但这些形式的代码包含了大部分的源码结构等信息,使得对它们的逆向工程变得更加容易,源代码也更易于被提取。同时由于各种政治经济和文化的原因,使得目前对软件的知识产权保护十分薄弱。本文首先描述了针对软件安全的攻击模型,特别提到了恶意主机的威胁,以及多种软件保护技术手段,比如:网络验证保护、硬件辅助保护、软件水印保护和防篡改保护等。但本文的主要内容是代码混淆的软件保护技术,代码混淆技术是在保持原程序语义功能一致的前提下,通过混淆原程序的代码信息使得恶意用户即使得到了混淆之后的代码也无法得知相关机密数据信息,以此来达到软件保护的目的。针对目前混淆技术主要局限于名称混淆等情况,本文采用基于JAVA字节码的面向对象的控制流混淆和设计混淆算法实现混淆转换。文中的类聚合和类分裂是两种面向对象编程的设计混淆方法,其中类聚合就是将两个或两个以上的类用一个类代替的方法,类分裂则是将一个类用两个或两个以上的类替代的方法,控制流混淆则是对程序执行流程的混淆方法。除此以外,JAVA的体系架构、JAVA虚拟机、混淆的定义和分类以及评测标准都将在本文中进行说明。本文最后设计和实现一个基于对JAVA字节码进行保护的代码混淆工具,并采用了控制流混淆、类聚合和类分裂的算法原则,同时从理论和实际两方面分析混淆转换的有效性和性能过载等方面的实验结果。
其他文献
《担保法》第24条规定,在未取得保证人书面同意的前提下,债权人债务人擅自对主合同进行修改,保证人就不再承担保证责任。《担保法》司法解释第30条虽然作出了看似存在"冲突",
为了解天津城市污水泵站恶臭的污染程度,选取天津市一个典型的城市污水泵站进行为期3天的采样,采集该污水泵站距离污染源强不同距离处的恶臭气体样品,用气相色谱-质谱联用仪(G
本文对玉米果穗剥皮技术的专利申请情况进行了统计分析,探讨了玉米果穗剥皮技术领域专利申请的申请量趋势和申请人分布特点,并结合荣获中国专利优秀奖的实际案例分析来揭示该
触摸屏是结合显示器使用的一种绝对坐标定位系统,作为一种简单、便利的输入设备已经得到越来越广泛的应用。红外触摸屏作为触摸屏技术中的一种由于其透光率高,定位精确无漂移
“金融活,经济活,金融稳,经济稳”。深化金融供给侧改革对于新常态下我国经济健康发展、新旧动能转换具有重要战略意义。银行业是金融领域的核心,在整个金融领域占据极其重要的位置。商业银行理应成为金融供给侧改革的先导,通过深化自身供给侧改革为金融供给侧改革助力。本文在梳理已有的供给侧改革和商业银行供给侧改革相关研究的基础上,以工商银行A支行为例,对我国商业银行供给侧改革进程中存在的问题进行剖析,提出以供给
经过40年改革开放,中国发展成为世界第二大经济体与世界经济增长的重要引擎。这就是世界瞩目的 "中国成功"。习近平总书记围绕改革开放和社会主义现代化总结中国经验、作出重
生化腐植酸因其由可利用废物资源加工制成具有多种新功能的肥料资源而备受关注,成为学科交叉的研究前沿和肥料企业产品升级换代的重要研究方向。文章结合实例介绍了可作生化
企业文化的高职思想政治教育是结合实际的教学方法,构建以主业为导向的思想政治教育可激发学生对学习的热情与兴趣。不管是由学生个人成才或由满足用人单位需求两个层次分析,
文化和语言密不可分。文化是语言所承载的内容,语言是文化的载体和传达方式。在大学英语教学中教师要帮助学生克服"文化休克"现象,从而掌握跨文化交际能力。
近年来,青少年涉毒违法犯罪问题受到社会广泛关注。本文着眼青少年涉毒违法犯罪的特点,从缺乏对毒品及相关法律的正确认识、受身边人及错误观念影响严重、学校及家庭的毒品教