用于软件保护的代码混淆技术研究

被引量 : 0次 | 上传用户:linyasa
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,移动代码技术得到了极大的发展,并有着广泛的应用前景,但代码移动性所引发的安全问题阻碍了该技术在现实商业应用中的大规模使用。在这些安全问题中,如何保护移动代码不受主机的损害是传统安全技术无法处理的新需求。在恶意主机环境下,软件系统可以被逆向工程或被篡改,其机密性、完整性与可用性受到威胁。业界迫切要求简便和行之有效的保护软件与软件知识产权的方法。代码混淆作为一种防止逆向工程的技术应运而生。尤其随着Java语言的迅速发展引起了对混淆技术的研究热潮。这是因为Java目标代码——字节代码(bytecode)很容易被反编译为Java源代码,这就迫切要求有效的保护Java字节代码的方法。因此,恶意主机环境下用于软件保护的代码混淆技术的研究就具有重要的理论和现实意义,并越来越受到业界的重视。本文以保护软件,提高逆向工程代价为目标,分别从破解与保护两方面对逆向工程与代码混淆技术进行了深入的研究。针对Java字节代码的解析与混淆,我们实现了一个代码混淆系统原型——JOT,该系统是一个基于Java字节代码的综合代码混淆系统,也是本文研究成果的重要体现。本文的主要研究工作如下:(1)分析了逆向工程的概念、逆向工程的分类、逆向工程的研究方法等。并对形式化方法在逆向工程中的应用做了详尽的研究。(2)研究了当今主流的代码混技术,内容主要涵盖外形混淆、控制流混淆、数据混淆、类结构混淆以及预防性混淆这五类混淆技术,揭示了混淆变换具有的一些特性。(3)提出了一个通用的软件保护模型。该模型对具体应用领域的软件保护策略的制定具有积极的指导意义。其对软件的保护涵盖了5种安全服务:机密性、完整性、可用性、可靠性、鉴别。(4)提出一个通用的针对面向对象程序的混淆转换模型。该模型对制定具体的混淆转换方案具有一定的参考价值。(5)设计并实现了一个用于混淆转换Java字节代码的原型系统——JOT(Java Obfuscate Tool),JOT在实现外形混淆的同时,还实现类结构混淆。并且我们在系统中需要进一步扩展的部分留出了相应的接口以待完善。
其他文献
<正>目次一辽代契丹大型墓葬:贵族葬制的形成和演变二辽代契丹中小型墓葬:错综表象中的历史走势三辽代契丹墓葬的等级制度一辽代契丹大型墓葬:贵族葬制的形成和演变本节通过
股市交易量与股价变化的关系就一直是学术界与实务界所共同关心的主题。基于Chou(2005)提出的CARR模型对两者的动态关系问题进行了研究。首先分析了作为量价关系理论基础的混
目前,远距离、高速的水声数据传输尚未得到圆满的解决。接力式转发传输是解决远距离高速水声数据传输的一个很好的方案。搭载在水下机器人上的水下转发器系统就是出于这样的
带压作业是在保持井筒内一定压力,不压井、不放压的情况下进行起下管柱的一种先进井下作业技术。相较于传统井下作业,带压作业的优势在于它能够最大限度的实现对油气层和环境
瓜蒌薤白半夏汤是用来治疗胸痹症的专方,现代临床医生均把胸痹一病作为冠心病对待,所以临床中逐渐把瓜蒌薤白半夏汤作为治疗冠心病的专方。笔者认为胸痹一病应包括一切具备"
伴随着我国进行""营改增"",其变动对多数领域均带了一定程度的影响,在此过程中金融领域成为了近些年来开展"营改增"研究的重要领域。本主要是针对金融领域进行"营改增"政策的
根据GenBank登录的减蛋综合征病毒(EDSV)六邻体基因的保守区,设计了3对环介导等温基因扩增(LAMP)引物,优化反应体系,并对其灵敏性、特异性进行验证.结果表明:LAMP优化后的反应体系
在党政机关公文联合行文时,存在较多的不规范现象。联合行文在会签、版头、发文字号、主送机关、落款、印章等方面都有具体要求,因此,联合行文应注意办公厅(室)一般不要与同
澳大利亚诉日本捕鲸案是涉及《国际捕鲸管制公约》第八条“科研捕鲸”例外的第一起案件,国际法院最终判决日本因不符合《国际捕鲸管制公约》第八条的规定而败诉。国际法院在
唐代著名理财家杨炎曾指出,税收是国家的根本,“财赋者,邦国之大本,而生人之喉命,天下治乱轻重系焉”。马克思也曾深刻地指出,“赋税,是喂养政府的母乳”,“国家存在的经济体