軟件保護技術(計算機科學與技術學科前沿叢書 計算機科學與技術學科研究生系列教材(中文版))
定 價:25 元
- 作者:王建民 等編著
- 出版時間:2013/7/1
- ISBN:9787302317210
- 出 版 社:清華大學出版社
- 中圖法分類:TP311.56
- 頁碼:124
- 紙張:膠版紙
- 版次:1
- 開本:16開
《軟件保護技術(中文版)》較為系統(tǒng)地介紹現有的軟件保護技術,共分7章,主要包括軟件保護概述、軟件保護的技術基礎、軟件水印技術、軟件混淆技術、軟件防篡改技術、軟件保護技術的綜合使用以及軟件保護技術的總結與展望,旨在為解決軟件版權問題提供新的思路。本書在理論講解的基礎上,也提供了若干具體操作實例,通俗易懂,便于讀者理解和實踐。
《軟件保護技術(中文版)》適合作為高等學校高年級本科生以及研究生相關課程的教材和自學教材,也可作為計算機軟件安全研究和開發(fā)的指導參考書。
隨著計算機網絡技術的飛速發(fā)展,軟件產品的版權保護以及內容安全性成為一個亟待解決的問題,越來越多地受到人們的普遍關注。軟件保護技術的發(fā)展以及相關法律法規(guī)的健全,可以在很大程度上保障軟件的分發(fā)和運行安全。其中,設計和提出切實可行的保護技術顯得尤為重要。以軟件水印、軟件混淆和軟件防篡改技術為主的軟件保護技術正是為解決軟件知識產權保護問題而發(fā)展起來的一個新興學科。
本書內容安排如下: 第1章為引言部分,介紹軟件保護的背景、意義以及研究現狀;第2章介紹軟件保護的技術基礎,包括代碼操作技術、程序分析技術、Java字節(jié)碼的結構以及拆分和編碼知識;第3章至第5章為本書的重點,分別介紹軟件水印技術、軟件混淆技術和軟件防篡改技術;第6章討論上述若干保護技術的綜合使用;第7章為總結和展望。
本書在寫作過程中得到了清華大學軟件學院碩士研究生張長江、付軍寧、李嘉、王瀟等同學的幫助,在此表示感謝。
盡管我們對全書內容進行了全面的修訂和校正,但由于水平有限,書中可能會存在一些問題和不足,懇請廣大讀者提出寶貴意見和建議。
編者 2013年3月
第1章 引言
1.1 軟件保護的背景及意義
1.2 軟件保護場景
1.3 軟件攻擊模型
1.3.1 攻擊者的能力
1.3.2 攻擊者的目標
1.3.3 針對軟件保護的通用攻擊方式
1.3.4 針對軟件水印的特定攻擊方式
1.4 研究現狀
1.5 軟件保護方案
1.5.1 基于審計的保護方案
1.5.2 基于硬件的保護方案
1.5.3 基于軟件的保護方案
1.6 關于軟件保護的專利及法律條文
1.6.1 美國
第1章 引言
1.1 軟件保護的背景及意義
1.2 軟件保護場景
1.3 軟件攻擊模型
1.3.1 攻擊者的能力
1.3.2 攻擊者的目標
1.3.3 針對軟件保護的通用攻擊方式
1.3.4 針對軟件水印的特定攻擊方式
1.4 研究現狀
1.5 軟件保護方案
1.5.1 基于審計的保護方案
1.5.2 基于硬件的保護方案
1.5.3 基于軟件的保護方案
1.6 關于軟件保護的專利及法律條文
1.6.1 美國
1.6.2 歐盟
1.6.3 日本
1.6.4 中國
參考文獻
參考文獻注釋
第2章 軟件保護基礎
2.1 代碼操縱技術
2.1.1 字節(jié)碼查看工具
2.1.2 字節(jié)碼操縱工具
2.1.3 字節(jié)碼操縱示例
2.2 程序分析技術
2.3 Class文件結構
2.4 拆分與編碼知識
2.4.1 整數拆分
2.4.2 圖編碼
參考文獻
參考文獻注釋
第3章 軟件水印技術
3.1 國內外研究現狀
3.2 軟件水印的概念、模型及分類
3.2.1 軟件水印概念
3.2.2 軟件水印系統(tǒng)的模型
3.2.3 軟件水印的分類
3.3 評價指標
3.3.1 數據率
3.3.2 隱蔽性
3.3.3 彈性
3.3.4 代價
3.3.5 效率
3.3.6 可信度
3.4 若干關鍵算法
3.4.1 靜態(tài)水印算法
3.4.2 動態(tài)水印算法
3.4.3 半動態(tài)水印算法
3.5 軟件水印系統(tǒng)
3.5.1 現有水印系統(tǒng)
3.5.2 TRUP平臺
參考文獻
參考文獻注釋
第4章 軟件混淆技術
4.1 引言
4.2 混淆技術的概念、分類及評估
4.2.1 概念
4.2.2 分類
4.2.3 評估
4.3 混淆算法
4.3.1 設計混淆
4.3.2 數據混淆
4.3.3 控制流混淆
4.3.4 預防混淆
4.4 混淆工具
4.5 混淆算法的檢驗與比較
4.5.1 實驗說明
4.5.2 混淆算法的效果
4.5.3 混淆算法的正確性測試
4.5.4 混淆算法對程序性能的影響
4.5.5 混淆算法對程序優(yōu)化的抵抗力
參考文獻
參考文獻注釋
第5章 軟件防篡改技術
5.1 引言
5.2 軟件防篡改技術的分類方式和設計準則
5.2.1 攻擊類型
5.2.2 分類方式
5.2.3 設計準則
5.3 軟件防篡改技術
5.3.1 校驗和
5.3.2 多塊加密
5.3.3 哨兵
5.3.4 斷言檢查
5.3.5 隱式哈希
5.3.6 Tester—Corrector
5.3.7 控制流圖檢測
5.3.8 基于分支函數的檢測
5.3.9 聯機檢測
5.3.10 指針置空響應法
5.3.11 加密
5.3.12 硬件方式
5.4 軟件防篡改技術輔助方案
5.4.1 TPM
5.4.2 SWATT
5.4.3 混淆
5.4.4 程序定制
5.5 軟件防篡改的研究前景
5.5.1 軟件防篡改技術的度量機制
5.5.2 將檢測和響應結合
5.5.3 將防篡改技術與軟件水印技術相結合
參考文獻
參考文獻注釋
第6章 軟件保護綜合技術
6.1 水印與混淆技術的結合
6.1.1 semi—danamic水印算法與混淆算法結合
6.1.2 .NET平臺的軟件保護
6.2 水印與防篡改技術的結合
6.3 水印感知的Java軟件可信運行環(huán)境
6.3.1 Java虛擬機現有安全策略
6.3.2 基于脆弱水印的可信運行環(huán)境
參考文獻
參考文獻注釋
第7章 總結和展望
7.1 本書內容總結
7.2 展望
附錄A 按操作碼字節(jié)值排列的操作碼助記符
A.1 標準操作碼
A.2 快速操作碼
A.3 保留操作碼
附錄B 習題及解答