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

舞蹈培训机构网站模板布吉做棋牌网站建设

舞蹈培训机构网站模板,布吉做棋牌网站建设,xp做网站服务器吗,济宁企业网站建设公司文章目录 1. 简介2. 密钥加法层2. 字节代换层3. 行位移 - ShiftRows4. 列混淆 - MixColumn5. 其他5.1列混淆矩阵乘法运算5.2 AES密钥生成 6. 参考资料 以下内容为信息安全开发过程中,AES对称加密算法的笔记,大部分内容转载其他文章,若描述不清…

文章目录

  • 1. 简介
  • 2. 密钥加法层
  • 2. 字节代换层
  • 3. 行位移 - ShiftRows
  • 4. 列混淆 - MixColumn
  • 5. 其他
    • 5.1列混淆矩阵乘法运算
    • 5.2 AES密钥生成
  • 6. 参考资料

以下内容为信息安全开发过程中,AES对称加密算法的笔记,大部分内容转载其他文章,若描述不清楚,可以直接看原文。

1. 简介

在这里插入图片描述

AES算法主要有四种操作处理,分别是密钥加法层(也叫轮密钥加,英文Add Round Key)、字节代换层(SubByte)、行位移层(Shift Rows)、列混淆层(Mix Column)。而明文x和密钥k都是由16个字节组成的数据(当然密钥还支持192位和256位的长度,暂时不考虑),它是按照字节的先后顺序从上到下、从左到右进行排列的。而加密出的密文读取顺序也是按照这个顺序读取的,相当于将数组还原成字符串的模样了,然后再解密的时候又是按照4·4数组处理的。AES算法在处理的轮数上只有最后一轮操作与前面的轮处理上有些许不同(最后一轮只是少了列混淆处理),在轮处理开始前还单独进行了一次轮密钥加的处理。在处理轮数上,我们只考虑128位密钥的10轮处理。
输入字节顺序
在这里插入图片描述
AES算法流程图

在这里插入图片描述
以下分别介绍密钥加法层(也叫轮密钥加,英文Add Round Key)、字节代换层(SubByte)、行位移层(Shift Rows)、列混淆层(Mix Column)、秘钥变换方法。

2. 密钥加法层

在密钥加法层中有两个输入的参数,分别是明文和子密钥k[0],而且这两个输入都是128位的。这里需要注意在扩展域中加减法操作和异或运算等价,所以这里的处理也就异常的简单了,只需要将两个输入的数据进行按字节异或操作就会得到运算的结果。
在这里插入图片描述

2. 字节代换层

字节代换层的主要功能就是让输入的数据通过S_box表完成从一个字节到另一个字节的映射,S_box表是一个拥有256个字节元素的数组,可以将其定义为一维数组,也可以将其定义为16·16的二维数组,如果将其定义为二维数组(目前看见的常规用法),读取S_box数据的方法就是要将输入数据的每个字节的高四位作为第一个下标,第四位作为第二个下标。逆S盒与S盒对应,用于解密时对数据处理,我们对解密时的程序处理称作逆字节代换,只是使用的代换表盒加密时不同而已。
S盒
在这里插入图片描述
Eg:输入数据为0x19,对应输出为0xD4(第1行,第9列)
逆S盒
在这里插入图片描述

3. 行位移 - ShiftRows

行位移操作最为简单,它是用来将输入数据作为一个4·4的字节矩阵进行处理的,然后将这个矩阵的字节进行位置上的置换。ShiftRows子层属于AES手动的扩散层,目的是将单个位上的变换扩散到影响整个状态,从而达到雪崩效应。在加密时行位移处理与解密时的处理相反,我们这里将解密时的处理称作逆行位移。它之所以称作行位移,是因为它只在4·4矩阵的行间进行操作,每行4字节的数据。在加密时,保持矩阵的第一行不变,第二行向左移动8Bit(一个字节)、第三行向左移动2个字节、第四行向左移动3个字节。而在解密时恰恰相反,依然保持第一行不变,将第二行向右移动一个字节、第三行右移2个字节、第四行右移3个字节。
在这里插入图片描述

