资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
一 根据下面图解释名词,明文,密文,加密,解密,加密算法,解密算法, 加密密钥和解密密钥通信双方采用保密通信系统可以隐蔽和保护需要发送的消息,使未授权者不能提取信息。发送方将要发送的消息称为明文,明文被变换成看似无意义的随机消息,称为密文,这种变换过程称为加密;其逆过程,即由密文恢复出原明文的过程称为解密。对明文进行加密操作的人员称为加密员或密码员。密码员对明文进行加密时所采用的一组规则称为加密算法。传送消息的预定对象称为接收者,接收者对密文进行解密时所采用的一组规则称为解密算法。加密和解密算法的操作通常都是在一组密钥控制下进行的,分别称为加密密钥和解密密钥。二.密码体制分类密码体制从原理上可分为两大类,即单钥体制和双钥体制。单钥体制的加密密钥和解密密钥相同。采用单钥体制的系统的保密性主要取决于密钥的保密性,与算法的保密性无关,即由密文和加解密算法不可能得到明文。换句话说,算法无需保密,需保密的仅是密钥。换句话说,算法无需保密,需保密的仅是密钥。根据单钥密码体制的这种特性,单钥加解密算法可通过低费用的芯片来实现。密钥可由发送方产生然后再经一个安全可靠的途径(如信使递送)送至接收方,或由第三方产生后安全可靠地分配给通信双方。如何产生满足保密要求的密钥以及如何将密钥安全可靠地分配给通信双方是这类体制设计和实现的主要课题。密钥产生、分配、存储、销毁等问题,统称为密钥管理。这是影响系统安全的关键因素,即使密码算法再好,若密钥管理问题处理不好,就很难保证系统的安全保密。单钥体制对明文消息的加密有两种方式: 一是明文消息按字符(如二元数字)逐位地加密,称之为流密码;另一种是将明文消息分组(含有多个字符),逐组地进行加密,称之为分组密码。单钥体制不仅可用于数据加密,也可用于消息的认证。双钥体制是由Diffie和Hellman于1976年首先引入的。采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,可以像电话号码一样进行注册公布;另一个则是秘密的。因此双钥体制又称为公钥体制。双钥密码体制的主要特点是将加密和解密能力分开,因而可以实现多个用户加密的消息只能由一个用户解读,或由一个用户加密的消息而使多个用户可以解读。前者可用于公共网络中实现保密通信,而后者可用于实现对用户的认证。三.扩散和混淆扩散和混淆是由Shannon提出的设计密码系统的两个基本方法,目的是抗击敌手对密码系统的统计分析。所谓扩散,就是将明文的统计特性散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,等价于说密文中每一位均受明文中多位影响。混淆是使密文和密钥之间的统计关系变得尽可能复杂,以使敌手无法得到密钥。因此即使敌手能得到密文的一些统计关系,由于密钥和密文之间的统计关系复杂化,敌手也无法得到密钥。四.什么是密码分组链接(CBC)模式,请画出加密解密示意图它一次对一个明文分组加密,每次加密使用同一密钥,加密算法的输入是当前明文分组和前一次密文分组的异或,因此加密算法的输入不会显示出与这次的明文分组之间的固定关系,所以重复的明文分组不会在密文中暴露出这种重复关系。五.杂凑(Hash)函数应满足的条件杂凑函数应满足以下条件: 函数的输入可以是任意长。 函数的输出是固定长。 已知x,求H(x)较为容易,可用硬件或软件实现。 已知h,求使得H(x)=h的x在计算上是不可行的,这一性质称为函数的单向性,称H(x)为单向杂凑函数。 已知x,找出y(yx)使得H(y)=H(x)在计算上是不可行的。如果单向杂凑函数满足这一性质,则称其为弱单向杂凑函数。 找出任意两个不同的输入x、y,使得H(y)=H(x)在计算上是不可行的。如果单向杂凑函数满足这一性质,则称其为强单向杂凑函数。第和第个条件给出了杂凑函数无碰撞性的概念,如果杂凑函数对不同的输入可产生相同的输出,则称该函数具有碰撞性。六.迭代型杂凑函数的一般结构其中函数的输入M被分为L个分组Y0,Y1,YL-1,每一个分组的长度为b比特,最后一个分组的长度不够的话,需对其做填充。算法中重复使用函数ff 的输入有两项,一项是上一轮(第i-1轮)输出的n比特值CVi-1,称为链接变量,另一项是算法在本轮(第i轮)的b比特输入分组Yi。f 的输出为n比特值CVi,CVi又作为下一轮的输入。算法开始时还需对链接变量指定一个初值IV,最后一轮输出的链接变量CVL即为最终产生的杂凑值。通常有bn,因此称函数f为压缩函数。算法可表达如下:CV0=IV=n比特长的初值;CVi=f(CVi-1,Yi-1);1iL;H(M)=CVL算法的核心技术是设计无碰撞的压缩函数f,而敌手对算法的攻击重点是f 的内部结构,由于f 和分组密码一样是由若干轮处理过程组成,所以对f 的攻击需通过对各轮之间的位模式的分析来进行,分析过程常常需要先找出f 的碰撞。由于f 是压缩函数,其碰撞是不可避免的,因此在设计f 时就应保证找出其碰撞在计算上是不可行的。六.AES高级加密标准的轮函数由4个不同的计算部件组成,分别是:字节代换(ByteSub)、行移位(ShiftRow)、列混合(MixColumn)、密钥加(AddRoundKey)。根据下图写出字节代换(ByteSub)、行移位(ShiftRow)、(1) 字节代换(ByteSub)字节代换是非线形变换,独立地对状态的每个字节进行。代换表(即S-盒)是可逆的,由以下两个变换的合成得到: 首先,将字节看作GF(28)上的元素,映射到自己的乘法逆元,00映射到自己。 其次,对字节做如下的(GF(2)上的,可逆的)仿射变换:(2) 行移位(ShiftRow)行移位是将状态阵列的各行进行循环移位,不同状态行的位移量不同。第0行不移动,第1行循环左移C1个字节,第2行循环左移C2个字节,第3行循环左移C3个字节。位移量C1、C2、C3的取值与Nb有关,由表3.10给出。(见66页表3.10)按指定的位移量对状态的行进行的行移位运算记为ShiftRow (State)图3.20是行移位示意图。十三、根据下图S-DES收、发双方共享的10位密钥,计算出两个8位子密钥分别用在加密、解密的不同阶段。图中的P10、P8如下表,初始10位密钥为(1010000010)求图中的K1、K2P1035274101986P8637485109LS-1循环左移一位LS-2循环左移二位初始10位密钥为(1010000010)P10=1000001100LS1左=00001LS1右=11000K1= P8=10010010LS2左=00100LS2右=00011K2= P8=00001001十四、根据下图S-DES加密算法计算出当明文M=11110011,求密文?算法中的变换如表IP26314857IP-141357286E/P41232341P42431 S0=1032321002133132S1=0123201330102103解答如下:M=11110011IP10111101IP-110010110E/P10010010P40010(S0)1=00(S1)1=10(S0)2=10(S1)2=00明文C=10010110十六、是密钥分配的一个实例。根据下图,假定两个用户A、B分别与密钥分配中心KDC (key distribution center)有一个共享的主密钥KA和KB。A希望与B建立一个共享的一次性会话密钥,根据下图解释可通过几步来完成?密钥分配实例 A向KDC发出会话密钥请求。表示请求的消息由两个数据项组成,第1项是A和B的身份,第2项是这次业务的惟一识别符N1,称N1为一次性随机数,可以是时戳、计数器或随机数。 KDC为A的请求发出应答。应答是由KA加密的消息,因此只有A才能成功地对这一消息解密,并且A可相信这一消息的确是由KDC 发出的。消息中包括A希望得到的两项内容: 一次性会话密钥KS; A在中发出的请求,包括一次性随机数N1, 此外,消息中还有B希望得到的两项内容: 一次性会话密钥KS; A的身份(例如A的网络地址)IDA。这两项由KB加密,将由A转发给B,以建立A、B之间的连接并用于向B证明A的身份。 A存储会话密钥,并向B转发EKBKSIDA。因为转发的是由KB加密后的密文,所以转发过程不会被窃听。B收到后,可得会话密钥KS,并从IDA可知另一方是A,而且还从EKB知道KS的确来自KDC。这一步完成后,会话密钥就安全地分配给了A、B。然而还能继续以下两步工作: B用会话密钥KS加密另一个一次性随机数N2,并将加密结果发送给A。 A以f(N2)作为对B的应答,其中f是对N2进行某种变换(例如加1)的函数,并将应答用会话密钥加密后发送给B。十七、假定A、B双方已完成公钥交换,根据下图可按什么步骤建立共享会话密钥?:图5.7 具有保密性和认证性的密钥分配 A用B的公开钥加密A的身份IDA和一个一次性随机数N1后发往B,其中N1用于惟一地标识这一业务。 B用A的公开钥PKA加密A的一次性随机数N1和B新产生的一次性随机数N2后发往A。因为只有B能解读中的加密,所以B发来的消息中N1的存在可使A相信对方的确是B。 A用B的公钥PKB对N2加密后返回给B,以使B相信对方的确是A。 A选一会话密钥KS,然后将M=EPKBESKAKS发给B,其中用B的公开钥加密是为保证只有B能解读加密结果,用A的秘密钥加密是保证该加密结果只有A能发送。 B以DPKADSKBM恢复会话密钥。二十二、根据下图说明PGP中通过数字签字提供认证的过程? 发送方产生消息M。 用SHA产生160比特长的消息摘要H(M)。 发送方用自己的秘密钥SKA按RSA算法对H(M)加密,并将加密结果EPSKAH(M)与M链接后发送。 接收方用发送方的公开钥对EPSKAH(M)解密得H(M)。 接收方对收到的M计算消息摘要,并与中的H(M)比较。如果一致,则认为M是真实的。过程中结合使用了SHA和RSA算法,类似地也可结合使用DSS算法和SHA算法。二十三、根据下图说明PGP为传输或存储的文件提供加密的保密性认证业务的过程? 发送方产生消息M及一次性会话密钥KS。 用密钥KS按CAST-128(或IDEA或3DES)加密M。 用接收方的公开钥PKB按RSA算法加密一次性会话密钥KS,将、中的两个加密结果链接起来发往接收方。 接收方用自己的秘密钥按RSA算法恢复一次性会话密钥。 接收方用一次性会话密钥恢复发送方发来的消息。二十四、根据下图说明同一消息同时提供保密性与认证性的过程?
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号