《典型密碼算法設計與C語言實現》是2013年9月出版的一本圖書,作者是李子臣、楊亞濤、左洪福。
基本介紹
- 書名:典型密碼算法設計與C語言實現
- 作者:李子臣、楊亞濤、左洪福
- ISBN:978-7-118-08706-2
- 頁數:232
- 定價:46.00
- 出版時間:2013年9月
- 裝幀:平裝
- 開本:16
- 版次:1版1次
- 字數:261千字
內容簡介,目錄,
內容簡介
本書詳細講述了一些典型密碼算法的算法原理及C語言實現。書中密碼算法包括:序列密碼、分組密碼、公鑰密碼和Hash算法,其中序列密碼有祖沖之算法,分組密碼有DES和SM4算法,公鑰密碼有RSA 公鑰密碼體制、 ElGamal密碼體制、Paillier密碼體制、NTRU 密碼體制、ECC密碼體制、背包密碼體制、SM2密碼體制和McEliece密鑰體制,Hash算法主要包括最新的第三代Hash算法SHA-3的5個代表算法。本書適合大學計算機、信息安全、密碼學等相關專業本科生及研究生作為教學與參考用書,也可作為密碼科學研究人員和工程開發人員參考用書
目錄
第1章 祖沖之算法原理與實現 1
1.1 算法描述 1
1.1.1 參數產生 3
1.1.2 密鑰產生 6
1.1.3 加密/解密過程 8
1.1.4 安全性分析 8
1.1.5 算法的研究進展 9
1.1.6 算法的套用 10
1.2 算法實現 12
1.2.1 算法舉例 12
1.2.2 程式流程 14
1.2.3 實現環境 14
1.2.4 核心代碼 15
1.2.5 實現結果 18
1.2.6 性能分析 20
思考練習題 21
第2章 DES算法原理與實現 22
2.1 算法描述 22
2.1.1 初始置換與逆初始置換 24
2.1.2 密鑰擴展 25
2.1.3 加密/解密過程 26
2.1.4 安全性分析 30
2.1.5 算法的研究進展 32
2.1.6 算法的套用 33
2.1.7 三重DES 33
2.2 算法實現 35
2.2.1 算法舉例 35
2.2.2 程式流程 37
2.2.3 實現環境 38
2.2.4 核心代碼 38
2.2.5 實現結果 40
2.2.6 性能分析 40
思考練習題 41
第3章 AES密碼算法原理與實現 42
3.1 算法描述 42
3.1.1 參數產生 42
3.1.2 密鑰產生 42
3.1.3 加密/解密過程 45
3.1.4 安全性分析 51
3.1.5 算法的研究進展 52
3.1.6 算法的套用 54
3.2 算法實現 56
3.2.1 算法舉例 56
3.2.2 程式流程 59
3.2.3 實現環境 59
3.2.4 核心代碼 59
3.2.5 實現結果 68
3.2.6 性能分析 69
思考練習題 69
第4章 SM4算法原理與實現 70
4.1 算法描述 70
4.1.1 參數產生 70
4.1.2 輪函式 71
4.1.3 密鑰擴展 73
4.1.4 加密/解密過程 74
4.1.5 安全性分析 75
4.1.6 算法的研究進展 76
4.1.7 算法的套用 76
4.2 算法實現 77
4.2.1 算法舉例 77
4.2.2 程式流程 77
4.2.3 實現環境 78
4.2.4 核心代碼 79
4.2.5 實現結果 80
4.2.6 性能分析 83
思考練習題 84
第5章 MH背包公鑰密碼算法原理與實現 85
5.1 算法描述 85
5.1.1 參數產生 85
5.1.2 密鑰產生 86
5.1.3 加密/解密過程 86
5.1.4 安全性分析 86
5.1.5 算法的研究進展 87
5.1.6 算法的套用 89
5.2 算法實現 89
5.2.1 算法舉例 89
5.2.2 程式流程 90
5.2.3 實現環境 90
5.2.4 核心代碼 90
5.2.5 實現結果 92
5.2.6 性能分析 95
思考練習題 96
第6章 RSA算法原理與實現 97
6.1 算法描述 97
6.1.1 參數產生與密鑰產生 97
6.1.2 加密/解密過程 98
6.1.3 安全性分析 98
6.1.4 算法的研究進展 101
6.1.5 算法的套用 104
6.2 算法實現 105
6.2.1 算法舉例 105
6.2.2 程式流程 106
6.2.3 實現環境 106
6.2.4 核心代碼 106
6.2.5 實現結果 111
6.2.6 性能分析 112
思考練習題 113
第7章 Paillier算法原理與實現 114
7.1 算法描述 114
7.1.1 基礎理論 114
7.1.2 密鑰產生 115
7.1.3 加密/解密過程 115
7.1.4 安全性分析 115
7.1.5 算法的研究進展 116
7.1.6 算法的套用 117
7.2 算法實現 117
7.2.1 算法舉例 117
7.2.2 程式流程 118
7.2.3 實現環境 118
7.2.4 核心代碼 119
7.2.5 實現結果 121
7.2.6 性能分析 123
思考練習題 124
第8章 NTRU算法原理與實現 125
8.1 算法描述 125
8.1.1 參數產生 125
8.1.2 密鑰產生 125
8.1.3 加密/解密過程 125
8.1.4 安全性分析 125
8.1.5 算法的研究進展 127
8.2 算法實現 128
8.2.1 算法舉例 128
8.2.2 程式流程 129
8.2.3 實現環境 130
8.2.4 核心代碼 130
8.2.5 實現結果 131
8.2.6 性能分析 133
思考練習題 134
第9章 ElGamal算法原理與實現 135
9.1 算法描述 135
9.1.1 加密/解密過程 135
9.1.2 安全性分析 135
9.1.3 算法的研究進展 136
9.1.4 算法的套用 136
9.2 算法實現 137
9.2.1 算法舉例 137
9.2.2 程式流程 137
9.2.3 實現環境 137
9.2.4 核心代碼 137
9.2.5 實現結果 142
9.2.6 性能分析 144
思考練習題 145
第10章 橢圓曲線公鑰密碼算法原理與實現 146
10.1 算法描述 146
10.1.1 參數產生 146
10.1.2 密鑰產生 147
10.1.3 初始ECC加密/解密過程 147
10.1.4 明文嵌入式ECC加密/解密過程 147
10.1.5 安全性分析 147
10.1.6 算法的研究進展 149
10.1.7 算法的套用 150
10.2 算法實現 150
10.2.1 初始ECC算法舉例 150
10.2.2 明文嵌入式ECC算法舉例 151
10.2.3 程式流程 151
10.2.4 實現環境 152
10.2.5 核心代碼 152
10.2.6 實現結果 156
10.2.7 性能分析 159
思考練習題 159
第11章 SM2算法原理與實現 161
11.1 算法描述 161
11.1.1 參數產生 161
11.1.2 密鑰產生 162
11.1.3 加密/解密過程 162
11.1.4 安全性分析 163
11.1.5 算法的套用 166
11.2 算法實現 166
11.2.1 算法舉例 166
11.2.2 程式流程 167
11.2.3 實現環境 167
11.2.4 核心代碼 167
11.2.5 實現結果 177
11.2.6 性能分析 180
思考練習題 181
第12章 McEliece算法原理與實現 183
12.1 算法描述 183
12.1.1 參數產生 183
12.1.2 密鑰產生 183
12.1.3 加密/解密過程 183
12.1.4 安全性分析 184
12.1.5 算法的研究進展 185
12.1.6 算法的套用 187
12.2 算法實現 188
12.2.1 算法舉例 188
12.2.2 實現環境 190
12.2.3 核心代碼 191
12.2.4 實現結果 194
12.2.5 性能分析 197
思考練習題 198
第13章 SHA 3候選算法原理與實現 199
13.1 BLAKE算法原理與實現 199
13.1.1 算法描述 199
13.1.2 BLAKE的安全性 204
13.1.3 算法實現 204
13.2 Grφstl算法原理與實現 208
13.2.1 算法描述 208
13.2.2 Grφstl的安全性 209
13.2.3 算法實現 209
13.3 JH 算法原理與實現 213
13.3.1 算法描述 213
13.3.2 JH的安全性 214
13.3.3 算法實現 214
13.4 Keccak算法原理與實現 218
13.4.1 算法描述 218
13.4.2 Keccak的安全性 219
13.4.3 算法實現 219
13.5 Skein算法原理與實現 221
13.5.1 算法描述 222
13.5.2 Skein的安全性 224
13.5.3 算法實現 224
思考練習題 228
參考文獻 229"