內容簡介
本書全面而詳細地介紹現代密碼學的理論和相關算法,可幫助讀者將所學知識套用於信息安全的實踐中。全書共分10章,內容包括現代密碼學的基本概念、流密碼、分組密碼、公鑰密碼、密鑰分配與密鑰管理、訊息認證和哈希函式、數字簽名和認證協定、密碼協定、可證明安全及網路加密與認證。
本書從教材使用的角度考慮,概念清晰、結構合理、通俗易懂、內容深入淺出,並充分考慮方便教師在教學過程中的實施,同時還注意與其他專業課教學的銜接。本書取材新穎,不僅介紹現代密碼學所涉及的基礎理論和實用算法,同時也涵蓋了現代密碼學的最新研究成果,力求使讀者通過本書的學習了解本學科最新的發展方向。
圖書目錄
第1章引言1
1.1信息安全面臨的威脅1
1.1.1安全威脅1
1.1.2入侵者和病毒2
1.1.3安全業務3
1.2信息安全的模型4
1.3密碼學基本概念5
1.3.1保密通信系統5
1.3.2密碼體制分類7
1.3.3密碼攻擊概述7
1.4幾種古典密碼8
1.4.1單表代換密碼9
1.4.2多表代換密碼10
習題11
第2章流密碼13
2.1流密碼的基本概念13
2.1.1同步流密碼13
2.1.2有限狀態自動機14
2.1.3密鑰流產生器15
2.2線性反饋移位暫存器16
2.3線性移位暫存器的一元多項式表示18
2.4m序列的偽隨機性21
2.5m序列密碼的破譯23
2.6非線性序列26
2.6.1Geffe序列生成器26
2.6.2JK觸發器27
2.6.3Pless生成器28現代密碼學(第3版)目錄2.6.4鐘控序列生成器28
習題30
第3章分組密碼31
3.1分組密碼概述31
3.1.1代換32
3.1.2擴散和混淆33
3.1.3Feistel密碼結構34
3.2數據加密標準37
3.2.1DES描述37
3.2.2二重DES42
3.2.3兩個密鑰的三重DES43
3.2.43個密鑰的三重DES43
3.3差分密碼分析與線性密碼分析44
3.3.1差分密碼分析44
3.3.2線性密碼分析45
3.4分組密碼的運行模式46
3.4.1電碼本模式46
3.4.2密碼分組連結模式47
3.4.3密碼反饋模式48
3.4.4輸出反饋模式49
3.5IDEA51
3.5.1設計原理51
3.5.2加密過程52
3.6AES算法——Rijndael57
3.6.1Rijndael的數學基礎和設計思想57
3.6.2算法說明60
習題68
第4章公鑰密碼70
4.1密碼學中一些常用的數學知識70
4.1.1群、環、域70
4.1.2素數和互素數72
4.1.3模運算73
4.1.4模指數運算75
4.1.5費馬定理、歐拉定理和卡米歇爾定理75
4.1.6素性檢驗78
4.1.7歐幾里得算法81
4.1.8中國剩餘定理84
4.1.9離散對數87
4.1.10平方剩餘88
4.1.11計算複雜性91
4.2公鑰密碼體制的基本概念92
4.2.1公鑰密碼體制的原理92
4.2.2公鑰密碼算法應滿足的要求94
4.2.3對公鑰密碼體制的攻擊95
4.3RSA算法95
4.3.1算法描述95
4.3.2RSA算法中的計算問題97
4.3.3一種改進的RSA實現方法99
4.3.4RSA的安全性99
4.3.5對RSA的攻擊101
4.4背包密碼體制101
4.5Rabin密碼體制104
4.6NTRU公鑰密碼系統105
4.7橢圓曲線密碼體制106
4.7.1橢圓曲線107
4.7.2有限域上的橢圓曲線107
4.7.3橢圓曲線上的點數109
4.7.4明文訊息到橢圓曲線上的嵌入110
4.7.5橢圓曲線上的密碼110
4.8基於身份的密碼體制112
4.8.1引言112
4.8.2雙線性映射113
4.8.3IBE方案描述114
習題115
第5章密鑰分配與密鑰管理118
5.1單鑰加密體制的密鑰分配118
5.1.1密鑰分配的基本方法118
5.1.2實例118
5.1.3密鑰的分層控制120
5.1.4會話密鑰的有效期120
5.1.5無中心的密鑰控制120
5.1.6密鑰的控制使用121
5.2公鑰加密體制的密鑰管理122
5.2.1公鑰的分配122
5.2.2用公鑰加密分配單鑰密碼體制的密鑰125
5.2.3DiffieHellman密鑰交換126
5.3密鑰託管127
5.3.1美國託管加密標準簡介127
5.3.2密鑰託管密碼體制的組成部分131
5.4隨機數的產生132
5.4.1隨機數的使用132
5.4.2隨機數源133
5.4.3偽隨機數產生器133
5.4.4基於密碼算法的隨機數產生器135
5.4.5隨機比特產生器137
5.5秘密分割138
5.5.1秘密分割門限方案138
5.5.2Shamir門限方案139
5.5.3基於中國剩餘定理的門限方案141
習題142
第6章訊息認證和哈希函式144
6.1訊息認證碼144
6.1.1訊息認證碼的定義及使用方式144
6.1.2產生MAC的函式應滿足的要求145
6.1.3數據認證算法146
6.2哈希函式147
6.2.1哈希函式的定義及使用方式147
6.2.2哈希函式應滿足的條件149
6.2.3生日攻擊150
6.2.4疊代型哈希函式的一般結構151
6.3MD5哈希算法152
6.3.1算法描述152
6.3.2MD5的壓縮函式155
6.3.3MD5的安全性156
6.4安全哈希算法156
6.4.1算法描述156
6.4.2SHA的壓縮函式158
6.4.3SHA與MD5的比較160
6.4.4對SHA的攻擊現狀160
6.5HMAC160
6.5.1HMAC的設計目標161
6.5.2算法描述161
6.5.3HMAC的安全性163
習題163
第7章數字簽名和認證協定165
7.1數字簽名的基本概念165
7.1.1數字簽名應滿足的要求165
7.1.2數字簽名的產生方式166
7.1.3數字簽名的執行方式167
7.2數字簽名標準169
7.2.1DSS的基本方式169
7.2.2數字簽名算法170
7.3其他簽名方案171
7.3.1基於離散對數問題的數字簽名體制171
7.3.2基於大數分解問題的數字簽名體制174
7.3.3基於身份的數字簽名體制176
7.4認證協定177
7.4.1相互認證177
7.4.2單向認證181
習題182
第8章密碼協定183
8.1一些基本協定183
8.1.1智力撲克183
8.1.2擲硬幣協定184
8.1.3數字承諾185
8.1.4不經意傳輸186
8.2零知識證明189
8.2.1互動證明系統189
8.2.2互動證明系統的定義190
8.2.3互動證明系統的零知識性191
8.2.4零知識證明協定的組合194
8.2.5圖的三色問題的零知識證明194
8.2.6知識證明196
8.2.7簡化的FiatShamir身份識別方案198
8.2.8FiatShamir身份識別方案199
8.3安全多方計算協定200
8.3.1安全多方計算問題200
8.3.2半誠實敵手模型201
8.3.3惡意敵手模型205
習題208
第9章可證明安全209
9.1語義安全209
9.1.1公鑰加密方案在選擇明文攻擊下的不可區分性209
9.1.2公鑰加密方案在選擇密文攻擊下的不可區分性210
9.1.3公鑰加密方案在適應性選擇密文攻擊下的不可區分性211
9.1.4簽名體制的語義安全性212
9.1.5規約212
9.2基於身份的密碼體制的安全性214
9.2.1IBE方案所基於的困難問題214
9.2.2選擇明文安全的IBE方案214
9.2.3選擇密文安全的IBE方案219
9.3語義安全的RSA加密方案224
9.3.1RSA問題和RSA假設224
9.3.2選擇明文安全的RSA加密224
9.3.3選擇密文安全的RSA加密226
9.4RSAFDH簽名方案228
9.5BLS短簽名方案230
9.5.1BLS短簽名方案所基於的安全性假設230
9.5.2方案描述230
9.6分叉引理232
9.7代理簽名234
9.7.1平方剩餘的幾個結論234
9.7.2代理簽名系統模型235
9.7.3具體方案237
9.8Paillier公鑰密碼系統242
9.8.1合數冪剩餘類的判定243
9.8.2合數冪剩餘類的計算243
9.8.3基於合數冪剩餘類問題的機率加密方案246
9.8.4基於合數冪剩餘類問題的單向陷門置換247
9.8.5Paillier密碼系統的性質248
9.9CramerShoup密碼系統249
9.9.1CramerShoup密碼系統的基本機制249
9.9.2CramerShoup密碼系統的安全性證明249
9.10雲計算中語義安全的關鍵字搜尋252
9.10.1語義安全的關鍵字搜尋252
9.10.2基於雙線性映射的PEKS254
習題257
第10章網路加密與認證258
10.1網路通信加密258
10.1.1開放系統互連和TCP/IP分層模型258
10.1.2網路加密方式259
10.2Kerberos認證系統262
10.2.1Kerberos V4262
10.2.2Kerberos區域與多區域的Kerberos265
10.3X.509認證業務266
10.3.1證書266
10.3.2認證過程269
10.4PGP270
10.4.1運行方式270
10.4.2密鑰和密鑰環274
10.4.3公鑰管理279
習題282
參考文獻283