第三章 对称密码体制
- 格式:pdf
- 大小:584.22 KB
- 文档页数:41
对称密码体制和⾮对称密码体制⼀、对称加密 (Symmetric Key Encryption)对称加密是最快速、最简单的⼀种加密⽅式,加密(encryption)与解密(decryption)⽤的是同样的密钥(secret key)。
对称加密有很多种算法,由于它效率很⾼,所以被⼴泛使⽤在很多加密协议的核⼼当中。
⾃1977年美国颁布DES(Data Encryption Standard)密码算法作为美国数据加密标准以来,对称密码体制迅速发展,得到了世界各国的关注和普遍应⽤。
对称密码体制从⼯作⽅式上可以分为分组加密和序列密码两⼤类。
对称加密算法的优点:算法公开、计算量⼩、加密速度快、加密效率⾼。
对称加密算法的缺点:交易双⽅都使⽤同样钥匙,安全性得不到保证。
此外,每对⽤户每次使⽤对称加密算法时,都需要使⽤其他⼈不知道的惟⼀钥匙,这会使得发收信双⽅所拥有的钥匙数量呈⼏何级数增长,密钥管理成为⽤户的负担。
对称加密算法在分布式⽹络系统上使⽤较为困难,主要是因为密钥管理困难,使⽤成本较⾼。
⽽与公开密钥加密算法⽐起来,对称加密算法能够提供加密和认证却缺乏了签名功能,使得使⽤范围有所缩⼩。
对称加密通常使⽤的是相对较⼩的密钥,⼀般⼩于256 bit。
因为密钥越⼤,加密越强,但加密与解密的过程越慢。
如果你只⽤1 bit来做这个密钥,那⿊客们可以先试着⽤0来解密,不⾏的话就再⽤1解;但如果你的密钥有1 MB⼤,⿊客们可能永远也⽆法破解,但加密和解密的过程要花费很长的时间。
密钥的⼤⼩既要照顾到安全性,也要照顾到效率,是⼀个trade-off。
分组密码:也叫块加密(block cyphers),⼀次加密明⽂中的⼀个块。
是将明⽂按⼀定的位长分组,明⽂组经过加密运算得到密⽂组,密⽂组经过解密运算(加密运算的逆运算),还原成明⽂组,有 ECB、CBC、CFB、OFB 四种⼯作模式。
序列密码:也叫流加密(stream cyphers),⼀次加密明⽂中的⼀个位。
四45五3六57十4十一34十二47没做“信息安全理论与技术”习题及答案教材:《信息安全概论》段云所,魏仕民,唐礼勇,陈钟,高等教育出版社第一章概述(习题一,p11) 1.信息安全的目标是什么答:信息安全的目标是保护信息的机密性、完整性、抗否认性和可用性;也有观点认为是机密性、完整性和可用性,即CIA(Confidentiality,Integrity,Avai lability)。
机密性(Confidentiality)是指保证信息不被非授权访问;即使非授权用户得到信息也无法知晓信息内容,因而不能使用完整性(Integrity)是指维护信息的一致性,即信息在生成、传输、存储和使用过程中不应发生人为或非人为的非授权簒改。
抗否认性(Non-repudiation)是指能保障用户无法在事后否认曾经对信息进行的生成、签发、接收等行为,是针对通信各方信息真实同一性的安全要求。
可用性(Availability)是指保障信息资源随时可提供服务的特性。
即授权用户根据需要可以随时访问所需信息。
2.简述信息安全的学科体系。
解:信息安全是一门交叉学科,涉及多方面的理论和应用知识。
除了数学、通信、计算机等自然科学外,还涉及法律、心理学等社会科学。
信息安全研究大致可以分为基础理论研究、应用技术研究、安全管理研究等。
信息安全研究包括密码研究、安全理论研究;应用技术研究包括安全实现技术、安全平台技术研究;安全管理研究包括安全标准、安全策略、安全测评等。
3. 信息安全的理论、技术和应用是什么关系如何体现答:信息安全理论为信息安全技术和应用提供理论依据。
信息安全技术是信息安全理论的体现,并为信息安全应用提供技术依据。
信息安全应用是信息安全理论和技术的具体实践。
它们之间的关系通过安全平台和安全管理来体现。
安全理论的研究成果为建设安全平台提供理论依据。
安全技术的研究成果直接为平台安全防护和检测提供技术依据。
平台安全不仅涉及物理安全、网络安全、系统安全、数据安全和边界安全,还包括用户行为的安全,安全管理包括安全标准、安全策略、安全测评等。
密码体制是指用于保护信息安全的加密和解密方法。
根据不同的分类标准,可以将密码体制分为以下几类:
对称密码体制(Symmetric Cryptography):也称为私钥密码体制,加密和解密使用相同的密钥。
常见的对称密码算法有DES、AES和IDEA等。
对称密码体制具有加密速度快的优点,但需要确保密钥的安全性。
公钥密码体制(Public Key Cryptography):也称为非对称密码体制,加密和解密使用不同的密钥,其中一个密钥是公开的,称为公钥,另一个密钥是私有的,称为私钥。
常见的公钥密码算法有RSA、Diffie-Hellman和椭圆曲线密码等。
公钥密码体制具有密钥分发方便的优点,但加密和解密速度较慢。
哈希函数(Hash Function):哈希函数是一种将任意长度的输入数据转换为固定长度的输出数据的算法。
常见的哈希函数有MD5、SHA-1和SHA-256等。
哈希函数主要用于数据完整性校验和数字签名等应用。
数字签名(Digital Signature):数字签名是一种用于验证数据的真实性、完整性和来源的密码技术。
它使用私钥对数据进行加密,生成数字签名,然后使用公钥对数字签名进行解密和验证。
随机数生成(Random Number Generation):随机数生成是密码体制中重要的组成部分,用于生成安全的密钥和初始化向量。
随机数生成器应具有高度随机性和不可预测性。
这些分类方法是根据密码体制的核心原理和使用方式进行的。
不同类型的密码体制在不同的应用场景中具有各自的优势和适用性。
在实际应用中,常常根据具体需求选择合适的密码体制进行数据保护和安全通信。
对称密码体制对称密码体制是一种有效的信息加密算法,它尝试在满足基本安全约束的同时提供最大的加密强度和性能。
它是最常用的信息加密类型之一,甚至在金融机构、政府机构、企业以及个人之间都被广泛使用。
对称密码体制通过使用单个密钥(称为“秘密密钥”)来确保信息的安全传输和接收,而无需在发送方和接收方之间共享保密信息。
这一密钥的特点在于,既可以用来加密信息,也可以用于解密信息。
由于秘密密钥是由发送方和接收方共同拥有,因此不需要额外的通信,也无需额外的身份验证。
在使用对称密码体制时,发送方必须在发送数据之前将其加密,而接收方则必须使用相同的密钥对数据进行解密,以此来识别发送方。
然而,有一种特殊情况除外,即发送方可以使用密钥来加密消息,而接收方可以使用相同的密钥来解密消息,而无需在发送方和接收方之间共享信息。
在实际使用中,对称密码体制有三种形式:数据加密标准(DES)、高级加密标准(AES)和哈希密码(HMAC)。
其中,DES是一种最常用的对称密码体制,它采用了比较古老的56位密钥来加密数据,并且它的加密强度受到比较严格的限制。
而AES是一种更新的,比DES更安全的对称加密算法,它使用128位或256位密钥,并且可以提供更强的安全性和性能。
最后,HMAC是一种哈希加密算法,它使用128位或256位密钥来确保信息的完整性和真实性,同时也可以使用相同的密钥来加密和解密数据。
对称密码体制是一种有效的信息加密算法,它在满足基本安全约束的同时还能提供最大的加密强度和最高的性能。
它是最常用的信息加密类型之一,甚至在金融机构、政府机构、企业以及个人之间都被广泛使用,并且有三种形式:数据加密标准(DES)、高级加密标准(AES)和哈希密码(HMAC),可以满足各种要求。
其中,AES可以提供更高的安全性和性能,而HMAC可以确保信息的完整性和真实性,因此在实际应用中,对称密码体制也被广泛应用。
对称密码体制在许多领域都有着广泛的应用,尤其是在安全传输方面。
四45五3六57十4十一34十二47没做“信息安全理论与技术”习题及答案教材:《信息安全概论》段云所,魏仕民,唐礼勇,陈钟,高等教育出版社第一章概述(习题一,p11)1.信息安全的目标是什么?答:信息安全的目标是保护信息的机密性、完整性、抗否认性和可用性;也有观点认为是机密性、完整性和可用性,即CIA(Confidentiality,Integrity,Availability)。
机密性(Confidentiality)是指保证信息不被非授权访问;即使非授权用户得到信息也无法知晓信息内容,因而不能使用完整性(Integrity)是指维护信息的一致性,即信息在生成、传输、存储和使用过程中不应发生人为或非人为的非授权簒改。
抗否认性(Non-repudiation)是指能保障用户无法在事后否认曾经对信息进行的生成、签发、接收等行为,是针对通信各方信息真实同一性的安全要求。
可用性(Availability)是指保障信息资源随时可提供服务的特性。
即授权用户根据需要可以随时访问所需信息。
2.简述信息安全的学科体系。
解:信息安全是一门交叉学科,涉及多方面的理论和应用知识。
除了数学、通信、计算机等自然科学外,还涉及法律、心理学等社会科学。
信息安全研究大致可以分为基础理论研究、应用技术研究、安全管理研究等。
信息安全研究包括密码研究、安全理论研究;应用技术研究包括安全实现技术、安全平台技术研究;安全管理研究包括安全标准、安全策略、安全测评等。
3. 信息安全的理论、技术和应用是什么关系?如何体现?答:信息安全理论为信息安全技术和应用提供理论依据。
信息安全技术是信息安全理论的体现,并为信息安全应用提供技术依据。
信息安全应用是信息安全理论和技术的具体实践。
它们之间的关系通过安全平台和安全管理来体现。
安全理论的研究成果为建设安全平台提供理论依据。
安全技术的研究成果直接为平台安全防护和检测提供技术依据。
平台安全不仅涉及物理安全、网络安全、系统安全、数据安全和边界安全,还包括用户行为的安全,安全管理包括安全标准、安全策略、安全测评等。
1.密码体制分类:1)对称密码体制(密钥必须完全保密、加密与解密密钥相同,或可由其中一个很容易推出另一个,又称秘密密钥、单钥、传统密码体制,包括分组密码和序列密码)优点:加解密速度较快,有很高的数据吞吐率;使用的密钥相对较短;密文的长度与明文长度相同;缺点:密钥分发需要安全通道;密钥量大,难于管理;难以解决不可否认问题。
2)非对称密码体制(使用两个密钥,一个是对外公开的公钥,一个是必须保密的私钥,不能由公钥推出私钥,又称双钥或公开密钥密码体制)优点:密钥的分发相对容易;密钥管理简单;可以有效地实现数字签名。
缺点:与对称密码体制相比,非对称密码体制加解密速度较慢;同等安全强度下,非对称密码体制要求的密钥位数要多一些;密文的长度往往大于明文长度。
2.AES与DES对比:1)相似处:二者的圈(轮)函数都是由3层构成:非线性层、线性混合层、子密钥异或,只是顺序不同;AES的子密钥异或对应于DES中S盒之前的子密钥异或;AES的列混合运算的目的是让不同的字节相互影响,而DES中F函数的输出与左边一半数据相加也有类似的效果;AES的非线性运算是字节代换,对应于DES中唯一的非线性运算S盒;行移位运算保证了每一行的字节不仅仅影响其它行对应的字节,而且影响其他行所有的字节,这与DES中置换P相似。
2)不同之处:AES的密钥长度(128位192位256位)是可变的,而DES的密钥长度固定为56位;DES是面向比特的运算,AES是面向字节的运算;AES的加密运算和解密运算不一致,因而加密器不能同时用作解密器,DES 则无此限制。
3.Hash函数:也称散列、哈希、杂凑函数等,是一个从消息空间到像空间的不可逆映射;可将任意长度的输入经过变换得到固定长度的输出;是一种具有压缩特性的单向函数。
性质:1)H可应用于任意长度的消息2)H产生定长的输出3)对任意给定的消息x,计算H(x)较容易,用硬件和软件均可实现4)单向性5)抗弱碰撞性6)抗强碰撞性应用:数字签名;生成程序或者文档的数字指纹;用于安全传输和存储口令特点:1)输入数字串与输出数字串具有唯一的对应关系;输入数字串中2)任何变化会导致输出数字串也发生变化;从输出数字串不能够反求出输入数字串。
_四45五3六57十4十一34十二47没做“信息安全理论与技术”习题及答案教材:《信息安全概论》段云所,魏仕民,唐礼勇,陈钟,高等教育出版社第一章概述(习题一,p11)1.信息安全的目标是什么?答:信息安全的目标是保护信息的机密性、完整性、抗否认性和可用性;也有观点认为是机密性、完整性和可用性,即CIA(Confidentiality,Integrity,Availability)。
机密性(Confidentiality)是指保证信息不被非授权访问;即使非授权用户得到信息也无法知晓信息内容,因而不能使用完整性(Integrity)是指维护信息的一致性,即信息在生成、传输、存储和使用过程中不应发生人为或非人为的非授权簒改。
抗否认性(Non-repudiation)是指能保障用户无法在事后否认曾经对信息进行的生成、签发、接收等行为,是针对通信各方信息真实同一性的安全要求。
可用性(Availability)是指保障信息资源随时可提供服务的特性。
即授权用户根据需要可以随时访问所需信息。
2.简述信息安全的学科体系。
解:信息安全是一门交叉学科,涉及多方面的理论和应用知识。
除了数学、通信、计算机等自然科学外,还涉及法律、心理学等社会科学。
信息安全研究大致可以分为基础理论研究、应用技术研究、安全管理研究等。
信息安全研究包括密码研究、安全理论研究;应用技术研究包括安全实现技术、安全平台技术研究;安全管理研究包括安全标准、安全策略、安全测评等。
3. 信息安全的理论、技术和应用是什么关系?如何体现?答:信息安全理论为信息安全技术和应用提供理论依据。
信息安全技术是信息安全理论的体现,并为信息安全应用提供技术依据。
信息安全应用是信息安全理论和技术的具体实践。
它们之间的关系通过安全平台和安全管理来体现。
安全理论的研究成果为建设安全平台提供理论依据。
安全技术的研究成果直接为平台安全防护和检测提供技术依据。
平台安全不仅涉及物理安全、网络安全、系统安全、数据安全和边界安全,还包括用户行为的安全,安全管理包括安全标准、安全策略、安全测评等。
对称密码体制的原理
对称密码体制是指使用相同的密钥进行加密和解密的密码算法。
其原理基于异或运算和分组加密算法。
在对称密码体制中,发送方和接收方之间共享一个密钥,该密钥被用来对数据进行加密和解密。
加密使用密钥对数据进行加密,解密则使用相同的密钥对数据进行解密。
密钥的加密和解密使用异或运算,即将要加密或解密的数据与密钥进行异或运算,得到一个新的比特序列,该比特序列作为新的密钥,再次用于加密或解密。
分组加密算法是将数据分成若干组,每组数据使用密钥进行加密,从而实现数据的安全性。
常用的分组加密算法有 DES、3DES、AES 等。
对称密码体制具有高效、安全、易于实现等优点,被广泛运用于网络通信、电子邮件等领域。
什么是密码体制怎么组成的 密码体制是指能完整地解决信息安全中的机密性、数据完整性、认证、⾝份识别、可控性及不可抵赖性等问题中的⼀个或⼏个的⼀个系统。
那么你对密码体制了解多少呢?以下是由店铺整理关于什么是密码体制的内容,希望⼤家喜欢! 密码体制的定义 完成加密和解密的算法。
通常,数据的加密和解密过程是通过密码体制(cipher system) +密钥(keyword)来控制的。
密码体制必须易于使⽤,特别是应当可以在微型计算机使⽤。
密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,⽽是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破⼝。
密码体制的基本模式 通常的密码体制采⽤移位法、代替法和代数⽅法来进⾏加密和解密的变换,可以采⽤⼀种或⼏种⽅法结合的⽅式作为数据变换的基本模式,下⾯举例说明: 移位法也叫置换法。
移位法把明⽂中的字符重新排列,字符本⾝不变但其位置改变了。
例如最简单的例⼦:把⽂中的字母和字符倒过来写。
或将密⽂以固定长度来发送 5791ECNI SYLDIPAT DEVLOBES AHYTIRUC ESATAD** 密码体制的技术分类 密码体制分为私⽤密钥加密技术(对称加密)和公开密钥加密技术(⾮对称加密)。
1、对称密码体制 对称密码体制是⼀种传统密码体制,也称为私钥密码体制。
在对称加密系统中,加密和解密采⽤相同的密钥。
因为加解密密钥相同,需要通信的双⽅必须选择和保存他们共同的密钥,各⽅必须信任对⽅不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。
对于具有n个⽤户的⽹络,需要n(n-1)/2个密钥,在⽤户群不是很⼤的情况下,对称加密系统是有效的。
但是对于⼤型⽹络,当⽤户群很⼤,分布很⼴时,密钥的分配和保存就成了问题。
对机密信息进⾏加密和验证随报⽂⼀起发送报⽂摘要(或散列值)来实现。
⽐较典型的算法有DES(Data Encryption Standard数据加密标准)算法及其变形Triple DES(三重DES),GDES(⼴义DES);欧洲的IDEA;⽇本的FEAL N、RC5等。
第三章对称密码体制计算机科学与技术学院对称密码体制§1、对称密码体制简介§2、典型的对称密码算法§3、数据加密标准DES§4、高级数据加密标准AES§5、密码分析§6、分组密码的工作模式§7、流密码简介23§对称密码体制(私钥):加密密钥和解密密钥相同,且都需要保密。
•优点:加密算法比较简便、高效、密钥简短,对方破译极其困难,且经受住时间的检验和攻击;•缺点:密钥必须通过安全的途径传送。
•系统的机密性主要取决于密钥的安全性。
•加密的方式:§按字符逐位加密(流密码)§将明文消息分组(分组密码)•常用算法:DES•适用范围:数据加密、消息认证1、对称密钥体制简介2、典型的对称加密算法1、DES加密算法§定义:DES 全称为Data Encryption Standard即数据加密算法,它是IBM公司于1975年研究成功并公开发表的,1977年,美国把DES用于国家非保密机关。
§DES是一种采用传统加密方法的分组密码。
它的算法是对称的,既可用于加密又可用于解密。
§基本思想:DES对64比特二进制数据加密,产生64比特等长的密文数据。
使用的密钥为64比特,实际密钥长度为56比特(有8比特用于奇偶校验)。
5典型的对称加密算法§2、IDEA算法•IDEA(International Data Encryptdri Algorithm),即“国际数据加密算法”。
•IDEA采用基于“相异代数群上的混合运算”的设计思想,其算法的明、密文组位长度为64位,密钥长度为128位。
§3、FEAL-8密码•FEAL密码算法家族是日本NTT(日本电报电话公司)设计的。
密钥组位长度为64比特,明、密文组位长度为64比特。
作为一种分组密码,与DES相比,其增加了每一轮迭代的算法强度,因此可以通过减少迭代次数而提高运算速度。
6典型的对称加密算法§4、LOKI算法•LOKI算法作为DES的一种潜在替代算法于1990年在密码学界首次亮相。
LOKI以64位二进制分组加密数据,也使用64位密钥(只是其中无奇偶校验位),所有64位均为密钥,迭代次数为16。
§5、Khufu和Khafre算法•1990年由默克尔设计的这对算法具有较长的密钥,适合于软件实现,比较安全可靠。
Khufu算法的总体设计类似于DES,明、密文组位长度为64位,只是拥有512位(64字节)的密钥。
73、数据加密标准DES•DES是一种块加密算法,每次处理64比特的明文块,输出64比特的密文块。
•算法使用一个56比特的主密钥,包括16次迭代过程,每次迭代使用一个不同的48比特子密钥,子密钥从主密钥中生成。
•DES加密和解密使用相同的算法,两者的不同只是子密钥的次序刚好相反。
•DES的缺点:密钥长度不够长,迭代次数不够多。
8数据加密标准DES 分析§算法流程:DES 算法大致可以分成四个部分:1.初始置换§DES 算法的入口参数•Key :为8个字节共64位,是DES 算法的工作密钥;•Data :为8个字节64位,是要被加密或被解密的数据;•Mode :为DES 的工作方式,有两种:加密或解密。
2.迭代过程3.逆置换4.子密钥生成§DES 算法安全性§穷举搜索法:56位长的密钥的穷举空间为256。
§差分密码分析法:搜索空间为247个密文对。
§线性密码分析法:搜索空间为243个密文对。
9DES 处理过程初始换位第1轮变换第2轮变换第16轮变换逆初始换位56比特密钥64 比特明文64 比特密文(a)L i-1R i-1L i-1⊕f(R i-1,K i )L i R i(b)(a)DES 算法过程(b)一轮变换过程11对DES 攻击结果及其启示§1997年1月28日美国RSA 数据安全公司悬赏“秘密密钥挑战”竞赛•48位的RC5 313小时/3500台计算机•1997年3月13日Rocke Verser 设计一个攻击程序(DESCHALL ),参加的志愿者有78516个,第96天(6月17日晚10:39)Michael Sanders 破译成功,获1万美圆奖金。
搜索量为24.6%。
12密钥长度(bit)穷举时间4078秒48 5 小时5659天6441年7210,696年802,738,199年88700,978,948年96179,450,610,898年11211,760,475,235,863,837年128770,734,505,057,572,442,069年DESCHALL搜索速度估算13DES算法的安全性1.64位密钥短采用三重DES。
E(E(E(m,k1),k2),K1)2.弱密钥在DES所有密钥中,有几个特别的密钥,变换后任意一周期的密钥都是相同的,会降低DES的安全性使用者一定要避免。
0101 0101 0101 0101 (校验位)0000000 00000001F1F 1F1F 1F1F 1F1F 0000000 FFFFFFFE0E0 E0E0 E0E0 E0E0FFFFFFF 0000000FEFE FEFE FEFE FEFE FFFFFFF FFFFFFF3.半弱密钥这些密钥只产生2个不同的子密钥。
01FE 01FE 01FE 01FE FE01 FE01 FE01 FE0101E0 01E0 01F1 01F1 E001 E001 F101 F1014.S-盒可能隐含有陷门S-盒的设计者并没公开算法设计的原理和所有的技术细节,专家认为S-盒可能隐含有陷门。
有人论证采用56位密钥,DES可以已知明文攻击下通过穷举搜索被破译。
5.攻击:差分攻击、线性攻击、相关密钥攻击等。
1415DES k1DES DES k2k3p C 数据加密标准DES 分析§多重DES §二重DES 算法§三重DES 算法3DES 简介3DES的模式3DES有三种不同的模式DES-EDE3,使用3个不同的密钥,对数据进行加密、解密、再加密。
4、高级加密标准(AES)§AES的起源§AES的设计原则§AES算法描述19 1. AES的起源§1997年9月,NIST征集AES方案,以替代DES。
§1999年8月,以下5个方案成为最终候选方案:MARS, RC6, Rijndael, Serpent,Twofish。
§2000年10月,由比利时的Joan Daemen和Vincent Rijmen提出的算法最终胜出。
(Rijndael 读成Rain Doll。
)§http://www.esat.kuleuven.ac.be/~rijmen/ rijndael/202. AES 的设计原则§能抵抗所有已知的攻击;§在各种平台上易于实现,速度快;§设计简单。
Rijndael 是一个分组密码算法,其分组长度和密钥长度相互独立,都可以改变。
213. AES算法的一般描述233.AES 算法加密部分的实现明文分组和密钥的组织排列方式01234567891011121314150481215913261014371115Fig 1. 以明文分组为128bits 为例组成的阵列25一些相关的的术语定义和表示§状态(State ):密码运算的中间结果称为状态。
§State 的表示:状态用以字节为基本构成元素的矩阵阵列来表示,该阵列有4行,列数记为Nb 。
Nb=分组长度(bits )÷32Nb 可以取的值为4,6,8,对应的分组长度为128,192,256 bits 。
§密码密钥(Cipher Key )的表示:Cipher Key 类似地用一个4行的矩阵阵列来表示,列数记为Nk 。
Nk=密钥长度(bits )÷32Nk 可以取的值为4,6,8,对应的密钥长度为128,192,256 bits 。
27Fig 4.分组长度和密钥长度均为128 bits时的Rijndael 加密算法框图Data / Key Addition Rnd 0Rnd 1Rnd 8Final RndKey Schedule CipherTextKey PlainText29用伪代码表示的Rijndael轮变换一般的轮变换Round(State, RoundKey) {ByteSubstitution;ByteRotation;MixColumn;AddRounKey;}结尾轮变换FinalRound(State,RoundKey){ByteSubstituion;ByteRotation;AddRoundKey;}31ByteSubstitution(字节替代)ByteSubstitution是一个非线性的字节替代,独立地在每个状态字节上进行运算。
它包括两个变换。
1. 在有限域GF(28)上求乘法逆,‘00’映射到它自身。
2. 在GF(2)上进行下面的仿射变换:32y0 1 1 1 1 1 0 0 0 x0 0y1 0 1 1 1 1 1 0 0 x1 1y2 0 0 1 1 1 1 1 0 x2 1y3 0 0 0 1 1 1 1 1 x3 0y4 = 1 0 0 0 1 1 1 1 x4 +0y5 1 1 0 0 0 1 1 1 x5 0y6 1 1 1 0 0 0 1 1 x6 1y7 1 1 1 1 0 0 0 1 x7 133ByteRotation(字节移位)在ByteRotation变换中,状态阵列的后3行循环移位不同的偏移量。
第1行循环移位C1字节,第2行循环移位C2字节,第3行循环移位C3字节。
偏移量C1、C2、C3与分组长度Nb有关,如下表所示:Nb C1C2C341236123813435MixColumn(列混合)将状态的列看作是有限域GF(28)上的多项式a(x),与多项式c(x) = 03 x3 + 01 x2 + 01 x+02相乘(模x4+1)。
令b(x) = c(x) ×a(x),写成矩阵形式为:b0 02 03 01 01 a0b1 = 0102 03 01 a1b2 01 0102 03 a2b3 03 01 01 02 a337AddRoundKey(轮密钥加)将轮密钥与状态按比特异或。
轮密钥是通过Key Schedule过程从密码密钥中得到的,轮密钥长度等于分组长度。
39Fig 7. Rijndael 加密及解密的标准结构Block , Key Length = 128 bitsPlaintext(128 bits)ByteSubstitution MixColumn +Ciphertext(128 bits)K 0Kii=10ByteRotation for i=1 to 10Ciphertext(128 bits)K 10InvMixCoumnInvByteRotationInvByteSubstitution ++K i+Plaintext(128 bits)i = 9for i=9 to 0加密解密41用伪代码表示的Rijndael 加密算法Rijndael ( State, CipherKey ){KeyExpansion ( CipherKey, ExpandedKey );AddRoundKey ( State, ExpandedKey );For ( i=1; i<Rnd; i++ )Round ( State, ExpandedKey + Nb*i );FinalRound ( State, ExpandedKey + Nb*Rnd );}42AES的密钥调度密钥调度包括两个部分:密钥扩展和轮密钥选取。