03.HTTPS的实现原理-HTTPS的工作流程

03.HTTPS的实现原理-HTTPS的工作流程

  • 简介
  • [1. HTTPS的工作流程](#1. HTTPS的工作流程)
    • [1.1. TCP的工作流程](#1.1. TCP的工作流程)
      • [1.1.1. 三次握手的详细步骤](#1.1.1. 三次握手的详细步骤)
      • [1.1.2. 三次握手的作用](#1.1.2. 三次握手的作用)
    • [1.2. HTTPS的工作流程](#1.2. HTTPS的工作流程)
      • [1.2.1. HTTPS与TCP的关系](#1.2.1. HTTPS与TCP的关系)
      • [1.2.2. HTTPS的工作流程](#1.2.2. HTTPS的工作流程)
  • [2. 公钥和私钥的作用](#2. 公钥和私钥的作用)
  • [3. 对称密钥的生成和交换](#3. 对称密钥的生成和交换)
  • [4. 对称加密和非对称加密的区别](#4. 对称加密和非对称加密的区别)

简介

主要讲述了HTTP与HTTPS工作流程比较,以及服务器与客户机资源分配与初始化流程。首先,HTTP和HTTPS都基于TCP,但在三次握手后,HTTP直接发送请求,而HTTPS还需进行SSL/TLS握手。此外,服务器资源分配和初始化流程也包括检查资源情况、分配资源、创建连接和初始化等步骤。如果服务器回复丢失,客户机未收到确认,可能导致服务器资源耗尽。然后,重点解释了HTTPS中的TLS/SSL握手过程,强调了公钥和私钥的概念及其重要性。

1. HTTPS的工作流程

HTTPS的工作流程主要是关于S的部分,即安全部分(secure )。

HTTP本身是基于TCP的,包括其语法语义和请求方式等。

HTTPS与HTTP的区别主要在于安全性的增强,我们主要关注与安全相关的部分。

1.1. TCP的工作流程

TCP的工作流程包括三次握手和四次挥手

1.三次握手:客户机发送请求,服务器进行监听并响应,客户机进行确认。

2.四次挥手:服务器发送FIN包,客户机进行确认,然后客户机发送FIN包,服务器进行确认。

1.1.1. 三次握手的详细步骤

1.第一次握手:客户机发送请求报文段,序列号为x。

2.第二次握手:服务器收到请求后,发送确认报文段,序列号为y,确认号为x+1。

3.第三次握手:客户机收到确认报文段后,发送确认报文段,序列号为x+1,确认号为y+1。

1.1.2. 三次握手的作用

1.第三次握手的作用是确认客户机是否已收到服务器的确认报文段

2.如果没有第三次握手,服务器无法确认客户机是否收到确认报文段,可能导致资源浪费或服务器崩溃。

3.泛洪攻击(SYN Flooding)就是利用没有第三次握手导致的服务器资源被快速分配完毕的漏洞进行攻击。

1.2. HTTPS的工作流程

1.2.1. HTTPS与TCP的关系

1.HTTP和HTTPS都是基于TCP协议的。

2.HTTPS在TCP之上添加了SSL/TLS安全协议来提供加密和身份验证。

1.2.2. HTTPS的工作流程

1.HTTPS首先建立TCP连接 ,然后进行SSL/TLS握手。

2.握手过程包括客户端发起请求,服务器返回公钥证书,客户端验证证书,生成对称密钥并用公钥加密发送给服务器

3.服务器用私钥解密收到对称密钥客户端和服务器都用对称密钥进行加密和解密。

2. 公钥和私钥的作用

1.公钥用于加密对称密钥,私钥用于解密。

2.公钥可以发给任何客户端,私钥由服务器保留。

3.公钥加密的内容可以用私钥解密,反之亦然。

3. 对称密钥的生成和交换

1.客户端生成对称密钥,并用公钥加密后发送给服务器。

2.服务器用私钥解密收到对称密钥,客户端和服务器都用对称密钥进行加密和解密。

4. 对称加密和非对称加密的区别

1.对称加密:加密和解密用同一个密钥。

2.非对称加密:加密用公钥,解密用私钥,或反之。

3.HTTPS结合使用了对称加密和非对称加密,数据传输前进行密钥交换,使用非对称加密;数据传输使用对称加密。

往期文章参考:
01.HTTPS的实现原理-HTTPS的概念
02.HTTPS的实现原理-HTTPS与HTTP的区别详解

相关推荐
洒家肉山大魔王2 分钟前
PKI/CA X.509证书的基础应用与解读
服务器·https·密码学·数字证书
北京耐用通信5 分钟前
不换设备、不重写程序:耐达讯自动化网关如何实现CC-Link IE转Modbus TCP的高效互通?
人工智能·科技·物联网·网络协议·自动化·信息与通信
志栋智能15 分钟前
超自动化巡检:实现运维“事前预防”的关键拼图
大数据·运维·网络·人工智能·机器学习·自动化
七夜zippoe22 分钟前
OpenClaw 技能开发实战:从零到一
运维·服务器·网络·openclaw·技能开发
liweiweili12623 分钟前
http数据传输过程数据编码解码问答
网络协议·http·状态模式
oi..24 分钟前
《Web 安全入门|XSS 漏洞原理、CSP 策略与 HttpOnly 防护实践》
前端·网络·测试工具·安全·web安全·xss
加勒比之杰克1 小时前
从阻塞 IO 到 epoll:把 Linux 网络 IO 一次讲透
linux·网络·windows·select·多路转接·epoll·poll
Dynadot_tech1 小时前
完成注册的域名可以做什么?
网络·域名·dynadot·网站域名
有代理ip1 小时前
动态IP的安全性优化:策略升级与隐私保护实战指南
网络·网络协议·tcp/ip
CDN3601 小时前
高防 IP 回源 502/504 异常?源站放行与健康检查修复
网络·网络协议·tcp/ip