圖書信息
作 者:(烏克蘭)卡里諾維斯蓋著,劉凌,周哲海譯
出版時間:2005-10-1字 數:298000
版 次:1頁 數:262
印刷時間:2005-10-1
紙 張:膠版紙
內容簡介
本書給出了一些如何攻克諸多難題的實用方法:
反編譯和混淆類;
破譯私有變數和方法;
替代和修補套用類;
運用竊聽技術簡化故障排除和性能調整;
截取控制流並控制類載入;
理解和調整位元組碼;
更改第三方套用邏輯;
破譯JVM的行為;
保護商用軟體免於破譯;
作者簡介
Alex Kalinovsky是WebCream的一位頂級開發人員,同時還是一位經驗豐富的講師,為不同企業和組織講授各種有關企業級JAVA技術的課程。作為一名資深的企業級JAVA架構師,Alex經常為眾多公司提供JAVA和J2EE技術方面的專業諮詢服務,並為JavaWorld Information Week Washington Post以及其他雜誌社撰稿,深受廣大JAVA開發人員的喜愛。
目錄
第1章 入門指南
1.1 技術綜述—— 使用各種方法的時間和目的
1.2 利用檔案管理器提高程式開發效率
1.2.1 FAR和Total Commander
1.2.2 Java IDE
1.3 示例應用程式的功能和結構
1.4 快速測試
1.5 小結
第2章 反編譯類
2.1 確定何時進行反編譯
2.2 了解最佳的反編譯器
2.3 反編譯類
2.4 反編譯可行的要素
2.5 反編譯代碼的潛在問題
2.6 快速測試
2.7 小結
第3章 混淆類
3.1 保護代碼背後的構思
3.2 混淆—— 一種智慧財產權的保護措施
3.3 由混淆程式執行的變換
3.3.1 去除調試信息
3.3.2 名稱的處理
3.3.3 編碼Java字元串
3.3.4 改變控制流
3.3.5 插入訛用的代碼
3.3.6 刪除未使用的代碼(壓縮)
3.3.7 最佳化位元組碼
3.4 了解最佳的混淆程式
3.5 潛在問題和通用解決方案
3.5.1 動態類載入
3.5.2 反射
3.5.3 串列化
3.5.4 違反命名慣例
3.5.5 維護的難題
3.6 運用Zelix KlassMaster混淆一個Chat應用程式
3.7 破解混淆的代碼
3.8 快速測試
3.9 小結
第4章 破譯類的非公共方法和變數
4.1 封裝的問題
4.2 訪問包和保護類成員
4.3 訪問私有類成員
4.4 快速測試
4.5 小結
第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.4 修補類以提供新邏輯
5.5 重構應用程式來載入和使用修補的類
5.6 修補封裝的包
5.7 快速測試
5.8 小結
第6章 使用有效的跟蹤技術
第7章 管理Java安全
第8章 窺探運行時環境
第9章 用非正式調試程式破譯編碼
第10章 運用性能分析工具分析應用程式的運行時
第11章 運用負載測試定位和修正可伸縮性問題
第12章 逆向工程的套用
第13章 竊聽技術
第14章 控制類的載入
第15章 替代和修補核心Java類
第16章 截取控制流
第17章 理解和調整位元組碼
第18章 運用本機代碼修補法進行總控制
第19章 保護商用程式免於被破解
附錄A 商用軟體許可
附錄B 資源
附錄C 測試問題解答