提要 | 第1-8页 |
第1章 绪论 | 第8-12页 |
·课题的来源和意义 | 第8页 |
·国内外研究现状 | 第8页 |
·当前对软件的各种威胁 | 第8-10页 |
·什么是威胁模型 | 第8-9页 |
·三种基本的威胁模型 | 第9页 |
·恶意主机的攻击 | 第9-10页 |
·本文的主要内容和章节安排 | 第10-12页 |
·主要内容 | 第10-11页 |
·章节安排 | 第11-12页 |
第2章 相关技术概述 | 第12-17页 |
·软件保护的方法 | 第12-14页 |
·代码混淆技术 | 第12-13页 |
·软件水印技术 | 第13-14页 |
·篡改验证技术 | 第14页 |
·哈希函数简介 | 第14-15页 |
·哈希函数的基本概念及性质 | 第14-15页 |
·Sha-256算法 | 第15页 |
·Java字节码 | 第15-16页 |
·AES加密算法 | 第16页 |
·小结 | 第16-17页 |
第3章 哈希函数对java程序的篡改抵抗 | 第17-33页 |
·研究背景及意义 | 第17-18页 |
·Oblivious hashing的模型及实现 | 第18-24页 |
·基本原理 | 第18-20页 |
·设计方法 | 第20页 |
·实现策略 | 第20-22页 |
·散列计算的方法 | 第22-23页 |
·对未被散列的部分的处理 | 第23-24页 |
·Oblivious hashing在Java上的实现 | 第24-33页 |
·实现策略 | 第24页 |
·保护Java软件的抽象模型 | 第24-25页 |
·Java软件的Oblivious hashing的散列法 | 第25-26页 |
·实现的具体例子 | 第26-28页 |
·变量的处理 | 第28-31页 |
·保护方法的运算法则 | 第31页 |
·保护机制的实现 | 第31-32页 |
·性能分析 | 第32-33页 |
第4章 基于完整性加密的篡改抵抗 | 第33-43页 |
·设计目标 | 第33页 |
·多模块加密机制 | 第33-36页 |
·记号和假定 | 第34-35页 |
·代码加密 | 第35页 |
·代码的解密和完整性检查 | 第35页 |
·安全性分析 | 第35-36页 |
·基于hash函数的多模块加密 | 第36-43页 |
·多模块加密分析 | 第36-37页 |
·分块方法 | 第37页 |
·多块的分裂方法 | 第37-40页 |
·多模块散列加密方法的实现 | 第40-41页 |
·程序控制器的设计 | 第41-42页 |
·小结 | 第42-43页 |
第5章 分析对比及实验 | 第43-45页 |
·Oblivious hashing在应用上的分析 | 第43页 |
·完整性加密机制的分析 | 第43-45页 |
第6章 结论和展望 | 第45-47页 |
·结论 | 第45页 |
·展望 | 第45-47页 |
参考文献 | 第47-50页 |
致谢 | 第50-51页 |
摘要 | 第51-54页 |
Abstract | 第54-56页 |