对称加密
对称加密: 加密和解密, 使用的密钥是 同一个密钥.
设密钥 key
明文 + key => 密文
密文 + key => 明文
非对称加密
非对称加密 + 对称密钥:
有两个密钥 (一对)
一个密钥称为 "公钥", 一个称为 "私钥". (公钥就是公开的, 私钥需要自己藏好)
明文 + 公钥 => 密文
密文 + 私钥 => 明文
总之就是 "用一个密钥加密, 就用另一个密钥解密"
中间人攻击
通过使用对称加密和非对称加密.
好像就解决了信息传递过程中信息被篡改的问题.
但是还存在中间人攻击.
数字证书
如何解决上述 中间人攻击 问题: 之所以能进行中间人攻击, 关键在于客户端没有 "分辨能力" 客户端不知道这个公钥是不是黑客伪造的. 这里的 "分辨" 不能靠 "自证" (谁都说自己是真的)
这里引入的三方的可以被大家信任的 "公证机构" 公证机构说这个公钥是正确的, 不是伪造的, 我们就可以信任