> Client: 可信的第三方机构的公钥已内置客户端, 用于验证数字签名有效性 end end loop 网络通信 Client ->> Server: https://www.baidu.com Server ->> Client: 返回数字签名的公钥证书 loop 验证证书 Client ->> Client: 浏览器内置CA公钥 -> 解密 -> 对比 Note left of Client: 无效证书会显示警告信息 Client ->> Client: 有效 end Client ->> Client: 生成随机的会话秘钥 Client ->> Client: 用 Server 的公钥加密会话秘钥 Client ->> Server: 发送加密后的会话公钥数据 Server ->> Server: 用私钥解密数据 Server ->> Server: 会话秘钥 Server ->> Server: 用会话秘钥加密明文数据 Server ->> Client: 返回加密后的数据 Client ->> Client: 用会话秘钥解密 Client ->> Client: 用会话秘钥加密明文内容 Client ->> Server: 发送密文数据 Server ->> Server: 用会话私钥解密数据 end"> > Client: 可信的第三方机构的公钥已内置客户端, 用于验证数字签名有效性 end end loop 网络通信 Client ->> Server: https://www.baidu.com Server ->> Client: 返回数字签名的公钥证书 loop 验证证书 Client ->> Client: 浏览器内置CA公钥 -> 解密 -> 对比 Note left of Client: 无效证书会显示警告信息 Client ->> Client: 有效 end Client ->> Client: 生成随机的会话秘钥 Client ->> Client: 用 Server 的公钥加密会话秘钥 Client ->> Server: 发送加密后的会话公钥数据 Server ->> Server: 用私钥解密数据 Server ->> Server: 会话秘钥 Server ->> Server: 用会话秘钥加密明文数据 Server ->> Client: 返回加密后的数据 Client ->> Client: 用会话秘钥解密 Client ->> Client: 用会话秘钥加密明文内容 Client ->> Server: 发送密文数据 Server ->> Server: 用会话私钥解密数据 end"> > Client: 可信的第三方机构的公钥已内置客户端, 用于验证数字签名有效性 end end loop 网络通信 Client ->> Server: https://www.baidu.com Server ->> Client: 返回数字签名的公钥证书 loop 验证证书 Client ->> Client: 浏览器内置CA公钥 -> 解密 -> 对比 Note left of Client: 无效证书会显示警告信息 Client ->> Client: 有效 end Client ->> Client: 生成随机的会话秘钥 Client ->> Client: 用 Server 的公钥加密会话秘钥 Client ->> Server: 发送加密后的会话公钥数据 Server ->> Server: 用私钥解密数据 Server ->> Server: 会话秘钥 Server ->> Server: 用会话秘钥加密明文数据 Server ->> Client: 返回加密后的数据 Client ->> Client: 用会话秘钥解密 Client ->> Client: 用会话秘钥加密明文内容 Client ->> Server: 发送密文数据 Server ->> Server: 用会话私钥解密数据 end">

Untitled

sequenceDiagram
  rect rgba(213, 229, 252, .3)
    loop 证书相关
      Server -->> CA: 申请证书认证
      CA -->> CA: 对数据的进行核验
      CA -->> CA: 核验成功
      CA -->> Server: 签发认证文件
      Server -->> Server: 内容包含证书相关信息和 "CA 私钥生成的数字签名"
      CA -->> Client: 可信的第三方机构的公钥已内置客户端, 用于验证数字签名有效性
    end
  end
  loop 网络通信
    Client ->> Server: <https://www.baidu.com>
    Server ->> Client: 返回数字签名的公钥证书
    loop 验证证书
        Client ->> Client: 浏览器内置CA公钥 -> 解密 -> 对比
        Note left of Client: 无效证书会显示警告信息
        Client ->> Client: 有效
    end
    Client ->> Client: 生成随机的会话秘钥
    Client ->> Client: 用 Server 的公钥加密会话秘钥
    Client ->> Server: 发送加密后的会话公钥数据
    Server ->> Server: 用私钥解密数据
    Server ->> Server: 会话秘钥
    Server ->> Server: 用会话秘钥加密明文数据
    Server ->> Client: 返回加密后的数据
    Client ->> Client: 用会话秘钥解密
    Client ->> Client: 用会话秘钥加密明文内容
    Client ->> Server: 发送密文数据
    Server ->> Server: 用会话私钥解密数据
  end

mermaid-diagram-20210922235949.svg