第3章 分组密码 习题及参考答案 1. 设DES 算法中,明文M 和密钥K 分别为: M =0011 1000 1100 0100 1011 1000 0100 0011 1101 0101 0010 0011 1001 1110 0101 1110 K =1010 1001 0011 0101 1010 1100 1001 1011 1001 1101 0011 1110 1101 0101 1100 0011 求L 1和R 2。 解: 初始变换IP : 1001 1010 1101 0101 1101 0010 0011 1000 0101 0110 0010 0101 1100 0101 1110 1000 则,0L =1001 1010 1101 0101 1101 0010 0011 1000 0R =0101 0110 0010 0101 1100 0101 1110 1000 K 去校验位得: 0C =1101 0111 1100 0000 0010 0111 0111 0D =1010 1000 0111 0110 0011 0101 0010 循环左移一位:1C =1010 1111 1000 0000 0100 1110 1111 1D =0101 0000 1110 1100 0110 1010 0101 经过置换选择得到:1K =0000 1111 0110 1000 1101 1000 1001 1010 1000 0111 0011 0001 同样可以得到:2K =0101 0101 0110 0001 1101 1101 1011 0101 0101 0000 0110 1110 1L =0R =0101 0110 0010 0101 1100 0101 1110 1000
填空题 1、密码学的主要任务是实现机密性、鉴别、数据完整性、抗抵赖性。 1、机密性是一种允许特定用户访问和阅读信息,而非授权用户对信息内容不可理解的安全属性。在密码学中,信息的机密性通过加密技术实现。 2、完整性数据完整性即用以确保数据在存储和传输过程中不被非授权修改的的安全属性。密码学可通过采用数据加密、报文鉴别或数字签名等技术来实现数据的完整性保护。 3、鉴别是一种与数据来源和身份鉴别有关的安全服务。鉴别服务包括对身份的鉴别和对数据源的鉴别。对于一次通信,必须确信通信的对端是预期的实体,这就涉及到身份的鉴别。 4、抗抵赖性 是一种用于阻止通信实体抵赖先前的通信行为及相关内容的安全特性。密码学通过对称加密或非对称加密,以及数字签名等技术,并借助可信机构或证书机构的辅助来提供这种服务。 5、密码编码学的主要任务是寻求有效密码算法和协议,以保证信息的机密性或认证性的方法。它主要研究密码算法的构造与设计,也就是密码体制的构造。它是密码理论的基础,也是保密系统设计的基础。 6、密码分析学的主要任务是研究加密信息的破译或认证信息的伪造。它主要是对密码信息的解析方法进行研究。 7、明文(Plaintext)是待伪装或加密的消息(Message)。在通信系统中它可能是比特流,如文本、位图、数字化的语音流或数字化的视频图像等。 8、密文(Ciphertext)是对明文施加某种伪装或变换后的输出,也可认为是不可直接理的字符或比特集,密文常用c表示。 9、加密(Encrypt )是把原始的信息(明文)转换为密文的信息变换过程。 10、解密(Decrypt)是把己加密的信息(密文)恢复成原始信息明文的过程。 11、密码算法(Cryptography Algorithm)也简称密码(Cipher),通常是指加、解密过程所使用的信息变换规则,是用于信息加密和解密的数学函数。对明文进行加密时所采用的规则称作加密算法,而对密文进行解密时所采用的规则称作解密算法。加密算法和解密算法的操作通常都是在一组密钥的控制下进行的。 11、密钥(Secret Key )密码算法中的一个可变参数,通常是一组满足一定条件的随机序列 12、替代密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串,即密文,替代密码的密钥就是其替换表。 13、根据密码算法加解密时使用替换表多少的不同,替代密码又可分为单表替代密码和多
选择题 1、如果发送方用私钥加密消息,则可以实现() A、保密性 B、保密与鉴别 C、保密而非鉴别 D、鉴别 2、在混合加密方式下,真正用来加解密通信过程中所传输数据(明文)的密钥是() A、非对称算法的公钥 B、对称算法的密钥 C、非对称算法的私钥 D、CA中心的公钥 3、以下关于加密说法,不正确的是() A、加密包括对称加密和非对称加密两种 B、信息隐蔽是加密的一种方法 C、如果没有信息加密的密钥,只要知道加密程序的细节就可以对信息进行解密 D、密钥的位数越多,信息的安全性就越高 4、以下关于混合加密方式说法不正确的是:() A、采用公开密钥体制进行通信过程中的加解密处理 B、采用公开密钥体制对对称密钥体制的密钥进行加密后的通信 C、采用对称密钥体制对对称密钥体制的密钥进行加密后的通信 D、采用混合加密方式,利用了对称密钥体制的密钥容易管理和非对称密钥体制的加解密处理速度快的双重优点 5、两个不同的消息摘要具有相同的值时,称为() A、攻击 B、冲突 C、散列 D、都不是
6、()用于验证消息完整性。 A、消息摘要 B、加密算法 C、数字信封 D、都不是 7、HASH函数可应用于()。 A、数字签名 B、生成程序或文档的“数字指纹” C、安全存储口令 D、数据的抗抵赖性 8、数字证书采用公钥体制,每个用户设定一把公钥,由本人公开,用它进行: A、加密和验证签名 B、解密和签名 C、加密 D、解密 9、数字签名为保证其不可更改性,双方约定使用() A、HASH算法 B、RSA算法 C、CAP算法 D、ACR算法 10、1是网络通信中标志通信各方身份信息的一系列数据,提供一种在Internet上验证身份的方式 A、数字认证 B、数字证书 C、电子证书 D、电子认证 11、以下关于CA认证中心说法正确的是
一、选择 1.若一个单向函数存在一个附加信息,当不知道该附加信息时从函数值求原像是困难的,但是知道 该附加信息时从函数求原像是容易的,则该单向函数是 A.陷门单向函数 B.门陷单向函数 C.完全单向函数D容量单向函数 2.标志着公钥密码学诞生的事件是 A. C.Shannon发表的保密系统的通信理论 B.W.Diffle和M.Hellman发表“密码学的新方向”一文 C. C.RSA加密公钥的提出 D.维吉利亚密码体制的提出。 3.下列密码体制中,被认为无条件安全的是 A.一次一密乱码本(one-time pad) B.ElGamal C.RSA D.Cramer-Shop 4.下列密码体制中,不属该分组密码的是 A.IDEA B.AES C.ElGamal D.DES 5.目前通称的AES算法指的是 A.Terpent算法 B.RCG算法 C.Rijndael算法 D.Tuofish算法 二、填空 1.按照一个明文字母是否总是被一个固定的字母代换进行划分,代换密码可分为单表代换密码和 多表代换密码。 2.经典密码学的2个分支:密码编码学和密码分析学。 3.根据攻击者所拥有的信息不同,对数字签名方案的攻击主要有惟密钥攻击,已知消息攻击,选 择消息攻击,适应性选择消息攻击四种常见的类型。 4.分组密码主要有电子密码本模式(ECB) ,密码分组链接模式(CBC) ,密码反馈模式(CFB) , 输出反馈模式(OFB) 。 5.根据密码分析者破译时已具备的条件,把对密码系统的常见攻击分为惟密文攻击,已知明文攻 击,选择明文攻击,选择密文攻击。 三、问答 1.Feistel 密码结构主要部件是哪些?它在迭代运算中起到什么作用? ANS:Feistel密码是通过代替和置换(S-P网络)交替的方式来构造分组密码,其实就是基于混乱和扩散原理实现加解密运算。 S盒变换:它把输入的一个n长的比特串转化为另一个m长的比特串输出。 P盒变换:通过把一个比特串中各比特的位置次序重新排列而得到新的比特串的变换。 2.数字签名的四个特征? ANS:数字签名具有以下特征: (1) 收方能够确认或证实发方的签名,但不能伪造。 (2) 发方发出签名的消息给收方后,就不能再否认他所签发的消息。 (3) 收方对已收到的签名消息不能否认。 (4) 第三者可以确认收发双方之间的消息传送,但不能伪造这一过程。 3.分组密码主要优点是什么?其设计原则应考虑哪些问题? ANS:分组密码的优点是:明文信息良好的扩展性,对插入的敏感性,不需要密钥同步,较强的适用性,适合作为加密标准。在分组密码具体设计中,还需重点考虑的有:S盒的设计、P盒的设计、轮函数F的设计、迭代轮数以及密钥扩展算法等。
一填空题 1.密码学发展的四个阶段:、、 、。 2.DES的分组长度是比特,密钥长度是比特,密文长度是64比特。 3.数字签名方案是指由、、 、、组成的五元组。 4.信息安全的核心是;密码学研究的主要问题是 5.加密算法模式有四种,分别是:,, 5.DES的分组长度是比特,密钥长度是比特,密文长度是比特。 6.AES的密钥长度可以是、、;AES圈变换的由四个 不同的变换组成,它们分别是、、 、。 7.柯可霍夫原则指出密码系统的安全性不能取决于,而应取决于。 8.柯可霍夫原则指出密码系统的安全性不能取决于,而应取决 于。 9.根据加密内容的不同,密钥可以分 为、、 10.对称密码体制可以分为和两类。 11.哈希函数MD5和SHA-1的输出长度分别是和比特。 12.密码学由和组成。 13.分组密码的加解密算法中最关键部分是非线性运算部分,那么,DES加密算法的非 线性预算部分是指非线性代换,AES加密算法的非线性运算部分是指。 14. DES与AES有许多相同之处,也有一些不同之处,请指出两处不同: AES密钥长 度可变DES不可变, DES面向比特运算AES面向字节运算。
15. MD5的主循环有(4 )轮。 16. SHA1接收任何长度的输入消息,并产生长度为(160)bit的Hash值。 17.分组加密算法(如AES)与散列函数算法(如SHA)的实现过称最大不同是(可逆)。 18.Hash函数就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输 出称为。 19.Hash函数的单向性是指对任意给它的散列值h找到满足H(x)=h的x 在计算上 是不可行的。 20.公钥密码体制的思想是基于陷门单向函数,公钥用于该函数的正向(加密)计 算,私钥用于该函数的反向(解密)计算。 21.1976 年,和在密码学新方向一文中提出了公钥密码的思想,从而开创了线代密 码学的新领域。 22.公钥密码体制的出现,解决了对称密码体制很难解决的一些问题,主要体现一下三 个方面:密钥分发问题、密钥管理问题和数字签名问题。 23.RSA的数论基础是数论的欧拉定理,在现有的计算能力条件下,RSA 被 认为是安全的最小密钥长度是1024位。 24.公钥密码算法一般是建立在对一个特定的数学难题求解上,那么RSA算法是基于 大整数因子分解困难性、ElGamal算法是基于有限域乘法群上离散对数的困 难性。 25.为保证安全性,在设计分组密码时,密码变换必须足够复杂,尽量使用混淆与扩 散原则。这样使攻击者除了用穷举攻击以外,找不到其他简洁的数学破译方法二计算题
分组密码以及安全性研究 1引言 分组密码是对称密码学的一个重要分支,在信息安全领域发挥着极其重要的作用,其研究的主要内容包括分组密码的设计和分析这两个既相互对立又相互统一的方面。一方面,针对已有的密码分析手段,密码设计者总希望设计出可以抵抗所有已知攻击的密码算法;另一方面,对已有的密码算法,密码分析者总希望可以找到算法的某些安全缺陷。这两方面的研究共同推进了分组密码理论的发展。 2 分组密码 2.1概念 分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。分组密码的研究包括三方面:分组密码的设计原理,分组密码的安全性分析和分组密码的统计性能测试。 2.2内容 目前对分组密码安全性的讨论主要包括差分密码分析、线性密码分析和强力攻击等。从理论上讲,差分密码分析和线性密码分析是目前攻击分组密码的最有效的方法,而从实际上说,强力攻击是攻击分组密码最可靠的方法。到目前为止,已有大量文献讨论各种分组密码的安全性。与序列密码每次加密处理数据流的一位或一个字节不同,分组密码处理的单位是一组明文,即将明文消息编码后的数字序列m0,m1,m2,…,mi划分成长为L位的组 m=(m0,m1,m2,…,mL-1),各个长为L的分组分别在密钥k=(k0,k1,k2,…,kt-1)(密钥长为t)的控制下变换成与明文组等长的一组密文输出数字序列c=(c0,c1,c2,…,cL-1)。L通常为64或128。设明文m与密文c均为二进制0、1数字序列,它们的每一个分量 mi,ciεDF(2)(i=0,1,2,…,n-1),则明文空间为{0,1,…,2n-1},密文空间也为 0,1,…,2n-1},分组密码是由密钥k=(k0,k1,k2,…,kt-1)确定的一个一一映射,也就是空间{0,1,…,2n-1},到自身的一个置换F,由于置换F是由密钥k所确定,一般地,我们把这个置换表示为C=Fk(m)。 分组密码算法实际上就是密钥控制下,通过某个置换来实现对明文分组的加密变换。为了保证密码算法的安全强度,对密码算法的要求如下。 (1)分组长度足够大。当分组长度较小时,分组密码类似于古典的代替密码,它仍然保留了明文的统计信息,这种统计信息将给攻击者留下可乘之机,攻击者可以有效地穷举明文空间,得到密码变换本身。 (2)密钥量足够大。分组密码的密钥所确定密码变换只是所有置换中极小一部分。如果这一部分足够小,攻击者可以有效地穷举明文空间所确定所有的置换。这时,攻击者就可以对密文进行解密,以得到有意义的明文。 (3)密码变换足够复杂。使攻击者除了穷举法以外,找不到其他快捷的破译方法。 分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)