新書推薦:
《
中国国际法年刊(2023)
》
售價:NT$
539.0
《
实用对联大全
》
售價:NT$
225.0
《
想象欧洲丛书(7册)欧洲史
》
售價:NT$
1880.0
《
没有伞的孩子必须努力奔跑
》
售價:NT$
149.0
《
做最好的班主任(李镇西教育文集版)
》
售價:NT$
230.0
《
数据驱动法律
》
售價:NT$
390.0
《
对话世界一流大学图书馆馆长
》
售價:NT$
995.0
《
揭秘立体翻翻书--我们的国宝
》
售價:NT$
490.0
|
內容簡介: |
本书用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.1FPGA概述1
1.1.1Xilinx公司的代表芯片2
1.1.2Altera公司的代表芯片2
1.2FPGA工作原理3
1.3FPGA语法基础4
1.3.1Verilog HDL语法要点4
1.3.2VHDL语法要点7
1.4FPGA开发环境简介10
1.4.1FPGA开发环境ISE10
1.4.2FPGA开发环境ModelSim14
1.5密码算法的FPGA实现流程16
1.5.1FPGA一般实现流程16
1.5.2密码算法的FPGA实现流程16
1.6本章小结17
第2章DES算法FPGA实现18
2.1DES算法原理18
2.1.1参数产生18
2.1.2密钥生成18
2.1.3加密解密过程19
2.1.4安全性分析20
2.2DES算法相关模块的FPGA设计20
2.2.1IP和IP?1模块设计21
2.2.2密钥扩展设计21
2.2.3S盒设计22
2.2.4f函数设计23
2.2.5顶层模块设计24
2.3DES算法工程实现25
2.4效果测试28
2.5本章小结29
第3章AES算法FPGA实现30
3.1AES算法原理30
3.1.1基础知识30
3.1.2加密解密过程31
3.2AES算法相关模块FPGA设计32
3.2.1密钥加变换设计32
3.2.2字节代换模块设计32
3.2.3密钥扩展模块设计35
3.2.4行移位设计37
3.2.5列混合设计38
3.3AES算法工程实现39
3.4效果测试41
3.5本章小节43
第4章SM4算法FPGA实现44
4.1SM4算法原理44
4.1.1算法定义44
4.1.2算法描述44
4.1.3加解密算法45
4.2SM4算法相关模块FPGA设计46
4.2.1循环移位设计46
4.2.2S盒设计47
4.2.3密钥扩展设计48
4.2.4轮函数加密设计52
4.3SM4算法工程实现54
4.4效果测试56
4.5本章小节57
第5章RSA算法FPGA实现58
5.1RSA算法原理58
5.1.1参数产生与密钥生成58
5.1.2加解密过程58
5.1.3正确性证明与安全性分析59
5.2RSA算法相关模块FPGA设计60
5.2.1Montgmoery算法模块设计60
5.2.2R-L模式模幂算法模块设计62
5.3RSA算法工程实现67
5.4效果测试70
5.5本章小结72
第6章ECC算法FPGA实现73
6.1ECC算法原理73
6.1.1参数产生73
6.1.2加密解密过程73
6.2ECC算法相关模块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.3ECC算法工程实现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.2SM2算法相关模块FPGA设计97
7.2.1坐标转换模块设计97
7.2.2点加运算和2倍点运算设计97
7.2.3点乘运算设计98
7.2.4Hash算法设计99
7.2.5模逆运算设计99
7.3SM2算法工程实现99
7.4效果测试103
7.5本章小结105
第8章SHA-1算法FPGA实现106
8.1SHA-1算法原理106
8.1.1SHA-1算法的补位与补长度106
8.1.2计算消息摘要107
8.2SHA-1算法基本步骤107
8.3SHA-1算法的FPGA设计109
8.3.1控制单元模块设计109
8.3.2消息扩展模块设计110
8.3.3迭代压缩模块设计110
8.3.4结果输出模块设计112
8.4SHA-1算法工程实现113
8.5效果测试115
8.6本章小结117
第9章Keccak算法FPGA实现118
9.1算法描述118
9.1.1Keccak结构118
9.1.2常数与函数119
9.2Keccak算法相关模块FPGA设计120
9.2.1主函数模块的设计120
9.2.2轮函数模块设计122
9.2.3轮常数模块的设计123
9.2.4缓存模块设计124
9.3Keccak算法工程实现126
9.4效果测试129
9.5本章小结131
第10章SM3算法FPGA实现132
10.1SM3算法原理132
10.1.1算法描述132
10.1.2常数与函数134
10.2SM3算法相关模块FPGA设计134
10.2.1控制单元设计134
10.2.2消息扩展模块设计136
10.2.3迭代压缩模块设计140
10.2.4结果输出模块设计141
10.3SM3算法工程实现143
10.4效果测试147
10.5本章小结148
第11章DSA数字签名算法FPGA实现149
11.1DSA数字签名原理149
11.2DSA数字签名算法相关模块FPGA设计150
11.2.1模乘算法模块设计151
11.2.2模幂算法模块设计152
11.2.3模逆算法模块设计156
11.2.4模加算法模块设计158
11.3DSA数字签名算法的工程实现及结果159
11.4效果测试162
11.5本章小结163
第12章ECC数字签名算法FPGA实现164
12.1ECC数字签名原理164
12.2ECC数字签名算法相关模块FPGA设计165
12.2.1模乘算法模块设计165
12.2.2模逆模块设计168
12.2.3Hash函数模块设计172
12.2.4点乘模块设计172
12.3ECC数字签名算法的工程实现及结果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月
|
|