9.1、加密技术原理详解

目录

一、加解密定义

二、加密技术分类

2.1、对称加密

2.2、非对称加密

三、对称加密算法

四、非对称加密算法   

五、对称加密和非对称加密比较

六、对称加密和非对称加密结合


一、加解密定义

        数据加密:对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”。

        数据解密:对密文使用相应的算法和密钥进行解密处理,将密文解密成明文的过程。

二、加密技术分类

2.1、对称加密

        对称加密又称为共享密钥加密,它使用同一个密钥对数据进行加密和解密。即发送和接收数据的双方必须使用相同的密钥。

        经对称加密算法加密后的密文被非法用户窃取后无法读取其中的信息,可实现数据的机密性。

        一般用在对大量数据进行加解密的场景,如IPSec VPN中对业务数据加解密。

2.2、非对称加密

        非对称加密使用两个不同的密钥,公开密钥(简称公钥)和私有密钥(简称私钥)。公钥和私钥是一对,如果用公钥对数据加密,只有用对应的私钥才能解密

        非对称加密中一般用私钥用来保护数据。公钥可在网络中公开传递,解决了密钥交互不安全的问题

        一般用来对密钥或身份信息等敏感信息加密,如数字签名

三、对称加密算法

        对称加密算法的加密和解密都是用同一个密钥。

        如图所示,客户端与服务器进行数据交互,采用对称加密算法。客户端与服务器事先协商好对称密钥A,具体加解密过程如下:

        常见的对称加解密算法

算法描述
DES

Data Encryption Standard,即数据加密标准。DES算法是以64位为块,在加密端把数据分成多块,对每块数据进行加密,生成密文;在解密端则把64位密文转换为64位明文。各个块之间建立一定的联系,DES使用16个迭代块来完成迭代。其中,加密和解密使用56位密钥

3DES

Triple DES,即三重数据加密标准

AES

Advanced Encryption Standard,即高级加密标准。AES支持多种变长密钥,如128位、192位、256位以及384位等

SM1

SM1加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用

SM4

SM4无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位

其他

IDEA等

四、非对称加密算法   

        非对称加密算法需要一组密钥对,分别是公钥和私钥,这两个密钥是成对出现的。

        非对称加密解决了对称密钥的发布和管理问题,一个用于加密信息,另一个则用于解密信息,通信双方无需事先交换密钥就可进行保密通信。通常以公钥作为加密密钥,以私钥作为解密密钥。

        如图所示,客户端与服务器进行数据交互,采用非对称加密算法,具体加解密过程如下:

        常见的非对称加解密算法

算法描述
DH

DH(Diffie-Hellman)算法在IPSec中尤其重要,用于解决秘钥交换问题。因为不可能长期使用同一个秘钥,为了保证足够的安全, 所以需要动态的在两端获得秘钥

RSA

名称由RSA三个提出者(Ron Rivest、Adi Shamir和Leonard Adleman)的姓氏首字母组合而成,这种算法的可靠性由对极大整数做因数分解的难度决定。RSA既能实现数字签名,又能实现加解密

DSA

DSA(Digital Signature Algorithm)即数字签名算法,又称DSS(Digital Signature Standard,数字签名标准)。DSA仅能实现数字签名,不能用于加解密

五、对称加密和非对称加密比较

加密算法优点        缺点        使用场景
对称加密

效率高,算法简单,系统开销小,适合加密大量数据

实现困难,扩展性差对大量数据进行加解密
非对称加密

无法从一个密钥推导出另一个密钥;公钥加密的信息只能用私钥进行解密

算法非常复杂,导致加密大量数据所用的时间较长,而且加密后的报文较长,不利于网络传输

对密钥或身份信息等敏感信息加密

六、对称加密和非对称加密结合

        采用非对称加密与对称加密结合的方式,可以减少非对称加密的次数,HTTPS就是采用了这种方案。首先通过非对称加密交换对称加密密钥,然后使用对称加密算法加密业务数据,具体交互流程如下:

        

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

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

相关文章

