# 对称加密

# 过程

  1. A 生成一份密钥,通过互联网发送给 B
  2. A 生成明文,通过密钥加密,发送给 B
  3. B 使用密钥解密

# 优缺点

# 优点

  • 算法公开
  • 计算量小
  • 加密速度快
  • 加密效率高

# 缺点

在数据传送前,发送方和接收方必须商定好密钥,然后双方都能保存好密钥。如果其中一方的密钥被泄漏,那么加密信息也就不安全了。

# 非对称加密

# 过程

  1. A 和 B 分别在本地生成一个公钥和一个私钥
  2. A 先拿到 B 的公钥
  3. A 使用 B 的公钥编码生成密文,传输给 B
  4. B 使用自己的私钥解密

# 优缺点

# 优点

  • 安全性更高。公钥是公开的,私钥是自己保存,不需要传输给别人

# 缺点

  • 加密和解密花费时间长、速度慢,只是和对少量数据进行加密
  • 一把私钥对应多把公钥,因此信息传输方向只能是单向的
  • 因为 B 的公钥是公开的,所以任何人都可以用他的公钥加密,伪装成 A 通信。解决办法是增加数字签名和证书。