https

https: 保证数据传输过程中信息不被窃取与篡改

  • 客户端与服务器通过对称加密算法保证传输信息安全

  • 对称加密算法的密钥只有创建方知晓,如何安全的传递密钥?

  • 服务器使用非对称加密算法创建一对密钥key2;并将公钥key2传递给客户端,自身保留私钥key2;
    客户端使用对称加密算法创建密钥key1,使用公钥key1加密密钥key2传递给服务器,服务器使用私钥key2解密拿到密钥key1

  • 第三方可以伪装成服务器与客户端交互获取密钥key2,且知晓服务器的公钥key1可以模拟客户端与服务器交互。。。

  • 第三方权威机构(CA)公开自身的公钥key3与证书签名算法,服务器将自身域名与公钥key2使用key3加密发送给第三方权威机构,第三方权威机构颁发证书(DC)给服务器。

证书 = 服务器域名 + 权威机构 + 权威机构私钥key3加密的服务器公钥key1 + 权威机构私钥key3加密的证书签名

证书签名 = 服务器域名 + 权威机构公钥key3 + 服务器公钥key1

签名是指用私钥对某个文件或数据进行加密,从而生成数字签名,数字签名包含了文件或数据的摘要和私钥加密后的密文,用于验证文件或数据的完整性和真实性。

  • 服务器将证书发给客户端,客户端验证证书是否正确。保证正确的拿到服务器的公钥

攻击者伪造的证书无法使用私钥key3加密,客户端使用公钥key3解密会得到的签名与伪造的证书签名会不一致

posted @ 2024-05-17 00:20  冰凉小手  阅读(47)  评论(0编辑  收藏  举报