对称加密算法
对称加密算法的概念

对称密码算法有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。
在大多数对称算法中,加密解密密钥是相同的。
这些算法也叫秘密密钥算法或单密钥算法,它要求发送者和接收者在安全通信之前,商定一个密钥。
对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加密解密。
只要通信需要保密,密钥就必须保密。
对称算法的加密和解密表示为:Ek(M)=CDk(C)=M对称算法可分为两类[8]。
一次只对明文中的单个位(有时对字节)运算的算法称为序列算法或序列密码。
另一类算法是对明文的一组位进行运算,这些位组称为分组,相应的算法称为分组算法或分组密码。
现代计算机密码算法的典型分组长度为64位――这个长度大到足以防止分析破译,但又小到足以方便作用。
这种算法具有如下的特性:Dk(Ek(M))=M常用的采用对称密码术的加密方案有5个组成部分(如图3所示):l)明文:原始信息。
2)加密算法:以密钥为参数,对明文进行多种置换和转换的规则和步骤,变换结果为密文。
3)密钥:加密与解密算法的参数,直接影响对明文进行变换的结果。
4)密文:对明文进行变换的结果。
5)解密算法:加密算法的逆变换,以密文为输入、密钥为参数,变换结果为明文。
对称密码术的优点在于效率高(加/解密速度能达到数十兆/秒或更多),算法简单,系统开销小,适合加密大量数据。
尽管对称密码术有一些很好的特性,但它也存在着明显的缺陷,包括:l)迸行安全通信前需要以安全方式进行密钥交换。
这一步骤,在某种情况下是可行的,但在某些情况下会非常困难,甚至无法实现。
2)规模复杂。
举例来说,A与B两人之间的密钥必须不同于A和C两人之间的密钥,否则给B的消息的安全性就会受到威胁。
在有1000个用户的团体中,A需要保持至少999个密钥(更确切的说是1000个,如果她需要留一个密钥给他自己加密数据)。
对于该团体中的其它用户,此种倩况同样存在。
这样,这个团体一共需要将近50万个不同的密钥!推而广之,n个用户的团体需要N2/2个不同的密钥。
加密文件和解密方法

加密文件和解密方法加密和解密是信息安全领域的重要概念,用于保护敏感信息的安全性。
本文将介绍几种常见的文件加密和解密方法,并简要说明它们的原理和适用情景。
一、对称加密算法对称加密算法使用相同的密钥对文件进行加密和解密。
常见的对称加密算法有DES、AES和3DES等。
DES(Data Encryption Standard)是一种采用对称密钥加密的块加密算法,密钥长度为64位。
由于DES的密钥长度较短,因此安全性相对较低,现已不推荐使用。
AES(Advanced Encryption Standard)是一种高级加密标准,是目前使用范围最广泛的对称加密算法。
AES可以采用128位、192位或256位密钥长度,具有较高的安全性和较快的加密速度。
3DES(Triple Data Encryption Standard)是DES的增强版,使用3个不同的密钥对数据进行3次加密和3次解密。
由于强化了密钥长度,3DES的安全性较DES有所提高。
对称加密算法的优点是加密和解密速度快,适用于大文件的加密和解密。
但由于密钥的传输和管理问题,对称加密算法在网络传输中存在安全隐患。
二、非对称加密算法非对称加密算法使用不同的密钥对文件进行加密和解密。
常见的非对称加密算法有RSA和DSA等。
RSA(Rivest-Shamir-Adleman)是一种基于大数因子分解的非对称加密算法,其加密和解密过程使用不同的密钥对。
RSA算法的安全性基于大数分解的难题,其密钥长度可选1024位、2048位或4096位。
DSA(Digital Signature Algorithm)是一种基于离散对数问题的非对称加密算法,主要用于数字签名和认证。
DSA算法的安全性基于DL(离散对数问题)的难题,密钥长度通常为1024位或2048位。
非对称加密算法的优点是密钥传输安全,并且可以实现数字签名等功能。
但由于计算复杂度较高,非对称加密算法处理大文件时速度较慢。
计算机对称加密与非对称加密算法对比

