每日一博 - 闲聊Https工作原理

news2024/11/25 8:15:52

文章目录

  • HTTPS工作原理
  • 数据的加密和解密
  • 与HTTP相比,HTTPS增加了多少性能开销?
  • Flow
  • 小结

在这里插入图片描述


HTTPS工作原理

HTTPS(Hypertext Transfer Protocol Secure)是 Hypertext Transfer Protocol(HTTP)的扩展。HTTPS使用 **传输层安全性(TLS)**传输加密数据。

如果数据在在线传输过程中被劫持,劫持者只能获得二进制代码。


数据的加密和解密

步骤1 - 客户端(浏览器)和服务器建立一个TCP连接。

步骤2 - 客户端向服务器发送一个“客户端Hello”消息。该消息包含一组必要的加密算法(密码套件)和它可以支持的最新TLS版本。服务器会回应一个“服务器Hello”,以便浏览器知道是否可以支持这些算法和TLS版本。

然后,服务器将SSL证书发送给客户端。该证书包含了公钥、主机名、过期日期等信息。客户端验证证书的有效性。

步骤3 - 在验证SSL证书后,客户端生成一个会话密钥并使用公钥对其进行加密。服务器接收加密的会话密钥并使用私钥解密它。

步骤4 - 现在,客户端和服务器都拥有相同的会话密钥(对称加密),加密的数据在安全的双向通道中传输。

为什么HTTPS在数据传输过程中切换到对称加密?有两个主要原因:

  1. 安全性:非对称加密只能单向加密。这意味着如果服务器试图将加密数据发送回客户端,任何人都可以使用公钥解密数据。

  2. 服务器资源:非对称加密增加了相当多的数学开销。它不适用于长时间会话中的数据传输。


与HTTP相比,HTTPS增加了多少性能开销?

HTTPS通常会引入一些性能开销,但具体性能开销取决于多个因素,包括服务器硬件、TLS协议版本、加密算法等。以下是一些与HTTPS相关的性能开销因素:

  1. 握手开销:在建立HTTPS连接时,需要执行TLS握手过程,这涉及多个消息的交换,包括客户端Hello、服务器Hello和证书交换等。握手过程可能会引入一些延迟,尤其是在低延迟要求的应用中。

  2. 加密和解密开销:HTTPS使用加密算法对数据进行加密和解密。这些操作需要计算资源,尤其是在高负载情况下。较复杂的加密算法可能会引入更大的性能开销。

  3. 加密套件选择:不同的加密套件具有不同的性能开销。一些套件提供更高级别的安全性,但可能需要更多的计算资源。服务器和客户端可以选择适合其性能需求的套件。

Flow

在这里插入图片描述

在这里插入图片描述

小结

总的来说,HTTPS通常会引入一些性能开销,但这些开销通常可以通过优化服务器配置、使用硬件加速和选择适当的加密套件来降低。

在许多情况下,安全性的提升可以抵消性能开销。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1005571.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分类预测 | Matlab实现基于BP-Adaboost数据分类预测

分类预测 | Matlab实现基于BP-Adaboost数据分类预测 目录 分类预测 | Matlab实现基于BP-Adaboost数据分类预测效果一览基本介绍研究内容程序设计参考资料 效果一览 基本介绍 1.Matlab实现基于BP-Adaboost数据分类预测(Matlab完整程序和数据) 2.多特征输入…

mianshiyan资料汇总(整理后)

