对称密钥密码体制
- 所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。
- 这种加密系统又称为对称密钥系统。
数据加密标准 DES
- 数据加密标准 DES 属于对称密钥密码体制,是一种分组密码。
- 在加密前,先对整个明文进行分组。每一个组长为 64 位。
- 然后对每一个 64 位 二进制数据进行加密处理,产生一组 64 位密文 数据。
- 最后将各组密文串接起来,即得出整个的密文。
- 使用的密钥为 64 位(实际密钥长度为 56 位,有 8 位用于奇偶校验)。
DES 的保密性
- DES 的保密性仅取决于对密钥的保密,其算法是公开的。
- 目前较为严重的问题是 DES 的密钥的长度。
- 现在已经设计出搜索 DES 密钥的专用芯片。56位 DES 已不再认为是安全的了。
三重 DES
- 使用两个 56 位的密钥。
- 把一个 64 位明文用一个密钥加密,再用另一个密钥解密,然后再使用第一个密钥加密,即
公钥密码体制
- 公钥密码体制(又称为公开密钥密码体制)使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。
- 公钥密码体制产生的主要原因:
- 常规密钥密码体制的密钥分配问题。
- 对数字签名的需求。
加密密钥与解密密钥
- 在公钥密码体制中,加密密钥 PK(public key,即公钥)是向公众公开的,而解密密钥 SK(secret key,即私钥或秘钥)则是需要保密的。
- 加密算法 E 和解密算法 D 也都是公开的。
- 虽然私钥 SK 是由公钥 PK 决定的,但却不能根据 PK 计算出 SK。
应当注意
- 任何加密方法的安全性取决于密钥的长度,以及攻破密文所需的计算量。在这方面,公钥密码体制并不具有比传统加密体制更加优越之处。
- 由于目前公钥加密算法的开销较大,在可见的将来还看不出来要放弃传统的加密方法。
- 公钥还需要密钥分配协议,具体的分配过程并不比采用传统加密方法时更简单。
公钥算法的特点
- 密钥对产生器产生出接收者 B 的一对密钥:加密密钥 PKB 和解密密钥 SKB 。
- 加密密钥 PKB 就是接收者B的公钥,它向公众公开。
- 解密密钥 SKB 就是接收者B的私钥,对其他人都保密。
- 发送者 A 用 B 的公钥 PKB 对明文 X 加密(E 运算)后,接收者 B 用自己的私钥 SKB 解密(D 运算),即可恢复出明文:
公钥算法的特点
- 加密密钥是公开的,但不能用它来解密,即:
- 加密和解密运算可以对调,即加密和解密是互逆的:
公钥密码体制
公开密钥与对称密钥的区别
- 在使用对称密钥时,由于双方使用同样的密钥,因此在通信信道上可以进行一对一的双向保密通信,每一方既可用此密钥加密明文,并发送给对方,也可接收密文,用同一密钥对密文解密。这种保密通信仅限于持有此密钥的双方(如再有第三方就不保密了)。
- 在使用公开密钥时,在通信信道上可以是多对一的单向保密通信。
公钥密码体制
- 如果某一信息用公开密钥加密,则必须用私有密钥解密,这就是实现保密的方法
- 如果某一信息用私有密钥加密,那么,它必须用公开密钥解密。这就是实现数字签名的方法