计算机对称加密与非对称加密算法对比目录:一、引言二、对称加密算法1. 原理与过程2. 优点与缺点三、非对称加密算法1. 原理与过程2. 优点与缺点四、对称加密算法与非对称加密算法对比1. 安全性2. 效率3. 使用场景五、结论一、引言随着计算机网络与信息安全的快速发展,加密算法成为保护数据安全的重要手段之一。
对称加密算法和非对称加密算法是常见的两种加密算法,它们各自具有一定的优劣势。
本文将对对称加密算法和非对称加密算法进行对比,以便更好地理解它们的差异和适用场景。
二、对称加密算法1. 原理与过程对称加密算法,也称为私钥加密算法,使用相同的密钥进行加密和解密。
其过程为:发送方将明文使用密钥进行加密,得到密文后发送给接收方,接收方使用相同密钥解密密文,还原成明文。
2. 优点与缺点- 优点:对称加密算法计算速度快,加密解密效率高;密钥较短,传输更方便;适用于大量数据的加密和解密任务。
- 缺点:密钥需提前共享,安全性依赖于密钥的保密性;一旦密钥泄露,数据容易被破解;无法实现安全的密钥交换。
三、非对称加密算法1. 原理与过程非对称加密算法,也称为公钥加密算法,使用一对密钥进行加密和解密:公钥用于加密,私钥用于解密。
发送方使用接收方的公钥对明文加密后得到密文,接收方使用自己的私钥解密密文还原成明文。
2. 优点与缺点- 优点:非对称加密算法安全性高,由于私钥保密,即使公钥被泄露,攻击者也无法解密密文;可实现安全的密钥交换;适用于通信双方之间的安全通信。
- 缺点:计算量大,加密解密效率相对较低;密钥长度长,占用存储空间和传输带宽;不适合加密大量数据,通常用于小数据量的信息加密。
四、对称加密算法与非对称加密算法对比1. 安全性- 对称加密算法的安全性依赖于密钥的保密性,一旦密钥泄露,数据容易被破解。
而非对称加密算法的安全性由于私钥保密,即使公钥泄露,攻击者也无法解密密文。
- 非对称加密算法的安全性更高,但计算量大,适合用于保护少量关键数据;对称加密算法的安全性相对较低,但计算速度快,适用于大量数据的加密。
对称加密算法名词解释

对称加密算法名词解释对称加密算法名词解释信息安全在现代社会中变得越来越重要,随着信息的快速传输和存储,传统的安全措施已经无法满足日益增长的安全需求。
对称加密算法是一种常见的加密技术,本文将对对称加密算法进行详细的解释和分类。
一、对称加密算法的定义对称加密算法是指加密和解密使用同样的密钥进行的算法,主要有以下几个特点:1. 加密速度快,适用于大规模的数据加密。
2. 容易实现并且效率高,可以在已知密钥的情况下进行解密。
3. 安全性依赖于密钥的保密性,密钥泄漏后会导致加密数据的暴露。
二、对称加密算法的分类1. 分组密码分组密码是对称加密算法中的一类,指的是把明文按照一定的块长进行分组,并且对每个块进行加密的算法。
常用的分组密码算法有DES、3DES、AES等。
DES是数据加密标准,使用56位的密钥对64位的数据进行加密,加密速度非常快,但是安全性较低,易受到暴力破解攻击。
3DES是DES的增强版,使用两个或者三个密钥对数据进行三次加密,增强了安全性。
AES是高级加密标准,使用128位、192位或256位的密钥对数据进行加密,安全性高,密钥长度越长,加密强度越高。
2. 流密码流密码是对称加密算法中的另一类,指的是数据按照位进行分组,并且对每个位进行加密操作的算法。
常用的流密码算法有RC4、Salsa20等。
RC4是最常用的流密码算法之一,具有快速加密和解密以及简洁的代码特点。
但是RC4被发现存在多个安全漏洞,不再被推荐使用。
Salsa20是流密码中比较新的算法,安全性强,速度快,适用于大规模数据的加密。
三、对称加密算法的应用对称加密算法是保证网络安全的重要手段,广泛应用于以下领域:1. 数据库加密:对数据库的敏感信息进行加密保护,防止数据库被非法访问。
2. 传输加密:加密通信的内容,防止通信过程中信息被拦截篡改。
3. 硬盘加密:对硬盘内容进行加密,防止窃取电脑硬盘数据。
四、总结对称加密算法是一种常见的加密技术,分为分组密码和流密码两种类型。
对称密码算法的几种模式

