生命在于学习——HTTPS验证方式
发布时间:2024年01月23日
一、HTTPS的验证过程分为单向验证和双向验证。
1. 单向验证:
- 客户端验证服务器的身份,确保连接的安全性。
- 客户端验证服务器的证书,包括检查证书是否过期、是否被吊销、是否可信以及验证域名是否一致。
- 服务器不对客户端进行身份验证。
2. 双向验证:
- 除了客户端验证服务器的身份,服务器也验证客户端的身份。
- 客户端需要生成私钥和证书,并将证书发给服务器。
- 服务器验证客户端的证书和身份。
二、HTTPS的验证过程涉及到TCP的三次握手和四次挥手。
1. 三次握手:
- 客户端向服务器发送SYN(同步)请求。
- 服务器回应ACK(确认)和SYN。
- 客户端回应ACK,完成连接的建立。
2. 四次挥手:
- 客户端发送FIN(结束)请求,表示要关闭连接。
- 服务器回应ACK,确认收到关闭请求。
- 服务器发送FIN,表示准备关闭连接。
- 客户端回应ACK,确认收到关闭请求,连接关闭。
三、HTTPS的单向验证过程:
- 客户端发起ClientHello消息,包含支持的加密算法和随机数。
- 服务器回应SeverHello消息,选择加密算法和生成随机数。
- 客户端验证服务器的证书,包括检查证书是否过期、是否被吊销、是否可信以及验证域名是否一致。
- 服务器验证客户端的证书,如果客户端没有提供证书,则验证通过。
- 双方生成相同的对称加密密钥,用于后续数据传输的加密。
四、HTTPS的双向验证过程:
- 客户端发起ClientHello消息。
- 服务器回应SeverHello消息,并要求客户端提供证书。
- 客户端回应中包含客户端的证书和证书验证消息。
- 服务器验证客户端的证书和身份。
- 双方生成相同的对称加密密钥,用于后续数据传输的加密。
五、HTTPS的验证过程确保了数据传输的安全性。
- 验证过程中包括证书的验证和密钥的生成。
- 数据传输时使用的对称加密密钥只在连接断开前有效,保证数据传输的安全性。
文章来源:https://blog.csdn.net/qq_15131581/article/details/135763862
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!