HTTPS 的加密过程 详解

HTTP 由于是明文传输,所以安全上存在以下三个风险:

  • 窃听风险,比如通信链路上可以获取通信内容。
  • 篡改风险,比如通信内容被篡改。
  • 冒充风险,比如冒充网站。

HTTPS 在 HTTP 与 TCP 层之间加入了 SSL/TLS 协议,可以很好的解决了上述的风险。

  • 信息加密 :防止窃听、信息被整个替换。采用混合加密方式。
  • 校验机制 :防止篡改、但不能防止信息被整个替换。采用摘要算法方式
  • 身份证书 :防止冒充。采用数字证书方式。

一、摘要算法------数字指纹

主要过程:

  • 发送方对内容计算出一个「指纹」,然后同内容一起传输给对方。
  • 接受方对内容也计算出一个「指纹」,然后跟发送方发送的「指纹」做一个比较。
  • 如果「指纹」相同,说明内容没有被篡改,否则就可以判断出内容被篡改了。

常见摘要算法:MD5(消息摘要算法第五版)

  • 输入任意长度的原文,经过处理(见下),输出为128位的信息(数字指纹);
  • 不同的输入得到的不同的结果(唯一性);
MD5属不属于加密算法
  • MD5不可逆 ,因为本质使用的是hash算法,在计算过程中原文的部分信息是丢失了的。(不同长度的原文,有可能得到相同的数字指纹。所以无法通过数字指纹得到原文,因为原文长度不固定。)
  • MD5可破解:这个说法是因为一般我们需要加密的**原文信息长度是固定(或者限制在一定范围内)**的,比如用户密码规定长度在8~12位之间,所以存在破解的可能性。

MD5的处理过程

MD5以512位分组 来处理输入的信息,且每一分组又被划分为16个32位子分组 ,经过了一系列的处理后,取出4个32位子分组 组成,将这四个32位分组级联后将生成一个128位散列值

二、非对称加密------数字签名

  • 对称加密只使用一个密钥,运算速度快,密钥必须保密,无法做到安全的密钥交换。
  • 非对称加密使用两个密钥:公钥和私钥,公钥可以任意分发而私钥保密,解决了密钥交换问题但速度慢。

非对称加密有两种形式:

  • 公钥加密,私钥解密 。这个目的是为了保证内容传输的安全,因为被公钥加密的内容,其他人是无法解密的,只有持有私钥的人,才能解密出实际的内容;
  • (数字签名算法)私钥加密,公钥解密 。这个目的是为了保证消息不会被冒充,因为私钥是不可泄露的,如果公钥能正常解密出私钥加密的内容,就能证明这个消息是来源于持有私钥身份的人发送的。

HTTPS非对称加密的用途主要在于通过「私钥加密,公钥解密」的方式,来确认消息的身份、也防止消息被整个替换 ,不过私钥加密内容不是内容本身,而是对内容的哈希值(数字指纹)加密

三、数字证书------服务器公钥+CA数字签名

CA (数字证书认证机构)使用自己的私钥给服务器公钥加密。

四、对称加密------通信期间

  • 在通信建立前采用非对称加密的方式交换「会话秘钥」,后续就不再使用非对称加密。
  • 在通信过程中全部使用对称加密的「会话秘钥」的方式加密明文数据。

五、参考

小林coding

相关推荐
Summer不秃18 小时前
深入理解 Token 无感刷新:从并发雪崩到单例锁 + 请求队列的完整实现
前端·http
Ether IC Verifier19 小时前
CPU/GPU/NPU/DPU功能详解与AI应用分析
网络·人工智能·网络协议·tcp/ip·计算机网络·dpu
刃神太酷啦1 天前
《网络基础全链路深度解析:从Socket编程到HTTPS与TCP/UDP内核机制》----《Hello Linux!》(25)
linux·运维·c语言·网络·c++·tcp/ip·https
lunzi_08261 天前
《图解HTTP》--第3章 HTTP报文内的HTTP信息
网络·网络协议·http
Shota Kishi1 天前
ERPC 在 Solana RPC 中集成 Pyth Hermes 兼容的 Price API:从架构到调用的技术解析
网络协议·rpc·架构
念越1 天前
HTTPS 安全内核:对称与非对称加密的博弈,数字证书一战定局
java·网络·网络协议·安全·https
Jinkxs1 天前
LoadBalancer- 核心术语详解:转发 / 监听 / 节点池 / 虚拟 IP 等必知概念
网络·网络协议·tcp/ip
游戏开发爱好者81 天前
iOS应用性能监控:Pre-Main与Main函数耗时分析及Time Profiler使用教程
android·ios·小程序·https·uni-app·iphone·webview
运维行者_1 天前
理解应用性能监控
大数据·服务器·网络·数据库·人工智能·网络协议·安全
zt1985q1 天前
本地部署搜索引擎 Yacy 并实现外部访问
运维·服务器·网络·网络协议·搜索引擎