对称密码算法的几种模式
对称密码算法主要有四种加密模式,分别是:
1. 电子密码本模式(Electronic Code Book,ECB):在这种模式中,加密的数据被分成若干组,每组的大小与加密密钥长度相同,然后每组都用相同的密钥进行加密。
这种模式的优点是加密速度快,缺点是如果原消息中有重复的明文块,那么加密后的密文块也会重复,因此它只适合加密小消息。
2. 加密块链模式(Cipher Block Chaining,CBC):在这种模式中,明文被分成固定长度的块,然后将前面一个加密块输出的密文与下一个要加密的明文块进行异或操作,将计算结果再用密钥进行加密得到密文。
这种模式的优点是安全性好,适合传输长度长的报文,缺点是需要一个初始化向量(IV)。
3. 加密反馈模式(Cipher Feedback Mode,CFB):在这种模式中,使用流加密法,通过将前面加密块输出的密文作为下一块明文的加密密钥。
这种模式的优点是加密速度快,缺点是如果密文被篡改,可能会影响后续密文的安全性。
4. 输出反馈模式(Output Feedback Mode,OFB):在这种模式中,加密的密钥是由前面加密块输出的密文生成的,然后将这个密钥与下一个要加密的明文块进行异或操作得到密文。
这种模式的优点是加密速度快,缺点是如果密文被篡改,可能会影响后续密文的安全性。
这些模式各有优缺点,需要根据具体的应用场景和需求来选择适合的加密模式。
常见的几种加密算法

常见的几种加密算法在信息安全领域中,加密算法被广泛应用于保护数据的机密性、完整性和可靠性。
常见的几种加密算法包括对称加密算法、非对称加密算法和哈希算法。
1. 对称加密算法:对称加密算法使用同一个密钥对信息进行加密和解密。
常见的对称加密算法包括DES(Data Encryption Standard)、3DES(Triple Data Encryption Standard)、AES(AdvancedEncryption Standard)等。
对称加密算法速度快且适合加密大数据量,但由于密钥同样需要传输,因此密钥的安全性成为对称加密算法的一个主要问题。
2. 非对称加密算法:非对称加密算法使用一对密钥,即公钥和私钥,分别用于加密和解密。
公钥可以公开,任何人都可以用公钥加密数据,但只有私钥的持有者才能解密数据。
常见的非对称加密算法包括RSA算法、DSA(Digital Signature Algorithm)算法和ECC(Elliptic Curve Cryptography)算法。
非对称加密算法安全性较高,但加密和解密的过程相对较慢,因此通常与对称加密算法结合使用,提高效率。
3. 哈希算法:哈希算法将任意长度的数据映射为固定长度的哈希值,并具有不可逆性和唯一性。
哈希算法常用于验证数据的完整性和真实性,常见的哈希算法有MD5(Message Digest Algorithm 5)、SHA-1(Secure Hash Algorithm 1)和SHA-256等。
哈希算法计算速度较快,但由于将不同长度的数据映射为固定长度的哈希值,可能存在哈希碰撞的问题,即不同的数据产生相同的哈希值。
除了上述几种常见的加密算法,还有一些特殊用途的加密算法,例如同态加密算法、椭圆曲线加密算法等。
同态加密算法可以在不解密的情况下对加密数据进行特定运算,保护数据的隐私性。
椭圆曲线加密算法是一种基于椭圆曲线数学问题的加密算法,具有较高的安全性和性能。
什么是对称加密?

什么是对称加密?对称加密是一种常见的加密算法,也被称为私钥加密。
该加密方式使用相同的密钥来进行加密和解密操作。
在保护信息安全方面,对称加密发挥着重要的作用。
下面,将对对称加密的原理、应用场景和优势进行详细的科普介绍。
一、对称加密的原理对称加密的原理是使用同一密钥对数据进行加密和解密。
加密过程中,将明文数据通过密钥进行变换,生成密文数据;而在解密过程中,将密文数据通过相同的密钥进行逆变换,恢复成明文数据。
对称加密算法具有高效性和可靠性的特点,其安全性依赖于密钥的保护。
1.1 加密过程(1)明文数据输入:对称加密中,需要输入明文数据,明文数据可以是文本、图片、视频等等。
(2)密钥生成:在对称加密中,密钥是非常重要的一部分。
密钥可以通过算法生成,通常需要保证密钥的安全性。
(3)加密算法执行:通过加密算法,将明文数据和密钥进行处理,生成密文数据。
1.2 解密过程(1)密文数据输入:解密过程中,需要输入密文数据。
(2)密钥生成:与加密过程相同,需要生成相同的密钥。
(3)解密算法执行:通过解密算法,将密文数据和密钥进行处理,恢复成明文数据。
二、对称加密的应用场景对称加密在各种应用场景中都有广泛的应用。
下面列举了几个典型的应用场景。
2.1 网络通信保密在网络通信过程中,对称加密可以保证通信数据的保密性。
通过在通信双方事先共享密钥,可以在数据传输的过程中进行加密和解密操作,防止敏感信息被窃取。
2.2 文件存储加密对称加密也可以用于文件存储过程中。
通过对文件进行加密操作,即使文件被他人获取,也无法轻易解密其中的内容。
2.3 数据库安全对称加密还广泛应用于数据库安全领域。
在数据库存储敏感数据时,可以使用对称加密算法对数据进行加密,保证数据的安全性。
三、对称加密的优势对称加密作为一种常见且成熟的加密方式,具有以下几个优势。
3.1 高效性对称加密算法的加解密速度非常快,适用于大数据量的加密需求。
相对于其他加密算法,对称加密具有明显的优势。
国密对称算法