MK-米客方德TF卡和SD卡的区别

TF卡和SD卡的区别 TF卡也叫MicroSD卡,以MK-米客方德的TF卡和SD卡为例,TF卡和SD卡的区别如下: 1、物理尺寸: TF卡:TF卡是一种较小尺寸的存储卡,也被称为MicroSD卡。其尺寸为15mm 11mm 1mm。 SD卡&#x…

微信小程序canvas画布转图片转pdf文件

关键步骤介绍 步骤一:将canvas页面保存为图片 for(var a=0;a<this.data.page_canvas.length;++a){ var t_page_img = await this.canvas_to_image(this.data.page_canvas[a]) t_img.push(t_page_img) } this.data.page_canvas是保存的canvas界面,this.c…

odoo16 销售订单中数量与单价,手机录入不方便

odoo16 销售订单中数量与单价&#xff0c;手机录入不方便 在销售订单中&#xff0c;服装批发&#xff0c;数量与单价均是整数&#xff0c;系统默认的为保留两位小数的float类型&#xff0c;输入起来很不方便&#xff0c;如何修改 电脑版&#xff0c;输入时&#xff0c;自动选取…

国外客户工厂还是贸易商,该怎么回答

在和客户沟通的时候&#xff0c;我们最常遇到也最头疼的问题就是客户询问我们是工厂还是贸易商的时候&#xff0c;我们该怎么回答呢&#xff1f;万一回答错误了客户不搭理我们了应该怎么办呢&#xff1f; 先来看看我们常用的回答方式&#xff0c;是不是有你常用的&#xff1f;…

安装tesseract

Tesseract OCR是一款由HP实验室开发由Google维护的开源OCR引擎&#xff0c;在字符识别领域发挥着举足轻重的作用。除了使用软件自带的中英文识别库&#xff0c;我们可以使用Tesseract OCR训练属于自己的字库。 下载地址&#xff1a;https://digi.bib.uni-mannheim.de/tesseract…

信息之板:数据看板如何点亮我们的生活

数据看板&#xff0c;作为数据可视化的一种应用形式&#xff0c;已经逐渐渗透到我们的日常生活中&#xff0c;发挥着越来越重要的作用。这种集中呈现和分析信息的工具&#xff0c;不仅在企业管理中大放异彩&#xff0c;更在我们的日常生活中展现出了强大的价值。下面我就以可视…

智慧公厕:利用物联网、云计算和人工智能实现智能化管理与控制

智慧公厕是指利用传感感知、物联网、互联网、大数据、云计算、自动化控制等先进技术&#xff0c;实现对公厕的智能化管理与控制。通过以上高精尖的信息技术手段&#xff0c;可以实时监测厕所内人体活动状态、人体存在状态、空气质量情况、环境变化情况、设施设备运行状态等信息…

linux c多个线程分段读取一个文件

在 Linux C 中&#xff0c;你可以使用 pthread 库来创建多线程&#xff0c;并使用文件 I/O 来对文件进行读取和写入操作。以下是一个简单的示例代码&#xff0c;演示如何在 C 语言中开启 8 个线程同时读取一个文件并将其分成 8 段保存到 8 个临时文件中&#xff1a; #include …

【科普】API接口——线上销售的秘密武器

什么是API&#xff1f; API全称为Application Programming Interface&#xff0c;中文是应用程序编程接口。它其实是一些预先定义的函数&#xff0c;目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力&#xff0c;而又无需访问源码&#xff0c;或理解内部工…

为什么我说小公司也一定要用K8S

Kubernetes是谷歌以Borg为前身&#xff0c;基于谷歌15年生产环境经验开源的一个项目。Kubernetes致力于提供跨主机集群的自动部署、扩展、高可用以及运行应用程序容器的平台&#xff0c;其遵循主从式架构设计&#xff0c;其组件可以分为工作节点&#xff08;Node&#xff09;组…

第十三讲_css 伸缩盒模型flex

