新一轮科技革命和产业变革带动了传统产业的升级改造。党的二十大报告强调必须坚持科技是第一生产力、人才是第一资源、创新是第一动力,深入实施科教兴国战略、人才强国战略、创新驱动发展战略,开辟发展新领域新赛道,不断塑造发展新动能新优势。 教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑。建设高质量高等教育体系是摆在高等教育面前的重大历史使命和政治责任。高等教育要坚持国家战略引领,聚焦重大需求布局,推进新工科、新医科、新农科、新文科建设,加快培养紧缺型人才。
现代密码技术已被广泛地应用于信息技术的许多领域,是实现信息系统安全的关键技术之一,在保障信息安全的应用中具有重要地位。现代密码技术的研究内容除传统的信息机密性保护技术外,还包括数字签名、报文与身份鉴别、密钥管理、安全协议等与信息安全密切相关的重要内容。应用密码学已成为许多高等院校网络空间安全、信息安全、通信工程、计算机科学、信息管理、电子商务等本科专业一门重要的专业基础课及重要教学内容。
针对高等院校信息技术类专业本科生所开设的课程特点,编者结合近几年在应用密码学方面的教学实践情况,广泛汲取了各类教材的有益经验,博采众家所长而精心编著了本书。在本书的体系架构和内容编排上,以培养学生的密码技术应用能力为目标,突出教材的体系性和密码技术的实用性,尽量避免传统密码教材或专著注重密码学的数学原理和理论分析,而应用性偏弱的局限,并对一些需要的数学知识可能较深奥的知识点,如密码学的信息论基础、序列密码及密码分析等内容进行了简化或忽略,重点选择一些具有典型意义且常用的密码体制和算法进行介绍,并在每章最后配有思考题与习题,以帮助学生掌握和巩固本章的重要知识点,使其更加易于课堂教学的实施和学生阅读,激发学生潜在的学习积极性。
本书在第2版的基础上在以下方面做了修订: 在分组密码部分,增加了Feistel结构变种、LaiMassey结构和基本设计结构的细化的说明,介绍了国密分组密码算法SM4、轻量级分组密码标准PRESENT和CLEFIA,另外还简述了三种针对分组密码的基本分析方法,包括差分分析、线性分析和中间相遇攻击; 在公钥密码部分,新增了国密公钥密码算法SM2,包括SM21椭圆曲线数字签名算法、SM22椭圆曲线密钥交换协议、SM23椭圆曲线公钥加密算法,补充了针对整数分解和离散对数计算的方法,以及如何利用RSA算法进行数据加密的若干实现方案; 在散列函数与数字签名部分,增加了基于置换的散列函数构造方法、SHA3算法族、SM2数字签名算法、SM3散列算法、基于分组密码的消息鉴别码(CMAC)及环签名等内容; 在流密码部分,增加了Trivium流密码算法和国密流密码算法ZUC的介绍,以及针对流密码的密码分析基本方法; 在身份鉴别部分,新增了比特承诺、联合身份管理技术、个人身份管理技术等内容; 在密码技术应用部分,更新和完善了基于PGP的电子邮件通信安全应用与实践,新增了电子商务中的密码协议等内容。另外,对第2版个别章节进行了部分结构调整,对个别内容进行了勘误,对思考题与习题进行了补充,增加了实践性习题。
本书的主要特色是: 可读性强,结构合理,强调基础,注重应用,不求面面俱到,力求使学生能够较快掌握密码技术的核心内容。在内容取舍、结构编排、密码算法选择及习题设计上尽量体现广泛的代表性和典型性,做到内容主次分明、结构清晰、重点突出、逻辑性强,对知识点的阐述强调由浅入深、循序渐进,使本书具有显著的可读性和实用性,使读者能够在充分掌握密码学基础知识的同时,掌握应用密码技术,并将其尽快运用到实际工作中,是一本较为系统、全面地介绍密码学基本原理和典型应用的教材。全书共10章,具体章节内容安排如下。
应用密码学(第3版)
前言
第1章介绍信息安全与密码学、密码技术发展概况及密码学的基本概念,包括密码学的主要任务、保密通信模型、密码系统的安全性及基本原则,以及密码体制的分类等内容。
第2章介绍古典密码体制中的基本加密运算、几种典型的古典密码体制及基本破译方法。
第3章介绍分组密码体制的设计原则、基本结构。通过典型的分组密码算法,如数据加密标准DES、高级加密标准AES、国密分组密码算法SM4及轻量级分组密码等,介绍常见分组密码算法的原理和特性,以及分组密码算法的工作模式和基本密码分析方法。
第4章介绍公钥密码体制基本思想和应用,以及RSA与ElGamal算法原理、安全性问题与实现方案,对椭圆曲线密码体制基本原理、国密公钥加密算法SM2,以及针对整数分解和离散对数计算的常见算法等进行介绍。
第5章介绍密钥的种类与层次结构、密钥管理的生命周期、密钥的生成与安全存储、密钥的协商与分发问题、典型密钥分配与协商协议及算法、公钥基础设施PKI技术基础,以及典型秘密分割门限方案等。
第6章介绍散列函数的基本特性、构造与设计,以及相关安全性等问题。通过SHA算法簇、SM3密码杂凑算法等密码算法,介绍散列算法和消息鉴别的原理,以及实现报文完整性保护和鉴别的应用方法。
第7章介绍数字签名的基本概念和典型数字签名方案,如RSA、ElGamal、数字签名标准DSS等,对基于椭圆曲线密码的数字签名算法ECDSA和国密算法数字签名方案SM2的原理与特性,以及不可否认、盲签名等典型特殊数字签名方案的基本原理与应用进行介绍。
第8章对身份鉴别的基本原理、基于口令的典型身份鉴别技术和特点进行介绍,阐述零知识证明的概念与有关身份鉴别协议,对比特承诺、联合身份管理及个人身份验证等问题和相关技术进行介绍。
第9章介绍流密码的基本原理及模型、线性反馈移位寄存器LFSR、基于LFSR的序列密码,以及Trivium、RC4、国密流密码算法ZUC等典型序列密码算法,简要介绍针对流密码的常见攻击方法与密码分析。
第10章介绍密码技术在数字通信安全、电子商务中的典型应用技术和协议,包括PGP技术及应用、Kerberos身份鉴别系统、安全电子交易SET及电子商务中的密码协议等。
考虑密码学要用到的数学知识较多,特别是概率论、近世代数和数论方面的基础知识,为方便读者学习,在本书的附录对书中用到的有关初等数论和近世代数的基础知识进行了介绍。了解这方面的数学知识对研究和学习应用密码学大有帮助,但即使没有学过这些数学知识也不会影响对本书的阅读和学习。
本书语言通俗易懂,内容丰富翔实,可作为高等院校网络空间安全、信息安全、计算机科学与技术、信息与计算科学、通信工程、网络工程、电子商务等信息类专业密码学课程的教材,也适合初学密码学的研究生及信息安全、计算机、通信、电子工程等领域的科研人员阅读参考。
本书由四川大学网络空间安全学院组织编写,全书由刘嘉勇教授负责组织与统稿。第1、2、6、7章和附录由刘嘉勇、李莉编写,第3、4、9章由赵亮编写,第5、8、10章由杨进编写。四川大学信息安全研究所全体人员对本书的编写给予了大力支持和帮助。本书的编写还从其他老师和同行的有关著作(包括网站)中得到了帮助,编者在此一并表示由衷的感谢。
尽管编者已尽了最大努力,但囿于学识和水平,书中难免有需要商榷之处,诚望读者不吝赐教、斧正。联系邮箱: 404905510@qq.com。
编者2023年10月于四川大学