aes详解

摘要 

严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特;而Rijndael使用的密钥和区块长度可以是32位的整数倍,以128位为下限,256比特为上限。


块(block,也叫分组)
模式(比如cbc)
初始向量(iv)
填充方式(padding,包括none,用’\0′填充,pkcs5padding或pkcs7padding)


字节替代(SubBytes)
S和S-1(g正逆)分别为16x16的矩阵,字节代替的主要功能是通过S盒完成一个字节到另外一个字节的映射。
行移位(ShiftRows)
行移位的功能是实现一个4x4矩阵内部字节之间的置换。实际移位的操作即是:第一行保存不变,第二行循环
左移1个字节,第三行循环左移2个字节,第四行循环左移3个字节。
列混淆(MixColumns)
轮密钥加(AddRoundKey)
任何数和自身的异或结果为0。加密过程中,每轮的输入与轮密钥异或一次;因此,解密时再异或上该轮的密
钥即可恢复输入


原文 

http://www.mamicode.com/info-detail-514466.html

http://baike.baidu.com/item/aes/5903?fromtitle=aes%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95&fromid=3233272

http://blog.studygolang.com/2013/01/go%E5%8A%A0%E5%AF%86%E8%A7%A3%E5%AF%86%E4%B9%8Bdes/
https://github.com/dhuertas/AES/blob/master/aes.c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值