0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

举例几种常见的加密算法

电子工程师 来源:搜狗测试 作者:kdj 2021-04-28 13:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天主要总结下常用的对称性加密算法DES和AES,非对称性加密算法RSA。

01

DES加密算法

1.DES含义

DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。

DES是对称性加密里常见的一种,是一种使用秘钥加密的块算法。秘钥长度是64位(bit), 超过位数秘钥被忽略。所谓对称性加密,加密和解密秘钥相同。对称性加密一般会按照固定长度,把待加密字符串分成块。不足一整块或者刚好最后有特殊填充字符。

常见的填充模式有:‘pkcs5’、‘pkcs7’、‘iso10126’、‘ansix923’、‘zero’ 类型,包括DES-ECB、DES-CBC、DES-CTR、DES-OFB、DES-CFB。

2. DES算法原理

DES算法的入口参数:Key、Data、Mode。 Key为8个字节共64位,是DES算法的工作秘钥;

Data也为8个字节64位,是要被加密或解密的数据; Mode为DES的工作方式,有两种:加密或解密。

3.DES加密原理

DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。

使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。

4.DES算法特点

分组比较短、秘钥太短、密码生命周期短、运算速度较慢。

02

AES加密算法

1.AES含义

AES,高级加密标准,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。

严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特;

而Rijndael使用的密钥和区块长度可以是32位的整数倍,以128位为下限,256比特为上限。包括AES-ECB,AES-CBC,AES-CTR,AES-OFB,AES-CFB。

2.AES加密原理

AES加密过程涉及到4种操作,分别是字节替代、行移位、列混淆和轮密钥加。解密过程分别为对应的逆操作。由于每一步操作都是可逆的,按照相反的顺序进行解密即可恢复明文。加解密中每轮的密钥分别由初始密钥扩展得到。算法中16个字节的明文、密文和轮密钥都以一个4x4的矩阵表示。

3.AES算法特点

运算速度快,安全性高,资源消耗少

03

RSA加密算法

1.RSA含义

RSA加密算法是一种非对称加密算法,这种算法非常可靠,密钥越长,它就越难破解。根据已经披露的文献,目前被破解的最长RSA密钥是768个二进制位。

也就是说,长度超过768位的密钥,还无法破解(至少没人公开宣布)。因此可以认为,1024位的RSA密钥基本安全,2048位的密钥极其安全。

2.RSA算法原理

在了解RSA算法原理之前,先了解一下非对称加密的过程: 非对称加密是通过两个密钥(公钥-私钥)来实现对数据的加密和解密的。公钥用于加密,私钥用于解密。对于非对称的加密和解密为什么可以使用不同的密钥来进行,这些都是数学上的问题了。不同的非对称加密算法也会应用到不同的数学知识。接下来就来看看RSA算法是怎么来对数据进行加密的。

下面是RSA算法的加密算法流程图:

3.RSA算法特点

不需要进行密钥传递,提高了安全性

可以进行数字签名认证

加密解密效率不高,一般只适用于处理小量数据(如:密钥)

