〔通信过程〕http 和 https 的区别

✨ 目录

🎈 两者的区别

🎈 HTTP的通信过程

🎈 HTTPS的通信过程


🎈 两者的区别

  • 端口:http 端口号是80,https 端口号是443

  • 传输协议:http 是超文本传输协议,属于明文传输;https 是安全的超文本传输协议,是经过 SSL 加密后的传输协议

  • 安全性:https 使用了 TLS/SSL 加密,比 http 更加的安全

  • 证书:https 需要申请 ca 证书

🎈 HTTP的通信过程

  • 理解:作为标准的 C/S 模型,http 协议总是由客户端发起,服务端进行响应。

  • DNS 解析,域名系统 DNS 将域名解析成IP地址

  • 建立 TCP 连接,进行 TCP 的三次握手

  • 客户端发送请求

  • 服务端响应客户端,向客户端发送数据

  • 通信完成,TCP 连接关闭

🎈 HTTPS的通信过程

  • 理解:https 通信是建立在 ssl 连接层之上的请求和响应,客户端将加密组件发送到服务端,服务端进行匹配后将数字证书等信息发送到客户端,客户端进行证书验证,验证通过后使用非对称加密对数据的密钥进行协商,协商后得到对称的加密密钥,然后使用对称算法进行 TCP 链接,然后与客户端进行三次握手后,进行数据传输,传输完成后,四次挥手,断开链接,通信结束。

  • 客户端和服务端通过 TCP 建立连接,并发送 https 请求。

  • 服务端响应请求,并将数字证书发送给客户端,数字证书包括公共秘钥、域名、申请证书的公司

  • 客户端收到服务端的数字证书之后,会验证数字证书的合法性。

  • 如果公钥合格,那么客户端会生成 client key,一个用于进行对称加密的密钥,并用服务端的公钥对客户端密钥进行非对称加密。

  • 客户端会再次发起请求,将加密之后的客户端密钥发送给服务端。

  • 服务端接收密文后,会用私钥对其进行非对称解密,得到客户端秘钥。并使用客户端秘钥进行对称加密,生成密文并发送。

  • 客户端收到密文,并使用客户端秘钥进行解密,获取数据。

HTTPS 通信过程
评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客飞兔

你的支持是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值