本書(shū)共14章:第1章和第2章為密碼學(xué)數(shù)學(xué)基礎(chǔ)的相關(guān)實(shí)驗(yàn);第3章為古典密碼算法相關(guān)實(shí)驗(yàn);第4章和第5章為對(duì)稱(chēng)密碼算法相關(guān)實(shí)驗(yàn);第6章為偽隨機(jī)數(shù)算法相關(guān)實(shí)驗(yàn),其內(nèi)容服務(wù)于第7章和第8章的公鑰密碼算法實(shí)驗(yàn);第9章為Diffie-Hellman密鑰交換協(xié)議相關(guān)實(shí)驗(yàn);第10章為橢圓曲線密碼算法相關(guān)實(shí)驗(yàn);第11章為SHA-1算法相關(guān)實(shí)驗(yàn);第12章為數(shù)字簽名算法相關(guān)實(shí)驗(yàn);第13章和第14章為國(guó)產(chǎn)密碼算法相關(guān)實(shí)驗(yàn)。本書(shū)不但可以作為網(wǎng)絡(luò)空間安全、密碼學(xué)、信息安全、信息對(duì)抗等專(zhuān)業(yè)的本科生、碩士生和博士生專(zhuān)業(yè)課程的配套實(shí)驗(yàn)教材,而且可以作為信息安全工程師的培訓(xùn)教材,為密碼學(xué)算法的實(shí)際部署提供一定指導(dǎo)。
郭華,博士,副教授,北京航空航天大學(xué)安全工程系主任。中國(guó)密碼學(xué)會(huì)會(huì)員、中國(guó)計(jì)算機(jī)學(xué)會(huì)會(huì)員。曾獲北京航空航天大學(xué)"藍(lán)天新秀獎(jiǎng)”、教學(xué)成果三等獎(jiǎng)、優(yōu)秀論文指導(dǎo)教師獎(jiǎng)等?蒲蟹矫,緊緊圍繞國(guó)家網(wǎng)絡(luò)安全的戰(zhàn)略需求,圍繞區(qū)塊鏈、數(shù)字貨幣、密鑰管理、認(rèn)證協(xié)議等當(dāng)前熱點(diǎn)問(wèn)題展開(kāi)研究,主持相關(guān)課題多項(xiàng)。
第1章 數(shù)論基礎(chǔ)算法
1.1 算法原理
1.1.1 厄拉多塞篩算法
1.1.2 歐幾里得算法
1.1.3 快速冪取模算法
1.1.4 中國(guó)剩余定理
1.1.5 Miller-Rabin素性檢測(cè)算法
1.2 算法實(shí)現(xiàn)
1.2.1 厄拉多塞篩算法實(shí)現(xiàn)
1.2.2 歐幾里得算法實(shí)現(xiàn)
1.2.3 快速冪取模算法實(shí)現(xiàn)
1.2.4 中國(guó)剩余定理實(shí)現(xiàn)
1.2.5 Miller-Rabin素性檢測(cè)算法實(shí)現(xiàn)
1.3 算法測(cè)試
1.3.1 厄拉多塞篩算法測(cè)試
1.3.2 歐幾里得算法測(cè)試
1.3.3 快速冪取模算法測(cè)試
1.3.4 中國(guó)剩余定理測(cè)試
1.3.5 Miller-Rabin素性檢測(cè)算法測(cè)試
1.4 思考題
第2章 有限域算法
2.1 算法原理
2.1.1 有限域四則運(yùn)算算法
2.1.2 有限域歐幾里得算法
2.1.3 有限域求乘法逆元算法
2.2 算法實(shí)現(xiàn)
2.2.1 有限域四則運(yùn)算算法實(shí)現(xiàn)
2.2.2 有限域歐幾里得算法實(shí)現(xiàn)
2.2.3 有限域求乘法逆元算法實(shí)現(xiàn)
2.3 算法測(cè)試
2.3.1 有限域四則運(yùn)算算法測(cè)試
2.3.2 有限域歐幾里得算法測(cè)試
2.3.3 有限域求乘法逆元算法測(cè)試
2.4 思考題
第3章 古典密碼算法
3.1 算法原理
3.1.1 置換密碼
3.1.2 代替密碼
3.2 算法實(shí)現(xiàn)
3.2.1 柵欄密碼實(shí)現(xiàn)
3.2.2 矩陣密碼實(shí)現(xiàn)
3.2.3 單表代替密碼實(shí)現(xiàn)
3.2.4 仿射密碼實(shí)現(xiàn)
3.2.5 維吉尼亞密碼實(shí)現(xiàn)
3.2.6 弗納姆密碼實(shí)現(xiàn)
3.2.7 Hill密碼實(shí)現(xiàn)
3.3 算法測(cè)試
3.3.1 柵欄密碼測(cè)試
3.3.2 矩陣密碼測(cè)試
3.3.3 單表代替密碼測(cè)試
3.3.4 仿射密碼測(cè)試
3.3.5 維吉尼亞密碼測(cè)試
3.3.6 弗納姆密碼測(cè)試
3.3.7 Hill密碼測(cè)試
3.4 思考題
第4章 DES算法
4.1 算法原理
4.1.1 DES算法整體結(jié)構(gòu)
4.1.2 DES算法詳細(xì)結(jié)構(gòu)
4.1.3 密鑰選擇
4.2 算法實(shí)現(xiàn)
4.2.1 密鑰生成函數(shù)
4.2.2 加密函數(shù)
4.2.3 解密函數(shù)
4.2.4 基本變換函數(shù)
4.3 算法測(cè)試
4.3.1 輸入和輸出
4.3.2 中間數(shù)據(jù)
4.4 思考題
第5章 AES算法
5.1 算法原理
5.1.1 AES算法整體結(jié)構(gòu)
5.1.2 AES算法詳細(xì)結(jié)構(gòu)
5.1.3 AES-192與AES-256
5.2 算法實(shí)現(xiàn)
5.2.1 密鑰生成函數(shù)
5.2.2 加密函數(shù)
5.2.3 解密函數(shù)
5.2.4 基本變換函數(shù)
5.3 算法測(cè)試
5.3.1 輸入和輸出
5.3.2 中間數(shù)據(jù)
5.4 思考題
第6章 偽隨機(jī)數(shù)算法
6.1 算法原理
6.1.1 BBS偽隨機(jī)數(shù)算法
6.1.2 梅森旋轉(zhuǎn)算法
6.2 算法實(shí)現(xiàn)
6.2.1 BBS偽隨機(jī)數(shù)算法實(shí)現(xiàn)
6.2.2 梅森旋轉(zhuǎn)算法實(shí)現(xiàn)
6.3 算法測(cè)試
6.3.1 BBS偽隨機(jī)數(shù)算法測(cè)試
6.3.2 梅森旋轉(zhuǎn)算法測(cè)試
6.4 思考題
第7章 RC4算法
7.1 算法原理
7.1.1 流密碼
7.1.2 RC4算法詳細(xì)結(jié)構(gòu)
7.2 算法實(shí)現(xiàn)
7.3 算法測(cè)試
7.3.1 輸入和輸出
7.3.2 中間數(shù)據(jù)
7.3.3 無(wú)效置換和弱密鑰問(wèn)題
7.4 思考題
第8章 RSA算法
8.1 算法原理
8.1.1 RSA算法整體結(jié)構(gòu)
8.1.2 RSA-OAEP算法
8.2 算法實(shí)現(xiàn)
8.2.1 RSA算法實(shí)現(xiàn)
8.2.2 RSA-OAEP算法實(shí)現(xiàn)
8.3 算法測(cè)試
8.3.1 RSA算法測(cè)試
8.3.2 RSA-OAEP算法測(cè)試
8.4 思考題
第9章 Diffie-Hellman密鑰交換協(xié)議
9.1 算法原理
9.1.1 DH密鑰交換協(xié)議
9.1.2 基于ECC的DH密鑰交換協(xié)議
9.2 算法實(shí)現(xiàn)
9.3 算法測(cè)試
9.3.1 DH密鑰交換協(xié)議測(cè)試
9.3.2 基于ECC的DH密鑰交換協(xié)議測(cè)試
9.4 思考題
第10章 橢圓曲線密碼算法
10.1 算法原理
10.1.1 基于ECC的加密算法
10.1.2 基于ECC的數(shù)字簽名算法
10.2 算法實(shí)現(xiàn)
10.2.1 密鑰生成算法實(shí)現(xiàn)
10.2.2 基于ECC的加密算法實(shí)現(xiàn)
10.2.3 基于ECC的數(shù)字簽名算法實(shí)現(xiàn)
10.3 算法測(cè)試
10.3.1 基于ECC的加密算法測(cè)試
10.3.2 基于ECC的數(shù)字簽名算法測(cè)試
10.4 思考題
第11章 SHA-1算法
11.1 算法原理
11.1.1 SHA-1算法整體結(jié)構(gòu)
11.1.2 SHA-1算法詳細(xì)結(jié)構(gòu)
11.2 算法實(shí)現(xiàn)
11.3 算法測(cè)試
11.4 思考題
第12章 數(shù)字簽名算法
12.1 算法原理
12.1.1 不帶消息恢復(fù)的RSA數(shù)字簽名算法
12.1.2 RSA-PSS數(shù)字簽名算法
12.1.3 ElGamal數(shù)字簽名算法
12.2 算法實(shí)現(xiàn)
12.2.1 不帶消息恢復(fù)的RSA數(shù)字簽名算法實(shí)現(xiàn)
12.2.2 RSA-PSS數(shù)字簽名算法實(shí)現(xiàn)
12.2.3 ElGamal數(shù)字簽名算法實(shí)現(xiàn)
12.3 算法測(cè)試
12.3.1 不帶消息恢復(fù)的RSA數(shù)字簽名算法測(cè)試
12.3.2 RSA-PSS數(shù)字簽名算法測(cè)試
12.3.3 ElGamal數(shù)字簽名算法測(cè)試
12.4 思考題
第13章 SM2算法
13.1 算法原理
13.2 算法實(shí)現(xiàn)
13.3 算法測(cè)試
13.3.1 輸入和輸出
13.3.2 中間數(shù)據(jù)
13.4 思考題
第14章 SM4算法
14.1 算法原理
14.1.1 SM4算法整體結(jié)構(gòu)
14.1.2 SM4算法詳細(xì)結(jié)構(gòu)
14.2 算法實(shí)現(xiàn)
14.3 算法測(cè)試
14.4 思考題