首页 > 知识点讲解
       数据加密算法
知识路径: > 嵌入式系统的安全性知识 > 安全性基本概念 > 信息安全基础 > 
被考次数:5次     被考频率:中频率     总体答错率:58%     知识难度系数:     
相关知识点:5个      
        常用的加密算法有DES、IDEA、AES、流加密算法和RC4、RSA算法等。
               DES(Data Encryption Standard)
               1977年1月,美国NSA(National Security Agency)根据IBM的专利技术Lucifer制定了DES。明文被分成64位的块,对每个块进行19次变换(替代和换位),其中16次变换由56位密钥的不同排列形式控制(IBM使用的是128位的密钥),最后产生64位的密文块,如下图所示。
               
               DES加密算法
               由于NSA减少了密钥,而且对DES的制订过程保密,甚至为此取消了IEEE计划的一次密码学会议。人们怀疑NSA的目的是保护自己的解密技术,因而对DES从一开始就充满了怀疑和争论。
               1977年,Diffie和Hellman设计了DES解密机。只要知道一小段明文和对应的密文,该机器就可以在一天之内穷试256种不同的密钥(这叫做野蛮攻击)。
               三重DES(Triple-DES)是DES的改进算法,它使用两个密钥对报文做三次DES加密,效果相当于将DES密钥的长度加倍,克服了DES密钥长度较短的缺点。本来,应该使用3个不同的密钥进行3次加密,这样就可以把密钥的长度加长到3×56=168位。但许多密码设计者认为168位的密钥已经超过了实际需要,所以便在第一层和第三层中使用相同的密钥,产生一个有效长度为112位的密钥。之所以没有直接采用两重DES,是因为第二层DES不是十分安全,它对一种称为“中间可遇”的密码分析攻击极为脆弱,所以最终还是采用了利用两个密钥进行三重DES加密操作。
               假设两个密钥分别是K1和K2,其算法的步骤如下:
               (1)用密钥K1进行DES加密。
               (2)用K2对步骤(1)的结果进行DES解密。
               (3)对步骤(2)的结果使用密钥K1进行DES加密。
               这种方法的缺点是要花费原来三倍的时间,但从另一方面来看,三重DES的112位密钥长度是很“强壮”的加密方式。
               IDEA(International Data Encryption Algorithm,国际数据加密算法)
               1990年,瑞士联邦技术学院的来学嘉和Massey建议了一种新的加密算法。这种算法使用128位的密钥,把明文分成64位的块,进行8轮迭代加密。IDEA可以用硬件或软件实现,并且比DES快。在苏黎世技术学院用25MHz的VLSI芯片,加密速率是177MB/s。
               IDEA经历了大量的详细审查,对密码分析具有很强的抵抗能力,在多种商业产品中得到应用,已经成为全球通用的加密标准。
               AES(Advanced Encryption Standard,高级加密标准)
               1997年1月,美国国家标准与技术局(NIST)为高级加密标准征集新算法。最初从许多响应者中挑选了15个候选算法,经过世界密码共同体的分析,选出了其中的5个。经过用ANSI C和Java语言对5个算法的加/解密速度、密钥和算法的安装时间,以及对各种攻击的拦截程度等进行了广泛的测试后,2000年10月,NIST宣布Rijndael算法为AES的最佳候选算法,并于2002年5月26日发布为正式的AES加密标准。
               AES支持128、192和256位3种密钥长度,能够在世界范围内免版税使用,提供的安全级别足以保护未来20~30年内的数据,可以通过软件或硬件实现。
               流加密算法和RC4
               所谓流加密,就是将数据流与密钥生成二进制比特流进行异或运算的加密过程。这种算法采用以下两个步骤:
               (1)利用密钥K生成一个密钥流KS(伪随机序列)。
               (2)用密钥流KS与明文P进行“异或”运算,产生密文C
               
               解密过程则是用密钥流与密文C进行“异或”运算,产生明文P
               
               为了安全,对不同的明文必须使用不同的密钥流,否则容易被破解。
               Ronald L. Rivest是MIT的教授,用他的名字命名的流加密算法有RC2~RC6系列算法,其中RC4是最常用的。
               RC代表Rivest Cipher或Ron's Cipher,RC4是Rivest在1987年设计的,其密钥长度可选择64位或128位。
               RC4是RSA公司私有的商业机密,1994年9月被人匿名发布在因特网上,从此得以公开。这个算法非常简单,就是256内的加法、置换和异或运算。由于简单,所以速度极快,加密的速度可达到DES的10倍。
               RSA(Rivest Shamir and Adleman)算法
               这是一种公钥加密算法,方法是按照下面的要求选择公钥和密钥:
               (1)选择两个大素数pq(大于10100)。
               (2)令n=p*q、z=(p-1)*(q-1)。
               (3)选择dz互质。
               (4)选择e,使e*d=1(modz)。
               明文P被分成k位的块,k是满足2k<n的最大整数,于是有0≤P
               C=Pe(modn)
               这样公钥为(en)。解密时计算
               P=Cd(modn)
               即私钥为(dn)。
               用例子说明这个算法,设p=3,q=11,n=33,z=20,d=7,e=3,C=P3(mod 33),P=C7(mod 33)。则有
               C=23(mod 33)=8(mod 33)=8
               P=87(mod 33)=2097152(mod 33)=2
               RSA算法的安全性基于大素数分解的困难性。如果攻击者可以分解已知的n,得到pq,然后可得到z,最后用Euclid算法,由ez得到d。然而要分解200位的数,需要40亿年;分解500位的数,则需要1025年。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2019年下半年
   嵌入式系统设计..
   上午试卷 综合知识
第6题
选择题
下列算法中,不属于公开密钥加密算法的是(6)。

61%
   2016年下半年
   嵌入式系统设计..
   上午试卷 综合知识
第54题
选择题
在下列加密算法中,(54)属于非对称加密。

40%
>>  更多  本知识点历年真题
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有