首页> 中文学位 >支持向量机在代码混淆和软件水印中的应用
【6h】

支持向量机在代码混淆和软件水印中的应用

代理获取

目录

封面

声明

中文摘要

英文摘要

目录

第一章 绪论

第一节 研究背景与意义

第二节 代码混淆研究现状

第三节 软件水印研究现状

第四节 论文结构构成

第二章 机器学习技术

第一节 机器学习技术概述

第二节 支持向量机的原理

第三节 多分类支持向量机

第四节 支持向量机的黑盒性

第三章 核心技术介绍

第一节 代码混淆技术

第二节 软件水印技术

第三节 Logistic映射

第四章 基于支持向量机的分支混淆方案

第一节 混淆方案的设计

第二节 混淆方案的实现

第三节 混淆方案的评估

第四节 混淆方案的局限性

第五章 基于支持向量机的软件水印方案

第一节 水印方案设计

第二节 水印方案的实现

第三节 水印方案的评估

第四节 水印方案的局限性

第六章 总结与展望

第一节 工作总结

第二节 工作展望

参考文献

致谢

个人简历、在学期间发表的学术论文及研究成果

个人简历

硕士期间参与的科研项目

硕士期间完成的论文

展开▼

摘要

代码混淆和软件水印是软件保护领域中常用的两种技术,其使用目的是防止他人剽窃软件中的智力成果。代码混淆技术是指通过对源程序进行保持语义的代码变换,使其变得难以理解,进而使攻击者在有限的时间和资源下,难以从软件中获得感兴趣的信息。软件水印技术是指将可以表征知识产权的信息以某种算法嵌入到软件之中。一旦出现软件知识产权侵权行为,软件知识产权人可以通过提取其先前所嵌入的产权信息来表征自己的知识产权,维护自身权益。现有的代码混淆技术在应对条件跳转指令所引起的路径信息泄露问题时还存在着明显的不足,比如效率低下或者限制过多。现有的软件水印技术在安全性上大部分都依赖于隐蔽性,并且与源程序联系不大,容易被代码变换技术所破坏。
  针对上述问题,本文分别提出了基于支持向量机(SVM)的代码混淆方案和软件水印方案。在代码混淆方案中,程序的关键分支条件作为一种知识隐藏于SVM中,从而用SVM代替了分支条件,实现了对分支条件的混淆。在软件水印方案中,软件的水印信息同样作为知识隐藏于SVM中,同时,通过巧妙的模块设计使得SVM和源程序的执行逻辑紧密地结合起来,实现了非隐蔽的软件水印模块。与现有的方案相比,基于SVM的代码混淆方案和软件水印方案都具有较好的通用性,并且额外开销小,可抵御大部分的常见攻击。
  本文以SPECint-2006作为标准测试集,对提出的基于SVM的代码混淆方案和软件水印方案分别进行了性能测试。实验结果表明,本文提出的混淆方案在时间开销和空间开销上表现良好,是一种有实用价值的混淆方案。本文提出的软件水印方案在弹性、执行效率、信息嵌入率等方面表现较好,是一种有实用价值的水印方案。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号