HTTPS是怎么加密数据的?

news2024/10/2 10:29:24

HTTPS是怎么加密数据的?对安全或密码学基础有了解的同学,应该知道常见的加密手段。一般来说,加密分为对称加密、非对称加密(也叫公开密钥加密)

对称加密

对称加密的意思就是,加密数据用的密钥,跟解密数据用的密钥是一样的。

对称加密的优点在于加密、解密效率通常比较高。缺点在于,数据发送方、数据接收方需要协商、共享同一把密钥,并确保密钥不泄露给其他人。此外,对于多个有数据交换需求的个体,两两之间需要分配并维护一把密钥,这个带来的成本基本是不可接受的。

非对称加密

非对称加密的意思就是,加密数据用的密钥(公钥),跟解密数据用的密钥(私钥)是不一样的。

什么叫做公钥呢?其实就是字面上的意思——公开的密钥,谁都可以查到。因此非对称加密也叫做公开密钥加密。相对应的,私钥就是非公开的密钥,一般是由网站的管理员持有。

公钥、私钥两个有什么联系呢?简单的说就是,通过公钥加密的数据,只能通过私钥解开。通过私钥加密的数据,只能通过公钥解开。

很多同学都知道用私钥能解开公钥加密的数据,但忽略了一点,私钥加密的数据,同样可以用公钥解密出来。而这点对于理解HTTPS的整套加密、授权体系非常关键。

那么,HTTPS的整个通信步骤有哪些呢?

1.请求由客户端发起。客户端发送Client Hello报文开始SSL通信。报文中包含了SSL的版本,加密组件等信息。

2.服务器收到请求会以Server Hello报文作为应答,报文内容和请求时差不多(经过筛选的)。

3.紧接着服务器再发送一条Certificate报文,报文中包含了证书。

4.服务器活还没干完,还需要发送Server Hello Done报文给客户端,表示SSL握手结束。

5.然后该客户端会回应一个Client Key Exchange报文,报文包含用步骤3中公钥加密后的随机密码串。

6.接着客户端继续发送Cipher Spec报文,提示服务器,用步骤5的随机密码串作为密钥加密之后的通信。

7.然后客户端发送Finished报文,表示这次协商结束,是否成功还得看服务器能不能解密该报文。

8.服务器没问题,发送Change Cipher Spec报文。

9.服务器发送Finished。

10.SSL连接完成,接下来使用HTTP进行通信。

11.最后由客户端断开连接。发送close_notify报文。

我们在选购高防产品时不仅要看重厂商的权威性,也要根据实际情况来决定,当预算不够时,肯定也只能委曲求全的,一般来说小编会在预算足够时无脑选择大厂品牌,他们的业界在业界的权威性是公认的,www.aliyun.com阿里云cloud.tencent.com腾讯云这些都可以,当然还有的像www.cdn.cafe咖啡云这样受中小企业青睐的小厂也是很有性价比的。

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

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

相关文章

儿童反复感染,是体质差还是免疫缺陷?

原发性免疫缺陷病(PIDs)它是一组由遗传因素或先天性免疫系统发育不良引起的免疫系统功能障碍综合征,可涉及固有免疫或适应性免疫。在中国,PID的中位发病率为6个月,男孩的发病率通常高于女孩。▼分类目前,国…

LearnOpenGL-光照-2.基础光照

本人刚学OpenGL不久且自学,文中定有代码、术语等错误,欢迎指正 我写的项目地址:https://github.com/liujianjie/LearnOpenGLProject 文章目录基础光照环境光照漫反射光照法向量计算漫反射光照最后一件事镜面光照基础光照 简介 现实世界的光照…

JavaEE初阶---初始进程

系统分配资源的最小单元--进程啥是进程看看进程操作系统如何管理进程PCB中的一些属性pid(进程id)内存指针文件描述符表进程调度并行和并发:进程调度的特性状态:优先级:记账信息:上下文:虚拟地址空间进程间交互我们日常使用计算机,大致可以抽象成如下形式:自上向下依次是 各种软…

易优cms switch 条件判断标签使用方法

