HTTP和HTTPS的区别

安全性

  • HTTP :

    明文传输数据,所有信息在网络中以未加密的形式发送,可能被中间人窃听、篡改或伪造,安全性极低。

    例如:用户输入的密码、支付信息等会直接暴露在传输过程中。

  • HTTPS :

    在 HTTP 基础上加入了 SSL/TLS 加密层,所有数据传输前会被加密,即使被拦截也无法直接读取内容,同时能验证服务器身份(防止伪装)和数据完整性(防止篡改)。

    例如:银行网站、电商支付页面均强制使用 HTTPS。

端口

  • HTTP:默认使用 80 端口。
  • HTTPS:默认使用 443 端口。

协议头

  • HTTP:请求头以 http:// 开头(如 http://www.baidu.com)。
  • HTTPS:请求头以 https:// 开头(如 https://www.baidu.com),浏览器通常会在地址栏显示锁形图标,表示连接安全。

加密原理

  • HTTPS 依赖 SSL/TLS 协议实现加密,过程如下:

    1. 握手阶段:客户端与服务器协商加密算法,并通过服务器的CA证书验证服务器身份。
    2. 密钥交换:协商生成一个临时的对称加密密钥。
    3. 数据传输:所有数据通过对称密钥加密后传输,第三方即使拦截也无法解密。
  • HTTP 无加密过程,数据直接以明文传输。

性能与开销

  • HTTP:无需加密和解密过程,传输速度更快,服务器资源消耗更低。
  • HTTPS:由于增加了 SSL/TLS 握手和加密解密步骤,会产生额外的时间开销。

总结对比表

维度 HTTP HTTPS
安全性 明文传输,不安全 SSL/TLS 加密,安全
端口 80 443
协议头 http:// https://(带锁图标)
加密 无 有(SSL/TLS 加密)
证书 无需 需要 CA 颁发的 SSL 证书
性能 快 稍慢(加密解密开销)
适用场景 非敏感数据传输 敏感数据传输(登录、支付等)
相关推荐
博客zhu虎康2 小时前
实现局域网P2P通信:内网发送消息
网络·网络协议·p2p
FungLeo10 小时前
成为全栈·基础补充·域名、DNS 与 HTTPS 证书
https·网络基础·网站部署·tls证书·成为全栈·域名 dns
xixingzhe221 小时前
AI 对话打字机效果:SSE 和 HTTP 的区别与适用场景
网络·网络协议·http
叼烟扛炮1 天前
Linux 学习笔记(五十一):数据链路层与 ARP 协议——局域网寻址与黑客骗局
linux·网络·网络协议·php·tcpdump
沫璃染墨1 天前
从零入门计算机网络系列(十四):TCP报文与字节流本质——从数据封装到报文边界
linux·服务器·网络·网络协议·tcp/ip·tcp
byte轻骑兵1 天前
【LMP】规范精讲[13]: 参数的户口本、公钥的集装箱与出厂的兜底值
人工智能·网络协议·人机交互·lmp·蓝牙链路管理
流浪0011 天前
计算机网络篇17:传输层——TCP 超时重传、三次握手与四次挥手,TIME_WAIT 为什么要等 2MSL
网络协议·tcp/ip·计算机网络·三次握手·四次挥手·超时重传
Lsetea2 天前
Docker更新SSL证书后容器仍读旧文件:单文件挂载与目录挂载排查
运维·nginx·docker·https·ssl证书
AI 编程助手GPT2 天前
curl 返回成功就能收文件?用本地 HTTP 验证错误页与超时
网络·网络协议·http
流浪0012 天前
计算机网络篇16:传输层——TCP 报头属性字段:16 位窗口大小撑起流量控制,六个标志位标识报文类型
网络协议·tcp/ip·计算机网络·urg紧急指针·tcp报头