AES算法介绍

本文介绍了AES加密算法的基本概念、流程,包括轮变换、密钥扩展、不同工作模式和具体操作细节,强调了网络安全中AES算法的重要性。
摘要由CSDN通过智能技术生成

一、前言

由于一直在实习,事情有点多,一直没更新,幸运的是,我今天终于把事情做完了,终于可以准备回家过年了;那么趁现在简单介绍一下AES算法吧;

二、AES算法流程

AES(Advanced Encryption
Standard)算法是一种对称加密算法,其原理采用的是迭代分组密码算法,它由轮变换函数经过数次迭代变换而成,其迭代的次数与密钥的长度有关。如果密钥长度为128bit,则一组明文需要运算10轮即可完成加解密;如果密钥长度为192bit,一组明文需要12轮运算即可完成加解密;
如果密钥长度为256bit,一组明文需要14轮运算即可完成加解密。

AES算法属于对称算法,所以解密过程为加密过程的逆过程,AES算法有多种工作模式,包括ECB模式,CBC模式,CMAC模式等;

AES算法流程是固定的,如下图所示,以128bit数据加密流程举例,总共需要计算10轮,在前面几轮中,依次是字节代换、
行移位变换、列混合变换和轮密钥加变换。最后一轮无列混合变换,从图中也能看出解密过程为加密的逆过程;

三、轮密钥加变换

在轮密钥加变换模块中,每一轮都需要使用准备好的密钥进行异或并作为下一轮的轮密钥加的数据,然后在AES控制模块中进行密钥加变换处理;

有限域中的密钥加变换对应于数据的异或运算,而异或运算再异或正好是其本身,所以密明加的逆变换仍然是密明加变换,其硬件实现框图如下所示;

四、字节变换

在AES加解密算法中,字节代换与逆代换是唯一的非线性运算,它不仅是AES加解密中稍显麻烦的模块,还是占用资源较多的模块。

如下图所示,图为字节代换的SBOX替换表,将要进行SBOX替换的字节参照如下表格将一个字节映射为另一个字节;
在进行映射时,需要把该字节的高4位作为行值,低4位作为列值,选中的字节就是变换后的字节;以8’h23为例,根据上文所述,找到表中第2行第3列,得到字节为8’h26;可见,8’h23进行代换后映射为8’h26;

五、行移位

由于AES算法执行运算的数据分组长度为128位,所以在行移位模块的设计中,
首先将128位输入数据转换为数组表示的状态矩阵,每个矩阵为128/16=8bit,然后对状态矩阵的每一行分别进行移位长度不等的行移位操作,行移位是通过循环左移实现,而逆行移位通过循环右移实现,但每一行所移动的位数都与行数有关。该模块实现较为简单,移位操作通过循环赋值实现,行号为0的字节均保持不变,行号为1的每个字节数据往左或往右移动一位,行号为2的字节数据往左或往右移动两位,行号为3的字节数据则往左或往右移动三位。最后将移位结果进行状态矩阵输出转换,输出长度为128位的数据。行移位操作的效果如图所示:

六、列混合

对一个状态的每一列去乘一个矩阵

计算方式如图:

根据列混合运算的原理,设字节b={b7,b6,b5,b4,b3,b2,b1,b0},则系数矩阵与该字节相乘时,有如下式1.7所示换算:

由此得出列混合运算中的有限域乘法运算可化简为乘2操作与异或操作的混合运算,乘2的具体运算过程如式1.8所示。

七、AES加密流程框图

加密时,按以下步骤执行;

八、密钥扩展

密钥扩展模块采用与加解密过程并行处理的方式,即密钥生成和除轮密钥加轮运算的其他模块一起执行,该模块实现依据为AES算法中的密钥扩展产生原理。将输入的128位密钥Key分为4个32位的字段,经过密钥扩展模块的运算后,扩展输出每轮变换轮密钥加运算需要的44个密钥列。密钥扩展过程如下图所示;

首先对w[i-1]进行字循环操作,即循环左移一个字节,此过程与加密轮变换中的行移位类似。其次通过S-
box对字循环后的结果进行字节代换,最后将字节代换后的结果与轮常量Rcon[j]异或,且参与异或运算的轮常量Rcon[j]的数据位宽为32位,j代表当前轮数,其中,轮常量Rcon的每轮固定值如下表5.4所示,表中的值以16进制展示:

九、加密举例

最后

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。

因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

干货主要有:

①1000+CTF历届题库(主流和经典的应该都有了)

②CTF技术文档(最全中文版)

③项目源码(四五十个有趣且经典的练手项目及源码)

④ CTF大赛、web安全、渗透测试方面的视频(适合小白学习)

⑤ 网络安全学习路线图(告别不入流的学习)

⑥ CTF/渗透测试工具镜像文件大全

⑦ 2023密码学/隐身术/PWN技术手册大全

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

扫码领取

  • 21
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值