AES算法简记

本文介绍了AES算法的起源、选择Rijndael作为AES标准的原因,以及Rijndael算法的基本结构和轮函数组成。AES算法具有128位的数据块长度和128、192、256比特的密钥长度,加密解密过程中包含了字节代替、行移位、列混淆和轮密钥加四个阶段。密钥扩展算法用于生成每轮所需的轮密钥,确保安全性。
摘要由CSDN通过智能技术生成

1997年,美国国家标准技木研究所(NIST)发起征集AES算法的活动,并专门成立AES工作组,其目的是确定一个非保密的、公开的、全球免费使用的分组密码算法,用于保护下一世纪政府的敏感信息。

NIST规定候选算法必须满足下面的要求:

  • 密码必须是没有密级的,绝不能像商业秘密那样来保护它
  • 算法的全部描述必须公开披露
  • 密码必须可以在世界范围内免费使用
  • 密码系统支持至少128比特长的分组
  • 密码支持的密钥长度至少为128、192和256比特

参与AES的候选算法中,Rijndael 提供了安全性、软件和硬件性能、低内存需求以及灵活性的最好的组合,因此NIST确定选择Rijndael作为AES。

2000年选中比利时密码学家提出的密码算法Rijndael作为AES。2001年美国政府正式颁布AES为美国国家标准,目前AES已经被一些国际标准化组织采纳为标准。其被选中的原因是安全、性能好效率高、实用、灵活。

Rijndael算法是一个数据块长度和密钥长度都可变的分组加密算法,其数据块长度和密钥长度都可独立地选定为大于等于128位且小于等于256位的32位的任意倍数。美国颁布AES时规定数据块的长度为128位,密钥长度可分别选择为128位、192位或256位。

Rijndael算法采用分组密码的一种通用结构:对轮函数实施迭代的结构。

Rijndael的轮函数由以下三层组成:

  1. 非线性层:进行非线性S盒变换ByteSub,由16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值