密码学【第三节:对称密码-DES\AES】

前言

对称加密

    对称加密算法中,数据发送方将明文和密钥一起经过特殊加密算法处理成密文后,将它发送出去。接收方收到密文后,若想解读原文,则需要使用加密用到的相同密钥及相同算法的逆算法对密文进行解密,才能使其恢复成原文。
    它的最大优势是加/解密速度快,适用于大数据量进行加密,缺点是密钥管理困难,最典型的问题就是如何同步这个密钥,同步过程如果在公网上,不进行加密是可以抓包拿到的,那么这里就遇到了要对密钥加密的问题。
    常见的对称加密算法有 AESDESBlowfish 等等。
    对称加密的核心是只有一把密钥。

目录

前言

一、DES加密算法

什么是DES加密算法

DES加密算法的原理

二、AES加密算法

什么是AES加密算法

AES加密算法的原理

三、DES与AES的区别比较

AES和DES算法的主要区别

四、加密解密工具推荐


一、DES加密算法

什么是DES加密算法

DES加密算法,为对称加密算法中的一种。70年代初由IBM研发,后1977年被美国国家标准局采纳为数据加密标准,即DES全称的由来:Data Encryption StandardDES,也是是目前最为流行的加密算法之一

DES加密算法的原理

DES还是一种分组加密算法,该算法每次处理固定长度的数据段,称之为分组。DES分组的大小是64位,如果加密的数据长度不是64位的倍数,可以按照某种具体的规则来填充位。

DES是以64比特的明文为一个单位来进行加密的,超过64比特的数据,要求按固定的64比特的大小分组,分组有很多模式。DES使用的密钥长度为64比特,但由于每隔7个比特设置一个奇偶校验位,因此其密钥长度实际为56比特(第8、16、24、32、40、48、56、64位是校验位, 使得每个密钥都有奇数个1)奇偶校验为最简单的错误检测码,即根据一组二进制代码中1的个数是奇数或偶数来检测错误。

分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。 

梳理整个过程

第一步:将初始密钥(64位,实际使用54位)转换成16个子密钥(48位),将明文(明文需要一组一组的来,一组64位)

第二步:将分组好的明文又拆分成2组32位配上密钥进行加密

第三步:进行16轮的替代或交换的方式进行加密,并且一轮使用一个子密钥

第四步:得到密文(一组一组的得到,一组为64位)

详细过程原理以及实现请看大佬文章

DES加密算法介绍(含例子) - alittlecomputer - 博客园 (cnblogs.com)数据加密算法--详解DES加密算法原理与实现 - DreamGo - 博客园 (cnblogs.com) 

二、AES加密算法

什么是AES加密算法

AES是高级加密标准,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,目前已经被全世界广泛使用,同时AES已经成为对称密钥加密中最流行的算法之一。

AES加密算法的原理

AES为分组密码,分组密码也就是把明文分成一组一组的,每组长度相等,每次加密一组数据,直到加密完整个明文。在AES标准规范中,分组长度只能是128位(如果不足则使用填充方式),也就是说,每个分组为16个字节(每个字节8位)。密钥的长度可以使用128位、192位或256位。密钥的长度不同,推荐加密轮数也不同,且每一轮均需要一个子密钥,如下表所示:

AES密钥长度(32位比特字)分组长度(32位比特字)加密轮数
AES-1284410
AES-1926412
AES-2568414

Tip:平时大家所说的AES128,AES192,AES256,实际上就是指的AES算法对不同长度密钥的使用 

密钥扩展:其复杂性是确保算法安全性的重要部分。当密钥长度是128位时,AES的加密算法共迭代10轮,需要10个子密钥。AES的密钥扩展的目的是将输入的128位密钥扩展成11个128位的子密钥。AES的密钥扩展算法是以字为一个基本单位(一个字为4个字节),刚好是密钥矩阵的一列。因此4个字(128位)密钥需要扩展成11个子密钥,共44个字。

生成子密钥的数量比AES算法的轮数多一个,因为第一个密钥加法层进行密钥漂白时也需要子密钥。密钥漂白是指在AES的输入和输出中都使用的子密钥的XOR加法子密钥在图中都存储在W[0]、W[1]、...、W[43]的扩展密钥数组之中。k1-k16表示原始密钥对应的字节

AES加密算法涉及4种操作:字节替代(SubBytes)、行移位(ShiftRows)、列混淆(MixColumns)和轮密钥加(AddRoundKey)。下图给出了AES加解密的流程

梳理整个过程

第一步:将对密钥进行扩散,明文进行分组

第二步:进行加密算法过程:字节替代、行位移、列混肴、轮密钥加

第三步:生成密文

 详细过程原理看大佬文章

AES加密算法原理(加密过程) - Shawn_Michaels - 博客园 (cnblogs.com)


 

三、DES与AES的区别比较

AES和DES算法的主要区别

AES与DES之间的主要区别在于加密过程。在DES中,将明文分为两半,然后再进行进一步处理;而在AES中,整个块不进行除法,整个块一起处理以生成密文。相对而言,AES比DES快得多,与DES相比,AES能够在几秒钟内加密大型文件。

由于DES中使用的共享密钥的比特大小较小,因此它被认为不如AES安全。DES被认为更容易受到暴力攻击,而到目前为止,尚未遇到任何严重攻击的AES。

