day05|计算机网络重难点之 HTTPS和HTTP的区别、HTTPS的工作原理(HTTPS建立连接的过程)、TCP和UDP的区别

day05|计算机网络重难点之 HTTPS和HTTP的区别、HTTPS的工作原理(HTTPS建立连接的过程)、TCP和UDP的区别

11.HTTPS和HTTP有哪些区别

两者主要区别在于 安全性 和 数据加密:

  • 第一个是 加密层:HTTP数据传输时明文的,容易受到攻击;而HTTPS 新增加了 SSL/TLS 协议,作为加密层,从而确保数据传输的安全性。
  • 第二个是 连接建立的复杂程度:HTTP 连接建立相对简单,TCP三次握手之后就可用传输报文;而HTTPS 在TCP 三次握手之后,还需要进行 SSL/TLS握手,最终才能进入加密报文传输
  • 第三个是 端口:HTTPS通常使用 端口80,而HTTPS 通常使用 端口443
  • 第四个是 HTTPS 协议需要向 CA 申请数字证书,来保证 服务器的身份 是可信的

12.HTTPS的工作原理(HTTPS建立连接的过程)

HTTPS 主要基于 SSL/TSL协议,确保了数据传输的 安全性 和 完整性,它建立连接的过程主要包括如下几步:

  • 第一步是 密钥交换:客户端 发起HTTPS请求,随后服务器 把它的 公钥证书 发送给 客户端
  • 第二步是 证书验证:客户端 会验证服务器发来的证书是否由CA签发(受信任的证书颁发机构),并检查证书的有效性
  • 第三步是 加密通信:证书验证通过之后,客户端会随机生成一个 对称加密密钥,并使用 服务器的公钥 加密这个密钥,最后把它发送给 服务器
  • 第四个是 建立安全连接:服务器 使用 自己的私钥 解密,得到对称加密密钥。此时,客户端 和 服务器 都有了 相同的密钥,可用进行 加密 和 解密 操作
  • 第五个是 数据传输:使用 对称加密密钥 对所有传输的数据 进行加密,确保数据传输的 安全性
  • 第六个是 完整性校验:SSL/TLS协议 还包括 消息完整性校验 机制,比如 消息认证码,它可以确保 数据在传输过程中 不被篡改
  • 最后是 结束连接:传输完成后,通信双方会进行 会话密钥 的销毁,防止留下安全隐患

13.TCP和UDP的区别

  • 第一,TCP是 面向连接 的协议,在数据传输开始前 建立连接;而UDP 是无连接的,不需要建立连接

  • 第二,TCP 提供 可靠数据传输,保证 数据报 的 顺序和完整性;而UDP 不能保证数据报的 顺序和完整性

  • 第三,TCP 具有 拥塞控制机制,可以根据 网络状况 调整 数据传输速率;而UDP 没有拥塞控制,发送速率 通常固定

  • 第四,TCP 通过 滑动窗口 机制进行 流量控制,避免接收方 处理不过来;而UDP没有流量控制

  • 第五,TCP 能够 检测并重传 丢失或损坏的 数据报;而 UDP 没有错误恢复机制

  • 第六,TCP 有着 复杂的 报文头部,包括 序列号、确认号等信息;而UDP 的 报文头部相对简单

  • 第七,由于TCP 的连接建立、数据校验 和 重传机制,性能开销 通常 比UDP 大;UDP 由于简单,性能开销较小

  • 第八,TCP 适用于 需要可靠传输 的应用,比如 网页浏览、文件传输等;而 UDP 适用于 对实时性要求高 的应用,比如语音通话、视频会议等

相关推荐
lfwendula03 小时前
组相联映射 set-associative mapping
计算机网络
唐 城6 小时前
curl 放弃对 Hyper Rust HTTP 后端的支持
开发语言·http·rust
CHENGlady7 小时前
传输层协议分析头歌
计算机网络
DevilHeart灬8 小时前
使用Grafana中按钮插件实现收发HTTP请求
http·grafana
Jacen.L10 小时前
使用TC命令模拟弱网丢包
计算机网络
总是学不会.12 小时前
第五篇:前后端如何“扯皮”——HTTP 在开发中的应用
java·网络·网络协议·http·开发
sone1213812 小时前
计算机网络(第8版)第四章 网络层(4.7.1~4.7.3)
服务器·网络·计算机网络
火狮12 小时前
鸿蒙Next API 12开发,使用@ohos/axios进行HTTP请求
http·华为·harmonyos
m0_7482382713 小时前
WebClient HTTP 请求问题处理模板(泛型响应、忽略 SSL 证书等)
网络协议·http·ssl
我曾经是个程序员13 小时前
鸿蒙学习记录之http网络请求
服务器·学习·http