了解一下HTTP 与 HTTPS 的区别

介绍:

HTTP是超文本传输协议。规定了客户端(通常是浏览器)和服务器之间如何传输超文本,也就是包含链接的文本。通常使用TCP【1】/IP协议来传输数据,默认端口为80。

HTTPS是超文本传输安全协议,具有CA证书 。在HTTP的基础上增加了TLS【2】协议 ,为数据传输提供了加密、数据完整性和身份验证保护,默认端口为443。

特点:

HTTP:

  1. 无状态性:每次请求都是独立的,服务器不会记住之前的请求或用户信息
  2. 明文传输:数据以明文的形式传输,不加密,容易被截获和窃听。
  3. 快速:由于没有加密过程,HTTP通常比HTTPS更快。
  4. 灵活性:HTTP允许轻松地实现各种服务与应用。

HTTPS:

1.加密通信:HTTPS通过TLS证书实现对数据的加密处理,只有当拥有正确密钥的接收方才能解读数据内容。

2.身份认证:服务器向客户端出示TLS证书,客户端验证证书的有效性和服务器身份,确保连接到的是正确的服务提供者。

3.数据完整性:除了加密外,HTTPS还利用**消息认证码(MAC)**来保护数据完整性,防止数据在传输的过程中被篡改。

补充:

【1】 TCP是传输层,TLS(1.2版本居多,前身是SSL)是传输层安全协议,即TLS是在TCP之上增加的一层安全防护协议。

【2】图来源

HTTPS 建立连接的握手顺序?

HTTPS 建立连接的过程,先进行 TCP 三次握手,再进行 TLS 四次握手

为什么先tcp再tls?

因为 HTTPS 都是基于 TCP 传输协议实现的,得先建立完可靠的 TCP 连接才能做 TLS 握手的事情

易混淆:

TCP建立连接需要三次握手,关闭连接为四次挥手。

TLS建立连接需要四次握手(大多情况),关闭连接称为关闭通知。

TCP 聚焦于建立稳定的连接 ,而 TLS 则注重建立安全的通信通道。

相关推荐
今年下半年4 小时前
记录一次IBMS物联网项目的架构设计及技术栈应用
物联网·websocket·网络协议·tcp/ip·微服务·udp·kafka
春天花会开13112 小时前
内网 HTTPS 部署实战:私有 CA + Nginx 反向代理全流程复盘
运维·nginx·https
XUEYUAN52126 天前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
CHENKONG_CK6 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
2501_916007476 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
Lsetea6 天前
证书没到期却报certificate has expired:OpenSSL定位中间证书与系统时间
运维·https·ssl证书·openssl·证书链
z落落6 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
2501_916008896 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
SDWAN_Cheap6 天前
HTTPS到底加密了什么?
https·数据加密
曼巴UE56 天前
UE5 客户端 需要的网络同步概念总结(3 )-事件同步 RPC 以及三种调用方式
网络·c++·网络协议·学习·rpc·ue5