ssl tls 加密认证流程
    SSL(Secure Sockets Layer)和TLS(Transport Layer Security)是一种安全协议,用于在计算机网络上保护数据的传输安全。它们利用数字证书签名等技术来保证通信的机密性、完整性和认证性。
    以下是SSL/TLS加密认证流程:
    1. 客户端请求与服务器建立安全连接,并发送与加密有关的信息,如支持的协议版本、加密算法等。
    2. 服务器发送数字证书给客户端,包含服务器的身份信息、公钥等。数字证书是由受信任的第三方证书颁发机构(CA)签发的。
    3. 客户端验证数字证书是否合法和有效,检查证书颁发机构和服务器的域名是否匹配。
    4. 客户端生成随机数,使用服务器公钥加密该随机数,并发送给服务器。这个随机数将用于后续的数据加密和解密。
    5. 服务器使用自己的私钥解密客户端发送的随机数,保存该随机数。
    6. 客户端和服务器通过协商选择对称加密算法(如DES、AES等)来加密后续通信的数据。并使用上述随机数生成密钥,双方都保存该密钥。
    7. 客户端向服务器发送信息以确认通信设置已经完成,这个消息包含了本次连接的所有参数信息,包括加密算法、密钥等。
    8. 服务器向客户端发送确认消息,加密通信正式开始。在整个通信过程中,双方都使用共享密钥进行加密和解密,确保通信数据的机密性和完整性。
    总结一下,SSL/TLS加密认证流程中包含了三个关键步骤:数字证书的验证和生成、随机数的生成和共享密钥的生成,这些步骤保证了通信的机密性、完整性和认证性。