Java程序混淆技术综述王建民.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序混淆技术综述王建民

Java程序混淆技术综述 王建民1),2),3) 余志伟1),2),3),4) 王朝坤1),2),3) 付军宁1),2),3) 1)(清华大学软件学院 北京 100084) 2)(清华信息科学与技术重点实验室 北京 100084) 3)(信息系统安全教育部重点实验室 北京 100084) 4)(清华大学计算机科学与技术系 北京 100084) 摘 要 软件混淆技术已经广泛应用于抵制逆向工程和重组工程.文中从混淆技术的历史发展角度对现有的混淆 技术理论、算法、攻击模式和评估进行了综述,将Java程序混淆算法分为类内混淆和类间混淆两个类别,并对其中 的各类算法进行详尽的阐释.最后在现有工作的基础上,展望了软件混淆技术未来的发展与研究方向. 关键词 程序混淆;软件水印;防篡改;软件版权保护 中图法分类号TP309   DOI号:10.3724 /SP.J.1016.2011.01578 A Survey on Java Program Obfuscation Techniques WANG Jian-Min1),2),3) YU Zhi-Wei1),2),3),4) WANG Chao-Kun1),2),3) FU Jun-Ning1),2),3) 1)(SchoolofSoftware,Tsinghua University,Beijing 100084) 2)(Tsinghua Laboratory for Information Science and Technology,Beijing 100084) 3)(Key Laboratory for Information System Security of Ministry ofEducation,Beijing 100084) 4)(DepartmentofComputer Science and Technology,Tsinghua University,Beijing 100084) Abstract Obfuscation techniques have been widely applied in the defenses of reverse engineering and re-engineering attacks. From the view of the development of obfuscation,we briefly dis- cussed the principles,algorithms,different kinds of attack approaches and evaluating standard. Java program obfuscation algorithms can be divided into two types:One is obfuscation within a class;the other is obfuscation between classes. Finally,based on the survey of these obfuscation techniques,the future research of Java program obfuscation is also stated. Keywords obfuscation;software watermark;temp-proofing;software copyright protection 1 引 言 随着计算机软件的广泛使用,软件的安全问题 严重威胁着软件产业的发展,主要表现为:软件攻击 者获得试图攻击的软件备份之后,成功地破解软件. 现有的调试和编辑工具,使直接检查或修改二进制 程序代码变得更加容易.因此,通常情况下攻击者会 重组或破解软件,导致软件的使用控制机制失效.破 解后的软件可以非法向大众分发,更加助长了软件 盗版问题. Java程序由于平台无关性得以在Internet上迅 速传播和使用.但同时,Java语言的这一特性也带 来了保护知识产权方面的新问题.Java语言为了支 持平台无关性,采用了Class这种字节码文件格 式①.经过预编译之后,Java源代码指令转化为字节 码,而后在虚拟机上解释执行.由于Java字节码的 设计是为了使语言更简洁、更具有平台独立性和网 络灵活性,它的指令集相对简单通用,每一个类编译 成一个单独的文件,Class文件保留方法变量名称等 大量语义信息.这些特点都导致Java字节码更容易 被反编译为Java源代码.攻击者通过反编译和反汇 编技术,获得软件的全部或部分源代码,从而获取关 键信息如核心算法、秘密信息等为自己所用.目前已 有许多Java的反编译工具,如Jad②、Mocha[1]等,都

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档