【基础用法】 标签:switch 描述:简单条件判断,比if判断标签少些不等于相同功能,视个人习惯而用。 用法: {eyou:switch name$eyou.field.has_children} {eyou:case value1}当前栏目列表的栏目ID有1个下级栏目{/eyo…

跨境电商卖家如何应对拒付、盗卡

跨境电商主要是通过电子商务平台进行交易,在平台上完成支付结算,并通过国际物流将商品送达买方,从而实现跨国零售交易。与传统贸易相比,跨境电商存在交易链条更短、回款周期更快、数据及时透明等优势。商务部数据显示,…

sumifs的交叉 表的例子

比如这样,那么冰箱绿山店的栏位中,SUMIFS($D$3:$D$10,$B$3:$B$10,$F3,$C$3:$C$10,G$2)就是把求和范围,条件1设置为固定列的复合引用,条件2设置为固定行的复合引用即可。

LeetCode 1653. Minimum Deletions to Make String Balanced【字符串,动态规划,枚举】中等

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…

shell基本知识

为什么学习和使用Shell编程 什么是Shell shell的起源 shell的功能 shell的分类 如何查看当前系统支持的shell? 如何查看当前系统默认shell? 驼峰语句 shell脚本的基本元素 shell脚本编写规范 shell脚本的执行方式 shell脚本的退出状态 &#xf…

数位dp-- 数字游戏

题目 思路 也是一道比较典型的数位dp的问题,关键的思想跟我上一篇博客很像, 首先把区间值变成[1,Y]-[1,X-1]的值,然后单独计算得到结果。 总的来说就是把这个数的每一位都单独拿出来,然后根据选0-an-1和选**an**两种方案单独计算&…

LeetCode 热题 C++ 538. 把二叉搜索树转换为累加树 543. 二叉树的直径 560. 和为 K 的子数组

538. 把二叉搜索树转换为累加树 给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。 提醒一下,二…

Java基础算法题

目录 练习一 : 优化代码 扩展 : CRTL Alt M 自动抽取方法 练习二: 方法1: 方法2: 方法3: Math : 顾名思义,Math类就是用来进行数学计算的,它提供了大量的静态方法来便于我们实现数学计算: 练习三 : 练习四 : 练习五: 练习…

【GO】K8s 管理系统项目34[Docker方式–应用部署]

K8s 管理系统项目[Docker方式–应用部署] 1. 数据库 1.1 创建数据库目录 mkdir -p /data/mysql5.7/1.2 创建容器 docker run --name mysql -itd -h mysql-server -e MYSQL_ROOT_PASSWORDroot -v /data/mysql5.7:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD123456 …

layui框架实战案例(19):layui-table模块表格综合应用(筛选查询、导入导出、群发短信、一键审核、照片展示、隐私加密)

系列文章目录 layui动态表格翻页和搜索的代码分析layui框架实战案例(3):layui上传错误请求上传接口出现异常解决方案layui框架实战案例(9):layPage 静态数据分页组件layui框架实战案例(10):短信验证码60秒倒计时layui框架实战案例(11)&#…

《实践论》笔记及当下反思(二)

目录 笔记 1、马克思主义所说的绝对真理是什么? 2、客观现实世界的变化运动永远没有完结,人们在实践中对于真理的认识也就永远没有完结 3、改造客观世界,也改造自己的主观世界-——改造自己的认识能力 4、实践、认识、再实践、再认识&…

ARP报文内容详细分析

ARP报文格式如图: 字段1:ARP请求的目的以太网地址,全1时,代表广播地址。 字段2:发送ARP请求的以太网地址。 字段3:以太网帧类型表示后面的数据类型,ARP请求和ARP应答此字段为:0x0806…

SourceTree 重置提交、合并、撤销、回滚

SourceTree重置当前分支到此次提交使用场景:已提交未推送的修改撤销、想把某一次的错误修改全部撤销当前发布代码有bug需要切到上次提交发布版本Git中的HEAD解释# 使用最新一次提交重制暂存区git reset HEAD -- filename# 使用最新一次提交重制暂存区和工作区git re…

SpringBoot——统一功能处理

处理登陆拦截 上一片博客中讲到SpringAOP可以对页面进行拦截,我们可以用SpringAOP实现对登陆的拦截 但是由于拦截需要HttpSession对象,并且之后还需要页面重定向,因此在实际应用中,并不用SpringAOP进行登陆拦截,而是…

HBase---idea操作Hbase数据库并且映射到Hive

idea操作Hbase数据库并且映射到Hive 文章目录idea操作Hbase数据库并且映射到Hiveidea操作Hbase数据库环境准备启动服务创建Maven工程在测试类中编写初始化方法在测试类中编写关闭方法在测试类中编写创建命名空间方法在测试类中编写创建表方法在测试类中编写查看表结构方法在测试…

tmall.product.match.schema.get( 获取匹配产品规则 )

¥免费必须用户授权 ISV发布商品前,需要先查找到产品ID,这个接口返回查找产品规则入参规则 公共参数 请求地址: HTTP地址 http://gw.api.taobao.com/router/rest 公共请求参数: 公共响应参数: 点击获取key和secret 请求示例 TaobaoClient …

ORACLE SQL格式化小数点

ORACLE SQL格式化小数点 select CONCAT(TO_CHAR(0.00100,‘990.999’),‘%’) as a0 , CONCAT(TO_CHAR(1100,‘990.999’),‘%’) as a1 , CONCAT(TO_CHAR(0.236100,‘990.999’),‘%’) as a2 , CONCAT(TO_CHAR(0.0200100,‘990.999’),‘%’) as a3 , CONCAT(TO_CHAR(1.0310…