当前位置: 首页 > news >正文

在AES加密中,设主密钥为“2B 7E 15 16 28 AE D2 A6 AB F7 15 88 09 CF 4F 3C”,试计算迭代第1轮使用的轮密钥。

题解:

1.分析:

第一轮使用的轮密钥是W[4]、W[5]、W[6]、W[7]

w[i](4≤i≤43)求法:

(1)i不为4的倍数

w[i] = w[i-1] ⊕w[i-4]

(2)为4的倍数

w[i]=SubWord(RotWord(w[i-1]))⊕w[i-4]⊕Rcon[i/4]

解释:

①RotWord:将w[i-1]的4个字节循环上移一个字节

②SubWord:基于S盒对输入字的每个字节进行代换

③将步骤②的结果与w[i-4]异或

④将步骤③的结果再与轮常量Rcon[i/4]异或

2.按顺序每四个一列,作为初始轮密钥(W[0]、W[1]、W[2]、W[3])

W[0]

W[1]

W[2]

W[3]

2B

28

AB

09

7E

AE

F7

CF

15

D2

15

4F

16

A6

88

3C

3.求W[4]

由于4是4的倍数故:

w[4]=SubWord(RotWord(w[3]))⊕w[0]⊕Rcon[1]

(1)将w[3]的4个字节循环上移一个字节

09

CF

CF

4F

4F

3C

3C

09

(2)基于S盒对输入字的每个字节进行代换

S盒:

用法:

如9A,对应S盒就是9行A列,即B8

代换结果:

CF

8A

4F

84

3C

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 合合信息文档解析Coze插件发布,PDF转Markdown功能便捷集成
  • 云计算实训32——roles基本用法、使用剧本安装nginx、使用roles实现lnmp
  • AI入门指南(四):分类问题、回归问题、监督、半监督、无监督学习是什么?
  • 【3】AT32F437 OpenHarmony轻量系统第一个程序:点灯
  • C#与其它编程语言有什么区别,以及相关优势有哪些
  • Java 事务管理:确保数据一致性
  • FPGA开发——DS18B20读取温度并且在数码管上显示
  • 【达梦数据库】锁超时的处理方法-错误码[-6407]
  • 微软edge浏览器开发工具全解析
  • MYSQL -NATURAL JOIN ,exist 函数
  • LeetCode 热题100-69 有效的括号
  • 设计模式-结构性模式-桥接模式
  • 风波中坚守:技术应对突发故障的危与机
  • 我们如何将数据输入到神经网络中?
  • day38.动态规划+MySql数据库复习
  • 分享的文章《人生如棋》
  • [LeetCode] Wiggle Sort
  • cookie和session
  • co模块的前端实现
  • React中的“虫洞”——Context
  • Swoft 源码剖析 - 代码自动更新机制
  • vue-cli3搭建项目
  • 初探 Vue 生命周期和钩子函数
  • 记录一下第一次使用npm
  • 理解在java “”i=i++;”所发生的事情
  • 浅谈Golang中select的用法
  • 微服务核心架构梳理
  • 微信小程序设置上一页数据
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • ​ubuntu下安装kvm虚拟机
  • #define、const、typedef的差别
  • #每天一道面试题# 什么是MySQL的回表查询
  • (04)odoo视图操作
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (算法)Travel Information Center
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (小白学Java)Java简介和基本配置
  • (转载)从 Java 代码到 Java 堆
  • (最新)华为 2024 届秋招-硬件技术工程师-单板硬件开发—机试题—(共12套)(每套四十题)
  • .net core Swagger 过滤部分Api
  • .NET 指南:抽象化实现的基类
  • .Net 中Partitioner static与dynamic的性能对比
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .net操作Excel出错解决
  • .net的socket示例
  • .NET开源纪元:穿越封闭的迷雾,拥抱开放的星辰
  • .NET运行机制
  • .stream().map与.stream().flatMap的使用
  • ??eclipse的安装配置问题!??
  • []我的函数库