4. 列混淆 - MixColumn

列混淆子层是AES算法中最为复杂的部分,属于扩散层,列混淆操作是AES算法中主要的扩散元素,它混淆了输入矩阵的每一列,使输入的每个字节都会影响到4个输出字节。
在加密的正向列混淆中,我们要将输入的4·4矩阵左乘一个给定的4·4矩阵。而它们之间的加法、乘法都在扩展域GF(2^8)中进行。
具体运算法则见:“列混淆矩阵乘法运算”

在这里插入图片描述
在这里插入图片描述
PS:在解密的逆向列混淆中与正向列混淆的不同之处在于使用的左乘矩阵不同,它与正向列混淆的左乘矩阵互为逆矩阵,也就是说,数据矩阵同时左乘这两个矩阵后,数据矩阵不会发生任何变化。
在这里插入图片描述

5. 其他

5.1列混淆矩阵乘法运算

注意正矩阵中只有0x01、0x02、0x03,0x01与任何数相乘不发生变换,0x02、0x03运算规则如下:
在这里插入图片描述
在这里插入图片描述

5.2 AES密钥生成

记子秘钥矩阵第一列为w0,第二列为w2,…,wi,w0~w3为初始秘钥矩阵,这里介绍i >= 4的计算方法(128对应i为9;196对应11;256对应为13)
在这里插入图片描述
具体框图如下:
在这里插入图片描述
G函数处理流程分为以下几步:
字循环:将1个字中的4个字节循环左移8bit(同“行移位”处理方式一致)
字节代换:对字循环的结果使用S盒字节代换
轮常量异或:将字节代换结果与轮系数进行异或(注意这里只与字节代换的最高byte进行异或)

在这里插入图片描述

6. 参考资料

  • https://zhuanlan.zhihu.com/p/78913397
  • https://www.bilibili.com/video/BV1i341187fK/?
http://www.yayakq.cn/news/709641/

相关文章:

  • 网站建设 手机和pc电子政务 和网站建设总结
  • 易县做网站的在哪网站备案用的方案建设
  • 用什么软件做网站原型织梦古典网站模板
  • 陕西建设厅网站建设银行网站登录
  • 怎么用txt做网站企业网站营销解决方案
  • 最好科技上海网站建设关于jsp网站开发的最新书籍
  • 建设网站需要学什么程序公众号制作模板app
  • 做一个网站的步骤个人如何办网站
  • 建站哪家技术好网页设计论文答辩问题
  • 网站后台视频教程wordpress 主页重定向
  • 建站教程WordPress 怎么添加关键字代码
  • 怀柔网页公司制作优化关键词排名提升
  • 扬州做公司网站网站建设实训不足
  • 网站如何做线下推广网站设计哪家口碑好
  • 东莞快速优化排名百度推广seo效果怎么样
  • 重庆知名网站制作公司湖南响应式网站哪家好
  • 企业seo整站优化方案嘉峪关建设厅官方网站
  • 辽宁网站建设学校wordpress 文章 指定
  • 重庆网站建设公司哪家好wordpress支持的语言种类
  • 表格布局网站联想用来网站开发笔记本
  • 中英网站建设做纯净系统的网站
  • 企业网站建设重要性电子商务的就业方向
  • 温州做美食网站自己做采集电影网站
  • 株洲网站的建设网站建设内容模板下载
  • 视频背景网站博罗东莞网站建设
  • 做一个什么样的网站360网站地图怎么做
  • 如何做网站数据库常用小网站
  • 住建部城乡建设网站做网站来联盟怎么样
  • 淘宝便宜的团购网站建设wordpress红黑主题
  • 网站建设中 html免费微信小程序开发收费