《openssl编程》当前版本,在以前的基础上增加了椭圆曲线补充。
第一章 基础知识 8
1.1 对称算法 8
1.2 摘要算法 9
1.3 公钥算法 9
1.4 回调函数 11
第二章 openssl简介 13
2.1 openssl简介 13
2.2 openssl安装 13
2.2.1 linux下的安装 13
2.2.2 windows编译与安装 14
2.3 openssl源代码 14
2.4 openssl学习方法 16
第三章 堆栈 17
3.1 openssl堆栈 17
3.2 数据结构 17
3.3 源码 18
3.4 定义用户自己的堆栈函数 18
3.5 编程示例 19
第四章 哈希表 21
4.1 哈希表 21
4.2 哈希表数据结构 21
4.3 函数说明 23
4.4 编程示例 25
第五章 内存分配 27
5.1 openssl内存分配 27
5.2 内存数据结构 27
5.3 主要函数 28
5.4 编程示例 29
第六章 动态模块加载 30
6.1 动态库加载 30
6.2 DSO概述 30
6.3 数据结构 31
6.4 编程示例 32
第七章 抽象IO 34
7.1 openssl抽象IO 34
7.2 数据结构 34
7.3 BIO 函数 36
7.4 编程示例 36
7.4.1 mem bio 36
7.4.2 file bio 37
7.4.3 socket bio 38
7.4.4 md BIO 39
7.4.5 cipher BIO 40
7.4.6 ssl BIO 41
7.4.7 其他示例 42
第八章 配置文件 43
8.1 概述 43
8.2 openssl配置文件读取 43
8.3 主要函数 44
8.4 编程示例 44
第九章 随机数 46
9.1 随机数 46
9.2 openssl随机数数据结构与源码 46
9.3 主要函数 48
9.4 编程示例 48
第十章 文本数据库 50
10.1 概述 50
10.2 数据结构 51
10.3 函数说明 51
10.4 编程示例 52
第十一章 大数 54
11.1 介绍 54
11.2 openssl大数表示 54
11.3 大数函数 55
11.4 使用示例 58
第十二章 BASE64编解码 64
12.1 BASE64编码介绍 64
12.2 BASE64编解码原理 64
12.3 主要函数 65
12.4 编程示例 66
第十三章 ASN1库 68
13.1 ASN1简介 68
13.2 DER编码 70
13.3 ASN1基本类型示例 70
13.4 openssl 的ASN.1库 73
13.5 用openssl的ASN.1库DER编解码 74
13.6 Openssl的ASN.1宏 74
13.7 ASN1常用函数 75
13.8 属性证书编码 89
第十四章 错误处理 93
14.1 概述 93
14.2 数据结构 93
14.3 主要函数 95
14.4 编程示例 97
第十五章 摘要与HMAC 100
15.1 概述 100
15.2 openssl摘要实现 100
15.3 函数说明 101
15.4 编程示例 101
15.5 HMAC 103
第十六章 数据压缩 104
16.1 简介 104
16.2 数据结构 104
16.3 函数说明 105
16.4 openssl中压缩算法协商 106
16.5 编程示例 106
第十七章 RSA 107
17.1 RSA介绍 107
17.2 openssl的RSA实现 107
17.3 RSA签名与验证过程 108
17.4 数据结构 109
17.4.1 RSA_METHOD 109
17.4.2 RSA 110
17.5 主要函数 110
17.6编程示例 112
17.6.1密钥生成 112
17.6.2 RSA加解密运算 113
17.6.3签名与验证 116
第十八章 DSA 119
18.1 DSA简介 119
18.2 openssl的DSA实现 120
18.3 DSA数据结构 120
18.4 主要函数 121
18.5 编程示例 122
18.5.1密钥生成 122
18.5.2签名与验证 124
第十九章DH 126
19.1 DH算法介绍 126
19.2 openssl的DH实现 127
19.3数据结构 127
19.4 主要函数 128
19.5 编程示例 129
第二十章
1