加密算法与信息摘要
1.对称加密算法
加密密钥和解密密钥相同的算法,称为对称加密算法。
对称加密算法相对非对称加密算法来说,加密的效率高,适合大量数据加密。
常见的对称加密算法如下表
加密算法名称 | 特点 |
---|---|
DES | 明文分为64位一组,密钮64位(实际位是56位的密钥和8位奇偶校验)。注意:考试中填实际密钥位,即56位 |
3DES | 3DES是DES的扩展,是执行了三次的DES。其中,第一、第三次加密使用同一密钥的方式下,密钥长度扩展到128位(112位有效);三次加密使用不同密钥,密钥长度扩展到192位(168位有效) |
RC5 | RC5由RSA 中的Ronald L.Rivest发明,是参数可变的分组密码算法,三个可变的参数是;分组大小、密钥长度和加密轮数 |
IDEA | 明文、密文均为64位,密钥长度128位 |
RC4 | 常用流密码,密钥长度可变,用于SSL协议。曾经用于IEEE 802.11 WEP协议中。也是Ronald L Rivest 发明的 |
2.非对称加密算法
加密密钥和解密密钥不相同的算法,称为非对称加密算法。 这种方式又称为公钥密码体制,解决了对称密钥算法的密钥分配与发送的问题。
在非对称加密算法中,私钥解决签名和解密。公钥用于加密和认证。
RSA
RSA是典型的非对称加密算法,该算法基于大素数分解。
RSA适合进行数字签名和密钥交换运算。
按照RSA算法,若选择两个奇数p=5,q=3,公钥e=7,则私钥d为多少?
【解析】
按RSA算法求公钥和密钥:
(1)选两奇数p=5,q=3;
(2)n = p × q = 15;
(3) (q-1)×((q-1)=8;
(4)公钥e=7,则依据ed=1mod(p-1)×(q-1),即7d=1mod8;
结合四个选项,得到d=7,即49mod8=1。
3.信息定整性验证算法
报文摘要算法(Message Digest Algorithms)使用特定算法对明文进行摘要,生成固定长度的密文。这类算法重点在于“摘要”,即对原始数据依据某种规则提取;摘要和原文具有联系性,即被“摘要”数据与原始数据一一对应,只要原始数据稍有改动,“摘要”的结果就不同。因此,这种方式可以验证原文是否被修改。
消息摘要算法采用“单向函数”,即只能从输入数据得到输出数据,无法从输出数据得到输入数据。常见报文摘要算法有安全散列标准SHA-1、MD5系列标准。
(1) SHA-1
安全Hash算法(SHA-1)也是基于MD5的,使用一个标准把信息分为512比特的分组,并且创建一个160比特的摘要。
(2) MD5
消息摘要算法5(MD5),把信息分为512比特的分组,并且创建一个128比特的摘要。