图书介绍

微软.NET程序的加密与解密PDF|Epub|txt|kindle电子书版本网盘下载

微软.NET程序的加密与解密
  • 单海波,王坤峰,李晓峰编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121075520
  • 出版时间:2008
  • 标注页数:340页
  • 文件大小:88MB
  • 文件页数:354页
  • 主题词:计算机网络-密码术

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

微软.NET程序的加密与解密PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 基 础篇2

第1章 微软.NET框架基本原理2

1.1什么是.NET2

1.2编写第一个.NET程序3

1.2.1.NET开发环境3

1.2.2程序的编译5

1.3逆向第一个.NET程序8

1.3.1用ildasm反编译.NET程序8

1.3.2反编译的结果:MSIL与元数据10

1.3.3用ilasm进行再编译11

1.4程序的运行:CLR与JIT12

1.5小结16

第2章 MSIL中间语言17

2.1 MSIL语言基础17

2.1.1 IL程序基本结构17

2.1.2 2.0版IL支持的新特性19

2.1.3一个完整的代码示例21

2.2 MSIL的运行机制:堆栈机23

2.3 MSIL指令25

2.3.1流程控制指令25

2.3.2算术指令27

2.3.3参数、局部变量与字段寻址指令32

2.3.4方法调用34

2.3.5类与值类型操作指令37

2.3.6向量操作指令39

2.4小结42

第3章 PE结构扩展与元数据43

3.1.NET对PE结构的扩展43

3.2元数据及其结构46

3.2.1什么是元数据46

3.2.2元数据的存储形式(1):堆47

3.2.3元数据的存储形式(2):表49

3.2.4元数据的Signature58

3.3元数据的标识及其解码60

3.4元数据的验证63

3.5小结65

第二部分 分析篇68

第4章 静态分析技术68

4.1静态反编译软件68

4.1.1 Reflector的使用68

4.1.2 Dis#的使用72

4.1.3其他反编译软件75

4.2代码修改技术78

4.3代码复用技术80

4.4混合编译程序的静态分析82

4.5.NET程序本地化技术86

4.5.1基础知识86

4.5.2利用可视化工具的本地化88

4.5.3利用MSIL的本地化89

4.6小结91

第5章 动态调试技术92

5.1.NET动态调试的分类92

5.2混合模式调试93

5.2.1 GuiDbg的应用94

5.2.2 PeBrowseDbg的应用99

5.3本地调试104

5.3.1 O11yDbg的应用105

5.3.2 WinDbg的应用109

5.4小结116

第三部分 保护篇118

第6章 强名称保护118

6.1给程序签署强名称118

6.1.1什么是强名称118

6.1.2单个程序集的签署119

6.1.3引用有强名称的程序集123

6.2强名称的去除和替换125

6.2.1去除和替换强名称的原理125

6.2.2利用工具的自动实现126

6.3代码与强名称的结合128

6.4小结131

第7章 名称混淆132

7.1名称混淆的基本原理132

7.2手动实现名称混淆133

7.3名称混淆的局限性139

7.4常见名称混淆形式140

7.5反名称混淆的一般方法143

7.6小结145

第8章 流程混淆146

8.1流程混淆的基本原理146

8.2常见流程混淆的方式:基于跳转的混淆148

8.2.1代码块的易位149

8.2.2连续跳转151

8.2.3跳转表153

8.2.4逻辑跳转154

8.2.5 switch跳转157

8.3流程混淆的扩展:语法混淆160

8.3.1让堆栈溢出160

8.3.2利用高级语言不支持的语法161

8.3.3利用高级语言间的语法差异166

8.3.4利用反编译引擎的缺陷167

8.3.5插入无效指令编码170

8.4反流程混淆的一般方法171

8.5小结173

第9章 辅助保护手段174

9.1用户字符串编码174

9.1.1一般编码175

9.1.2使用强名称的编码176

9.2给程序集添加错误元数据180

9.2.1 #GUID堆大小错误180

9.2.2 TypeDef的Extends项错误181

9.2.3利用PE结构182

9.2.4添加多个Module184

9.3打包186

9.4特殊的.NET属性189

9.5利用系统特性192

9.6小结193

第10章 壳保护194

10.1什么是程序集整体保护194

10.2纯.NET实现的压缩壳195

10.3基于Win32的壳201

10.4挂钩内核的壳205

10.5什么是基于每个方法的保护216

10.5.1常见的挂钩形式217

10.5.2更进一步的保护222

10.5.3实现方式223

10.5.4一般分析方法225

10.6小结226

第11章 其他保护方式227

11.1许可证保护227

11.1.1许可证机制简介227

11.1.2.NET许可证机制的扩展231

11.1.3一般分析方法236

11.2算法的运用237

11.2.1.NET提供的算法空间238

11.2.2对称算法的.NET实现239

11.2.3非对称算法的.NET实现243

11.2.4数字签名的.NET实现247

11.3虚拟机保护248

11.4编译为本地代码250

11.5动态方法委托调用254

11.6小结260

第四部分 扩展篇262

第12章 非托管API262

12.1非托管API综述262

12.2宿主API263

12.3合成API267

12.4强名称API271

12.5元数据API273

12.6分析API283

12.7小结293

第13章 MONO、SSCLI与.NET内核调试294

13.1 MONO简介294

13.2 SSCIL简介300

13.3.NET框架内核调试306

13.4小结309

第14章 Win64平台上的.NET310

14.1 64位编程的一般性问题310

14.2 C++编程的改变311

14.2.1汇编级的改变313

14.2.2.NET编程的改变317

14.3 64位PE结构317

14.4 64位.NET程序调试320

14.5小结327

附录A 元数据表328

参考文献340

热门推荐