加密算法发展简介

news2024/11/20 20:38:56

1:对称加密算法

客户端加密数据和服务端解密数据,使用的相同的秘钥:
固定秘钥:双方约定好一个固定秘钥;
随机秘钥:双方约定每次建立连接的时候,某固定BYTE为秘钥;

缺点:秘钥固定,容易被破解;

客户端 服务端 发送加密数据 1 数据解密 2 返回响应 3 数据解密 4 客户端 服务端

2:非对称秘钥算法

非对称加密有两个秘钥,一个公开的叫公钥,一个私藏的叫私钥;公钥加密后只能用私钥解开,反过来也一样;
缺点:1:公钥是公开的,一般不会用私钥加密,公钥解密;所以为了保证数据通信,客户端还需要把客户端公钥,发送给服务端;
2:每次需要使用秘钥对进行加解密,比较浪费时间;

客户端 服务端 公钥,私钥 建立连接请求 1 返回连接请求 2 发送公钥数据 3 发送使用公钥加密的数据 4 使用私钥进行解密 5 客户端 服务端

3:非对称与对称加密结合

先建立连接,来传输秘钥对的公钥和私钥;然后使用秘钥对来传输 对称加密的秘钥,后续传输数据再使用 对称加密算法;
缺点:对称加密的秘钥是一个随机数,存在被预测出来的可能性,尽管可能性非常低;

客户端 服务端 公钥,私钥 建立连接请求 1 返回连接请求 2 发送公钥数据 3 发送使用公钥加密的 对称秘钥 4 使用私钥解密 对称秘钥 5 使用对称加密算法传输数据 6 使用对称解密算法 数据解密 7 客户端 服务端

4:秘钥计算

客户端和服务端各自生成一个随机数发给对方,客户端再额外加密传输一个随机数给服务器,然后双方都用这三个随机数生产真正的秘钥;并且在正式传输数据之前,要先进行秘钥交互,确认双方计算出来的秘钥是一样的;

客户端 服务端 公钥,私钥 建立连接请求 1 返回连接请求 2 发送随机数1 3 发送随机数2 4 发送公钥 5 发送使用公钥加密的 随机数3 6 利用三个随机数,计算秘钥 7 利用三个随机数,计算秘钥 8 双方交换确认计算的秘钥一致 9 使用对称加密算法传输数据 10 使用对称解密算法 数据解密 11 客户端 服务端

缺点:会存在中间人攻击漏洞,即有一个中间人在客户端和服务端转发了所有的数据,但是客户端和服务端并不知情,导致数据泄漏;

客户端 中间人 服务端 发送数据 1 转发数据 2 发送数据 3 转发数据 4 客户端 中间人 服务端

5:数字证书

客户端和服务端利用公证人的身份进行非对称加密,利用hash值,进行数字签名加密验证;除了中间人偷到了公证人的私钥,否则中间人是没办法伪造 数字证书的;
利用数字证书加密的连接,都从http变为了https;

客户端 公证人 服务端 准备一队非对称加密的秘钥,,并公开公钥 1 登记自己的公钥,名称等信息 2 根据服务端信息,计算hash值, 用私钥把hash值进行加密,机密后的结构就是数字签名 3 返回数字证书,即把 登记信息和数字签名封装为一个新文件; 4 建立https连接请求 5 返回数字证书 6 把证书里面的信息也计算一遍hash值1; 利用公证人的公钥,将证书里面的数字签名进行解密,得到公证人计算的hash值2; 将hash值1和hash值2进行对比,如果相等则验证通过; 7 客户端 公证人 服务端

6:信任链

当客户端和服务端越来越多的时候,一个 公证人就忙不过来;就通过层层分包,设立多级公证人信息;

根证书1
二级证书1
二级证书2
三级证书1
三级证书2
三级证书3
三级证书4

以后在验证网站服务器证书时,就要先去验证证书的签发者,然后一层层向上验证,查看最终的签发者是否在操作系统安装的 根证书列表中;

一级公证人是安装的根证书,预先安装在我们的操作系统中;可通过‘“控制面板”->“证书” 进行查看
在这里插入图片描述

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

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

相关文章

【MySQL】 MySQL数据库基础

文章目录 🐱‍👓数据库的操作📌显示当前的数据库📌创建数据库🎈语法:🎈语法说明🎈示例: 🌴使用数据库🎋删除数据库🐱‍🏍语…

sql注入Less-2

后台sql s q l " S E L E C T ∗ F R O M u s e r s W H E R E i d sql "SELECT * FROM users WHERE id sql"SELECT∗FROMusersWHEREidid LIMIT 0,1"; 注入语句 http://192.168.200.26/Less-3/?id-1? union select 1,2,database();– 使用id-1 便可…

JavaScript中的Hoisting机制

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ JavaScript 中的 Hoisting 机制⭐ 变量提升⭐ 函数提升⭐ 注意事项⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xf…

LVS+Keepalived 高可用集群