容易遭受小指数攻击

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RSA算法
    +关注

    关注

    0

    文章

    14

    浏览量

    8057
  • AES算法
    +关注

    关注

    0

    文章

    13

    浏览量

    8022
  • DES算法
    +关注

    关注

    0

    文章

    8

    浏览量

    7257
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    选择加密算法时需考虑哪些因素?

    芯源半导体安全芯片的硬件加密引擎支持多种国际通用加密算法,在实际为物联网设备选择加密算法时,需考虑哪些因素?
    发表于 11-17 07:43

    SM4算法实现分享(一)算法原理

    SM4分组加密算法采用的是非线性迭代结构,以字为单位进行加密、解密运算,每次迭代称为一轮变换,每轮变换包括S盒变换、非线性变换、线性变换、合成变换。加解密算法与密钥扩展都是采用32轮非线性迭代结构
    发表于 10-30 08:10

    SM4算法原理及分享1

    SM4算法是一种分组密码算法。其分组长度为128bit,密钥长度也为128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构,以字(32位)为单位进行
    发表于 10-30 06:54

    加密算法指令设计

    ]进协处理器data_in缓存,大小为四个字空间,然后进行密钥长度为128bit的camellia加密运算,将密文结果保存在data_out缓存,大小为四个字空间
    发表于 10-28 07:36

    加密算法的应用

    的要求。常见的对称加密算法包括DES、3DES、AES等。 对称加密算法的基本原理是:将明文数据按照一定规则和密钥进行处理,生成密文数据,解密时按照相同的规则和密钥进行处理,得到明文数据。在对
    发表于 10-24 08:03

    AES加密流程

    AES(Advanced Encryption Standard)是一种对称密钥加密算法,它是当前最常用的加密标准之一。AES是一种可靠、高效和安全的加密技术,被广泛应用于网络安全、移动设备和云计算
    发表于 10-23 06:13

    安芯半导体发布全新防复制加密芯片RJGT28E30

    ECC椭圆曲线加密算法是一种非对称加密算法,相对于对称加密算法,更便于密钥的管理,且相对于等密钥长度的RSA算法更安全。
    的头像 发表于 06-10 17:53 1094次阅读
    安芯半导体发布全新防复制<b class='flag-5'>加密</b>芯片RJGT28E30

    在STM32微控制器中实现数据加密的方法

    ,支持多种加密算法,如AES、DES、SHA等。这些库函数对加密操作进行了优化,使得开发者可以轻松地在STM32平台上实现数据加密和通讯安全功能。 · 例如,可以使用STM32的硬件加密
    发表于 03-07 07:30

    深入解析ECC256椭圆曲线加密算法

    保护数据不被非法人窃取、阅读的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。1、常见加密算法常见加密算法可分为三类,对称加密算法
    的头像 发表于 12-26 16:32 2784次阅读
    深入解析ECC256椭圆曲线<b class='flag-5'>加密算法</b>

    EMMC数据加密技术与应用

    特点,但同时也面临着数据泄露的风险。 数据加密技术概述 数据加密技术是保护数据不被未授权访问的有效手段。它通过将明文数据转换成密文,确保只有拥有正确密钥的用户才能解密并访问原始数据。 对称加密 对称
    的头像 发表于 12-25 09:51 1891次阅读

    加密算法在云计算中如何应用?

    加密算法在云计算中的应用主要体现在以下几个方面: 数据加密 : 数据加密是保护数据在传输和存储过程中的机密性的关键技术。在云计算中,数据加密技术可以分为传输
    的头像 发表于 12-17 16:02 853次阅读

    加密算法在网络安全中扮演什么角色?

    加密算法在网络安全中扮演着至关重要的角色,以下是它们的主要功能和作用: 保护数据机密性 : 加密算法确保只有授权用户才能访问敏感数据,防止数据在传输或存储过程中被未授权访问。 确保数据完整性
    的头像 发表于 12-17 16:00 863次阅读

    加密算法的选择对于加密安全有多重要?

    加密算法的选择对于加密安全至关重要,因为它直接影响到数据保护的有效性和可靠性。以下是几个关键点来说明加密算法选择的重要性: 加密强度: 加密算法
    的头像 发表于 12-17 15:59 743次阅读

    常见加密算法有哪些?它们各自的优势是什么?

    常见加密算法及其优势如下: AES(Advanced Encryption Standard): AES是一种对称加密算法,采用分组密码体制,支持128位、192位和256位密钥长度。AES的优势
    的头像 发表于 12-17 15:57 1717次阅读

    华纳云:加密算法在保护网络安全中扮演什么角色

    加密算法在保护网络安全中扮演着至关重要的角色,具体来说,它们的作用包括但不限于以下几点: 数据保密性:加密算法用于加密数据,将其转换为一种不易理解的形式,以防止未经授权的访问者查看或识别数据内容
    的头像 发表于 12-06 15:22 915次阅读