13.1、DH
- 非对称算法的基石
- 仅能用于密钥分配,不能用于加解密数据,一般加密数据用AES
- 密钥长度:512~1024中的64的整数倍
- 双方各有自己的密钥对
13.2、RSA
- 最经典的非对称加密算法
- 也可认为是使用最多的非对称加密算法
- 能用于密钥分配,也能用于加解密数据(“私钥加密,公钥解密”和“公钥加密,私钥解密”)
- 密钥长度:512~65536(64的整数倍)
- 只有发送方有一个密钥对,或者更安全的做法是:双发均生成自己的密钥对,但是后边使用密钥对进行加解密时与DH的区别查看前一章
- 可用于数字签名
13.3、ElGamal
- 数字签名DSA的基础
- 具体实现方式只有BC有,与RSA的实现方式类似
- 只有“公钥加密,私钥加密”方式(公钥加密实际上安全性不高)
- 密文会成倍扩张