LVSKeepalived 高可用集群 1、Keepalived工具介绍2、vrrp协议(虚拟路由冗余协议)2.1vrrrp是什么?2.2vrrp工作过程2.3Keeplived、VRRP及其工作原理2.4Keepalived体系主要模块 3、搭建LVSKeepalived 高可用集群 1、Keepalived工具介绍 支持故障…

MFC-GetSystemFirmwareTable获取系统固件表

获取ACPI表格 void CgetSystemFirmwareTableDlg::OnBnClickedButton1() {//UINT bufferSize GetSystemFirmwareTable(ACPI, 0, NULL, 0);//获取系统固件表/*【参数3和参数4为NULL和0,只是为了返回真实大小】这个函数可以用来获得系统中的各种固件信息,如…

MySQL中SQL语句执行顺序分析

1、 MySQL手写执行顺序 2、 MySQL机读执行顺序 随着Mysql版本的更新换代,其优化器也在不断的升级,优化器会分析不同执行顺序产生的性能消耗不同而动态调整执行顺序。下面是经常出现的查询顺序:

SpringBoot使用Mybatis查询数据

1.创建工程 说明:创建springboot工程,数据库表book,实体类Book 1.1创建项目 1.2 勾选相应的配置 1.3数据表book 说明:创建了book表,添加了id,type,name,description字段。 1.4创建Book实体类 说明:生成…

微服务保护-流控效果

个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:三人行,必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》,SpringCloud…

【AI】推理系统和推理引擎的整体架构

本文主要是对 B 站 Up 主 ZOMI酱 推理系统系列视频 的理解,可以认为是重点笔记。 一、深度学习模型的全生命周期 相信很多人和我一样,刚看到深度学习模型中的推理系统或推理引擎时是一头雾水,因为学习 DL 时通常关注于模型的设计和训练。下图…

MFC - 一文带你从小白到项目应用(全套1)

文章篇幅可能会比较长,从入门到基本能上项目的全部内容。建议观看的过程中,用电脑跟着学习案例。 持续输出优质文章是作者的追求,因为热爱,所以热爱。 最近看动漫被一句鸡汤感动到了,也送给各位朋友: 只要有…

微服务保护-热点参数限流

个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:三人行,必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》,SpringCloud…

Dubbo3基础使用

1、Dubbo概述 现在SpringCloud Alibaba比较火,用的比较多是吧,那dubbo是不是过时的呢? 并不是的,以前有人把Dubbo和SpringCloud进行对比,其实两者是不同维度的,不能对比,dubbo就是一个rpc框架&…

Adobe Bridge 2024:解锁创意力的数字媒体利器

在当今数字化的时代,创意工作者们需要处理和管理大量的数字媒体资源,如照片、视频、音频等。为了提高工作效率和创作质量,他们需要一个功能强大、易于使用的工具来组织、浏览和共享这些媒体文件。幸运的是,Adobe Bridge 2024 正好…

Linux文件类型与根目录结构

目录 一、文件类型 二、目录结构 1、FHS Linux目录结构的特点 2、路径以及工作目录 1)路径 2)工作目录 3)存放路径 一、文件类型 主目录下部分文件如下: [rootlocalhost ~]# cd ~ [rootlocalhost ~]# ll total 52 -rw-r--…

烟雾报警系统设计与实现

摘要 随着“信息时代”的到来,作为获取信息的手段——传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解…

不可思议,无密码登录所有网站!

hello,我是小索奇 居然可以免密码登录你的网站?听起来是不是很恐怖 确实如此,Cookie可以用于保持用户在网站上的登录状态,从而实现 免密码登录,学会了不要做坏事哈 这里仅做免密码登录的实操,就不介绍Cooki…

如何从第一性原则的原理分解数学问题

如何从第一性原则的原理分解数学问题 摘要:牛津大学入学考试题目展示了所有优秀数学家都使用的系统的第一原则推理,而GPT4仍然在这方面有困难 作者:Keith McNulty 我们中的许多人都熟悉直角三角形的边的规则。根据毕达哥拉斯定理,…

动态的中秋爱心演示送女友用python生成爱心软件文末附c++语言写法

用python生成爱心软件 用python生成动态爱心软件 目录 用python生成爱心软件 完整代码 代码解释 逐句解释 效果展示: 如何打包 c写法 完整代码 import turtledef draw_heart():love turtle.Turtle()love.getscreen().bgcolor("black")love.…

python使用execjs利用jsdom来执行含有document的js代码方案(上)

先说一下环境:win7 64位,python3.8.10。 python使用execjs执行含有document的js代码时,会出现报错: execjs._exceptions.ProgramError: TypeError: document 未定义 原因是纯js代码中是不包含浏览器里对象的(如document、windo…

结构体变量的初始化和引用

任务描述 本关任务:从键盘输入两个学生的学号,姓名和成绩(整数),分别存入结构体中,输出成绩较高的学生的学号,姓名和成绩。 相关知识 结构体类型用于描述由多个不同数据类型的数据构成的复合…