日韩精品 中文字幕 动漫,91亚洲午夜一区,在线不卡日本v一区v二区丶,久久九九国产精品自在现拍

注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)匯編語(yǔ)言/編譯原理透視JAVA:反編譯修補(bǔ)和逆向工程技術(shù)

透視JAVA:反編譯修補(bǔ)和逆向工程技術(shù)

透視JAVA:反編譯修補(bǔ)和逆向工程技術(shù)

定 價(jià):¥36.00

作 者: (烏克蘭)卡里諾維斯蓋;劉凌譯
出版社: 清華大學(xué)出版社
叢編項(xiàng): 反編譯、修補(bǔ)和逆向工程技術(shù)
標(biāo) 簽: Java

ISBN: 9787302114147 出版時(shí)間: 2005-10-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 262 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  反編譯、修補(bǔ)和逆向工程技術(shù).您是否是到過(guò)所有常規(guī)方法都失效的窘境?您是否知道有一種產(chǎn)品能夠準(zhǔn)確地解決您所面對(duì)的問(wèn)題,但并沒(méi)有文獻(xiàn)來(lái)記載其實(shí)現(xiàn)方法?您是否正在使用某一第三方庫(kù)文件,需要改動(dòng)其中一些邏輯,卻苦于沒(méi)有源代碼?..本書(shū)給出了一些如何攻克上述難題的實(shí)用方法:反編譯和混淆類;破譯私有變量和方法;替代和修補(bǔ)應(yīng)用類;運(yùn)用竊聽(tīng)技術(shù)簡(jiǎn)化故障排除和性能調(diào)整;截取控制流并控制類加載;理解和調(diào)整字節(jié)碼;更改第三方應(yīng)用邏輯;破譯JVM的行為;保護(hù)商用軟件免于破譯。...本書(shū)中提及的一些竅門能夠幫您節(jié)省時(shí)間,提高效率。每一章都集中講解一種技術(shù),解決一類問(wèn)題概述問(wèn)題所在、給出問(wèn)題的解決方案,然后給出測(cè)試該方案的其他構(gòu)思。

作者簡(jiǎn)介

  Alex Kalinovsky是WebCream的一位頂級(jí)開(kāi)發(fā)人員,同時(shí)還是一位經(jīng)驗(yàn)豐富的講師,為不同企業(yè)和組織講授各種有關(guān)企業(yè)級(jí)JAVA技術(shù)的課程。作為一名資深的企業(yè)級(jí)JAVA架構(gòu)師,Alex經(jīng)常為眾多公司提供JAVA和J2EE技術(shù)方面的專業(yè)咨詢服務(wù),并為JavaWorld Information Week Washington Post以及其他雜志社撰稿,深受廣大JAVA開(kāi)發(fā)人員的喜愛(ài)。 Alex認(rèn)為本書(shū)中所提及的技術(shù)是有爭(zhēng)議的,但正如他在前言中所說(shuō):“……任何信息或發(fā)現(xiàn)都是雙刃劍,既可以用來(lái)做好事,也可能用來(lái)做壞事,本書(shū)是為孩子編寫(xiě)的,如果您是個(gè)壞孩子的話,現(xiàn)在就請(qǐng)停止閱讀本書(shū),在測(cè)試組找份新工作?!?/div>

圖書(shū)目錄