前端优化方式 css3特性, [html5的特性](https://blog.csdn.net/qq_53472371/article/details/121881111) flex, 移动端开发, 各种居中 反爬虫,加密,前端攻击,跨域 cookie session jwt相关 前端优化方式 Turbopack WebComponentes6的新特性 B…

TRT4-trt-integrate -self-driving道路分析

1#先看ONNX 查看大概结构 首先我们来看一下这个onnx: 可以看到这是一个全卷积网络,因为输入输出的宽高都一样 后来的这里是加入了softmax,所以获得的是概率值,所以最终的输出output是1*512*596*4的概率值。仅仅是不确定四个通道代…

关于生产企业原材料的订购与运输问题

之前学校培训时候练习过的数学建模练习题,发出来分享一下~

《C++ Primer》第3章 字符串、向量和数组(一)

参考资料: 《C Primer》第5版《C Primer 习题集》第5版 3.1 命名空间的using声明(P74) 作用域操作符 :: 表示从左侧名字所示的作用域中寻找右侧名字,因此 std::cin 的意思就是使用命名空间 std 中的 cin 。 为了方便并安全地使…

JAVA -华为真题-分奖金

需求: 公司老板做了一笔大生意,想要给每位员工分配一些奖金,想通过游戏的方式来决定每个人分多少钱。按照员工的工号顺序,每个人随机抽取一个数字。按照工号的顺序往后排列,遇到第一个数字比自己数字大的,那么&#xf…

【IoT】生产制造:锅仔片上机做 SMT 加工吗?

目录 简介 锅仔片 简介 由于最近做产品用到了锅仔按键,由于单品用量过多,但是成品锅仔按键价格又太高,不适合量产。 这个时候就想到了锅仔片,问题又来了,锅仔片是否可以上机呢? 答案是肯定的。 锅仔片…

Pytest系列-使用自定义标记mark

简介 pytest 可以支持自定义标记,自定义标记可以把一个 web 项目划分为多个模块,然后指定模块名称执行 Pytest 里面自定义标记 用法:将pytest.mark.标记名称 放到测试函数或者类上面 使用: 执行时加上 -m 标记名 进行用例筛选…

K8S:Yaml文件详解及编写示例

文章目录 一.Yaml文件详解1.Yaml文件格式2.YAML 语法格式 二.Yaml文件编写及相关概念1.查看 api 资源版本标签2.yaml编写案例(1)相关标签介绍(2)Deployment类型编写nginx服务(3)k8s集群中的port介绍&#x…

Revit SDK 介绍:TraverseSystem 用广度遍历的方式遍历MEP系统

前言 这个例子介绍了用广度遍历的方式遍历MEP系统。 内容 打开 Revit 自带例子,选择红框中的某条风管,不要选择机械,图中选中只是为了和遍历结果对应: 红色区域到风管机的遍历结果: 核心逻辑 遍历逻辑主函数&am…

Visual Studio将C#项目编译成EXE可执行程序

经常看文章时会收获不少实用工具,有的在github上是编译好的,有的则是未编译的项目文件。所以经常会使用Visual Studio编译项目文件成exe可执行程序,以下为编译的流程。 第一步,从github上下载项目文件,举个例子&#…

解决`SQLyog Trial`试用到期的问题(提供一个脚本解决方案)

文章目录 一、要删除的注册表项二、写了个脚本干这个事儿三、最后 本文将总结SQLyog Trial试用到期的问题。 其实解决起来很简单,就是将SQLyog相关注册表删掉即可 一、要删除的注册表项 WinR打开运行,输入regedit回车,打开注册表 在HKEY_C…

基于Elasticsearch的多文档检索 比如 商品(goods)、案例(cases)

概述 Elasticsearch多文档聚合检索 详细 记得把这几点描述好咯:需求(要做什么) 代码实现过程 项目文件结构截图 演示效果 应用场景 我们需要在五种不同的文档中检索数据。 比如 商品(goods)、案例(ca…

汇编程序设计MOOC精选题

一、微型计算机基础 1.微型计算机各部件之间是用(系统总线)连接起来的 2.冯诺依曼结构确定计算机的五个基本部件:i/o,存储器、控制器和(运算器) 微处理器通过(数据)总线 向存储器和…

java程序处理三张表要进行怎么样的操作

首先第一步梳理思路,id没有存在说明是新添加的,如果id存在那就是对现有文章的修改。 /*** 发布文章或保存草稿** param dto* return*/Overridepublic ResponseResult submitNews(WmNewsDto dto) {//0.条件判断if(dto null||dto.getContent() null){ret…

CKA 真题练习(十六)备份还原etcd

题目: 首先,为运行在 https://11.0.1.111:2379 上的现有 etcd 实例创建快照并将快照保存到 /var/lib/backup/etcd-snapshot.db (注意,真实考试中,这里写的是 https://127.0.0.1:2379) 为给定实例创建快照预计能在几秒钟内完成。 …

Java 时间范围

前端使用Element-ui 时间范围组件 后端注意在Vo里面时间设置String类型不要设置Date类型 XMl组件字段映射成功性

【基于Cocos Creator实现的赛车游戏】9.实现汽车节点的控制逻辑

转载知识星球 | 深度连接铁杆粉丝,运营高品质社群,知识变现的工具 项目地址:赛车小游戏-基于Cocos Creator 3.5版本实现: 课程的源码,基于Cocos Creator 3.5版本实现 在上一节的课程中,您已经实现了通过触控给刚体施…

LIO-SAM论文与代码总结

看了一些注释版的代码和博客,很多都很详细,但是有的看起来比较绕,或者对一些名词和定义的解释有歧义,不一定就说错了,但是仍然不方便自己理解,所以自己梳理一下,顺便记录。 目录 原文附带架构…

js 小数相乘后,精度缺失问题,记录四舍五入,向下取整

在做项目的时候,有一个计算金额的,结果发现计算的金额总是缺失0.01,发现相乘的时候,会失去精度,如图所示。被这整的吐血,由于计算逻辑由前端计算,所以传值后端总出错(尽量后端计算)。 还发现to…