第1章 加密基础知识 1
1.1 探究加密技术 2
1.1.1 理解加密技术 2
1.1.2 摘要算法的分类 3
1.1.3 加密技术的演化 4
1.1.4 加密技术的必要性 5
1.1.5 加密技术的发展前景 6
1.2 软件注册保护方式 7
1.3 加密技术中的相关概念 9
1.4 常用的汇编语言命令 11
1.5 小结 12
技巧与问答 12
第2章 软件加密技术 14
2.1 认识口令加密技术 15
2.1.1 口令加密技术的基本概念 15
2.1.2 口令加密软件的起始簇号 16
2.1.3 可执行文件的口令加密 16
2.2 软件狗加密技术概述 21
2.2.1 软件狗加密技术的基本概念 21
2.2.2 软件狗的功能和特点 22
2.2.3 软件狗加密的缺点 23
2.3 探究激光孔加密技术 25
2.4 伪随机数加密技术概述 27
2.5 软件自毁技术基础与实现 31
2.5.1 自毁软件的原理 31
2.5.2 自毁软件的实现 32
2.6 逆指令流技术实现加锁 36
2.7 小结 37
技巧与问答 37
第3章 加密算法 39
3.1 单向散列算法详解 40
3.1.1 单向散列算法 41
3.1.2 安全哈希算法 41
3.1.3 信息摘要算法的特点及应用 47
3.1.4 MD5的优势 67
3.2 对称密钥算法详解 68
3.2.1 对称密钥算法 68
3.2.2 对称密钥的加密模式 69
3.2.3 RC4流密码 71
3.2.4 TEA算法 75
3.2.5 数据加密算法 76
3.2.6 高级加密标准算法概述 78
3.2.7 IDEA加密算法 80
3.3 非对称密钥加密算法详解 81
3.3.1 非对称密钥算法 81
3.3.2 RSA公钥加密算法 82
3.3.3 EIGamal公钥算法 84
3.3.4 Diffie-Hellman密钥交换系统 86
3.3.5 DSA数字签名算法 88
3.4 邮件加密软件PGP详解 89
3.4.1 认识PGP 89
3.4.2 PGP邮件加密软件的原理 90
3.4.3 PGP的安全问题 92
3.5 小结 99
技巧与问答 100
第4章 解密基础知识 102
4.1 探究解密技术 103
4.1.1 解密技术的基本概念 103
4.1.2 解密技术的必要性 103
4.1.3 解密技术的发展前景 104
4.2 软件解密方式概述 104
4.3 解密技术中的相关问题 105
4.3.1 软件的破解方式 105
4.3.2 破解教程中程序代码地址问题 105
4.3.3 如何设置断点的问题 106
4.3.4 如何跟踪程序的问题 107
4.3.5 软件的反安装问题 107
4.4 小结 108
技巧与问答 108
第5章 破解技术基础 110
5.1 认识PE格式文件 111
5.2 掌握代码分析技术 113
5.2.1 文件偏移地址与虚拟地址 113
5.2.2 搜索程序的入口点 116
5.2.3 如何修复输入表 120
5.2.4 转储程序概述 121
5.3 了解静态分析技术及其工具 123
5.3.1 静态分析的概念 123
5.3.2 资源编辑器工具 123
5.3.4 掌握反汇编分析工具 128
5.4 动态分析技术及OllyDbg工具 130
5.5 流行注册表分析技术及工具 131
5.5.1 注册表监视工具RegMonitor 131
5.5.2 注册表静态比较工具Regshot 134
5.5.3 注册表编辑工具Regedit 136
5.5.4 高级系统注册表编辑工具RegistryWorkshop 141
5.5.5 注册表照相机RegSnap 143
5.6 小结 145
技巧与问答 146
第6章 静态反汇编工具 148
6.1 认识常用的反汇编程序 149
6.1.1 程序的基本信息 149
6.1.2 程序的反汇编源代码 151
6.2 静态反汇编工具概述 153
6.2.1 静态反汇编工具W32Dasm 153
6.2.2 静态反汇编工具C32asm 169
6.2.3 静态分析软件IDA Pro 176
6.3 静态分析解密详解 195
6.3.1 静态分析解密的过程概述 195
6.3.2 两种注册判断的修改方法 196
6.3.3 常见指令的机器码值 197
6.4 可执行文件编辑修改工具 198
6.4.1 WinHex使用简介 198
6.4.2 Hiew使用简介 199
6.4.3 Hex Workshop使用简介 205
6.4.4 UltraEdit使用简介 210
6.4.5 eXeScope使用简介 217
6.5 小结 221
技巧与问答 222
第7章 动态跟踪分析工具 224
7.1 OllyDbg动态跟踪分析工具 225
7.1.1 认识动态跟踪分析工具OllyDbg主窗口 226
7.1.2 配置动态跟踪分析工具OllyDbg 228
7.1.3 动态跟踪分析工具OllyDbg的常用功能与操作 230
7.1.4 动态跟踪分析工具OllyDbg的常用插件 235
7.2 动态跟踪分析工具OllyDbg动态调试解密 235
7.2.1 动态调试解密过程 236
7.2.2 实例:动态调试解密 236
7.3 小结 242
技巧与问答 243
第8章 补丁技术 245
8.1 程序补丁概述 246
8.1.1 补丁的分类 246
8.1.2 如何构成补丁 247
8.2 DLL劫持内存补丁工具 248
8.3 用Keymake制作补丁程序 257
8.3.1 文件补丁程序的制作 257
8.3.2 内存补丁程序的制作 259
8.4 小结 261
技巧与问答 261
第9章 解密壳技术 263
9.1 快速理解壳 264
9.1.1 认识壳 264
9.1.2 壳的作用和分类 264
9.2 常见查壳软件的使用方法 266
9.2.1 PEiDentifier的使用 266
9.2.2 Exeinfo PE的使用 268
9.3 几种常见的加壳软件 269
9.3.1 穿山甲加壳工具Armadillo的使用 269
9.3.2 压缩壳UPX的使用 273
9.3.3 EncryptPE的使用 275
9.3.4 ASPack的使用 278
9.4 几种常见的脱壳软件 279
9.4.1 探究脱壳工具(WSUnpacker v0.20) 280
9.4.2 万能脱壳工具详解 281
9.4.3 详解RL!dePacker软件 282
9.4.4 随机注册码保护实例 283
9.5 小结 287
技巧与问答 287
第10章 加密与解密的编程技术 289
10.1 编程资料基础 290
10.1.1 VXD、KMD、WDM基本概念 290
10.1.2 程序自删除的实现 290
10.1.3 共享软件安全注册的实现 294
10.2 Win32编程技术概述 296
10.2.1 Win32编程基本概念 297
10.2.2 第一个Win32程序 299
10.2.3 应用程序编程接口 309
10.2.4 调试事件 313
10.2.5 在调试时创建并跟踪一个进程 315
10.2.6 调试循环体 316
10.2.7 调试事件的处理 317
10.2.8 在另一个进程中注入代码 319
10.3 调试API制作内存补丁 323
10.3.1 跨进程内存存取机制 324
10.3.2 DebugAPI机制 325
10.4 利用调试API编写脱壳机 333
10.4.1 tElock脱壳概述 333
10.4.2 编写脱壳机 334
10.5 小结 340
技巧与问答 341
第11章 常用软件加密解密技术应用 343
11.1 Excel文件的加密解密 344
11.1.1 Excel功能概述 344
11.1.2 PasswareKitBasicDemo 12.3的使用 348
11.1.3 Advanced Office Password Recovery Trial的使用 351
11.1.4 Excel Password Recovery的使用 353
11.2 邮件加密软件PGP的使用 356
11.3 Word文件的加密解密 365
11.3.1 Word自身功能加密 365
11.3.2 Word密码破解器2016的使用 369
11.3.3 风语者文件加密器的使用 370
11.3.4 AOPR解密软件的使用 372
11.4 WinRAR压缩文件的加密解密 375
11.4.1 WinRAR加密文件 375
11.4.2 RAR密码破解(ARPR)1.53绿色版的使用 376
11.4.3 RAR压缩包密码破解(RAR Password Recovery)V1.80特别版的使用 379
11.5 WinZip压缩文件的加密解密 382
11.5.1 WinZip加密文件 382
11.5.2 解密Zip密码软件(ARCHPR)的使用 384
11.5.3 利用ZIP密码暴力破解工具探测口令 386
11.6 EXE文件的加密解密 389
11.6.1 EXE文件添加运行密码 389
11.6.2 EXE加壳保护工具下载汉化绿色版的使用 390
11.7 小结 392
技巧与问答 392
第12章 其他软件加密解密技术应用 394
12.1 破解MS SQL Server密码 395
12.1.1 SA口令清除工具的使用 395
12.1 2实现本地用户的账户登录 397
12.1.3 文件复制的使用 398
12.2 宏加密解密技术的应用 401
12.2.1 宏加密文件 401
12.2.2 破解宏密码 408
12.3 多功能文件加密工具应用 409
12.3.1 “超级加密精灵”的使用 409
12.3.2 “易通文件夹锁”的使用 416
12.3.3 “文件密使”的使用 422
12.3.4 “隐身侠”文件夹加密软件的使用 427
12.4 FTP密码的探测 433
12.4.1 使用网络刺客Ⅱ探测FTP口令 433
12.4.2 “流光”探测FTP口令 436
12.4.3 实例:流光针对专门的账户进行穷举探测 438
12.5 多媒体文件加密工具的应用 440
12.5.1 CryptaPix加密软件的使用 440
12.5.2 Private Pix加密软件的使用 443
12.5.3 WinXFiles加密软件的使用 447
12.6 小结 452
技巧与问答 452
第13章 光盘的加密解密技术 454
13.1 认识光盘的加密与解密技术 455
13.1.1 光盘加密技术 455
13.1.2 光盘加密流技术 456
13.2 光盘映像ISO文件编辑 458
13.2.1 使用光盘加密大师加密光盘 461
13.2.2 光盘加密软件(GiliSoft Secure Disc Creator)的使用 463
13.2.3 IsoBuster Pro中文破解版的使用 465
13.2.4 加密DVD光盘的破解 467
13.2.5 隐藏文件夹、超大文件的制作 473
13.2.6 用光盘隐藏文件查看器对付隐藏文件夹的加密光盘 477
13.3 小结 479
技巧与问答 479
第14章 网络验证技术应用 481
14.1 本地服务器验证加密技术 482
14.1.1 服务器端加密实现 482
14.1.2 客户端加密实现 484
14.2 Web服务器验证加密技术 486
14.2.1 本地计算机控制实现 486
14.2.2 客户端加密实现 490
14.3 在线升级验证加密技术 493
14.3.1 在线升级验证实现 493
14.3.2 实例:验证在线升级 494
14.4 网络身份认证技术的应用 499
14.4.1 身份认证的含义 500
14.4.2 用户身份认证的技术应用 500
14.4.3 常见的用户身份认证方式 501
14.5 小结 503
技巧与问答 504
第15章 自制加密工具 506
15.1 U盘制作Windows开机加密狗 507
15.1.1 U盘制作Windows开机加密狗的制作步骤 507
15.1.2 U盘遗失情况下的解决办法 511
15.2 手机应用软件加密 512
15.2.1 手机设置应用软件加密 512
15.2.2 使用腾讯手机管家对应用软件加密 514
15.2.3 使用360卫士对手机软件进行加锁 516
15.3 小结 518
技巧与问答 519