2020/1/241应用密码学张仕斌万武南张金全孙宣东编著西安电子科技大学出版社二00九年十二月2020/1/242教学目的与要求《应用密码学》课程是讲授现代密码学基础知识以及现代密码学在信息系统安全中的应用,特别是利用现代密码技术提供信息的机密性、信息的完整性、安全的密钥交换以及事务的抗抵赖性等安全功能和服务,使学生理解密码技术的基本原理,培养学生在实践中解决问题的能力,是一门理论性和应用性较强的课程。2020/1/243学习本课程之前,应具备《概率论》、《信息安全数学基础》和《计算机网络》等基础知识。在识记、领会、分析应用三个能力层次上,对学生学习和掌握本课程知识有如下要求:(1)识记:能识记现代密码学基础理论中的基本概念、原理和方法的涵义,并能表述和判断其是与非。(2)领会:在识记的基础上,能较全面地掌握密码学的基本概念、基本原理、基本密码体制和算法,能表达基本内容和基本原理,分析相关问题的区别与联系。(3)分析应用:在领会的基础上,能运用现代密码学的基本概念、基本原理、密码算法、协议和技术,阐释一般安全网络环境中密码产品如何利用现代密码学理论的工作原理,分析并能运用密码技术的具体实现过程和方法。2020/1/244本课程安排及授课内容(48学时)周次讲课内容分章和分节的名称(实验、设计时间和科学实验名称)学时1周绪论21周古典密码体制22周-3周对称密码体制84周序列密码体制45周-6周非对称密码体制87周-8周Hash函数与消息认证68周-9周数字签名410周身份认证技术210周密钥分配技术211周密码学新方向211周密码学应用2总学时42-理论授课(42学时)-实验(6学时)实验一:对称密码算法实验二:非对称密码算法实验三:数字签名2020/1/245本课程内容简介信息安全的核心是密码,而现代密码学则是信息安全应用领域所有人员必须了解的基础知识。本课程主要学习现代密码学的基本概念、基本理论和典型实用技术。主要内容涉及密码学基础、古典密码、密码学数学引论、对称密码体制、非对称密码体制、HASH函数和消息认证、数字签名、密钥管理、序列密码、量子密码;此外,还涉及现代密码学在电子商务支付安全、数字通信安全、工业网络控制安全和无线传感器网络感知安全这四个典型领域的应用方法和技术。2020/1/246教材《应用密码学》,张仕斌等编著,西安电子科技大学出版社(高等学校电子与信息通信类专业“十一五”规划教材),2009.122020/1/247教学参考书目[1]《计算机密码学及其应用》,赖溪松、张真诚等著.张玉清等改编,国防工业出版社,2001[2]《密码学原理与实践(第二版)》,DouglasR.Stinson.,冯登国译,电子工业出版社,2003[3]《应用密码学》,BruceSchneier.吴世忠、祝世雄、张文政等译,机械工业出版社,2000[4]《密码学与计算机网络安全》,卿斯汉,清华大学出版社,2001[5]《密码学导引》,冯登国,裴定一,科学出版社,2001[6]《对称密码学》,胡予濮,张玉清,肖国镇编著,机械工业出版社,2002.82020/1/248[7]《高级加密标准(AES)算法——Rijndael的设计》,JoanDaemen,VincentRijmen著,谷大武,徐胜波译,清华大学出版社,2003.3[8]《通信网的安全-理论与技术》,王育民、刘建伟.西安电子科技大学出版社,1999[9]《现代密码学》,杨波,清华大学出版社,2003[10]《信息安全数学基础》,陈恭亮编著,清华大学出版社,2004[11]《初等数论》(第2版),潘承洞、潘承彪,北京大学出版社,2002[12]《应用近世代数》(第二版),胡冠章,清华大学出版社,1999•与密码学相关的数据库:IEEEXploreVIP数据库、万方数据库。•与密码学相关的重要网站:IACR、NIST网站、NSA网站。2020/1/249第1章绪论2020/1/2410知识点:◇密码学在信息安全中的作用◇密码学的基本知识◇密码体制的安全性2020/1/24111.密码学在信息安全中的作用信息安全涉及的范围很广,无论在军事,还是在人们的日常生活中。就计算机通信而言,其处理的信息可以归纳为两类:一是计算机内部处理和存储的信息;另一类是计算机之间通过公共信道相互传输的信息。对于在计算机内部处理和存储信息,希望不被非法访问,即如何控制非法客户读取计算机内部信息;而对于后一类,发送者希望能够控制在公开信道上传输的信息具有保密性、完整性、不可否认性、可用性、可靠性、可审查性和可控性等①保密性(Confidentiality):保密性是指信息不泄漏给非授权的个人、实体和过程,或供其使用的特性。(如何保护公共网络上信息的安全已成为人们关注的焦点,作为信息安全的核心技术——密码技术也引起了人们的高度重视,吸引着越来越多的科技人员投入到密码学领域的研究中。)2020/1/2412②完整性(Integrity):完整性是指信息未经授权不能被修改、不被破坏、不被插入、不延迟、不乱序和不丢失的特性。对网络信息安全进行攻击其最终目的就是破坏信息的完整性。③不可否认性(undeniablity):是指数据的生成者和发送者不能对自己做过的事情抵赖;当发送者对发送过的消息进行否认时,第三方能够对发送者的行为进行判断、裁决等。④可用性(Avaliability):可用性是指合法用户访问并能按要求顺序使用信息的特性,即保证合法用户在需要时可以访问到所需信息及相关资产。对可用性的攻击就是阻断信息的可用性,如破坏网络和有关系统的正常运行就属于这类攻击。⑤可控性(Controlability):可控性是指授权机构对信息的内容及传播具有控制能力的特性,可以控制授权范围内的信息流向以及方式。2020/1/2413⑥可审查性(Auditability):在信息交流过程结束后,通信双方不能抵赖曾经做出的行为,也不能否认曾经接收到对方的信息。⑦可靠性(Reliability):是指信息以用户认可的质量连续服务于用户的特性(包括信息的准确、迅速和连续地传输、转移等),但也有一些专家认为可靠性是人们对信息系统而不是对信息本身的要求。从广义来说,凡是涉及到网络系统中信息的保密性、完整性、可用性、可靠性、可控性和可审查性的相关技术和理论都是信息安全的研究领域,需要密码算法来解决。信息安全是一门涉及计算机科学与技术、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论、信息论等多种学科的综合性学科。2020/1/2414因此,密码学是信息安全的基石,是信息安全核心技术,也是信息安全的基础性技术。当前,信息安全的主流技术和理论都是基于以算法复杂性理论为基础的现代密码技术。特别是随着网络及应用技术的进一步发展,基于网络系统应用的信息安全问题日益引起人们的关注。诸如电子邮箱密码的安全使用、电子合同签署的安全问题、电子现金的安全存取和信息的安全存储等问题都需要密码技术的支撑。通过使用密码技术使信息加密保存,可以阻止非法用户获取你的私密信息;通过使用密码技术对信息进行认证,以确保信息是否完整;通过使用密码技术对用户身份进行认证和审查,可以确保授权用户的安全使用等等。这些都是密码技术在信息安全领域所起作用的具体体现。2020/1/2415值得注意的是:尽管密码学在信息安全领域具有举足轻重的作用,但密码学也绝不是信息安全的唯一技术,它也不能解决所有的安全问题。同时,密码编码和密码分析学是一对矛和盾的关系(即所谓“道高一尺,魔高一丈”),它们在发展中始终处于一种动态的平衡。确保信息安全的问题,除了技术之外,管理也是非常重要的一个方面。若密码技术使用不当或攻击者绕过了密码技术的使用,密码技术就不能真正提供安全性。2020/1/24162.密码学的基本知识•密码学的发展简史早在四千多年以前,古埃及人就开始使用密码技术来保密要传递的消息。一直到第一次世界大战前,密码技术的进展很少见诸于世,直到1918年,WilliamF.Friedman的论文“TheIndexofCoincidenceandItsApplicationsinCryptography”(重合指数及其在密码学中的应用)发表时,情况才有所好转。信息安全的若干问题都与密码学紧密相关。密码技术是信息安全的基石、核心技术和基础性技术。密码的历史几乎跟文字的历史一样长,自从有了文字以来,人们为了某种需要总是想法设法隐藏某些信息,以起到保证信息安全的目的。在这些诡秘莫测的字符背后,或是隐含着政客那冷酷阴毒的计谋、武士那阴森滴血的剑影,或是携带着智者狡黠的微笑、情人绵绵不绝的秋波……可以说,密码是当一种文化在文学、科学和语言发达到一定的复杂程度,当秘密的、符号性的信息交流达到不可或缺的阶段应运而生的一种信息交流的特殊工具。——《密码中的秘密》◆密码学的发展历程大致经历了三个阶段:-古典密码(手工、机械阶段-1949)-近代密码(计算机阶段1949-1975)-现代密码(1976-)2020/1/24171949年,C.E.Shannon(香农)在《贝尔系统技术杂志》上发表了“TheCommunicationTheoryofSecrecySystem(保密系统的通信理论)”,为密码技术奠定了坚实理论基础。使密码学真正成为一门科学。1976年,W.E.Diffie和M.E.Hellman发表了“NewDirectioninCryptography(密码学新方向)”一文,提出了一种全新的密码设计思想,导致了密码技术上的一场革命。他们首次证明了在发送端和接收端不需要传送密钥的保密通信是可能的,从而开创了公钥密码技术的新纪元,成为现代密码技术的一个里程碑。2020/1/24181977年美国国家标准局NBS(NationalBureauofStandards,即现在的国家标准与技术研究所NIST)正式公布了数据加密标准DES(DataEncryptionStandard)1978年,R.L.Rivest,A.Shamir和L.Adleman实现了RSA公钥密码技术,此后成为了公钥密码技术中杰出代表。1984年,Bennett.CharlesH.,Brassard.Gille首次提出了量子密码技术(现称为BB84协议)。2020/1/24191985年,N.Koblitz和V.Miller把椭圆曲线理论运用到公钥密码技术中,成为公钥密码技术研究的新亮点。密码技术的另一个重要方向——序列密码(也称为流密码,序列密码主要用于政府、军方等国家要害部门)理论也取得了重大的进展。1989年,R.Mathews,D.Wheeler,L.M.Pecora和Carroll等人首次把混沌理论使用到序列密码及保密通信理论中,为序列密码的研究开辟了一条新的途径。2020/1/24201997年,美国国家标准与技术研究所NIST开始征集新一代数据加密标准来接任即将退役的DES,2000年10月,由比利时密码学家JoanDaemen,VincentRijmen发明的Rijndael密码算法成为新一代数据加密标准——AES(AdvancedEncryptionStandard)算法。2000年1月,欧盟正式启动了欧洲数据加密、数字签名、数据完整性计划NESSIE,旨在提出一套强壮的包括分组密码、序列密码、散列函数、消息人证码(MAC)、数字签名和公钥加密密码标准。2020/1/2421•密码学的基本概念密码学(CryptologyorCryptography)一词来源于古希腊的krypto's及logos两字,直译即为隐藏及讯息之意。它是以认识密码变换的本质、研究密码保密与破译的基本规律为对象的学科,也是研究通信安全保密的一门学科,经典密码学包括密码编码学和密码分析学。密码编码学是研究把信息(明文)变换成没有密钥就不能解读或很难解读的密文的方法,从事此行的称为密码编码者;密码分析学是研究分析破译密码的方法,从事此行的称为密码分析者;密码编码学和密码分析学彼此目的相反、相互独立,但在发展中又相互促进。密码编