【Web】https 与 http 的区别

文章目录

一、基本概念

http :超文本传输协议,一种网络传输协议,一个客户端和服务器请求和应答的标准(TCP)。
https :简单讲就是在http基础上 使用 SSLTLS 对请求和响应进行加密,建立一个信息安全通道。

  • https 工作原理:
js 复制代码
1. 客户端使用 https url 访问服务器,要求与 web 服务器建立 ssl 连接
2. web 服务器接收到客户端的请求之后,会将网站的数字证书(包含了公钥),传送一份给客户端
3. 客户端的浏览器和web服务器端,开始协商ssl/tls链接的安全等级,也就是加密等级。
4. 协商一致后,客户端的浏览器建立会话密钥,然后通过网站的公钥来加密会话密钥,并传送给网站。
5. 然后 web 服务器通过自己的私钥解密出会话密钥
6. 最后 web 服务器再通过会话密钥加密与客户端之间的通信
  • http 缺点:
js 复制代码
1. 通信使用明文,内容可能会被窃听。
2. 不验证通信方的身份,因此有可能遭遇伪装。
3. 无法证明报文的完整性,所以有可能已遭篡改。
  • https 优势:使得 http 协议可认证用户和服务器,确保真实数据发送到正确的客户机和服务器上,并且有助于防止未经授权访问敏感数据。

二、区别对比

  1. 加密:
    https 由 http 和 ssl(或 tls) 协议构建的可进行加密传输和身份认证的网络协议,因此拦截通信的任何人只能看到随机字符串,而不是明文,比 http 协议的安全性更高,而 http 传输的数据读书未加密的的,也就是明文的。
  2. 证书:
    当 web 浏览器通过 https 链接到 web 服务器时,服务器会向浏览器发送数字证书(ca 证书,费用较高)。该证书包含特定与服务器的信息,包含服务器的公钥。浏览器随后使用此证书与服务器建立安全链接
  3. 端口号:
    一般而言,http 协议的端口为 80,https 的端口为 443。访问网址时,http 的 url 开头为 http://,https 的 url 开头为 https://
相关推荐
程序员的世界你不懂6 小时前
(9)-Fiddler抓包-Fiddler如何设置捕获Https会话
前端·https·fiddler
浩浩测试一下8 小时前
Authpf(OpenBSD)认证防火墙到ssh连接到SSH端口转发技术栈 与渗透网络安全的关联 (RED Team Technique )
网络·网络协议·tcp/ip·安全·网络安全·php
Think Spatial 空间思维9 小时前
【实施指南】Android客户端HTTPS双向认证实施指南
android·网络协议·https·ssl
'tubug'10 小时前
数字证书_CA_详解
https·ssl
昔我往昔10 小时前
https和http有什么区别-http各个版本有什么区别
网络协议·http·https
漫步者TZ10 小时前
【Netty系列】解决TCP粘包和拆包:LengthFieldBasedFrameDecoder
java·网络协议·tcp/ip·netty
alien爱吃蛋挞12 小时前
【JavaEE】万字详解HTTP协议
网络·网络协议·http
Chuncheng's blog12 小时前
如何基于Mihomo Party http端口配置git与bash命令行代理
git·http·bash
一只帆記13 小时前
HTTP、WebSocket、SSE 对比
websocket·http
Bright166813 小时前
mkcert实现本地https
网络协议·http·https