css 伸缩盒模型flex 1. 伸缩盒模型介绍2. 伸缩盒模型的主轴方向3. 伸缩盒模型的主轴换行4. 主轴上的对齐方式5. 侧轴上对齐方式5.1 一行的侧轴上对齐方式5.2 多行的侧轴上对齐方式 6. 伸缩项目的伸缩性6.1 伸缩项目在主轴上的基准长度6.2 伸缩项目的放大6.3 伸缩项目的缩小 7. …

网络工程师:计算机基础知识面试题(二)

53.在可变分区管理中&#xff0c;需要哪些硬件机制&#xff1f; 在可变分区管理&#xff08;Variable Partitioning&#xff09;中&#xff0c;需要以下硬件机制&#xff1a; 1. 内存管理单元&#xff08;Memory Management Unit&#xff0c;MMU&#xff09;&#xff1a; MMU…

2024年3d云渲染怎么选?怎么挑好的云渲染农场

3D渲染属于最消耗电脑计算算力过程&#xff0c;并且渲染时间相对于效果图渲染比较久&#xff0c;不少的CG创作者都是通过网络上的“云渲染”平台来完成&#xff0c;提升效率的同时&#xff0c;还可降低渲染的成本。那么好的3D云渲染平台怎么选择呢?在选择时关注哪几个要点呢?…

多角度展文明风采!成都市第二届公益短视频大赛落幕

近日&#xff0c;“金芙蓉文明让生活更美好”成都市第二届公益短视频大赛揭晓获奖名单&#xff0c;170余部作品脱颖而出。此次大赛共收到700余部参赛作品&#xff0c;以不同手法、从不同角度描绘文明成都。 用短视频弘扬社会主义核心价值观 以真实故事为原型引发更多人共鸣 …

中级职称通过率是否高?

中级职称的通过率因地区和行业而异 首先&#xff0c;中级职称的通过率因不同的地区和行业而异。在一些行业和地区&#xff0c;中级职称的通过率可能较高&#xff0c;例如一些技术领域的职称&#xff0c;而在其他行业和地区&#xff0c;通过率可能较低。一般来说&#xff0c;技术…

Vue 3 中的响应式原理

Vue 3是Vue.js的最新版本&#xff0c;它引入了新的Composition API&#xff0c;并带来了一些重要的改进和优化。其中&#xff0c;响应式原理是Vue框架的核心机制之一&#xff0c;它使得当数据发生变化时&#xff0c;视图能够自动更新。在Vue 3中&#xff0c;响应式原理的实现细…

Java异常处理--异常处理的方式1:try-catch-finally

文章目录 一、异常处理概述二、方式1&#xff1a;捕获异常&#xff08;try-catch-finally&#xff09;&#xff08;1&#xff09;抓抛模型&#xff08;2&#xff09;try-catch-finally基本格式1、基本语法2、整体执行过程3、try和catch3.1 try3.2 catch (Exceptiontype e) &…

Linux系统——管道命令tr、cut、sort、uniq命令

一、tr 1.替换 表示将1替换为a 2.删除 tr -d 3.压缩 tr -t 二、cut -d 指定分隔符 -f 指定需要的列 1.提取所需要的列 2.延伸——磁盘剩余空间不足发起警告 可以制定一个计划任务 每30分钟提醒自己磁盘剩余空间情况 三、sort -t 指定分隔符 -k 指定列排序 四、uniq…

前端笔试题(一)

1.vue如何实现数据的双向绑定 利用v-model来实现双向数据绑定 通过Object.defineProperty()来劫持各个属性的setter&#xff0c;getter&#xff0c;在数据变动时发布消息给订阅者&#xff0c;触发相应的监听回调来渲染视图 2.使用vue渲染大量数据时&#xff0c;如何进行优化…

Java重写ArrayList方法

前言&#xff1a;ArrayList中有很多方法&#xff0c;我们只有深知这些方法是怎么实现的才能更好的使用&#xff0c;不用死记硬背 我们来一一实现&#xff08;重写&#xff09; 前提准备&#xff1a;我们需要先创建一个类&#xff0c;类中写ArrayList的内部结构组成 public cl…