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…

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

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

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

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

安装tesseract

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

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

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

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

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

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

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

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

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

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

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

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

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

中级职称通过率是否高?

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

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

文章目录 一、异常处理概述二、方式1:捕获异常(try-catch-finally)(1)抓抛模型(2)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…

Java重写ArrayList方法

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

82. 删除排序链表中的重复元素 II

给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head [1,2,3,3,4,4,5] 输出:[1,2,5]示例 2: 输入:head [1,1,1,2…

代码随想录算法训练营第五天|哈希表理论基础,242.有效的字母异位词,349. 两个数组的交集,202. 快乐数,1. 两数之和

系列文章目录 代码随想录算法训练营第一天|数组理论基础,704. 二分查找,27. 移除元素 代码随想录算法训练营第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II 代码随想录算法训练营第三天|链表理论基础&#xff…

【Elsevier】中科院分区升至1区TOP,录用率50%, 代表作神刊!

发表说 截图来源:LetPub 01 期刊概况 Computers & Industrial Engineering 【出版社】Elsevier 【ISSN】0360-8352 【检索情况】SCI&EI双检 【WOS收录年份】1976年 【出刊频率】月刊,最新一期Volume 188 ,In progress (February…

arcgis javascript api4.x以basetilelayer方式加载arcgis发布的栅格切片服务

需求: 以arcgis js api的basetilelayer加载arcgis发布的栅格切片服务 效果图: 其中和tileinfo和lods,这样获取: https://map.geoq.cn/arcgis/rest/services/ChinaOnlineCommunity/MapServer/?fpjson urltemplate: …

TortoiseGit 2.15.0.0 安装与配置(图文详细教程)

TortoiseGit的安装与配置 TortoiseGit是Tortoise为Git提供的版本可视化工具,简化了记忆Git命令行的过程,将命令行可视化。 确保自己电脑中已经下载好了git 官网下载TortoiseGit Download – TortoiseGit – Windows Shell Interface to Git 选择64-bi…

电商平台api接口对接须知

随着互联网的发展和普及,电商平台已成为人们日常生活中不可或缺的一部分。而为了保证电商平台的正常运行,平台与开发者之间需要进行数据交互,这便涉及到了电商平台API接口对接的问题。本文将详细介绍电商平台API接口对接的须知事项。 一、了…