本发明专利技术涉及一种加密技术,尤其是AES电路中列混合模块的加解密复用的优化方法。本发明专利技术基于GF(2↑[8])域中的加法操作,来最大程度找出列混合过程中使用的乘法因子的不同,进而在解密过程中加以补足,实现了加密和解密电路共用一个列混合模块,从而减少了所用的电路的规模,有效降低了整个电路的功耗和面积;而且在加密或者解密的单向流程中,使用了列字节处理复用技术,使电路面积进一步减小至原来的四分之一左右,仅用硬线逻辑和三个时钟周期换取了较大程度上的面积节省。本发明专利技术适合于使用VLSI硬件实现,也便于AES协处理器集成与其他微处理器的集成。采用本发明专利技术的AES协处理器在智能卡,无线传感器网络节点等对成本功耗要求较高的特定环境下,能发挥出较大优势。
【技术实现步骤摘要】
本专利技术涉及加解密技术,尤其是AES加解密电路的优化。
技术介绍
AES算法是美国国家标准委员会NIST于2000年公布的一种分组密码算法。它的基本要 求是,采用对称分组密码体制,其分组长度和密钥长度都可改变。密钥长度的最少支持为128、 192、 256,分组长度128位。该算法是把要加密的数据分为每组128bit的数据块(block), 然后用长为128、 196或者256bit的密钥对每组数据进行加密,最后得到密文。AES算法的核心有AddRoundKey(密钥扩展)、SubBytes (字节变换)、ShiftRows (行位 移变换)MixColumns(列混合变换)这4种操作。Subbyte变换为非线性层;ShiftRow和 MixColumn运算为线行混合层;AddRoundKey运算为密钥加层。他们共同组成了各轮迭代变换 的子变换。对于AES加解密算法,列混合模块分为加密列混合模块和解密逆列混合模块。在具体实 现该模块的过程中,如果加密和解密分别进行设计,需要用比较多的电路来实现,这样不利 于AES协处理器的VLSI硬件实现和系统集成。所以,有必要对AES的列混合模块进行优化以 达到节省面积和功耗的目的。
技术实现思路
为了克服AES中列混合模块面积功耗较大,以及加密和解密应用各自列混合模块的重复所 带来的面积和功耗的增加,本专利技术提出一种基于复用技术的处理方法,该方法有效减小AES 算法电路中列混合部分的电路规模,功耗和成本,降低了复杂程度,更加适于使用VLSI硬件 实现禾口集成。本专利技术解决其技术问题所采用的技术方案是根据AES算法中的列混合模块的结构,在找出该模块加密和解密相同部分之后,对不同部分进行优化和拟合。列混合变换是将AES操作中间状态的矩阵的列在GF (28)域中乘以固定多项式c (x)后 模卜+l的结果。列混合变换的逆运算与列混合变换类似,输入多项式在模^+l下与另一个常 数多项式d(x)相乘。此前,在GF(2域中,已有基于乘法找出c (x)和d (x)不同之处, 然后引入多路选择开关在加密和解密时对其进行不同的选通,进而实现的加解密复用的列混 合方案。受此启发,本专利技术基于GF(28)域中的加法找出c (x)和d (x)在GF(28)域中的不同,也 就是找出d (x) -c (x),基于这个不同点在解密中进行补足,并最大程度的复用相同点c (x),完全由与门和异或门构成列混合加解密复用单元模块。根据c (x)和d (x)在GF (28) 域中的关系d(x) = c(x) + {08} (x3 + x) + {0c}(x2 + 1),让S1与S3, S0与S2彼此临近, 使它们分别异或后再在GF(28)域中乘以系数,这样可以更好的保证电路结构的平衡性和规整 性,使结构更加优化。对于c (x)的实现中,在S1, S3和S0, S2分别与各自系数相乘后, 同时分别进行异或,然后两者间再一次异或,这样可保证路径延迟大致相同。对于最后一个 异或门而言,延迟路径长度大致相同,都是从输入端经过两级异或门和一级的乘法操作。这 样,减小了门电路的竞争与冒险,从而有效降低了模块的功耗。而对列混合模块中的输入端硬件连线逻辑单元,用一个计数器控制其连接状态,并且在 其之后组合电路不变的前提下,依次为当Counter^l时,由上至下为S2, S0, S3, Sl;当Counter二2时,由上至下为Sl, S3, S2, S0;3当Counte产3时,由上至下为S0, S2, Sl, S3; 当Counter二4时,由上至下为S3, Sl, S0, S2;最后,只要在加密或解密时,用一个使能信号来控制区分即可实现列混合和逆列混合功 能,简单易行。本专利技术可节省近一半的成本和电路规模,也有助于功耗的降低。本专利技术的有益效果是,以较小的硬件成本的开销和较低的功耗,实现了加解密复用和字 节处理复用的列混合模块,进而可以使AES更好的集成在系统中,有利于VLSI硬件实现。 附图说明下面结合附图和实施例对本技术进一步说明。图1是基于GF(28)域中乘法区分实现的加解密复用的列混合模块结构图。 图2是基于GF(28)域中加法区分实现的加解密复用的列混合模块结构图。 图3是图2中硬连线逻辑单元在计数器控制下的连线关系图。 具体实施例方式下面参照附图详细说明本专利技术。所给出的附图仅用于说明,并不限制本专利技术。AES算法是一种分组密码算法,对于加密和解密模式而言,其电路结构是相同的,适用 的都是32位输入32位输出的列混合模块,只是输入和输出的对应关系不同。由于不论是加 密还是解密,列混合模块实现的都是GF(28)上的乘法和加法,对于加解密的区分仅仅是GF(28) 域中乘的系数不同。而其他过程基本相似。列混合变换将AES操作中间状态的列看作GF(28) 上的多项式,并在模x4 + l下与一个给定的多项式c (x)相乘。列混合变换的逆运算与列混 合变换类似,输入多项式在模x4 + 1下与另一个常数多项式d (x)相乘。既然只是c (x)和d (x)的不同,我们就可以找出它们的最大相同点,然后再在小的差 别上进行弥补,以达到共用的目的,节省成本,这就是本专利技术的主要思想。此前,已经有人提出基于GF(28)上的乘法区分c (x)和d (x)的列混合复用方案,见附 图1。而本设计则是考虑更进一步的节省成本,实现面积优化,提出了基于GF(2上的加法 来区分c (x)和d (x)的方法。根据上述分析结果,本专利技术为了减小加解密计算共同的功耗和面积,需要最大程度的找 出它们之间的相同之处。下面的等式为c (x)和d (x)引出的等式c(x) = {03} x3 + {01} x2 + {01} x + {02};d(x) = {0b}x3 + {0d}x2 + {09} x + {0e};d(x)-c(x) = {08} x3 + {0c}x2 + {08} x + {0c} = {08} (x3 + x) + {0c} (x2 + 1); d(x) = c(x) + {08} (x3 + x) + {0c}(x2 + 1);当d(x)减去c(x)后,便可以看出提取相同的系数后,只有{08}和{(^}是加密和解密的 不同之处,所以,我们利用这一点就可以实现加/解密复用的列混合单元。实现的框架图如附 图2所示。考虑到d (x)和c (x)的区分,也就是{08} (x3 + x) + {0c} (x2 + l)关系式,并考虑电 路图的规整性和平衡性,把S1与S3, S0与S2进行划分,使它们各自进行操作(乘系数和彼 此异或)之后,再进行二者的异或,并从最后一级异或门处看,之前的各个输入端的延迟路 径大致相同,都经历了两级的异或逻辑和一级的乘法逻辑,减少了竞争和冒险,从而有利于 功耗的降低。本专利技术还涉及到在单向流程中,也就是加密或者解密的某-一个方向中,列混合单元的字 节处理复用,从而仅在输入端用简单的连线逻辑便可以实现近四分之一的面积节省。其原理 是,某一列变换中的四个字节分别调用该列混合模块进行列混合运算,之后再重新组成运算 后的新列。由图2可见,模块输入端口为32位,输出端口为8位。由于GF(28)域的特点,一 列中每个字节都本文档来自技高网...
【技术保护点】
一种AES中加解密复用的列混合模块单元,其特征在于, 根据AES算法中的列混合模块的结构,在找出该模块加密和解密相同部分之后,对不同部分进行优化和拟合。基于这个不同点在解密中进行补足,而对相同点进行复用,最大程度的实现面积节省。 基于GF(2↑[8])域中的加法来区分加解密过程中所要相乘的系数。 在输入端用一个硬线连接逻辑单元实现列混合模块的字节处理复用。
【技术特征摘要】
1.一种AES中加解密复用的列混合模块单元,其特征在于,根据AES算法中的列混合模块的结构,在找出该模块加密和解密相同部分之后,对不同部分进行优化和拟合。基于这个不同点在解密中进行补足,而对相同点进行复用,最大程度的实现面积节省。基于GF(28)域中的加法来区分加解密过程中所要相乘的系数。在输入端用一个硬线连接逻辑单元实现列混合模块的字节处理复用。2. 如权利要求l所述,列混合模块单元中,加密相乘系数c (x)和解密相乘系数d (x) 之间的关系,其特征在于,d(x) = c(x) + {08} (x3 + x) + {0c} (x2 + 1)。3. 如权利要求2所述,其中根据c (x)与d (x)的关系,使得S1与S3接近,S0与S2 相临近,且S1与S3, S0与S2分别异或后再在GF(2域中乘以系数,这样可以更好的保证电 路结构的平衡性和规整性,使整体结构更加优化。4. 如权利要求2所述,其中对于c (x)的实现中,在S1, S3和S0, S2分别与各自系 数相乘后,同时分别进行异或,然后两者间再一次异或,这样可保证路径延迟大致相同。5. 如权利要求2所...
【专利技术属性】
技术研发人员:李玉文,张兴,蒋安平,曹健,
申请(专利权)人:北京大学深圳研究生院,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。