http https

HTTP(超文本传输协议)与 HTTPS(超文本传输安全协议)是互联网上应用最广泛的数据通信协议。HTTPS 并非一种全新的应用层协议,而是在 HTTP 的基础上加入了 SSL/TLS 安全层,专门用于解决 HTTP 明文传输带来的安全隐患。

1. 核心区别对比

对比维度 HTTP HTTPS
安全性 明文传输,数据易被窃听、篡改或伪造 加密传输,具备机密性、完整性和身份验证
默认端口 80 443
URL 标识 http:// 开头 https:// 开头
证书需求 不需要 需要由受信任的 CA(证书颁发机构)颁发数字证书
性能开销 无加密开销,传输较快 存在加解密计算开销,速度稍慢(现代协议已大幅优化)
浏览器标识 地址栏通常显示"不安全"警告 地址栏显示锁形图标,代表安全连接
SEO 影响 不利于搜索引擎排名 搜索引擎(如 Google)优先收录,有利于 SEO

2. HTTPS 的安全机制(三大核心)

HTTPS 通过以下三种机制弥补了 HTTP 的安全缺陷:

  • 数据加密:采用对称加密与非对称加密相结合的方案。在建立连接时使用非对称加密安全地协商密钥,在后续的业务数据传输阶段使用对称加密(如 AES)对 URL、请求头、Token 等全部数据进行加密,防止中间人窃听。
  • 身份验证:通过数字证书验证服务器的真实性。客户端(浏览器)内置了 CA 机构的公钥,通过验证服务器下发的数字证书,确保通信对象是真实的服务器而非恶意伪装的中间人。
  • 数据完整性:通过消息认证码(MAC)或哈希函数,确保数据在传输过程中未被篡改。接收方可以验证收到的数据与发送方发送的完全一致。

3. HTTPS 的通信流程(TLS 握手)

HTTPS 在正式传输 HTTP 数据前,需要先进行 SSL/TLS 握手以建立安全通道:

  1. 客户端 Hello:客户端向服务器发起连接,发送支持的 TLS 版本、加密算法列表以及一个随机数(Client Random)。
  2. 服务器 Hello:服务器选择一种加密算法,连同自己的数字证书、公钥和另一个随机数(Server Random)发回给客户端。
  3. 验证证书:客户端验证服务器证书的有效性(是否由可信 CA 签发、是否过期、域名是否匹配)。
  4. 生成会话密钥:客户端生成一个预主密钥(Pre-Master Secret),用服务器的公钥加密后发送给服务器。服务器用自己的私钥解密获取该密钥。
  5. 开始加密通信:双方根据之前的三个随机数计算出相同的对称加密会话密钥(Session Key)。后续所有的 HTTP 请求和响应数据都使用此密钥进行加密传输。

4. 总结与适用场景

  • HTTP 适用场景:由于缺乏安全性,目前主要仅用于内部网络、测试环境或传输完全不敏感的信息。
  • HTTPS 适用场景:现代 Web 的标配。所有涉及用户隐私、账号登录、支付交易、API 调用的网站都必须使用 HTTPS。此外,由于主流浏览器对 HTTP 标记为"不安全",且 HTTP/2 等新一代协议大多要求基于 HTTPS 运行,全面迁移到 HTTPS 已成为互联网发展的必然趋势。
相关推荐
yxl874646464 小时前
PCTG-1015型Profinet转Ethernet/IP协议转换器
服务器·网络·物联网·网络协议·自动化·信息与通信
pW3g3lLuu5 小时前
.NET 高级开发 | http 接口对接和客户端开发技巧
网络协议·http·.net
山海云端有限公司7 小时前
全平台视频元数据解析 API:从原理到 Python 实战调用
python·http·api·元数据·视频解析·apizero
阿标在干嘛8 小时前
政策快报爬虫的生存指南:IP池、浏览器模拟、验证码识别实战
爬虫·网络协议·tcp/ip
墨香幽梦客10 小时前
数据安全三板斧:Https/SSL加密+PCI-DSS合规+HIPAA医疗数据防护
网络协议·https·ssl
王二端茶倒水2 天前
从千兆到万兆:宽带运营不能只卖套餐,要管用户生命周期从千兆到万兆:宽带运营需要管理用户生命周期
后端·网络协议·架构
牛奶3 天前
HTTPS你不知道的事
前端·https·浏览器
extrao4 天前
🚀 Kea DHCP4 自动分配系统完整搭建
网络协议
喵个咪4 天前
Go-Wind HTTP 服务器从入门到精通
后端·http·go