1 对称密钥密码体制
对称密钥密码体制:加密密钥与解密密钥是使用相同的密码体制。
数据加密标准 DES 属于对称密钥密码体制。
DES 是一种分组密码:
- 在加密前,先对整个的明文进行分组。每一个组为 64 位长的二进制数据。
- 然后对每一个 64 位二进制数据进行加密处理,产生一组 64 位密文数据。
- 最后将各组密文串接起来,即得出整个的密文。
- 使用的密钥占有 64 位(实际密钥长度为 56 位,外加 8 位用于奇偶校验)。
DES 的保密性仅取决于对密钥的保密,而算法是公开的。DES 的问题是它的密钥长度,56 位长的密钥可以暴力遍历出来。
- 三重 DES:用于解决 DES 56 位密钥的问题,把一个 64 位明文用一个密钥加密,再用另一个密钥解密,然后再使用第一个密钥加密
- AES:高级加密标准
2 公钥密码体制
公钥密码体制使用不同的加密密钥与解密密钥。
最著名的公钥密码体制是 RSA 体制,它是一种基于数论中的大数分解问题的体制。
在公钥密码体制中,加密密钥 PK(public key,即公钥)是向公众公开的,而解密密钥 SK(secret key,即私钥或秘钥)则是需要保密的。加密算法和解密算法也都是公开的。
2.1 特点
公钥密码体制的加密和解密过程特点:
- 密钥对产生器产生出接收者的一对密钥:加密密钥 PK 和解密密钥 SK。
- 发送者使用公钥 PK 加密,它向公众公开。
- 接收者使用私钥 SK 解密,对其他人都保密。
- 从己知的 PK 推导出 SK 是“计算上不可能的”。
- 公钥可用来加密,但却不能用来解密
- 先后对 X 进行 D 运算和 E 运算或进行 E 运算和 D 运算,结果都是一样的
2.2 区别
对称密钥:一对一的双向保密通信 公开密钥:多对一的单向保密通信
任何加密方法的安全性取决于密钥的长度,以及攻破密文所需的计算量,而不是简单地取决于加密的体制
公钥密码体制并没有使传统密码体制被弃用,因为目前公钥加密算法的开销较大,在可见的将来还不会放弃传统加密方法。