第1章  入門指南    1
1.1  技術(shù)綜述—— 使用各種方法的時(shí)間和目的    1
1.2  利用文件管理器提高程序開(kāi)發(fā)效率    3
1.2.1  FAR和Total Commander    4
1.2.2  Java IDE    6
1.3  示例應(yīng)用程序的功能和結(jié)構(gòu)    7
1.4  快速測(cè)試    9
1.5  小結(jié)    9
第2章  反編譯類    11
2.1  確定何時(shí)進(jìn)行反編譯    11
2.2  了解最佳的反編譯器    12
2.3  反編譯類    14
2.4  反編譯可行的要素    20
2.5  反編譯代碼的潛在問(wèn)題    21
2.6  快速測(cè)試    24
2.7  小結(jié)    24
第3章  混淆類    25
3.1  保護(hù)代碼背后的構(gòu)思    26
3.2  混淆—— 一種知識(shí)產(chǎn)權(quán)的保護(hù)措施    27
3.3  由混淆程序執(zhí)行的變換    27
3.3.1  去除調(diào)試信息    28
3.3.2  名稱的處理    28
3.3.3  編碼Java字符串    29
3.3.4  改變控制流    30
3.3.5  插入訛用的代碼    31
3.3.6  刪除未使用的代碼(壓縮)    32
3.3.7  優(yōu)化字節(jié)碼    32
3.4  了解最佳的混淆程序    32
3.5  潛在問(wèn)題和通用解決方案    33
3.5.1  動(dòng)態(tài)類加載    33
3.5.2  反射    34
3.5.3  串行化    34
3.5.4  違反命名慣例    35
3.5.5  維護(hù)的難題    35
3.6  運(yùn)用Zelix KlassMaster混淆一個(gè)Chat應(yīng)用程序    36
3.7  破解混淆的代碼    40
3.8  快速測(cè)試    41
3.9  小結(jié)    41
第4章  破譯類的非公共方法和變量    43
4.1  封裝的問(wèn)題    43
4.2  訪問(wèn)包和保護(hù)類成員    44
4.3  訪問(wèn)私有類成員    47
4.4  快速測(cè)試    49
4.5  小結(jié)    49
第5章  替換和修補(bǔ)應(yīng)用類    51
5.1  當(dāng)進(jìn)行各種嘗試都失敗后應(yīng)該做什么    52
5.2  找到必須修補(bǔ)的類    53
5.2.1  常用的方法    53
5.2.2  搜尋文本串    54
5.2.3  已混淆的代碼的處理    55
5.3  一個(gè)需要修補(bǔ)的示例    55
5.3.1  使用類名稱    57
5.3.2  搜尋文本串    57
5.3.3  運(yùn)用調(diào)用堆棧搜尋程序邏輯    59
5.4  修補(bǔ)類以提供新邏輯    60
5.5  重構(gòu)應(yīng)用程序來(lái)加載和使用修補(bǔ)的類    60
5.6  修補(bǔ)封裝的包    62
5.7  快速測(cè)試    63
5.8  小結(jié)    63
第6章  使用有效的跟蹤技術(shù)    65
6.1  跟蹤技術(shù)簡(jiǎn)介    65
6.2  跟蹤技術(shù)是了解軟件的有效方法    67
6.3  跟蹤技術(shù)與日志工具和API    68
6.4  跟蹤技術(shù)的使用準(zhǔn)則    68
6.4.1  有效使用跟蹤技術(shù)的準(zhǔn)則    68
6.4.2  不要濫用跟蹤技術(shù)的準(zhǔn)則    69
6.5  快速測(cè)試    70
6.6  小結(jié)    70
第7章  管理Java安全    71
7.1  Java安全概述    71
7.2  繞過(guò)安全核查    73
7.2.1  未安裝安全管理器    74
7.2.2  安裝默認(rèn)政策的安全管理器    74
7.2.3  安裝定制政策的安全管理器    75
7.3  快速測(cè)試    76
7.4  小結(jié)    76
第8章  窺探運(yùn)行時(shí)環(huán)境    77
8.1  了解運(yùn)行時(shí)環(huán)境的價(jià)值    77
8.2  系統(tǒng)屬性    78
8.3  系統(tǒng)信息    79
8.4  內(nèi)存信息    80
8.5  網(wǎng)絡(luò)信息    81
8.6  訪問(wèn)環(huán)境變量    82
8.7  快速測(cè)試    82
8.8  小結(jié)    83
第9章  用非正式調(diào)試程序破譯編碼    85
9.1  了解未知應(yīng)用程序的內(nèi)幕    85
9.2  傳統(tǒng)調(diào)試程序及其局限性    86
9.3  運(yùn)用Omniscient調(diào)試程序破譯    87
9.3.1  記錄Chat的執(zhí)行    87
9.3.2  瀏覽信息處理代碼    89
9.3.3  運(yùn)用ODB破譯混淆的Chat程序版本    91
9.4  快速測(cè)試    92
9.5  小結(jié)    92
第10章  運(yùn)用性能分析工具分析應(yīng)用程序的運(yùn)行時(shí)    93
10.1  使用性能分析技術(shù)的時(shí)機(jī)和目的    94
10.2  Java的最佳性能分析工具    94
10.3  研究堆的使用和垃圾回收頻率以提高性能    95
10.4  瀏覽對(duì)象分配和引用以發(fā)現(xiàn)和修復(fù)內(nèi)存泄漏    97
10.5  研究線程的分配和同步    101
10.6  識(shí)別開(kāi)銷大的方法以提高性能    105
10.7  使用線程轉(zhuǎn)儲(chǔ)研究運(yùn)行時(shí)的應(yīng)用程序    106
10.8  快速測(cè)試    107
10.9  小結(jié)    108
第11章  運(yùn)用負(fù)載測(cè)試定位和修正可伸縮性問(wèn)題    109
11.1  負(fù)載測(cè)試的重要性    109
11.2  用JUnit負(fù)載測(cè)試基于RMI的服務(wù)程序    111
11.3  用JMeter負(fù)載測(cè)試    115
11.3.1  JMeter概述    116
11.3.2  WebCream概述    117
11.3.3  創(chuàng)建一個(gè)Web測(cè)試方案    118
11.4  快速測(cè)試    125
11.5  小結(jié)    125
第12章  逆向工程的應(yīng)用    127
12.1  用戶界面元素和資源    127
12.2  破譯文本    128
12.3  破譯圖片    129
12.4  破譯配置文件    131
12.5  快速測(cè)試    131
12.6  小結(jié)    132
第13章  竊聽(tīng)技術(shù)    133
13.1  竊聽(tīng)的定義    133
13.2  在HTTP上竊聽(tīng)    134
13.2.1  用Tunnel捕捉HTTP信息交換    135
13.2.2  用網(wǎng)絡(luò)嗅探器捕捉HTTP信息交換    136
13.2.3  保護(hù)Web應(yīng)用程序不被竊聽(tīng)    138
13.3  在RMI協(xié)議上竊聽(tīng)    139
13.3.1  RMI傳輸協(xié)議    139
13.3.2  用網(wǎng)絡(luò)嗅探器截取RMI消息    140
13.3.3  保護(hù)RMI應(yīng)用程序不被竊聽(tīng)    141
13.4  在JDBC驅(qū)動(dòng)程序和SQL語(yǔ)句上竊聽(tīng)    142
13.5  快速測(cè)試    144
13.6  小結(jié)    144
第14章  控制類的加載    147
14.1  從類加載的角度觀察JVM的內(nèi)部結(jié)構(gòu)    147
14.2  編寫(xiě)定制類加載程序    151
14.3  快速測(cè)試    156
14.4  小結(jié)    156
第15章  替代和修補(bǔ)核心Java類    157
15.1  為什么麻煩    157
15.2  用啟動(dòng)類路徑修補(bǔ)核心Java類    158
15.3  修補(bǔ)java.lang.Integer的例子    159
15.4  快速測(cè)試    161
15.5  小結(jié)    162
第16章  截取控制流    163
16.1  控制流的定義    164
16.2  截取系統(tǒng)出錯(cuò)信息    164
16.3  截取系統(tǒng)流    165
16.4  截取對(duì)System.exit的調(diào)用    167
16.5  用hook對(duì)JVM的關(guān)閉作出反應(yīng)    169
16.6  用動(dòng)態(tài)代理截取方法    169
16.7  Java虛擬機(jī)性能測(cè)量工具接口    172
16.8  快速測(cè)試    173
16.9  小結(jié)    173
第17章  理解和調(diào)整字節(jié)碼    175
17.1  字節(jié)碼基礎(chǔ)    175
17.2  用jClassLib字節(jié)碼查看器查看類文件    176
17.3  JVM指令集    177
17.4  類文件格式    178
17.4.1  字段和方法描述符    179
17.4.2  類文件結(jié)構(gòu)    180
17.4.3  屬性    183
17.4.4  字節(jié)碼的驗(yàn)證    183
17.5  操縱和生成字節(jié)碼    184
17.5.1  BCEL概述    184
17.5.2  操縱方法    185
17.5.3  生成類    189
17.5.4  ASM庫(kù)    191
17.6  字節(jié)碼調(diào)整與AOP和動(dòng)態(tài)代理的比較    192
17.7  快速測(cè)試    193
17.8  小結(jié)    193
第18章  運(yùn)用本機(jī)代碼修補(bǔ)法進(jìn)行總控制    195
18.1  何時(shí)以及為何要修補(bǔ)本機(jī)代碼    196
18.2  本機(jī)代碼在Java虛擬機(jī)中的用法    197
18.2.1  JNI概述    197
18.2.2  JNI實(shí)現(xiàn)的示例    198
18.3  修補(bǔ)本機(jī)方法的常用方法    200
18.3.1  修補(bǔ)Java方法的聲明    201
18.3.2  替換本機(jī)庫(kù)文件    201
18.3.3  修補(bǔ)本機(jī)代碼    201
18.4  在Windows平臺(tái)上修補(bǔ)本機(jī)代碼    202
18.4.1  可移植執(zhí)行體格式    202
18.4.2  用函數(shù)替代程序修補(bǔ)本機(jī)函數(shù)    205
18.4.3  使用Microsoft Detour庫(kù)手動(dòng)修補(bǔ)    207
18.5  在Unix平臺(tái)上修補(bǔ)本機(jī)代碼    209
18.6  快速測(cè)試    210
18.7  小結(jié)    211
第19章  保護(hù)商用程序免于被破解    213
19.1  為應(yīng)用程序保護(hù)設(shè)定目標(biāo)    213
19.2  用Java密碼體系保護(hù)數(shù)據(jù)    215
19.2.1  Java密碼體系概述    216
19.2.2  用JCA保護(hù)Chat的消息    217
19.3  保護(hù)發(fā)布的應(yīng)用程序不被破譯    220
19.3.1  保護(hù)字節(jié)碼不被反編譯    221
19.3.2  保護(hù)字節(jié)碼不被破譯    221
19.3.3  保護(hù)應(yīng)用程序內(nèi)容不被破譯    224
19.4  通過(guò)許可證控制軟件可用功能    229
19.4.1  現(xiàn)代軟件許可模式    229
19.4.2  通過(guò)許可證控制商用功能    230
19.4.3  Web激活和許可注冊(cè)    237
19.5  快速測(cè)試    238
19.6  小結(jié)    238
附錄A  商用軟件許可    241
附錄B  資源    247
附錄C  測(cè)試問(wèn)題解答    255
Copyright ? 讀書(shū)網(wǎng) rgspecialties.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)