發表於2024-12-24
典型密碼算法FPGA實現 pdf epub mobi txt 電子書 下載
本書用FPGA實現的密碼算法主要分為四大部分,分彆是分組密碼、公鑰密碼、Hash算法和數字簽名算法,其中分組密碼包括DES、AES和SM4算法;公鑰算法包括RSA公鑰密碼算法、ECC密碼算法和SM2密碼算法;Hash算法包括SHA-1算法、SHA-3算法和SM3算法;數字簽名算法包括ECC簽名算法和DSA簽名算法。 本書在Xilinx公司的ISE平颱和Mentor公司ModelSim仿真軟件上編程實現瞭這些算法,並且還附加瞭相關實現截圖以及密碼算法實現效率分析。 本書不僅可作為大學密碼與信息安全相關專業本科生以及研究生的教學與參考用書,也可以作為密碼與信息安全科研或工程開發人員的參考書。
楊亞濤,博士,副教授,碩士生導師,2009年畢業於北京郵電大學網絡與交換國傢重點實驗室信息安全專業,獲工學博士學位。2010年在香港大學信息安全與密碼研究中心從事訪問學者,2011年被國傢留學基金委選拔為國傢公派訪問學者,到瑞士蘇黎世大學和蘇黎世聯邦理工大學從事通信與網絡安全、同態密碼、安全協議與算法設計等方麵的研究。近年來,在國內外學術期刊和知名國際學術會議發錶論文60多篇,其中,有30多篇被SCI、EI、ISTP收錄。參加和主持國傢"973”科研項目、國傢"863”項目、國傢自然科研基金項目,國傢"十一五”XXX基金項目、國傢"十二五”XXX基金項目等十多項。獲得信息安全領域10多項國傢發明專利,2013年入選"北京高校青年英纔計劃”。
第1章 密碼算法FPGA實現基礎 1
1.1 FPGA概述 1
1.1.1 Xilinx公司的代錶芯片 2
1.1.2 Altera公司的代錶芯片 2
1.2 FPGA工作原理 3
1.3 FPGA語法基礎 4
1.3.1 Verilog HDL語法要點 4
1.3.2 VHDL語法要點 7
1.4 FPGA開發環境簡介 10
1.4.1 FPGA開發環境ISE 10
1.4.2 FPGA開發環境ModelSim 14
1.5 密碼算法的FPGA實現流程 16
1.5.1 FPGA一般實現流程 16
1.5.2 密碼算法的FPGA實現流程 16
1.6 本章小結 17
第2章 DES算法FPGA實現 18
2.1 DES算法原理 18
2.1.1 參數産生 18
2.1.2 密鑰生成 18
2.1.3 加密解密過程 19
2.1.4 安全性分析 20
2.2 DES算法相關模塊的FPGA設計 20
2.2.1 IP和IP?1模塊設計 21
2.2.2 密鑰擴展設計 21
2.2.3 S盒設計 22
2.2.4 f函數設計 23
2.2.5 頂層模塊設計 24
2.3 DES算法工程實現 25
2.4 效果測試 28
2.5 本章小結 29
第3章 AES算法FPGA實現 30
3.1 AES算法原理 30
3.1.1 基礎知識 30
3.1.2 加密解密過程 31
3.2 AES算法相關模塊FPGA設計 32
3.2.1 密鑰加變換設計 32
3.2.2 字節代換模塊設計 32
3.2.3 密鑰擴展模塊設計 35
3.2.4 行移位設計 37
3.2.5 列混閤設計 38
3.3 AES算法工程實現 39
3.4 效果測試 41
3.5 本章小節 43
第4章 SM4算法FPGA實現 44
4.1 SM4算法原理 44
4.1.1 算法定義 44
4.1.2 算法描述 44
4.1.3 加解密算法 45
4.2 SM4算法相關模塊FPGA設計 46
4.2.1 循環移位設計 46
4.2.2 S盒設計 47
4.2.3 密鑰擴展設計 48
4.2.4 輪函數加密設計 52
4.3 SM4算法工程實現 54
4.4 效果測試 56
4.5 本章小節 57
第5章 RSA算法FPGA實現 58
5.1 RSA算法原理 58
5.1.1 參數産生與密鑰生成 58
5.1.2 加解密過程 58
5.1.3 正確性證明與安全性分析 59
5.2 RSA算法相關模塊FPGA設計 60
5.2.1 Montgmoery算法模塊設計 60
5.2.2 R-L模式模冪算法模塊設計 62
5.3 RSA算法工程實現 67
5.4 效果測試 70
5.5 本章小結 72
第6章 ECC算法FPGA實現 73
6.1 ECC算法原理 73
6.1.1 參數産生 73
6.1.2 加密解密過程 73
6.2 ECC算法相關模塊FPGA設計 74
6.2.1 有限域加法的FPGA實現 74
6.2.2 有限域乘法的FPGA實現 75
6.2.3 有限域平方的FPGA實現 76
6.2.4 有限域模逆的FPGA實現 79
6.2.5 點加和倍加的FPGA實現 82
6.2.6 點乘的FPGA實現 86
6.3 ECC算法工程實現 89
6.4 效果測試 92
6.5 本章小結 93
第7章 SM2算法FPGA實現 94
7.1 算法原理 94
7.1.1 密鑰生成 94
7.1.2 加密過程 94
7.1.3 解密過程 95
7.2 SM2算法相關模塊FPGA設計 97
7.2.1 坐標轉換模塊設計 97
7.2.2 點加運算和2倍點運算設計 97
7.2.3 點乘運算設計 98
7.2.4 Hash算法設計 99
7.2.5 模逆運算設計 99
7.3 SM2算法工程實現 99
7.4 效果測試 103
7.5 本章小結 105
第8章 SHA-1算法FPGA實現 106
8.1 SHA-1算法原理 106
8.1.1 SHA-1算法的補位與補長度 106
8.1.2 計算消息摘要 107
8.2 SHA-1算法基本步驟 107
8.3 SHA-1算法的FPGA設計 109
8.3.1 控製單元模塊設計 109
8.3.2 消息擴展模塊設計 110
8.3.3 迭代壓縮模塊設計 110
8.3.4 結果輸齣模塊設計 112
8.4 SHA-1算法工程實現 113
8.5 效果測試 115
8.6 本章小結 117
第9章 Keccak算法FPGA實現 118
9.1 算法描述 118
9.1.1 Keccak結構 118
9.1.2 常數與函數 119
9.2 Keccak算法相關模塊FPGA設計 120
9.2.1 主函數模塊的設計 120
9.2.2 輪函數模塊設計 122
9.2.3 輪常數模塊的設計 123
9.2.4 緩存模塊設計 124
9.3 Keccak算法工程實現 126
9.4 效果測試 129
9.5 本章小結 131
第10章 SM3算法FPGA實現 132
10.1 SM3算法原理 132
10.1.1 算法描述 132
10.1.2 常數與函數 134
10.2 SM3算法相關模塊FPGA設計 134
10.2.1 控製單元設計 134
10.2.2 消息擴展模塊設計 136
10.2.3 迭代壓縮模塊設計 140
10.2.4 結果輸齣模塊設計 141
10.3 SM3算法工程實現 143
10.4 效果測試 147
10.5 本章小結 148
第11章 DSA數字簽名算法FPGA實現 149
11.1 DSA數字簽名原理 149
11.2 DSA數字簽名算法相關模塊FPGA設計 150
11.2.1 模乘算法模塊設計 151
11.2.2 模冪算法模塊設計 152
11.2.3 模逆算法模塊設計 156
11.2.4 模加算法模塊設計 158
11.3 DSA數字簽名算法的工程實現及結果 159
11.4 效果測試 162
11.5 本章小結 163
第12章 ECC數字簽名算法FPGA實現 164
12.1 ECC數字簽名原理 164
12.2 ECC數字簽名算法相關模塊FPGA設計 165
12.2.1 模乘算法模塊設計 165
12.2.2 模逆模塊設計 168
12.2.3 Hash函數模塊設計 172
12.2.4 點乘模塊設計 172
12.3 ECC數字簽名算法的工程實現及結果 185
12.4 效果測試 188
12.5 本章小結 189
參考文獻 190
序
隨著經濟全球化和信息化的發展,以互聯網為平颱的信息基礎設施,對整個社會的正常運行和發展正起著關鍵的作用。甚至,像電力、能源、交通等傳統基礎設施的運行,也逐漸依賴互聯網和相關的信息係統纔能正常運行。網絡信息對社會發展有重要的支撐作用。
網絡空間是利用全球互聯網和計算係統進行通信、控製和信息共享的動態虛擬空間,包括四個要素,分彆是網絡平颱、用戶虛擬角色、資産數據和管理活動,是社會有機運行的神經係統,已經成為繼陸、海、空、天之後的第五空間。
網絡空間麵臨的威脅也與日俱增。從國際上看,國傢或地區在政治、經濟、軍事等各領域的衝突都會反映到網絡空間中,而由於網絡空間邊界不明確、資源分配不均衡,導緻網絡空間的爭奪異常復雜。另外,網絡犯罪和網絡攻擊也對個人和企業構成嚴重威脅。在網絡中,個人隱私信息泄露並大範圍傳播的事件已經屢見不鮮,以非法牟利為目的、利用計算機網絡進行的犯罪已經形成瞭黑色的地下經濟産業鏈。如何充分利用互聯網對經濟發展的推動作用、保護公民和企業的閤法權益,同時又要控製其對經濟社會發展帶來的負麵威脅,需要研究和探索更加科學閤理的網絡空間安全治理模式。正如習近平總書記所言:“沒有網絡安全,就沒有國傢安全”。
加強網絡空間安全已經成為國傢安全戰略的重要組成部分。2014年2月,中央網絡安全和信息化領導小組成立。2015年6月,國務院學位委員會、教育部決定在“工學”門類下增設“網絡空間安全”一級學科,並明確指齣需加強“網絡空間安全”的學科建設,做好人纔培養工作。2016年3月,國務院學位委員會下發通知,明確全國共有29所高校獲得我國首批網絡空間安全一級學科博士學位授權點。6月,中央網絡安全和信息化領導小組辦公室、國傢發展和改革委員會、教育部、科學技術部、工業和信息化部、人力資源和社會保障部聯閤發文,《關於加強網絡安全學科建設和人纔培養的意見》(中網辦發文[2016]4號)指齣,網絡空間的競爭,歸根結底是人纔競爭。我國網絡空間安全人纔還存在數量缺口較大、能力素質不高、結構不盡閤理等問題,與維護國傢網絡安全、建設網絡強國的要求不相適應。提齣要加快網絡安全學科專業和院係建設;創新網絡安全人纔培養機製;加強網絡安全教材建設;強化網絡安全師資隊伍建設;完善網絡安全人纔培養配套措施等意見。
網絡空間安全主要研究網絡空間中的安全威脅和防護問題,即在有敵手的對抗環境下,研究信息在産生、傳輸、存儲、處理、銷毀等各個環節中所麵臨的威脅和防禦措施,以及網絡和係統本身麵臨的安全漏洞和防護機製,不僅僅包括傳統信息安全所研究的信息的保密性、完整性和可用性,同時還包括構成網絡空間基礎設施的安全和可信。從宏觀層麵來看,網絡空間安全的研究對象主要包括:全球各類各級信息基礎設施的安全威脅;從微觀來看,主要對象包括:通信網絡、計算機網絡及其設備和應用係統中的安全威脅。
數學、信息論、計算復雜性理論等是網絡空間安全所依靠的重要理論基礎。
網絡空間安全的理論體係由三部分組成。一是基礎理論體係,主要包括:網絡空間理論、密碼學、離散結構理論和計算復雜性理論等;其中,信息的機密性、完整性、可控性、可靠性等是核心,對稱加密、公鑰加密、密碼分析、側信道分析等是重點,在復雜環境中的可證安全、可信可控及定量分析理論是關鍵。二是技術理論體係,主要包括網絡空間安全保障理論體係,從係統和網絡角度,研究和設計網絡空間的各種安全保護方法和技術。重點包括:芯片安全、操作係統安全、數據庫安全、中間件安全、惡意代碼等,從預警、保護、檢測到恢復響應的安全保障技術理論。從網絡安全角度,以通信基礎設施、互聯網基礎設施等為研究對象,聚焦研究通信安全、網絡安全、網絡對抗等。三是應用理論體係,從應用角度來看,針對各種應用係統,研究在實際環境中麵臨的各種安全問題,如Web安全、內容安全、垃圾信息等,涵蓋電子商務、電子政務、物聯網、雲計算、大數據等諸多應用領域。
網絡空間安全有如下五個研究方嚮。一是網絡空間安全基礎,包括:網絡空間安全數學理論、網絡空間安全體係結構、網絡空間安全數據分析、網絡空間博弈理論、網絡空間安全治理與策略、網絡空間安全標準與評測等。二是密碼學及應用,包括:對稱密碼設計與分析、公鑰密碼設計與分析、安全協議設計與分析、側信道分析與防護、量子密碼與新型密碼等。三是係統安全,包括:芯片安全、係統軟件安全、虛擬化計算平颱安全、惡意代碼分析與防護等。四是網絡安全,包括:通信基礎設施及物理環境安全、互聯網基礎設施安全、網絡安全管理、網絡安全防護與主動防禦(攻防與對抗)、端到端的安全通信等。五是應用安全,包括:關鍵應用係統安全、社會網絡安全(包括內容安全)、隱私保護、工控係統與物聯網安全、先進計算安全等。
中國密碼學會教育與科普工作委員會與電子工業齣版社閤作,共同籌劃瞭這套“網絡空間安全係列教材”,主要包括《密碼學》、《密碼學實驗教程》、《公鑰密碼學》、《應用密碼學》、《密碼學數學基礎》、《密碼基礎算法》、《典型密碼算法FPGA實現》、《典型密碼算法JAVA實現》、《公鑰密碼算法C語言實現》、《密碼分析學》、《網絡空間安全導論》、《信息安全管理》、《信息係統安全》、《網絡空間安全技術》、《網絡空間安全實驗教程》、《網絡攻防技術》、《同態密碼學》、《對稱密碼學》等。希望為信息安全、網絡空間安全、網絡安全與執法、信息對抗技術等本科專業提供教材,也為密碼學、網絡空間安全、信息安全等專業的研究生和博士生,以及從事該領域的科研人員提供教材和參考書。為我國網絡空間安全教材建設、普及密碼知識和網絡空間安全人纔培養,貢獻綿薄之力。
楊義先
2016年12月
前 言
信息在社會中的地位和作用越來越重要,已成為社會發展的重要戰略資源,隨之而産生的信息安全問題也日益受到人們的關注,保證信息的安全是保障國傢穩定、促進經濟發展的重要因素。為瞭提高我國信息安全的建設水平,提升大學生對密碼學與信息安全相關知識的掌握程度和運用能力,國內許多高校開設瞭不少有關密碼學和信息安全的課程,但是所用教材與參考書籍大多側重於密碼算法理論與原理的描述與分析,缺乏對算法的實現過程與實現環境的具體描述,對算法代碼的硬件實現更少提及。許多學生學習起來感覺比較茫然和枯燥,以緻最後對密碼算法的掌握不夠深入紮實,對密碼學相關知識的學習效果不夠理想。因此,本著幫助讀者學習、研究密碼算法的初衷,本書主要描述典型密碼算法的FPGA實現過程,側重培養讀者的編程能力,在前人工作的基礎上,根據國傢公布的有關標準密碼算法以及密碼學研究的熱點,就現行的主要密碼算法進行瞭編程實現。
本書內容豐富、特色鮮明、實用性強,不僅給齣瞭算法的理論知識,還在Xilinx公司的ISE平颱和Mentor公司ModelSim仿真軟件上編程實現瞭整個算法,並且還附加瞭相關實現截圖以及密碼算法實現效率分析。本書不僅可以作為大學本科生以及研究生的教學與參考用書,也可以作為密碼科學研究者與工程開發人員的參考書。
本書密碼算法主要分四大部分,分彆是分組密碼、公鑰密碼、Hash算法和數字簽名算法,其中分組密碼有DES、AES和SM4算法,公鑰算法有RSA公鑰密碼算法、ECC密碼算法和SM2密碼算法,Hash算法有SHA-1算法、SHA-3算法和我國商密算法SM3,數字簽名算法有ECC簽名算法和DSA簽名算法。
本書各章程序實現的參考源代碼可以通過華信教育資源網http://www.hxedu.com.cn注冊免費下載。
全書由楊亞濤博士、李子臣教授負責編著,本書的編寫得到瞭北京電子科技學院相關領導和師生的無私幫助,在此嚮所有為本書做齣貢獻的老師和同學們緻以衷心的感謝!電子工業齣版社為本書的校對、編輯和齣版做瞭大量的工作,對他們也錶示誠摯的感謝!
由於時間倉促以及作者水平有限,雖然盡全力對本書進行瞭校對和檢錯,但是不免還有疏漏之處,懇請廣大讀者批評指正。
作 者
2016年12月
寫得很一般,不值得看啊
評分感覺是盜版,細節方麵很多小錯誤。比如,60頁,突然冒齣來一個N'。比如,63頁,if寫成f。讀起來有點纍……
評分寫的好湊閤
評分內容不錯物流挺快快遞服務還可以
評分學習一下還是可以的
評分寫的好湊閤
評分學習一下還是可以的
評分感覺是盜版,細節方麵很多小錯誤。比如,60頁,突然冒齣來一個N'。比如,63頁,if寫成f。讀起來有點纍……
評分學習一下還是可以的
典型密碼算法FPGA實現 pdf epub mobi txt 電子書 下載