Java类装载机制的研究及其在代码保护中的应用

被引量 : 0次 | 上传用户:jettey
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Java的出现是计算机信息交换的一个重要里程碑,以其简单性、跨平台性等各种优秀特性彻底改变了应用软件的开发模式,带来了软件开发的一次革命,在软件开发的各个领域得到了大量的应用。但是这也造成了Java软件在知识产权的保护上面临着很大的安全风险,原因主要在于Java跨平台的灵活性源于独特的编译方式,Java源代码经编译后,生成的不是面向处理器的二进制文件而是面向虚拟机的Java类文件。正是因为类文件是一种有格式的中间代码,其中保留了源代码文件中的大多数信息,为反编译Java类文件提供了条件。反编译得出的代码具有很高的质量,基本上可以完全反映编写者的思路。近年来,许多公司和Java开发人员在深入研究Java类文件和虚拟机的基础上,研究开发了多种方法来保护Java类文件,这些方法包括:代码隔离技术、数字水印技术以及代码混淆等技术。这些保护方法,在一定的程度上可以起到保护Java软件的作用,但是它们各自都存在明显的局限性和缺陷。Java虚拟机是Java技术的核心部分,深入研究Java虚拟机内部机制,不但能够快速掌握先进的计算机技术,获得大量有益的经验,而且对于我们解决Java的安全有着根本性的帮助。本文通过对相关资料收集、整理,透彻剖析Java虚拟机类装载的内部机制,深入研究了类装载器的体系结构,如双亲委派模式、class文件结构等。基于对Java虚拟机类装载结构的分析研究与自己在实际中应用相结合,定制一个虚拟机的类装载器,同时结合密码学中的加密体制、JNI技术和修改JVM实现了一种新的Java软件保护方案—类文件保护方案。本方案的核心设计思想如下:①用本地加密的方法来保护Java类文件,以有效地对抗反编译。②定制一个ClassLoader完成加密类文件的解析加载。③对定制ClassLoader进行加密,以确保定制ClassLoader的安全。④进而修改JVM使其能装载加密过的定制ClasssLoader,杜绝最后的安全漏洞。实验结果表明本方案具有较高的安全性,同时具有良好的通用性,不仅可以应用在单机应用软件上,也可以应用在网络应用软件上。综上,本文为Java软件保护提出的保护方案是一次非常有意义的探索和实践。
其他文献
目的:胃癌是我国最常见的消化道恶性肿瘤之一,死亡率居恶性肿瘤的第二位,手术是唯一可能根治胃癌的手段,但传统的开腹胃癌根治术创伤大,术后恢复慢,并发症较多。进入21世纪后
在刑事诉讼中,诉因可以协调控诉方、审判方和辩护方在刑事诉讼中的相互关系。刑事诉因变更制度作为刑事诉因制度中最具实践意义的制度,不仅有利于制约公诉机关的起诉变更权,
“学校里应当教什么”是教育界永恒的话题。目前,以提高公民科学素养为主要目的的科学教育观已达成全球共识,科学课程目标也相应地从一维走向多维,化学作为科学的重要分支,其
近年来,我国国民经济持续快速增长,人民生活水平显著提高。随着人们收入的增多,人们的消费需求稳定增长,消费层次不断提高。同时,由于人们受教育水平的不断提高,以及对生活质
酒店,尤其是星级酒店,是当前社会发展、人们生活水平提高后进行商务、旅游、休闲、度假的高级消费场所。酒店作为服务型的企业,和其他工业企业一样在其经营运作过程中占用、
高等教育作为一种社会设施,与整个社会结构之间具有紧密地联系,社会的急剧改革和市场经济改革不可避免给教育带来了全面冲击。随着我国高等教育大众化量的目标的实现,一方面,
1998年湖北郭店楚简整理出版,这是中外学术界的一件大事。此后十年,围绕这批竹简展开了多角度的研究,这其中又以《老子》的研究最为火热,研究者多从古文字学、文献学、考古学
本文运用多学科的理论和方法,理论联系实践,从中国风险投资税收政策现状和存在的问题出发,基于企业生命周期理论研究,揭示中国政府主导的风险投资取得成功的同时向市场主导的
随着国民经济的不断发展,工业、农业及生活用水对水资源的需求越来越大,保护有限水资源,节约用水刻不容缓;随着科学技术的发展,石化污水处理技术在不断发展、创新。2007年国
一氧化氮(nitric oxide ,NO)作为体内气体信号分子在多种生理和病理条件下对细胞功能具有重要调节作用。NO发挥生物学作用不依赖膜受体而直接作用于效应分子的特定靶点。以往