WEB开发网
开发学院网络安全安全技术 基于AES算法实现对数据的加密 阅读

基于AES算法实现对数据的加密

 2010-09-30 12:55:22 来源:WEB开发网   
核心提示: 图片看不清楚?请点击这里查看原图(大图),3.2 算法实现举例描述AES算法是基于置换和代替,基于AES算法实现对数据的加密(2),置换是数据的重新排列,而代替是用一个单元数据替换另一个,剩余行从种子密钥产生,变量Nk代表32位字为单位的种子密钥长度,AES使用了几种不同的技术来实现置换和

基于AES算法实现对数据的加密

图片看不清楚?请点击这里查看原图(大图)。

3.2 算法实现举例描述

AES算法是基于置换和代替。置换是数据的重新排列,而代替是用一个单元数据替换另一个。AES使用了几种不同的技术来实现置换和替换。例如以下是要加密的128位值,以及它们对应的索引数组:

00 ll 22 33 44 55 66 77 88 99 aa bb cc dd ee ff

O 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

192位密钥的值是:

00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 ll 12 13 14 15 16 17

0 1 2 3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18 19 20 2l 22 23

AES的构造函数被调用时,用于加密方法的两个表被初始化。第一个表的代替盒称为S一盒。是一个16x16的矩阵。S一盒的前5行和前5列如表1所示。加密例程获取该密钥数组并生成一个名为w[]的密钥调度表,如表2所示。

基于AES算法实现对数据的加密

图片看不清楚?请点击这里查看原图(大图)。

w[]最初的Nk(6)行被作为种子,用原始密钥值(0x00~0xl7)。剩余行从种子密钥产生。变量Nk代表32位字为单位的种子密钥长度。新的密钥被称为轮密钥(round keys)。

Tags:基于 AES 算法

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接