HTTPS加密流程总结

一. ⚡HTTPS

HTTPS 也是一个应用层协议,是在 HTTP 协议的基础上引入了一个加密层(SSL/TLS),HTTP 协议内容都是按照文本的方式明文传输的. 这就导致在传输过程中出现一些被篡改的情况,因此HTTPS是要比HTTPS更安全的,现在大部分网站采取的也都是HTTPS协议。在这里插入图片描述

二. ⚡加密方式

加密就是把明文(要传输的信息)进行一系列变换,生成密文。解密就是把密文再进行一系列变换,还原成对应的明文
加密通常有两种方式,一种为对称加密,另一种为非对称加密

1. ⭐对称加密

对称加密其实就是通过同一个 “密钥” ,把明文加密成密文,并且也能把密文解密成明文。在这里插入图片描述
对称加密里最关键的就是密钥,客户端和服务器需要先约定好密钥是什么,如果客户端生成了密钥,就需要通过网路告知服务器密钥是什么。由于密钥本身也会在网络上明文传输,容易被黑客截获,一旦被黑客截获,那么后续对数据的加密就失去意义了。
因此密钥的传输也必须加密传输,即指定一个"密钥的密钥",即引入非对称加密

2. ⭐非对称加密

非对称加密要用到两个密钥,一个叫做公钥,另一个叫做私钥

### HTTPS 协议原理及加密解密流程详解 HTTPS(HyperText Transfer Protocol Secure)是一种基于 SSL/TLS 协议的安全通信协议,用于确保客户端与服务器之间的数据传输安全。其核心机制是通过加密手段保护数据的完整性和隐私性,防止中间人攻击和数据篡改。 HTTPS加密过程主要包括以下几个关键步骤: #### 1. 证书验证阶段 在 HTTPS 连接建立之初,客户端(如浏览器)会向服务器发起连接请求。服务器响应后,会将自己的数字证书发送给客户端。该证书中包含了服务器的公钥以及由可信证书颁发机构(CA)签名的信息。客户端通过操作系统中预置的 CA 公钥,验证证书的合法性,确保该证书未被篡改,并且确实属于目标服务器。这一阶段使用的是非对称加密技术,用于验证证书的真实性[^3]。 #### 2. 密钥交换阶段 一旦证书验证通过,客户端将生成一个随机的对称加密密钥(也称为会话密钥),用于后续数据的加密和解密。为了确保该密钥在传输过程中不被窃取,客户端会使用服务器证书中的公钥对该对称密钥进行加密,并将加密后的密钥发送给服务器。服务器接收到该加密密钥后,使用与其证书匹配的私钥进行解密,从而获得客户端生成的对称密钥。这一阶段同样使用非对称加密技术,确保密钥交换的安全性[^1]。 #### 3. 数据传输阶段 在密钥交换完成后,客户端和服务器之间所有的通信都将使用之前协商的对称密钥进行加密和解密。由于对称加密算法在加解密效率上优于非对称加密,因此适用于大量数据的传输。通过这种方式,HTTPS 实现了高效且安全的数据传输[^3]。 ### 加密流程总结 HTTPS加密流程可以归纳为以下三组密钥交互过程: - 第一组:非对称加密用于验证服务器证书的合法性,客户端使用 CA 的公钥验证服务器证书。 - 第二组:非对称加密用于安全地传输客户端生成的对称密钥,确保服务器能够解密并获取该密钥。 - 第三组:对称加密用于后续所有数据的传输,提高通信效率并保障数据安全[^3]。 ### 示例代码:HTTPS 请求过程(Python) ```python import requests # 发起 HTTPS 请求 response = requests.get('https://example.com') # 输出响应状态码和内容 print(f"Status Code: {response.status_code}") print(f"Response Body: {response.text}") ``` 该示例展示了如何使用 Python 的 `requests` 库发起 HTTPS 请求,并自动处理底层的 SSL/TLS 加密过程。
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

春风~十一载

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值