《应用密码学》胡向东版习题和思考题答案-(1)

上传人:gbs****77 文档编号:10191967 上传时间:2020-04-10 格式:DOC 页数:23 大小:1.67MB
返回 下载 相关 举报
《应用密码学》胡向东版习题和思考题答案-(1)_第1页
第1页 / 共23页
《应用密码学》胡向东版习题和思考题答案-(1)_第2页
第2页 / 共23页
《应用密码学》胡向东版习题和思考题答案-(1)_第3页
第3页 / 共23页
点击查看更多>>
资源描述
第1章绪论11为什么会有信息安全问题的出现?答题要点:(1)当今知识经济社会,信息资源是重要的资源形式,大到一个国家、小至某一个人,拥有的信息资源越多、越早获取到信息资源,就在整个国家安全、经济与社会竞争中处于更有利的地位;(2)网络自身的安全缺陷难以堵住安全漏洞;(3)网络的开放性特征为攻击者提供了方便之门;(4)人为因素,包括人的无意失误、黑客攻击、管理不善等。12简述密码学与信息安全的关系。答题要点:密码技术是实现网络信息安全的核心技术,是保护数据最重要的工具之一。通过加密变换,将可读的文件变换成不可理解的乱码,从而起到保护信息和数据的作用。它直接支持机密性、完整性和非否认性。密码学尽管在网络信息安全中具有举足轻重的作用,但密码学绝不是确保网络信息安全的唯一工具,它也不能解决所有的安全问题。密码编码与密码分析是一对矛和盾的关系。13简述密码学发展的三个阶段及其主要特点。答题要点:密码学的发展大致经历了三个阶段:(1)古代加密方法。特点:作为密码学发展的起始阶段,所用方法简单,体现了后来发展起来的密码学的若干要素,但只能限制在一定范围内使用。主要基于手工的方式实现。(2)古典密码。特点:加密方法一般是文字置换,使用手工或机械变换的方式实现。古典密码系统已经初步体现出近代密码系统的雏形,它比古代加密方法更复杂,但其变化量仍然比较小。转轮机的出现是这一阶段的重要标志,传统密码学有了很大的进展,利用机械转轮可以开发出极其复杂的加密系统,缺点是密码周期有限、制造费用高等。(3)近代密码。特点:这一阶段密码技术开始形成一门科学,利用电子计算机可以设计出更为复杂的密码系统,密码理论蓬勃发展,密码算法设计与分析互相促进,出现了大量的密码算法和各种攻击方法。另外,密码使用的范围也在不断扩张,而且出现了以DES为代表的对称密码体制和RSA为代表的非对称密码体制,制定了许多通用的加密标准,促进网络和技术的发展。14近代密码学的标志是什么?答:1949年ClaudeShannon发表论文The communication theory of secrecy systems,1976年W.Diffie和M.Hellman发表论文New directions in cryptography,以及美国数据加密标准DES的实施。15安全机制是什么?主要的安全机制有哪些?答题要点:所谓安全机制,是指用来保护系统免受侦听、阻止安全攻击及恢复系统的机制。OSI安全框架X.800方案的安全机制可分为两类:特定的安全机制和通用的安全机制。主要的安全机制(略)。16什么是安全服务?主要的安全服务有哪些?答题要点:安全服务就是加强数据处理系统和信息传输的安全性的一类服务,其目的在于利用一种或多种安全机制阻止安全攻击。主要的安全服务包括:机密性(消息内容析出,通信量分析)、完整性、鉴别、非否认性、访问控制、可用性。17简述安全性攻击的主要形式及其含义。答题要点:中断,即拒绝服务,它是指防止或禁止通信设施的正常使用或管理,这是对可用性的攻击。截取,即未获授权地通过对传输进行窃听和监测,从而获取了对某个资源的访问,这是对机密性的攻击。分为析出消息内容和通信量分析。篡改,即更改报文流,它是对通过连接的协议数据单元PDU的真实性、完整性和有序性的攻击,意味着一个合法消息的某些部分被改变,或消息被延迟或改变顺序,以产生一个未授权的效果。伪造是一个非法实体假装成一个合法的实体,这是对真实性的攻击。伪造通常与其他主动攻击形式结合在一起才具有攻击性效果。重放涉及一个数据单元被获取以后的后继重传,以产生一个未授权的效果。18什么是主动攻击和被动攻击,各有何特点?答题要点:主动攻击是指攻击者对连接中通过的PDU进行各种处理,这些攻击涉及某些数据流的篡改或一个虚假流的产生。主动攻击包括四类:中断、篡改、伪造和重放。主动攻击表现出与被动攻击相反的特点。完全防止主动攻击是相当困难的,可采取适当措施(如加密技术和鉴别技术相结合)加以检测。被动攻击的攻击者只是观察通过一个连接的协议数据单元PDU,以便了解所交换的数据,并不干扰信息流。如搭线窃听、对文件或程序的非法复制等,以获取他人的信息。被动攻击本质上是在传输中的偷听或监视,其目的是从传输中获得信息。典型的被动攻击形式就是截获,包括析出消息内容和通信量分析。对于被动攻击,通常是难以检测的,因为它们并不会导致数据有任何变化,对付被动攻击的重点是防止而不是检测,可以采用各种数据加密技术进行数据保护。21什么是密码学?密码编码学?密码分析学?答:密码学作为数学的一个分支,是密码编码学和密码分析学的统称。使消息保密的技术和科学叫做密码编码学,密码编码学是密码体制的设计学,即怎样编码,采用什么样的密码体制以保证信息被安全地加密。密码分析学就是破译密文的科学和技术。密码分析学是在未知密钥的情况下从密文推演出明文或密钥的技术。22密码学的五元组是什么?它们分别有什么含义?答:密码学的五元组是指:明文、密文、密钥、加密算法、解密算法。明文:是作为加密输入的原始信息,即消息的原始形式,通常用或表示。密文:是明文经加密变换后的结果,即消息被加密处理后的形式,通常用表示。密钥:是参与密码变换的参数,通常用表示。加密算法:是将明文变换为密文的变换函数,相应的变换过程称为加密,即编码的过程,通常用表示,即。解密算法:是将密文恢复为明文的变换函数,相应的变换过程称为解密,即解码的过程,通常用表示,即。23密码分析主要有哪些方式?各有何特点?答:根据密码分析者对明文、密文等信息掌握的多少,可将密码分析分为以下五种情形:(1)唯密文攻击对于这种形式的密码分析,破译者已知的东西只有两样:加密算法、待破译的密文。(2)已知明文攻击在已知明文攻击中,破译者已知的东西包括:加密算法和经密钥加密形成的一个或多个明文密文对。即知道一定数量的密文和对应的明文。(3)选择明文攻击选择明文攻击的破译者除了知道加密算法外,他还可以选定明文消息,并可以知道对应的加密得到的密文。即知道选择的明文和对应的密文。(4)选择密文攻击与选择性明文攻击相对应,破译者除了知道加密算法外,还包括他自己选定的密文和对应的、已解密的原文。即知道选择的密文和对应的明文。(5)选择文本攻击是选择明文攻击与选择密文攻击的结合。破译者已知的东西包括:加密算法、由密码破译者选择的明文消息和它对应的密文、以及由密码破译者选择的猜测性密文和它对应的已破译的明文。24Kerchkoffs原则的基本内容是什么?答:Kerchkoffs原则的基本内容是:密码系统中的算法即使为密码分析者所知,也无助于用来推导出明文或密钥。也就是说,密码系统的安全性不应取决于不易被改变的事物(算法),而应只取决于可随时改变的密钥。25一个密码系统实际可用的条件是什么?答:一个密码系统实际可用的条件是:(1) 每一个加密函数和每一个解密函数都能有效地计算。(2) 破译者取得密文后将不能在有效的时间或成本范围内破解出密钥或明文。(3) 一个密码系统是安全的必要条件:穷举密钥搜索将是不可行的,即密钥空间非常大。26密码系统如何分类?答:密码编码系统通常有三种独立的分类方式:(1) 按照明文变换到密文的操作类型可分为代替和换位。 代替:即明文中的每个元素(比特、字母、比特组合或字母组合)被映射为另一个元素。该操作主要达到非线性变换的目的。 换位:即明文中的元素被重新排列,这是一种线性变换,对它们的基本要求是不丢失信息(即所有操作都是可逆的)。(2) 按照所用的密钥数量多少可分为单密钥加密和双密钥加密。 单密钥加密:即发送者和接收者双方使用相同的密钥,该系统也称为对称加密、秘密密钥加密或常规加密。 双密钥加密:即发送者和接收者各自使用一个不同的密钥,这两个密钥形成一个密钥对,其中一个可以公开,称之为公钥,另一个必须为密钥持有人秘密保管,称之为私钥。该系统也称为非对称加密或公钥加密。(3) 按照明文被处理的方式不同可分为分组加密和流加密。 分组加密:一次处理一块(组)元素的输入,对每个输入块产生一个输出块。即一个明文分组被当作一个整体来产生一个等长的密文分组输出,通常使用的是64位或128位的分组大小。 流加密:也称为序列密码,即连续地处理输入元素,并随着该过程的进行,一次产生一个元素的输出。即一次加密一个比特或一个字节。27网络安全模型和网络访问安全模型各适用于什么场合?答:网络安全模型和网络访问安全模型分别适用于网络传输中的信息安全(动态数据的安全)和计算机系统中的信息安全(静态数据的安全)两种场合。28什么是对称密码体制和非对称密码体制?各有何优、缺点?答:对称密码体制的基本特征是加密密钥与解密密钥相同。对称密码体制的优缺点:(1)优点:加密、解密处理速度快、保密度高等。(2)缺点:密钥是保密通信安全的关键,发信方必须安全、妥善地把密钥护送到收信方,不能泄露其内容,如何才能把密钥安全地送到收信方,是对称密码算法的突出问题。对称密码算法的密钥分发过程十分复杂,所花代价高。多人通信时密钥组合的数量会出现爆炸性膨胀,使密钥分发更加复杂化,个人进行两两通信,总共需要的密钥数为。通信双方必须统一密钥,才能发送保密的信息。如果发信者与收信人素不相识,这就无法向对方发送秘密信息了。除了密钥管理与分发问题,对称密码算法还存在数字签名困难问题(通信双方拥有同样的消息,接收方可以伪造签名,发送方也可以否认发送过某消息)。非对称密码体制是加密密钥与解密密钥不同,形成一个密钥对,用其中一个密钥加密的结果,可以用另一个密钥来解密的密码体制。非对称密码体制的优缺点:(1)优点:网络中的每一个用户只需要保存自己的私有密钥,则个用户仅需产生对密钥。密钥少,便于管理。密钥分配简单,不需要秘密的通道和复杂的协议来传送密钥。公开密钥可基于公开的渠道(如密钥分发中心)分发给其他用户,而私有密钥则由用户自己保管。可以实现数字签名。(2)缺点:与对称密码体制相比,公开密钥密码体制的加密、解密处理速度较慢,同等安全强度下公开密钥密码体制的密钥位数要求多一些。29试从运行条件和安全条件两个方面比较常规密码体制和公开密钥密码体制。答:分类常规密码体制公开密钥密码体制运行条件加密和解密使用同一个密钥和同一个算法。用同一个算法进行加密和解密,而密钥有一对,其中一个用于加密,另一个用于解密。发送方和接收方必须共享密钥和算法。发送方和接收方每个使用一对相互匹配、而又彼此互异的密钥中的一个。安全条件密钥必须保密。密钥对中的私钥必须保密。如果不掌握其他信息,要想解密报文是不可能或至少是不现实的。如果不掌握其他信息,要想解密报文是不可能或者至少是不现实的。知道所用的算法加上密文的样本必须不足以确定密钥。知道所用的算法、公钥和密文的样本必须不足以确定私钥。31举例说明什么是隐写术。答:隐写术就是隐藏消息的存在,这种方法通常在一段看来无伤大雅的文字中嵌入排列一些词汇或字母隐含地表达真正的意思。例子略。32区别隐写术与密码编码学。答:密码编码学是通过各种文本转换的方法使得消息为外部不可理解。隐写术则是隐藏消息的存在,它本质上不是一种编码加密技术,这种方法通常在一段看来无伤大雅的文字中嵌入排列一些词汇或字母隐含地表达真正的意思。隐写术的优点在于能够被某些人使用而不容易发现他们间在进行秘密通信。而加密则很容易被发现谁与谁在进行秘密通信,这种发现本身可能具有某种意义或作用。隐写术与加密技术相比有一些缺点:(1)它形式简单但构造费时,要求有大量的开销来隐藏相对较少的信息。(2)一旦该系统的构造方法被发现,就会变得完全没有价值。(3)隐写术一般无稳健性,如数据改动后隐藏的信息不能被恢复。33区别代替与换位。答:代替就是将明文字符用另一个字符取代,代替密码操作的目的是制造混乱,使得确定消息和密钥是怎样转换成密文的尝试变得困难。换位就是重新排列消息中的字母,以便打破密文的结构特性。即它交换的不再是字符本身,而是字符被书写的位置。34频率分析的基本处理方法是什么?答:频率分析攻击的一般方法:第一步:对密文中出现的各个字母进行统计,找出它们各自出现的频率。第二步:根据密文中出现的各个字母的频率,和英语字母标准频率进行对比分析,做出假设,推论加密所用的公式。第三步:证实上述假设(如果不正确,继续作其他假设)。35使用穷举搜索法,破译如下利用代替密码加密的密文: BEEAKFYDJXUQYHYJIQRYHTYJIQFBQDUYJIIKFUHCQD解:密文BEEAKFYDJXUQYHYJIQRYHTYJIQFBQDUYJIIKFUHCQD-1addzjexe1cffblg2dggc3ehh4fii5gjj6hkk7illh8jm9knn10lookupintheairitsabirditsaplaneitssuperman11mpp12nqq13orrn14pss15qtt16ruu17svv18tww19uxx20vy21wz22xa23yb24zc因此,本题的解密结果应为:Look up in the air,its a bird, its a plane, its superman。提示:表中最左边一列的数字表示代替变换时字母的后移位数。技巧:由于密文的前三个字母为“BEE”,因此根据不同的移位可先观察前三位的明文结果,判断其是否是可能的明文,如果不可能,就中止当前移位,换新的移位数。36用Playfair算法加密明文“Playfair cipher was actually invented by wheatstone”,密钥是:fivestars。解:两个“l”间插入“x”(也可插入其他字母)。 明文playfaircipherwasactualx密文qkbwitvaasokvbigictawthz明文lyinventedbywheatstone密文kzawesmafkkexgibcfrmpi37用Hill密码加密明文“pay more money”,密钥是:解:明文“pay more money”可编码为:15024;121417;41214;13424。由于:mod26=17 17 11mod26=12 22 1mod26=10 0 18mod26=15 3 7故对应的密文为:RRLMWBKASPDH。提示:解密计算逆矩阵:939mod26=23300=14313=25267=7357=7313=1252=860-51mod26=1所以,38用Vigenere算法加密明文“We are discovered save yourself”,密钥是:deceptive。解:密文应为:zi cvt wqngrzgvtw avzh cqyglmgj。42计算下列数值:7503mod81、(7503)mod81、81mod7503、(81)mod7503。解:7503mod8151(7503)mod813081mod750381(81)mod7503742243证明:(1)(2)证明:(1)设,则(为某一整数),(为某一整数)。于是有:于是有:(2)设,则(为某一整数),(为某一整数),(为某一整数)。于是有:于是有:44编写一个程序,用扩展的欧几里德算法求gcd(4655,12075)和5501mod1723。略。45求25的所有本原元。解:25的所有本原元是:2, 3, 8, 12, 13, 17, 22, 23。46求Z5中各非零元素的乘法逆元。解:Z5中各非零元素分别为1、2、3、4,它们的乘法逆元(mod5)分别是:1、3、2、4。47求。解:48利用中国剩余定理求解:解: M = 357 = 105; M/3 = 35; M/5 = 21; M/7 = 15。35b11 (mod 3)21b2 1 (mod 5)15b31 (mod 7)因此有: b1 = 2; b2 = 1; b3 = 1。则:x 2235 + 1121 + 1115176 (mod 105)7149解释:群、交换群、有限群、有限群的阶、循环群、生成元、域、有限域、不可约多项式。答:群由一个非空集合组成,在集合中定义了一个二元运算符“ ”,满足:(1) 封闭性:对任意的,有:;(2) 结合律:对任何的,有:;(3) 单位元:存在一个元素 (称为单位元),对任意元素,有:;(4) 逆元:对任意,存在一个元素 (称为逆元),使得:。如果一个群满足交换律,则称其为交换群。如果一个群的元素是有限的,则称该群为有限群。有限群的阶就是群中元素的个数。如果群中每一个元素都是某一个元素的幂(为整数),则称该群是循环群。在循环群中,认为元素生成了群,或是群的生成元。域是由一个非空集合组成,在集合中定义了两个二元运算符:“+”(加法)和“ ”(乘法),并满足:(1)关于加法“+”是一个交换群;其单位元为“0”,的逆元为。(2) 关于乘法“ ”是一个交换群;其单位元为“1”,的逆元为。(3)(分配律)对任何的,有:;(4)(无零因子)对任意的,如果,则或。如果域只包含有限个元素,则称其为有限域。不可约多项式是指不能再分解为两个次数低于该多项式最高次的多项之积的多项式。410基于最优化正规基表示的域,计算和分别等于多少?解:按照最优化正规基表示的乘法计算方法,有:。411什么是计算复杂性?它在密码学中有什么意义?答:计算复杂性理论提供了一种分析不同密码技术和算法的计算复杂性的方法,它对密码算法及技术进行比较,然后确定其安全性,是密码安全性理论的基础,涉及算法的复杂性和问题的复杂性两个方面,为密码算法的“实际上”安全提供了依据。第5章对称密码体制51 画出分组密码算法的原理框图,并解释其基本工作原理。答:分组密码处理的单位是一组明文,即将明文消息编码后的数字序列划分成长为位的组,各个长为的分组分别在密钥(密钥长为)的控制下变换成与明文组等长的一组密文输出数字序列。通常为64或128。解密过程是加密的逆过程。52 为了保证分组密码算法的安全强度,对分组密码算法的要求有哪些?答:(1)分组长度足够大;(2)密钥量足够大;(3)密码变换足够复杂。53 什么是SP网络?答:SP网络就是由多重S变换和P变换组合成的变换网络,即迭代密码,它是乘积密码的一种,由Shannon提出。其基本操作是S变换(代替)和P变换(换位),前者称为S盒,后者被称为P盒。S盒的作用是起到混乱作用,P盒的作用是起到扩散的作用。54 什么是雪崩效应?答:雪崩效应是指输入(明文或密钥)即使只有很小的变化,也会导致输出发生巨大变化的现象。即明文的一个比特的变化应该引起密文许多比特的改变。55 什么是Feistel密码结构?Feistel密码结构的实现依赖的主要参数有哪些?答:Feistel密码结构如图56所示。加密算法的输入是长为位的明文和密钥,明文被均分为长度为位的和两部分。这两部分经过轮迭代后交换位置组合在一起成为密文。其运算逻辑关系为: 每轮迭代都有相同的结构。代替作用在数据的左半部分,它通过轮函数作用数据的右半部分后,与左半部分数据进行异或来完成。每轮迭代的轮函数相同,但每轮的子密钥不同。代替之后,交换数据的左右部分实现置换。Feistel结构的实现依赖的主要参数是:分组长度、密钥长度、迭代轮数、子密钥生成算法、轮函数。56 简述分组密码的设计准则。答:分组密码的设计准则主要包括S盒的设计准则、P盒的设计准则、轮函数的设计准则、迭代的轮数以及子密钥的生成方法。57 什么是分组密码的操作模式?有哪些主要的分组密码操作模式?其工作原理是什么?各有何特点?答:通常,分组密码算法(如典型的DES)是提供数据安全的一个基本构件,它以固定长度的分组作为基本的处理单位。分组密码的操作模式就是如何在各种各样的应用中使用这些基本构件。主要有ECB、CBC、CTR、OFB、CFB等五种分组密码操作模式。具体原理及特点参见教材。58 在8位的CFB模式中,若传输中一个密文字符发生了一位错误,这个错误将传播多远?答:9个明文字符受影响。因为除了与密文字符相对应的一个明文字符受影响外,受影响的该明文字符进入移位寄存器,直到接下来的8个字符处理完毕后才移出。 59 描述DES的加密思想和F函数。答:DES 算法的加密过程经过了三个阶段:首先,64位的明文在一个初始置换IP 后,比特重排产生了经过置换的输入,明文组被分成右半部分和左半部分,每部分32位,以和表示。接下来的阶段是由对同一个函数进行16次循环组成的,16轮迭代称为乘积变换或函数,这个函数本身既包含有换位又包含有代替函数,将数据和密钥结合起来,最后1轮的输出由64位组成,其左边和右边两个部分经过交换后就得到预输出。最后阶段,预输出通过一个逆初始置换IP1算法就生成了64位的密文结果。F函数的变换如下图所示。510 为什么要使用3DES?答:随着计算机处理能力的提高,只有56位密钥长度的DES算法不再被认为是安全的。因此DES需要替代者,其中一个可替代的方案是使用3DES。3DES的优点:(1)密钥长度增加到112位或168位,可以有效克服DES面临的穷举搜索攻击;(2)相对于DES,增强了抗差分分析和线性分析的能力;(3)具备继续使用现有的DES实现的可能。511 AES的主要优点是什么?答:AES的主要优点表现为:汇聚了安全性能、效率、可实现性和灵活性等优点,最大的优点是可以给出算法的最佳差分特征的概率,并分析算法抵抗差分密码分析及线性密码分析的能力。AES对内存的需求非常低,也使它很适合用于受限制的环境中,AES的操作简单,并可抵御强大和实时的攻击。512 AES的基本运算有哪些?其基本运算方法是什么?答: AES的基本运算包括字节运算和字运算。基本运算方法(略)。513 AES的基本变换有哪些?其基本的变换方法是什么?答:AES的基本变换包括三个代替和一个混淆:(1)字节代替SubBytes:用一个S盒完成分组中的按字节的代替;(2)行移位ShiftRows:一个简单的置换;(3)列混淆MixColumns:一个利用在域GF(28)上的算术特性的代替;(4)轮密钥加AddRoundKey:一个利用当前分组和扩展密钥的一部分进行按位异或。基本变换方法(略)。514 AES的解密算法和AES的逆算法之间有何不同?答:AES的逆算法是相对加密基本变换而言的,即存在InvSubBytes、InvShiftRows、InvMixColumns变换。AES的解密算法是相对于加密算法而言的,它由InvSubBytes、InvShiftRows、InvMixColumns和AddRoundKey等基本变换构成。515 在GF(28)上01的逆是什么?答:01。第6章非对称密码体制61为什么要引入非对称密码体制?答:对称密码体制不能完全适应应用的需要,主要表现在以下三个方面:密钥管理的困难性问题、陌生人间的保密通信问题、数字签名问题,而非对称密码体制可以在这三个方面有较好的解决方案。62对公钥密码体制的要求是什么?答:(1)参与方B容易通过计算产生一对密钥(公开密钥和私有密钥)。(2)在知道公开密钥和待加密报文的情况下,对于发送方A,很容易通过计算产生对应的密文:。(3)接收方B使用私有密钥容易通过计算解密所得的密文,以便恢复原来的报文:(4)敌对方即使知道公开密钥,要确定私有密钥在计算上是不可行的。(5)敌对方即使知道公开密钥和密文C,要想恢复原来的报文在计算上也是不可行的。(6)两个密钥中的任何一个都可以用来加密,对应的另一个密钥用来解密(这一条不是对所有公开密钥密码体制都适用):(机密性实现) (数字签名实现)。63什么是陷门单向函数?陷门单向函数有何特点?如何将其应用于公钥密码体制中?答:陷门单向函数是满足下列条件的函数:(1) 正向计算容易。即如果知道了密钥和消息,容易计算。(2) 在不知道密钥的情况下,反向计算是不可行的。即如果只知道消息而不知道密钥,则计算是不可行的。 (3) 在知道密钥的情况下,反向计算是容易的。即如果同时知道消息和密钥,则计算是容易的。这里的密钥相当于陷门,它和是配对使用的。特点:对于陷门单向函数而言,它是指除非知道某种附加的信息,否则这样的函数在一个方向上计算容易,在另外的方向上要计算是不可行的;有了附加信息,函数的逆就可以容易计算出来。公钥密码体制中的公钥用于陷门单向函数的正向(加密)计算,私钥用于反向(解密)计算。64简述公钥密码体制的主要应用方向?答:大体上说,可以将公开密钥密码系统的应用分为三类:机密性的实现(发送方用接收方的公开密钥加密报文,接收方用自已对应的私钥来解密)、数字签名即防否认性的实现(发送方用自己的私钥“签署”报文,接收方用发送方配对的公开密钥来解密以实现鉴别)和密钥交换(即用常规密码体制加密需要保密传输的消息本身,然后用公钥密码体制加密常规密码体制中使用的会话密钥,将二者结合使用)。65简述Diffie-Hellman算法实现密钥交换的原理。该算法基于什么数学难题?答:Diffie-Helllman密钥交换原理:假设用户A和用户B希望安全地交换一个密钥,他们需要先确定并都知道两个整数:一个素数和一个整数,这两个整数对用户A和B是共享的,但对其他人是保密的。整数是素数的一个本原元。用户A选择一个随机数,并计算:。类似地,用户B选择一个随机数,并计算:。每一方都保密存放自己的随机数或(相当于私钥),并使或(相当于公钥)的值对于另一方可以公开得到。用户A计算,并将其作为自己的密钥;用户B计算,并将其作为自己的密钥。通过这种方式,双方共享了一个密钥,相当于双方交换了一个密钥。Diffie-Helllman密钥交换算法的有效性依赖于计算有限域中离散对数的困难性。66设Diffie-Hellman方法中,公用素数11,本原元等于2。若用户A的公钥9,则A的私钥为多少?如果用户B的公钥3,则共享的密钥K为多少?解:,即92mod11,经推算得6(这里在公用素数很小的情况下得出的,实际使用时公用素数应很大,这就是离散对数的难解性问题)。如果用户B的公钥3,则共享的密钥K。67RSA算法的理论基础是什么?答:大数因子分解的困难性。68编写程序实现RSA算法。略。69设通信双方使用RSA加密体制,接收方的公开密钥是(5,35),接收到的密文是10,求明文。解:据题意知:5,35,10。因此有:所以有:。610选择7,17,5,试用RSA方法对明文19进行加密、解密运算、给出签名和验证结果(给出其过程),并指出公钥和私钥各为什么?解:加密:解密:所以,签名:验证:,该签名是真实的。611在RSA体制中,给定某用户的公钥31,3599,那么该用户的私钥等于多少?解:3031。612编写程序计算:1615mod4731。程序略。613试编写程序判断2537是否为素数。程序略。614ECC的理论基础是什么?它有何特点?答:ECC的理论基础是椭圆曲线离散对数问题的难解性。ECC与RSA相比的主要优点在于:它用少得多的比特大小能够取得和RSA同等强度的安全性,因此减少了处理开销,具有存储效率、计算效率和通信带宽的节约等方面的优势,特别适用于那些对计算能力没有很好支持的系统,如智能卡、手机等。615椭圆曲线表示,求其上的所有点。对于上的点,计算2的值。解:对于的所有可能值,计算方程右边的值。xx3 + x + 6 mod 11是mod p平方根?y06no18no25yes4, 733yes5, 648no54yes2, 968no74yes2, 989yes3, 897no104yes2, 9即所有点为:(2,4),(2,7),(3,5),(3,6),(5,2),(5,9),(7,2),(7,9),(8,3),(8,8),(10,2),(10,9)。要计算 2G = (2, 7) + (2, 7), 先计算:l= (322 + 1)/(27) mod 11= 13/14 mod 11 = 2/3 mod 11 = 8可得:x3 = 8222 mod 11 = 5y3 = 8(25)7 mod 11 = 2所以:2G = (5, 2)616设实数域上的椭圆曲线为,令。计算。解:将 xP = 3.5, yP = 9.5, xQ = 2.5, yQ = 8.5 代入椭圆曲线加方程易得:xR = 7、 yR = 1。因此:P + Q = (7, 1)。617利用椭圆曲线实现ElGamal密码体制,设椭圆曲线是,生成元,接收方A的秘密密钥。求:(1)A的公开密钥。(2)发送方B欲发送消息,选择随机数,求密文。(3)显示接收方A从密文恢复消息的计算过程。解:(1)。(2)(3)。第7章HASH函数和消息认证71什么是HASH函数?对HASH函数的基本要求和安全性要求分别是什么?答:HASH函数是一种单向密码体制,即它是一个从明文到密文的不可逆映射,只有加密过程,不能解密。HASH函数可以将任意长度的输入经过变换以后得到固定长度的输出。HASH函数的基本要求:算法公开,不需要密钥。有数据压缩功能,能将任意长度的输入转换成一个固定长度的输出。容易计算。即给出消息,要计算出该消息的散列值是容易的。HASH函数的安全性要求:给定消息的散列值,要求出是计算上不可行的。给定消息和其散列值,要找到另一个与不同的消息,使得它们的散列值相同是不可能的(即抗弱碰撞性)。对于任意两个不同的消息和,它们的散列值不可能相同(即抗强碰撞性)。72安全HASH函数的一般结构是什么?答:安全HASH函数的一般结构如下图所示。73为什么要进行HASH填充?答:HASH函数的处理是以分组为单位,在生成散列值之前,在对输入消息进行分组时,如果最后一块报文不足位,就要进行填充。74HASH函数的主要应用有哪些?HASH函数的主要应用有:数字签名、生成程序或文档的“数字指纹”、用于安全存储口令。75简述散列算法的设计方法及其分类。答:散列算法的设计主要可分为三大类: (1)基于模数运算这种设计方法是使用公开密钥算法来设计单向散列函数。通常可以使用CBC模式基于公开密钥算法对消息进行加密,并输出最后一个密文分组作为散列值。如果丢弃用户的密钥,这时的散列值将无法解密,也就是说,它满足了散列函数的单向性要求。一般情况下它的计算速度十分的慢,实用性差。(2)基于分组加密就是用对称分组算法设计单向散列函数。同样可以使用对称分组算法的CBC模式或CFB模式来产生散列值。它将使用一个固定的密钥及IV加密消息,并将最后的密文分组作为散列值输出。这类设计已经提出了一些方案,如MDC-2和MDC-4等。(3)定制的这类单向散列函数并不基于任何假设和密码体制,而是通过直接构造复杂的非线性关系达到单向要求,设计单向散列函数。这类算法典型的有:MD2、MD4 、MD5、SHA-1、PIPEMD160等算法。76编写程序实现SHA1?略。77什么是消息认证?为什么要进行消息认证?消息认证的实现方法有哪些?答:消息认证是使目标消息接收者能够检验收到的消息是否真实的认证方法。消息认证的目的主要有两个:第一,验证信息的来源是真实的,而不是伪造的,此为信息源认证;第二,验证信息的完整性,即验证信息在传送或存储过程中未被篡改、重放或延迟等。任何认证系统在功能上划分为两个层次:底层的认证函数产生一个用来认证消息的认证标识,上层的认证协议基于认证标识提供了一种能使接收方验证消息真实性的机制。认证函数分为三类:(1) 消息加密函数:用整个消息的密文作为对消息进行认证的认证标识。(2) 消息认证码MAC:是以消息和密钥作为输入的公开函数,产生定长的输出,并以此输出值作为认证标识。(3) 散列函数:是一个不需要密钥的公开函数,它将任意长度的输入消息映射成一个固定长度的输出值,并以此值作为认证标识。78什么是认证协议?举例说明单向认证和双向认证。答:认证协议就是能使通信各方证实对方身份或消息来源的通信协议。例略。第8章数字签名81数字签名有什么特殊性?答:电子文档的物理载体表现为电磁信号、所携带的文字符号以二进制编码的逻辑形式存在,可以任意分割、复制而不被察觉,且数字信息本身没有个性特征,如果按照传统方式进行电子文档的签名,签名本身将很容易被伪造和重用,完全达不到签名的目的。82数字签名的性质是什么?答:数字签名应该具有以下性质: (1)签名是对文档的一种映射,不同的文档内容所得到的映射结果是不一样的,即签名与文档具有一一对应关系;(精确性) (2)签名应基于签名者的唯一性特征(如私钥),从而确定签名的不可伪造性和不可否认性;(唯一性)(3)签名应该具有时间特征,防止签名的重复使用。(时效性)83对数字签名的要求是什么?答:数字签名的设计要求:(1)签名必须是依赖于被签名信息的一个位串模板,即签名必须以被签名的消息为输入,与其绑定;(2)签名必须使用某些对发送者是唯一的信息。对发送者唯一就可以防止发送方以外的人伪造签名,也防止发送方事后否认;(3)必须相对容易地生成该数字签名,即签名容易生成;(4)必须相对容易地识别和验证该数字签名;(5)伪造数字签名在计算复杂性意义上具有不可行性,既包括对一个已有的数字签名构造新的消息,也包括对一个给定消息伪造一个数字签名;(6)在存储器中保存一个数字签名副本是现实可行的。84数字签名的基本原理什么?答:一个数字签名方案由两部分组成:带有陷门的公开签名算法和验证算法。公开签名算法是一个由密钥控制的函数。对任意一个消息,一个密钥,签名算法产生一个签名,算法是公开的,但密钥是保密的,这样,不知道密钥的人不可能产生正确的签名,从而不能伪造签名。验证算法也是公开的,它通过或来验证签名。85分类说明数字签名的实现方法及其特点。答:最基本的数字签名有基于对称密钥密码算法和基于公开密钥密码算法两种。(1)基于对称密钥密码算法的数字签名方法这种方法的本质是共享密钥的验证。基本形式是:用户A与B共享对称密钥密码体制的密钥,要签名的消息为。则签名算法就是加密算法:发送方向验证方发送(,)。验证算法就是解密算法: 或加密算法: 这个方法隐含着用户A、B都知道和,才能验证消息。这种方法不具有“唯一性”特征,不是严格意义上的数字签名。这种签名算法主要用于防止通信双方A、B之外的人进行伪造,但对A、B间的欺骗(如伪造签名)将无能为力,因为他们共享了密钥。(2)基于公钥密码算法的数字签名方法基于公钥密码算法的数字签名方法本质上是公钥密码加密算法的逆应用。此时发送方用自己的私钥对消息进行加密,接收方收到消息后用发送方的公钥进行解密,由于私钥由发送方自己保管且只有他本人知道,入侵者只知道发送者的公钥,不可能伪造签名,从而起到签名的效果。公正的第三方可以用发送方的公钥对签名的消息进行解密,从而证实消息确实来自于该发送者。使用公钥密码体制:用户A选定私钥、公钥,加解密算法分别为,将保密,称为签名密钥;将公开,称为验证密钥,则签名和验证过程为:设用户A要向用户B发送消息,用户A用自己的私钥加密(签名)消息:,向B发送(,);用户B用A的公钥解密 (验证)签名:86直接数字签名和可仲裁数字签名的区别是什么?答:直接数字签名是只涉及到通信双方的数字签名。为了提供鉴别功能,直接数字签名一般使用公钥密码体制。可仲裁数字签名在通信双方的基础上引入了仲裁者的参与。通常的做法是所有从发送方X到接收方Y的签名消息首先送到仲裁者A,A将消息及其签名进行一系列测试,以检查其来源和内容,然后将消息加上日期(时间戳由仲裁者加上),并与已被仲裁者验证通过的签名一起发给Y。仲裁者在这一类签名模式中扮演裁判的角色。前提条件:所有的参与者必须绝对相信这一仲裁机制工作正常。87当需要对消息同时进行签名和保密时,它们应以何种顺序作用于消息?为什么?答:应先签名后加密。否则,攻击者可能伪造签名。(参考第6.3节RSA签名部分)。88DSA中,如果签名产生过程中出现,则必须产生新的并重新计算签名,为什么?答:0元素没有逆,不能按照DSA签名算法完成签名。第9章密钥管理91为什么要进行密钥管理?答:密码学中密钥作为密码变换的参数,通过加密变换操作,可以将明文变换为密文,或者通过解密变换操作,将密文恢复为明文。密钥管理就是在授权各方之间实现密钥关系的建立和维护的一整套技术和程序。密钥管理负责密钥从产生到最终销毁的整个过程,包括密钥的生成、存储、分配、使用、备份/恢复、更新、撤销和销毁等。密钥管理作为提供机密性、实体认证、数据源认证、数据完整性和数字签名等安全密码技术的基础,在整个密码学中占有重要的地位。92密钥的种类有哪些?答:按照所加密内容的不同,密钥可以分为用于一般数据加密的密钥(即会话密钥)和用于密钥加密的密钥,密钥加密密钥又可分为一般密钥加密密钥和主密钥。93为什么在密钥管理中要引入层次式结构?答:层次化的密钥结构意味着以少量上层密钥来保护大量下层密钥或明文数据,这样,可保证除了主密钥可以以明文的形式基于严格的管理受到严密保护外(不排除受到某种变换的保护),其他密钥则以加密后的密文形式存储,改善了密钥的安全性。层次化的密钥结构具有安全性强、可实现密钥管理的自动化的优点。94密钥管理的生命周期包括哪些阶段?答:主要可分为:用户登记、系统和用户初始化、密钥材料的安装、密钥的生成、密钥的登记、密钥的使用、密钥材料的备份、密钥的存档、密钥的更新、密钥的恢复、密钥的恢复、密钥的撤消。95密钥安全存储的方法有哪些?答:有两种方法:一种是基于口令的软保护,一种是基于硬件的物理保护。96密钥的分发方法有哪些?如何实现?答:从分发途径的不同来区分,密钥的分发方法有网外分发和网内分发两种方式。网外分发方式是通过非通信网络的可靠物理渠道携带密钥分发给互相通信的各用户。网内分发方式是通过通信与计算机网络的密钥在线、自动分发方式。有两种:一种是在用户之间直接实现分配,另一种是设立一个密钥分发中心,由它负责密钥分发。后一种方法已成为使用得较多的密钥分发方法。按照密钥分发内容的不同,密钥的分发方法主要分为秘密密钥的分发和公开密钥的分发两大类。97什么是数字证书?X.509的鉴别机制是什么?为什么要引入数字证书链?其工作原理是什么?答:数字证书就是提供一种确保证书所携带的公钥与密钥持有人具有某种关联的可靠性以及传递这种关联和公钥本身的机制。X.509的鉴别机制:要求在一次处理中,每一方A与一个称作认证中心CA的离线可信方相联系,A要登记他的公钥并获得CA的证书证实公钥。CA通过将A的公钥与它的身份绑定来认证A的公钥,结果生成一个证书。证书由证书管理员产生,并发给拥有相应私钥的通信方(该证书的拥有者)。通信一方通过传递证书将密钥信息传递给另一方,其他通信各方可以验证该证书确实是由证书管理者产生的来获得公钥认证。由CA产生的用户证书有两个方面的特点:一是任何有CA公开密钥的用户都可以恢复并证实用户公开密钥;二是除了CA没有任何一方能不被察觉地更改该证书。正是基于这两点,证书是不可伪造的,因此它们可以放在一个目录内,而无需对目录提供特殊的保护。如果用户的数目巨大,让所有用户向同一个CA申请证书涉及到大数据量的管理、通信量、响应速度等问题,同时CA的公开密钥要求要能安全地提供给每个客户也有困难。于是提出了一种分布式的CA认证方式,引入多个CA,多个CA还可以形成层次关系,位于上层的CA可以对下层CA颁发数字证书,从而形成证书链。在一个证书链中,跟随每一份证书的是该证书签发者的证书;每份证书包含证书签发者的区别名(DN)
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!