国密对称算法(实用版)目录1.国密对称算法的概述2.国密对称算法的加密和解密过程3.国密对称算法的优势与应用场景4.我国国密对称算法的发展历程正文一、国密对称算法的概述国密对称算法,即国家密码局制定的对称加密算法,是一种在我国广泛应用的加密技术。
其特点是加密和解密使用相同的密钥,因此名为对称加密算法。
相较于非对称加密算法,对称加密算法具有更高的加密效率和安全性。
二、国密对称算法的加密和解密过程国密对称算法的加密过程分为以下几个步骤:1.首先,选取一个密钥,用于加密和解密数据。
2.将明文数据进行特定处理,如分组、填充等,得到待加密的数据。
3.使用密钥对待加密数据进行加密,得到密文数据。
解密过程与加密过程相反,使用密钥对密文数据进行解密,得到原始明文数据。
三、国密对称算法的优势与应用场景国密对称算法具有以下优势:1.加密速度快,效率高,适用于大量数据的加密和传输。
2.密钥管理简单,便于实现和部署。
3.算法成熟,经过长时间实践检验,具有较高的安全性。
因此,国密对称算法广泛应用于各种网络安全领域,如电子政务、电子商务、信息传输等。
四、我国国密对称算法的发展历程我国国密对称算法的发展经历了以下几个阶段:1.20 世纪 80 年代,我国开始研究对称加密算法,并逐步制定了一系列国家标准。
2.21 世纪初,我国在原有基础上,不断完善和优化国密对称算法,提高了算法性能和安全性。
3.近年来,随着互联网的普及和信息安全需求的提升,我国加大对国密对称算法的研发投入,推动其在各领域的广泛应用。
总之,国密对称算法作为一种重要的加密技术,在我国信息安全领域发挥着重要作用。
第1页共1页。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对称密码基本加密实验【实验内容】通过运算器工具实现DES、3DES、IDEA、AES-128/192/256、SMS4等算法的加解密计算通过流程演示工具完成DES算法加解密运算的逐步演示和实例演示通过轮密钥查看工具查看3DES和AES的轮密钥生成过程查看AES算法逐步计算的动画演示对DES、3DES、IDEA、AES-128/192/256、SMS4等算法的加解密进行扩展实验对DES、3DES、IDEA、AES-128/192/256、SMS4等算法的加解密进行算法跟踪对称密码基本加密实验【实验原理】对称密码体制使用相同的加密密钥和解密密钥,其安全性主要依赖于密钥的保密性。
分组密码是对称密码体制的重要组成部分,其基本原理为:将明文消息编码后的序列m0,m1,m2,…,m i划分为长度为L(通常为64或128)位的组m=(m0,m1,m2,…,m L-1),每组分别在密钥k=(k0,k1,k2,…,k t-1)(密钥长度为t)的控制下变换成等长的一组密文输出序列c=(c0,c1,c2,…,c L-1)。
分组密码的模型如图1.1.4-1所示。
012t-1012t-1图1.1.4-1分组密码实际上是在密钥的控制下,从一个足够大和足够好的置换子集中简单而迅速地选出一个置换,用来对当前输入的明文分组进行加密变换。
现在所使用的对称分组加密算法大多数都是基于Feistel分组密码结构的,遵从的基本指导原则是Shannon提出的扩散和混乱,扩散和混乱是分组密码的最本质操作。
分组密码与流密码的对比:分组密码以一定大小的分组作为每次处理的基本单元,而流密码则以一个元素(如一个字母或一个比特)作为基本的处理单元;流密码使用一个随时间变化的加密变换,具有转换速度快、低错误传播的优点,软硬件实现简单,缺点是低扩散、插入及修改不敏感;分组密码使用的是一个不对时间变化的固定变换,具有扩散性好、插入敏感等优点,缺点是加解密处理速度慢、存在错误传播。
一、DES算法数据加密标准(Data Encryption Standard,DES)中的算法是第一个也是最重要的现代对称加密算法,其分组长度为64比特,使用的密钥长度为56比特(实际上函数要求一个64位的密钥作为输入,但其中用到的有效长度只有56位,剩余8位可作为奇偶校验位或完全随意设置),DES加解密过程类似,加解密使用同样的算法,唯一不同的是解密时子密钥的使用次序要反过来。
DES的整个体制是公开的,系统安全性完全依靠密钥的保密。
DES的运算可分为如下三步:(1)对输入分组进行固定的“初始置换”IP,可写为(L0,R0)=IP(输入分组),其中L0和R0称为“(左,右)半分组”,都是32比特的分组,IP是公开的固定的函数,无明显的密码意义。
(2)将下面的运算迭代16轮(i=1,2,…,16):Li=Ri-1 ,Ri-1=Li-1f(Ri-1,ki);这里ki称为轮密钥,是56比特输入密钥的一个48比特字串,f称为S盒函数(S表示交换),是一个代换密码,目的是获得很大程度的信息扩散。
(3)将十六轮迭代后得到的结果(L16,R16)输入到IP的逆置换来消除初始置换的影响,这一步的输出就是DES算法的输出,即输出分组=IP-1(R16,L16),此处在输入IP-1之前,16轮迭代输出的两个半分组又进行了一次交换。
DES的加密与解密算法都是用上述三个步骤,不同的是如果在加密算法中使用的轮密钥为k1,k2,…,k16,则解密算法中的轮密钥就应当是k16,k15,…,k1,可记为(k1`,k2`,…,k16`)=(k16,k15,…,k1)。
DES算法的一轮迭代处理过程如图1.1.4-2所示。
图1.1.4-2DES的计算过程如图1.1.4-3所示。
图1.1.4-3在加密密钥k 下,将明文消息m 加密为密文c ,使用DES 将c 在k 下解密为明文,解密过程如下:(L 0`,R 0`)=IP(c)=IP(IP -1(R 16,L 16)),即(L 0`,R 0`)=(R 16,L 16);在第一轮中,L 1`=R 0`=L 16=R 15,R 1`=L 0`f(R 0`,k 1`)=R 16f(L 16,k 1`)=[L 16f(R 15,k 16)]f(R 15,k 16)=L 15,即(L 1`,R 1`)=(R 15,L 15);同样的,在接下来的15轮迭代中,可以得到(L 2`,R 2`)=(R 14,L 14),……,(L 16`,R 16`)=(R 0,L 0);最后一轮结束后,交换L 16`和R 16`,即(R 16`,L 16`)=(L 0,R 0),IP -1(L 0,R 0)=IP -1(IP(m))=m ,解密成功。
二、 3DES 算法DES 的一个主要缺点是密钥长度较短,同时也被认为是DES 仅有的最严重的弱点,容易遭受穷举密钥搜索攻击。
克服密钥较短缺陷的一个解决方法是使用不同的密钥,多次运行DES 算法,3DES 应运而生。
3DES 具有四种使用模式,其中的一种为加密-解密-加密的3DES 方案,加解密过程可表示为:,其中。
三、 IDEA 算法1990年,瑞士联邦理工学院的中国青年学者来学嘉(Xuejia Lai )和著名密码专家James12i16L. Massey在EUROCRYPT 1990国际会议上提出了一个名叫PES(Proposed Encryption Standard)分组密码算法,稍后经过改进成IPES(Improved PES),并于1992年被最终定名为国际数据加密标准(International Data Encryption Algorithm,IDEA)。
国际上普遍认为IDEA是继DES 之后的,又一个成功的分组密码,已经应用于Email系统的PGP(Pretty Good Privacy)、OpenPGP的标准算法以及其他加密系统中。
IDEA是一个分组密码,也是一个对合运算,明文和密文的分组长度为64比特,密钥长度为128比特。
IDEA易于实现,软硬件实现都很方便,而且加解密速度很快。
(一)加密运算IDEA中的三个运算为:l 6位子分组的相异或;16位整数的模216加,即;16位整数的模216+1乘,即。
IDEA的整体结构如图1.1.4-4所示,由8轮迭代和一个输出变换组成。
64位的明文分为4个子块,每块16位,分别记为。
64位的密文也分为4个子块,每块16位,分别记为。
128位的密钥经过子密钥生成算法产生出52个16位的子密钥,每一轮加密迭代使用6个子密钥,输出变换使用4个子密钥。
记为第r轮迭代使用的第i个子密钥,。
记为输出变换使用的第i个子密钥,。
每一轮的运算步骤如下:(1)。
(2)。
(3)。
(4)。
(5)将第(1)步和第(3)步的结果异或。
(6)将第(2)步和第(4)步的结果异或。
(7)将第(5)步的结果乘以。
(8)将第(6)步和第(7)步的结果相加。
(9)将第(8)步的结果乘以。
(10)将第(7)步和第(9)步的结果相加。
(11)将第(1)步和第(9)步的结果异或。
(12)将第(3)步和第(9)步的结果异或。
(13)将第(2)步和第(10)步的结果异或。
(14) 将第(4)步和第(10)步的结果异或。
(15) 第(11),(12),(13),(14)步的结果为本轮加密迭代的输出结果。
图1.1.4-4(二) 解密运算IDEA 的解密过程和加密过程相同,只是所使用的子密钥不同。
IDEA 采用基本轮函数迭代结构,既采用混淆技术,又采用扩散技术。
具体地,采用了三种不同的代数群,将其混合运算,获得了良好的非线性,增强了密码的安全性。
IDEA 是在Ascom-Tech AG 公司的Hasler 基金会的支持下完成的,在许多国家申请了专利保护,在非商业领域却是自由使用的。
IDEA 的商标为MediaCrypt 所拥有,专利保护期到2010-2011年间。
四、 AES 算法美国国家标准技术协会(NIST)于1997年提出征集一个新的对称密钥分组加密算法作为取代DES 的新的加密标准的公告,并将这个新的算法命名为高级加密标准(Advanced Encryption Standard,AES)。
2000年10月2日,NIST 宣布选中了Rijndeal 算法,建议作为AES 使用,并于2001年正式发布了AES 标准。
Rijndeal 算法是具有分组长度和密钥长度均可变的分组密码,密钥长度和分组长度可独立指定为128比特、192比特或256比特。
为了满足AES 的要求限定处理分组的大小为128比特,密钥长度为128比特、192比特或256比特,相应的迭代轮数为10轮、12轮、14轮,分别记为AES-128/192/256。
Rijndeal 算法采用Square 结构,每一轮都使用代替和混淆并行地处理整个数据分组,包括3个代替和1个混淆。
此处以密钥程度与分组长度均为128比特(此时对应的轮数是10)为例,说明Rijndeal 算法的加解密过程。
128比特的消息(明文、密文)被分为16个字节,记为:输入分组=m 0,m 1,…,m 15;同样的密钥分组也如此:k=k 0,k 1,…,k 15;内部数据结构的表示为一个44矩阵:(1)(9)第一轮输入分组=输入密钥=Rijndeal中的轮变换记为Round(State,RoundKey),这里State是轮消息矩阵,可被看成输入或输出;RoundKey是轮密钥矩阵,由输入密钥通过密钥表导出。
一轮的完成将改变State 的元素的值,即改变State的状态。
轮(除了最后一轮)变换由四个不同的变换组成,如下所示。
Round(State,RoundKey){SubBytes(State);ShiftRows(State);MixColumns(State);AddRoundKey(State,RoundKey);}最后一轮稍有不同,记为FinalRound(State,RoundKey),等于不使用MixColumns函数的Round(State,RoundKey)。
论变换是可逆的,以便于解密。
相应的逆轮变换记为Round-1(State,RoundKey)和FinalRound-1(State,RoundKey)。
SubBytes(State)函数为State的每一个字节x提供了一个非线性代换,任一GF(28)域上的非零字节x被如下变换所代换:y=Ax-1+b;此处A=b=ShiftRows(State)函数在State的每行上运算,对于在第i行的元素,循环左移i个位置。
MixColumns(State)函数在State的每列上作用,此处只描述对一列的作用:对于一列(s0,s1,s2,s3)-1,将其表示成3次多项式s(x)=s3x3+s2x2+s1x+s0;对s(x)做如下运算得到d(x)=c(x)•s(x)(mod x4+1),其中c(x)=c3x3+c2x2+c1x+c0=’03’x3+’01’x2+’01’x+’02’,c(x)的系数是GF(28)域中的元素(以十六进制表示字节)。