文件名称:利用C\C++实现AES算法的加、解密运算
文件大小:17KB
文件格式:CPP
更新时间:2023-05-06 06:12:22
AES 密码学 密码学课设 密码学实验
(1)分组长度128比特,16字节。 (2)定义位操作LOAD32H(x, y) 将uint8_t y[4] 转换成 uint32_t x,STORE32H(x, y) 将uint32_t x 转换成 uint8_t y[4],BYTE(x, n) 从uint32_t x中提取从低位开始的第n个字节,MIX(x) 密钥扩展中的SubWord(RotWord(temp),字节替换然后循环左移1位,ROF32(x, n) uint32_t x循环左移n位,ROR32(x, n) uint32_t x循环右移n位。 (3)密钥扩展:接受16字(128位)初始密钥,相当于 4个32位字,所以Nb=4,Nr=10(10轮),密钥扩展过程产生4*(10+1)= 44个字,最初的4个字为原始密钥。