找回密码
 立即注册
查看: 64|回复: 0

介绍 HTTPS 握手过程

[复制链接]

5

主题

3

回帖

45

积分

新手上路

积分
45
发表于 2022-9-19 14:22:35 | 显示全部楼层 |阅读模式
介绍 HTTPS 握手过程
  • 客户端使用https的url访问web服务器,要求与服务器建立ssl连接
  • web服务器收到客户端请求后, 会将网站的证书(包含公钥)传送一份给客户端
  • 客户端收到网站证书后会检查证书的颁发机构以及过期时间, 如果没有问题就随机产生一个秘钥
  • 客户端利用公钥将会话秘钥加密, 并传送给服务端, 服务端利用自己的私钥解密出会话秘钥
  • 之后服务器与客户端使用秘钥加密传输
HTTPS 握手过程中,客户端如何验证证书的合法性
  • 首先浏览器读取证书中的证书所有者、有效期等信息进行一一校验。
  • 浏览器开始查找操作系统中已内置的受信任的证书发布机构 CA,与服务器发来的证书中的颁发者 CA 比对,用于校验证书是否为合法机构颁发。
  • 如果找不到,浏览器就会报错,说明服务器发来的证书是不可信任的。如果找到,那么浏览器就会从操作系统中取出颁发者 CA 的公钥,然后对服务器发来的证书里面的签名进行解密。
  • 浏览器使用相同的 Hash 算法根据证书内容计算出信息摘要,将这个计算的值与证书解密的值做对比。
  • 对比结果一致,则证明服务器发来的证书合法,没有被冒充。此时浏览器就可以读取证书中的公钥,用于后续加密了。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|粤嵌技术交流空间

GMT+8, 2025-7-7 22:17 , Processed in 0.647915 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表