《現(xiàn)代密碼學(xué)》系統(tǒng)地講述了密碼學(xué)的基礎(chǔ)理論與應(yīng)用技術(shù)。主要內(nèi)容包括密碼學(xué)的信息論基礎(chǔ)、密碼學(xué)的復(fù)雜性理論、流密碼、分組密碼、公鑰密碼、Hash函數(shù)、數(shù)字簽名、密碼協(xié)議和密鑰管理。《現(xiàn)代密碼學(xué)》內(nèi)容豐富,取材經(jīng)典、新穎,概念清楚,各章后面配有大量習(xí)題。《現(xiàn)代密碼學(xué)》可作為高等院校信息安全、通信工程等相關(guān)專業(yè)本科生的教材,也可供研究生與相關(guān)技術(shù)人員學(xué)習(xí)參考。
密碼學(xué)(Cryptology)包括密碼編碼學(xué)(Cryptography)和密碼分析學(xué)(Cryptanalytics),后者的研究內(nèi)容,也稱為密碼破譯(cipher-break),密碼是在非安全信道中為保證交換信息的機(jī)密性而誕生的。
人類使用密碼已經(jīng)有幾千年了,在歷史上它往往和軍事、間諜等工作聯(lián)系在一起。由于成功的密碼編碼、密碼使用或密碼分析,使密碼工作者多次在世界軍事史上留名并且影響到歷史的進(jìn)程。納瓦霍語密碼是密碼編碼的傳奇;破譯德國“恩尼格瑪”密碼和破譯日本“紫密”密電是密碼分析的傳奇——它們已經(jīng)成為膾炙人口的故事。以戰(zhàn)爭為主要驅(qū)動力的密碼學(xué),和通信理論、電子學(xué)一樣在第二次世界大戰(zhàn)后得到高度重視,隨著社會日益增長的保密需求,其研究在更大范圍內(nèi)受到關(guān)注和支持。在近代密碼學(xué)的發(fā)展史上,以下幾個事件具有特殊的意義。
1949年C.E.Shannon發(fā)表了“Communication theory of secrecy system’,將密碼學(xué)的研究引入了科學(xué)的軌道——雖然該文在20多年后才得到密碼學(xué)界足夠的重視。20世紀(jì)70年代,有兩個可以稱為里程碑的事件:一是美國國家標(biāo)準(zhǔn)局(NBS)正式公布實(shí)施美國數(shù)據(jù)加密標(biāo)準(zhǔn)(DES),由此導(dǎo)致密碼的廣泛商業(yè)應(yīng)用和密碼研究的平民化;另一個是W.Diftie和M.E.Hellman公開發(fā)表“New directions incryptography”一文,提出了不同于傳統(tǒng)對稱密碼體制的非對稱密碼體制或雙鑰密碼體制——由于加密與解密密鑰中的一個可以公開,所以也被稱為公鑰密碼體制。它們是現(xiàn)代密碼學(xué)誕生的主要標(biāo)志。將公鑰密碼體制改用于認(rèn)證時,唯一擁有秘密密鑰的一方如果用該密鑰加密授權(quán)書(或其壓縮映像),則既定的驗(yàn)證者均可利用對應(yīng)的公鑰解密以上結(jié)果得到原來的授權(quán)書(或其壓縮映像)。上述過程可以提供加密者擁有該秘密密鑰的證據(jù),同時也能達(dá)到防止他人篡改其原始文件的目的——這就是數(shù)字簽名得以立法的理論基礎(chǔ)(我國法律名為“中華人民共和國電子簽名法”)。于是,利益不一致的參與者之間要求個人信譽(yù)保證的所有商務(wù)、金融活動等交易,都可能從傳統(tǒng)的在契約上以手書簽名的運(yùn)作方式,轉(zhuǎn)移到網(wǎng)絡(luò)上來進(jìn)行——因?yàn)閿?shù)字簽名可以代替手書簽名甚至效果更佳,而將交易信息加密又可以保證交易的機(jī)密性。不難想象,這樣的變革對人類社會的影響是多么巨大,因?yàn)樾枰昂炇稹币宰C明信用或便于審計(jì)的不止是商業(yè)和金融業(yè),政府、軍隊(duì)也是如此。于是,電子政務(wù)、電子商務(wù)近年得以迅猛發(fā)展,事實(shí)上還包括“電子軍務(wù)”。
密碼編碼學(xué)的任務(wù)與密碼分析學(xué)的任務(wù)如同制造堅(jiān)固的盾與制造鋒利的矛。同古老的盾與矛一樣,它們也逃不出“相互爭斗,永無休止”的哲學(xué)。自然,在這里需要的不再是鐵與火,而是數(shù)學(xué)、電子學(xué)、信息論、計(jì)算復(fù)雜性理論等,以及在此基礎(chǔ)上表現(xiàn)出的智力、技巧、微電子制造甚至。DNA技術(shù),同時還需要一點(diǎn)謙遜、謹(jǐn)慎和預(yù)見——因?yàn)楝F(xiàn)實(shí)社會中參與密碼搏弈的對手對其真實(shí)的密碼設(shè)計(jì)水平與密碼破譯能力始終是秘而不宣。
何大可,西南交通大學(xué)教授、國家高性能計(jì)算中心(成都)主任、博士生導(dǎo)師、從1992年起享受國務(wù)院特殊津貼。兼任中國密碼學(xué)會副理事長,華南農(nóng)業(yè)大學(xué)“丁穎講座教授”。長期從事密碼學(xué)、移動通信安全、鐵路信息系統(tǒng)安全工程等方面的教學(xué)、研究和設(shè)計(jì)工作。參與了我國首批密碼學(xué)博士點(diǎn)申報(bào);曾任第四屆全國鐵路高校電子信息類專業(yè)教學(xué)指導(dǎo)委員會副主任,計(jì)算機(jī)科學(xué)與技術(shù)、自動化專業(yè)教學(xué)指導(dǎo)組組長。先后主持、主研國家自然科學(xué)基金項(xiàng)目、國家“八五”攻關(guān)項(xiàng)目、國家863計(jì)劃項(xiàng)目、教育部博士點(diǎn)基金項(xiàng)目及鐵道部等部委科技項(xiàng)目約30項(xiàng)。是多項(xiàng)中國專利和美國專利US6、859、151 B2的發(fā)明人。1989年獲國家自然科學(xué)四等獎,獲省部級一等獎1次、省部級二等獎3次,1997年獲中國科學(xué)技術(shù)發(fā)展基金會第三屆詹天佑人才獎。
第1章 概論 1
1.1 信息安全與密碼技術(shù) 1
1.2 密碼系統(tǒng)模型和密碼體制 5
1.3 幾種簡單的密碼體制 10
1.4 初等密碼分析 14
1.5 密碼學(xué)的信息論基礎(chǔ) 20
1.5.1 信息量和熵 20
1.5.2 完善保密性 23
1.5.3 唯一解距離、理論保密性與實(shí)際保密性 25
1.6 密碼學(xué)的復(fù)雜性理論基礎(chǔ) 30
1.6.1 問題與算法 30
1.6.2 算法復(fù)雜性 31
1.6.3 問題按復(fù)雜性分類 32
注記 33
習(xí)題 33
第2章 流密碼 35
2.1 流密碼的一般模型 35
2.2 線性反饋移位寄存器序列 37
2.3 線性復(fù)雜度及B-M算法 41
2.4 非線性準(zhǔn)則及非線性序列生成器 44
2.5 流密碼算法介紹 47
2.5.1 RC4算法 47
2.5.2 A5算法 48
注記 49
習(xí)題 50
第3章 分組密碼 51
3.1 分組密碼的一般模型 51
3.2 分組密碼分析方法 53
3.3 DES 54
3.3.1 DES算法描述 54
3.3.2 DES安全性 60
3.3.3 三重DES 62
3.4 IDEA 63
3.4.1 IDEA基本運(yùn)算 63
3.4.2 IDEA算法描述 64
3.4.3 IDEA安全性和效率 68
3.5 AES算法-Rijndael 68
3.5.1 Rijndael算法數(shù)學(xué)基礎(chǔ) 69
3.5.2 Rijndael設(shè)計(jì)原理 72
3.5.3 Rijndael算法描述 73
3.5.4 Rijndael安全性及效率 79
3.6 分組密碼工作模式 79
注記 83
習(xí)題 83
第4章 公鑰密碼學(xué) 85
4.1 公鑰密碼系統(tǒng)基本概念 85
4.1.1 基本概念 85
4.1.2 背包公鑰密碼系統(tǒng) 87
4.2 RSA公鑰密碼系統(tǒng) 89
4.2.1 算法描述 89
4.2.2 對RSA的攻擊 91
4.2.3 RSA系統(tǒng)的參數(shù)選取 93
4.3 離散對數(shù)公鑰密碼系統(tǒng) 93
4.3.1 ElGamal密碼系統(tǒng) 93
4.3.2 ElGamal密碼系統(tǒng)的安全性 95
4.3.3 橢圓曲線密碼系統(tǒng) 96
4.4 可證明安全公鑰密碼系統(tǒng) 99
4.4.1 可證明安全性 99
4.4.2 公鑰密碼系統(tǒng)的安全性 100
4.4.3 可證明安全抗選擇明文攻擊密碼系統(tǒng) 101
4.4.4 可證明安全抗選擇密文攻擊密碼系統(tǒng) 102
注記 106
習(xí)題 107
第5章 Hash函數(shù)與消息認(rèn)證 108
5.1 Hash函數(shù)概述 108
5.1.1 Hash函數(shù)定義 108
5.1.2 Hash函數(shù)的安全性 109
5.1.3 Hash函數(shù)的迭代構(gòu)造法 111
5.2 Hash函數(shù)MD5 112
5.2.1 MD5算法 112
5.2.2 MD5的安全性 116
5.3 安全Hash算法SHA-1 117
5.3.1 SHA-1算法 117
5.3.2 SHA-1和MD5的比較 120
5.3.3 SHA-1的修訂版 121
5.4 基于分組密碼與離散對數(shù)的Hash函數(shù) 122
5.4.1 利用分組密碼構(gòu)造Hash函數(shù) 122
5.4.2 基于離散對數(shù)問題構(gòu)造Hash函數(shù) 123
5.5 消息認(rèn)證 125
5.5.1 消息認(rèn)證碼 125
5.5.2 HMAC算法 126
5.6 應(yīng)用 127
注記 129
習(xí)題 129
第6章 數(shù)字簽名 131
6.1 數(shù)字簽名概述 131
6.2 RSA數(shù)字簽名體制 133
6.2.1 算法描述 133
6.2.2 RSA數(shù)字簽名的安全性 134
6.3 ElGamal數(shù)字簽名體制 135
6.3.1 算法描述 135
6.3.2 ElGamal數(shù)字簽名的安全性 137
6.3.3 ElGamal簽名體制的變形 139
6.4 其他數(shù)字簽名體制 140
6.4.1 Schnorr數(shù)字簽名 140
6.4.2 Fiat-Shamir數(shù)字簽名 141
6.4.3 一次性數(shù)字簽名 143
6.4.4 不可否認(rèn)數(shù)字簽名 145
6.4.5 盲簽名 147
6.5 數(shù)字簽名標(biāo)準(zhǔn) 150
6.5.1 美國數(shù)字簽名標(biāo)準(zhǔn) 150
6.5.2 俄羅斯數(shù)字簽名標(biāo)準(zhǔn) 151
6.6 應(yīng)用 152
注記 153
習(xí)題 153
第7章 密碼協(xié)議 155
7.1 密碼協(xié)議概述 155
7.2 實(shí)體認(rèn)證協(xié)議 156
7.3 密鑰認(rèn)證協(xié)議 162
7.3.1 基于對稱密碼技術(shù)的密鑰認(rèn)證協(xié)議 162
7.3.2 基于非對稱密碼技術(shù)的密鑰認(rèn)證協(xié)議 164
7.4 比特承諾協(xié)議 169
7.5 零知識證明與身份識別協(xié)議 171
7.5.1 零知識證明 171
7.5.2 身份識別協(xié)議 173
注記 176
習(xí)題 176
第8章 密鑰管理 178
8.1 密鑰管理的基本概念 178
8.2 密鑰生成與密鑰分發(fā) 179
8.2.1 密鑰的種類 179
8.2.2 密鑰生成 180
8.2.3 密鑰分配 182
8.3 秘密共享與密鑰托管 186
8.3.1 秘密共享 186
8.3.2 密鑰托管 189
8.4 公鑰基礎(chǔ)設(shè)施PKI 192
8.4.1 PKI的概念 192
8.4.2 PKI的組成 193
8.4.3 X.509認(rèn)證業(yè)務(wù) 193
8.4.4 認(rèn)證中心的體系結(jié)構(gòu)與服務(wù) 196
8.4.5 PKI中的信任模型 197
注記 199
習(xí)題 199
參考文獻(xiàn) 201
第1章 概論
本章介紹信息安全基本概念、密碼系統(tǒng)模型、密碼體制分類、簡單密碼算法、初等密碼分析、密碼學(xué)的信息論基礎(chǔ)和計(jì)算復(fù)雜性理論基礎(chǔ)。
1.1 信息安全與密碼技術(shù)
隨著人類步人信息時代的21世紀(jì),信息安全變得越來越重要。這里,不可避免地要涉及信息(Information)、數(shù)據(jù)(Data)、知識(Knowledge)、信息系統(tǒng)幾個概念。
信息的一般定義屬于哲學(xué)范疇。信息是事物運(yùn)動的狀態(tài)與方式,是事物的一種區(qū)別于物質(zhì)與能量的屬性。信息與物質(zhì)、能量的概念處于同一層次,成為組成世界的三大要素。消息是信息的外殼或表象,信息是消息的內(nèi)核;信號是信息的載體;數(shù)據(jù)是記錄信息的一種形式。知識是認(rèn)識主體(人、猩猩等)加工、序化的信息。
信息系統(tǒng)是指有目的、和諧地處理信息的人—機(jī)系統(tǒng)(人、傳感器、通信設(shè)備、計(jì)算機(jī)硬件、軟件等),它能對一定形態(tài)、形式的信息進(jìn)行處理(如采集、發(fā)送、傳遞、接收、檢測、度量、變換、存儲),并且最終轉(zhuǎn)換為可以由人類感知器直接感知的結(jié)果(傳統(tǒng)的感知器有視覺、聽覺、觸覺感知器;而嗅覺、味覺感知器已經(jīng)或者即將被利用)。下面是信息系統(tǒng)的一些實(shí)例:公眾移動通信系統(tǒng),民航/鐵路客運(yùn)售票系統(tǒng),地理信息系統(tǒng),保安監(jiān)控系統(tǒng),地震、海嘯監(jiān)測預(yù)警系統(tǒng)(可能包含以某些動物作為探測器的預(yù)警子系統(tǒng))。信息系統(tǒng)按社會功能可分為:企業(yè)生產(chǎn)/營銷業(yè)務(wù)系統(tǒng),黨政內(nèi)部網(wǎng)絡(luò)系統(tǒng),電子政務(wù)系統(tǒng),電子商務(wù)系統(tǒng),軍隊(duì)信息系統(tǒng)(如指揮-控制-通信-計(jì)算機(jī)-情報(bào)系統(tǒng)C4I,信息作戰(zhàn)系統(tǒng)),大國間的戰(zhàn)略導(dǎo)彈核查系統(tǒng)等。目前的一個趨勢是:若干信息系統(tǒng)經(jīng)集成或互聯(lián)(比如經(jīng)互聯(lián)網(wǎng)),形成了十分復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),使信息安全保障的形勢變得更加嚴(yán)峻。