【技术分享】AES算法详解

前言:

新年伊始,小星谨代表星云博创恭祝大家新年快乐!技术“兔”飞猛进!工作大展宏“兔”!

本期技术分享将与大家以“AES算法详解”为主题,共同探讨如何利用AES加密算法对ECB模式进行加解密。

AES加密算法
是密码学中的高级加密标准。AES为分组加密法,把明文分成每组长度相等的一组一组;每次加密一组数据,直至整个明文被加密完毕。在AES标准规范中,分组长度只能是128位。AES是按照字节进行加密的,也就是说每个分组为16个字节(每个字节8位)。密钥的长度可以使用128位、192位或256位,但这会导致密钥长度不同,推荐加密的轮数也不同。

因为DES算法的不安全性,DES加密算法可以被破解。而3DES加密算法虽然还没有被破解,但是因其加解密效率低,所以基本上大家现在都会偏向使用AES算法。可以说,AES算法的提出就是为了替代DES算法。

1. 加密过程:最后一组“1轮最终轮(Final round)”中不存在右边的“3.列混合(MixColumns)”。

2. 初始变换:明文128位转换为16字节的矩阵如下,再与128位的秘钥(同理转换为16字节的矩阵)进行异或,得到第一次转换后结果。

初始变换的异或原理图片如下:

3. 开始9轮循环。

4. 字节代换,将初始变换后得到的数据在右边表格中进行代换。

变换后的结果如下:

5. 实施行移位操作。

行移位的结果如下:

6.实施列混合操作,左边矩阵为给定的矩阵。

举例如下:

7.轮秘钥加,对秘钥进行加操作。

代码参考:
https://blog.csdn.net/chouzhou9701/article/details/122019967

总结

以上是针对ECB模式的加密解密,从例子中可以看出参数中存在限制:

1. 秘钥必须为16字节或者16字节的倍数的字节型数据。

2. 明文必须为16字节或者16字节的倍数的字节型数据,如果不足16字节,您需要对其进行补全。至于补全规则,后续在补全模式中会有具体介绍。

3. 其它参考:

3.1 通过CBC模式的示例。

3.2 AES相关赛题一 [ACTF新生赛2020]crypto-aes。

3.3 输出附件。

3.4 Wp:题目代码很简明,使用了一个密钥 Key和初始化向量IV,选择CBC模式进行加密的解题思路。

(1)解密flag,我们首先需要获取到 key 和 iv 的值,所需条件如下:

(2)由上述条件可知:key是32bytes,256bits;iv是16bytes,128bits。

(3)后续key的低128bits,与输出结果的低128bits相异或,所得的结果就是iv的值了。

(4)得到key,iv后直接aes.decrypt()解密即可。

.decrypt()解密即可。

[外链图片转存中…(img-j2sAwR92-1690165231820)]

[外链图片转存中…(img-g95c1ppX-1690165231820)]

如果你对网络安全入门感兴趣,那么你点击这里👉CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

如果你对网络安全感兴趣,学习资源免费分享,保证100%免费!!!(嘿客入门教程)

👉网安(嘿客)全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

img

img

👉网安(嘿客红蓝对抗)所有方向的学习路线****👈

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

img

学习资料工具包

压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

在这里插入图片描述

面试题资料

独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!
在这里插入图片描述

👉嘿客必备开发工具👈

工欲善其事必先利其器。学习客常用的开发软件都在这里了,给大家节省了很多时间。

这份完整版的网络安全(客)全套学习资料已经上传至CSDN官方,朋友们如果需要点击下方链接也可扫描下方微信二v码获取网络工程师全套资料【保证100%免费】

在这里插入图片描述

如果你有需要可以点击👉CSDN大礼包:《嘿客&网络安全入门&进阶学习资源包》免费分享

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值