在灵活性的基础上评估算法的实现,AES比DES更具灵活性,因为它允许包括128、192、256位在内的各种长度的文本,而DES允许对64位固定文本进行加密。

DES回合处理中使用的功能是扩展,置换和替换,具有回合键的XOR操作,而AES回合中使用的功能是子字节,移位行,混合列和添加回合键。AES实际上在硬件和软件实现上都是高效的,而DES最初只在硬件上有效。

DES算法缺点:

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

DES算法优点:

DES算法具有极高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。

AES算法缺点:

目前尚未存在对AES 算法完整版的成功攻击,但已经提出对其简化算法的攻击。

AES算法优点:

1、运算速度快,对内存的需求非常低,适合于受限环境。

2、分组长度和密钥长度设计灵活, AES标准支持可变分组长度,分组长度可设定为32比特的任意倍数,最小值为128比特,最大值为256比特。

3、 AES的密钥长度比DES大,它也可设定为32比特的任意倍数,最小值为128比特,最大值为256比特,所以用穷举法是不可能破解的。

4、具有很好的抵抗差分密码分析及线性密码分析的能力。

总而言之,AES和DES算法之间的区别就是加密过程,这两种算法都有自己的优缺点,相对来说,AES比DES安全性高,运算速度快。

四、加密解密工具推荐

在线AES加密/解密工具,可以输入密钥进行加密和解密,支持可逆加密和解密操作,大家可以去测试:https://md5.cn/

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《现代密码学第五版 杨波pdf》是一本关于现代密码学的学术著作,由杨波教授编写而成。这本书是针对密码学领域的学生、研究人员以及安全专家而设计的。 书中首先介绍了密码学的基本概念和历史背景,包括对称密码学和公钥密码学的介绍以及它们在实际应用中的差异。随后,作者详细讲解了密码学的数学基础,包括模运算、离散对数和椭圆曲线等内容,这些概念对于理解密码算法的实现和分析至关重要。 在接下来的章节中,书中探讨了各类常见的密码算法,包括对称密码算法(如DESAES)、哈希函数(如MD5和SHA-2)以及公钥密码算法(如RSA和椭圆曲线密码学)。对于每种算法,作者都提供了详细的原理和实际应用的案例分析,使读者能够全面了解其设计原则、安全性和适用场景。 此外,书中还涵盖了密码协议、数字签名、身份验证和密钥管理等密码学的相关主题。读者可以通过阅读这些章节来深入了解密码学在实际应用中的应用场景、攻击方法以及保障信息安全的方法。 总的来说,《现代密码学第五版 杨波pdf》是一本系统全面的密码学参考书,不仅深入浅出地介绍了密码学的基础知识,还涵盖了密码算法的实现和应用。对于想要深入了解密码学理论和实践的读者来说,这本书是一本非常好的学习资料。 ### 回答2: 《现代密码学第五版》是由杨波所著的一本关于密码学的教材,是该领域的经典之作。本书系统地介绍了密码学的基本理论、方法和应用。杨波在本书中对密码学的概念、原理和算法进行了深入浅出的讲解,使读者能够深入理解密码学的基本概念和技术。 《现代密码学第五版》分为七个部分:基础知识、对称密码体制、数据完整性和数字签名、公钥密码体制、安全协议、密码应用与系统安全、密码分析与实现,每个部分都对相关的概念和方法进行了详细的介绍。作者使用了大量的示例和图表,有助于读者更好地理解和掌握密码学的核心内容。 该书在密码学领域具有较高的权威性,无论是对学术研究者还是对密码学从业人员来说,都是一本必备的工具书。《现代密码学第五版》涵盖了密码学的主要方向和最新的研究成果,对于读者的学习和研究具有很大的参考价值。 总之,杨波的《现代密码学第五版》是一本权威、系统和实用的密码学教材,内容丰富、条理清晰。无论是对于密码学初学者还是对于专业领域内的研究人员来说,都是一本不可多得的参考书籍。它对于理解密码学的基本原理和应用,以及掌握密码学算法和技术都具有重要的作用。 ### 回答3: 《现代密码学第五版》是杨波教授所著的一本关于现代密码学领域的权威性教材。该教材系统地介绍了密码学的基本概念、算法和应用,是学习密码学领域的必备参考书。 《现代密码学第五版》以清晰的逻辑结构和深入浅出的讲解方式贯穿整本书。首先,书中介绍了密码学的基础知识,包括经典密码学和现代密码学的基本概念和原则。然后,详细阐述了对称密码和非对称密码算法,包括DESAES、RSA等常见的密码算法。 此外,《现代密码学第五版》还讨论了密码学在网络安全、数字签名、身份验证和电子支付等领域的应用。同时,书中还专门介绍了量子密码学密码协议等前沿内容,使读者对密码学的发展趋势有更深入的了解。 杨波教授作为国内著名密码学专家,他在该领域的研究和贡献深受学术界的认可。他不仅在书中详细介绍密码学的理论知识,还分享了自己的研究经验和实际应用案例,使这本教材更具权威性和实用性。 总的来说,《现代密码学第五版》凭借其全面而系统的内容,简洁明了的讲解方式以及权威的作者,成为了现代密码学领域的经典教材。无论是学习密码学的初学者还是从事密码学研究的专业人士,都会从中获得丰富的知识和实践经验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值