CN109033847B - Aes加密运算单元、aes加密电路及其加密方法 - Google Patents

Aes加密运算单元、aes加密电路及其加密方法 Download PDF

Info

Publication number
CN109033847B
CN109033847B CN201810596250.4A CN201810596250A CN109033847B CN 109033847 B CN109033847 B CN 109033847B CN 201810596250 A CN201810596250 A CN 201810596250A CN 109033847 B CN109033847 B CN 109033847B
Authority
CN
China
Prior art keywords
unit
constant
matrix
register
aes encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810596250.4A
Other languages
English (en)
Other versions
CN109033847A (zh
Inventor
张肖强
刘宇畅
郑辛星
梁广俊
王广亮
王宸宇
王维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Polytechnic University
Original Assignee
Anhui Polytechnic University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Anhui Polytechnic University filed Critical Anhui Polytechnic University
Priority to CN201810596250.4A priority Critical patent/CN109033847B/zh
Publication of CN109033847A publication Critical patent/CN109033847A/zh
Application granted granted Critical
Publication of CN109033847B publication Critical patent/CN109033847B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

本发明适用于加密技术领域,提供了一种AES加密运算单元、AES加密电路及其加密方法,本发明提出的AES加密运算单元通过常数矩阵的合并与合成运算,将轮变换中的所有线性变换运算组合成两个合成矩阵,合成矩阵Δ与合成矩阵Λ,从而缩短AES加密电路的关键路径,同时减少AES加密电路的实现面积。

Description

AES加密运算单元、AES加密电路及其加密方法
技术领域
本发明属于加密技术领域,提供了一种AES加密运算单元、AES加密电路及其加密方法。
背景技术
AES(Advanced Encryption Standard,高级加密标准)是由美国国家标准与技术研究院2001年制定的新一代分组对称密码算法,用于取代原来的DES(Data EncryptionStandard,数据加密标准)。目前,AES密码算法已经被多个国际标准组织所采用,是目前使用最广泛的分组密码算法。
AES密码算法的数据分组长度为128比特,密钥长度有128,192和256比特三种,分别称为AES-128,AES-192,AES-256。AES算法是一个迭代算法,每一个迭代可以称为轮变换,密钥长度不同,轮变换数量也不同,AES-128,AES-192,AES-256的轮变换数量Nr分别为10,12,14。
现有的AES加密流程如附图1所示,输入的明文数据首先后进行Nr–1轮普通轮变换及末轮变换,每轮普通轮变换依次进行密钥加运算、字节替换运算,行移位运算及列混合运算;末轮变换依次完成密钥加运算、字节替换运算、行移位运算及密钥加运算,可以通过各个运算单元单独实现轮变换中的各个运算,但通过各运算单元单独实现的轮变换电路不仅浪费电路资源,且关键路径较长。
或是将相邻的几个运算单元合并成一个运算单元进行实现,T盒实现方式是目前轮变换电路实现中最常用的运算单元合并实现方式,T盒实现通过预计算方式将S盒、行移位和列混合等运算的运算结果预存一个存储运算单元中,以查询表的方式实现S盒、行移位和列混合合并运算功能。T盒实现减少了整个轮变换电路的关键路径,因此T盒实现方式主要应用在高速AES电路设计中。T盒实现方式虽然可以加快数据处理速度,但也大大增加了电路面积,如Rach等人将基于复合域S盒/逆S盒中最后一级GF(24)乘法器、映射矩阵/逆映射运算、仿射/逆仿射运算、列混合/逆列混合运算和密钥加运算等五个运算合并成一个运算单元,合并运算单元缩短了电路关键路径,但同时也大大增加了电路面积。
发明内容
本发明实施例提供一种AES加密电路,旨在解决现有的基于合并运算的AES加密电路,都是以增加电路面积为代价对关键路径长度进行优化的问题。
本发明是这样实现的,一种AES加密运算单元,AES加密运算单元包括:
二选一选择器S1、合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2,其中,选择器的两输入端分别与明文数据输入端及反馈数据输入端连接,选择器的输出端及密钥输入端与合成矩阵乘法运算单元1的输入端连接,合成矩阵乘法运算单元1的输出端与复合域乘法逆运算单元的输入端连接,复合域乘法逆运算单元的输出端及密钥输入端均与合成矩阵乘法运算单元2的输入端连接,合成矩阵乘法运算单元2的两输出端分别与常数加运算单元1及常数加运算单元2的输入端连接,常数加运算子1的输出端与反馈数据输出端连接,常数加运算单元2的输出端与密文数据输出端连接;
在进行第一轮普通轮变换运算时,二选一选择器S1将从明文数据输入端口输入明文数据向量Df=[df0,df1,df2,df3]T输出到合成矩阵乘法运算单元1,在第二轮至第(Nr-1)轮普通轮变换运算及末轮变换运算时,二选一选择器S1将从反馈数据输入端口输入数据向量Dn=[dn0,dn1,dn2,dn3]T输出到合成矩阵乘法运算单元1;
合成矩阵乘法运算单元1,将从数据输入端输入的列向量Dv=[d0,d1,d2,d3]T和密钥输入端输入的密钥向量Kn=[kn0,kn1,kn2,kn3]T组合成一个列向量Pv=[d0,d1,d2,d3,kn0,kn1,kn2,kn3]T,将合成矩阵Δ与列向量Pv进行乘法运算,乘法运算结果Lv=[l0,l1,l2,l3]T输出到复合域乘法逆运算单元,所述合成矩阵Δ表达如下:
Figure GDA0002946253340000031
其中,合成矩阵Δ由八个常数矩阵δ组合而成,常数矩阵δ为将GF(28)域上的元素映射到复合域的映射矩阵;
复合域乘法逆运算单元,将向量Lv=[l0,l1,l2,l3]T中的每个字节进行复合域乘法逆运算,运算结果Iv=[i0,i1,i2,i3]T输出到合成矩阵乘法运算单元2;
合成矩阵乘法运算单元2,将数据向量Iv=[i0,i1,i2,i3]T和密钥向量Ki=[ki0,ki1,ki2,ki3]T组合成一个列向量Ov=[i0,i1,i2,i3,ki0,ki1,ki2,ki3]T,将合成矩阵Λ与列向量Ov进行乘法运算,乘法运算结果第一行至第四行组成的向量Qn=[qn0,qn1,qn2,qn3]T及乘法运算结果第五行至第八行组成的向量Ql=[ql0,ql1,ql2,ql3]T分别输出到常数加运算单元1及常数加运算单元2,所述合成矩阵Λ的具体表达如下:
Figure GDA0002946253340000032
其中,合成矩阵Λ由常数矩阵λ3、λ2、λ1
Figure GDA0002946253340000033
组合而成,常数矩阵λ3为常数矩阵
Figure GDA0002946253340000034
常数矩阵τ和常数矩阵δ′的乘积,即
Figure GDA0002946253340000035
常数矩阵λ2为常数矩阵
Figure GDA0002946253340000036
常数矩阵τ和常数矩阵δ′的乘积,即
Figure GDA0002946253340000037
常数矩阵λ1为常数矩阵
Figure GDA0002946253340000038
常数矩阵τ和常数矩阵δ′的乘积即
Figure GDA0002946253340000039
常数矩阵
Figure GDA00029462533400000310
分别为GF(28)域上乘常数×{03}16、×{02}16、×{01}16的矩阵形式;常数矩阵τ为AES S盒中仿射运算所指定的常数矩阵;常数矩阵δ′为将复合域上的元素映射到GF(28)域的映射矩阵;
常数加运算单元1,将列向量Qn=[qn0,qn1,qn2,qn3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,其中常数ω为AES S盒中仿射运算所指定的字节常数,将运算结果Rn=[rn0,rn1,rn2,rn3]T通过反馈数据输出端反馈至反馈数据输出入端;
常数加运算单元2,将列向量Ql=[ql0,ql1,ql2,ql3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,运算结果Rn=[rn0,rn1,rn2,rn3]T通过密文数据输出端口输出,取第Nr次运算结果作为密文。
本发明是这样实现的,一种AES加密电路,AES加密电路包括:
一个AES加密运算单元,以及寄存器1和寄存器2,其中,寄存器1的输入端与所述AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与所述AES加密运算单元的反馈数据输入端连接;
寄存器1及所述寄存器2的数据位宽为16字节。
本发明是这样实现的,一种AES加密电路,AES加密电路包括:
两个AES加密运算单元,以及寄存器1和寄存器2,其中,寄存器1的输入端与两个AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与两个AES加密运算单元的反馈数据输入端连接,寄存器1及寄存器2的数据位宽为16字节。
本发明是这样实现的,一种AES加密电路,AES加密电路包括:
四个AES加密运算单元,以及寄存器,其中,寄存器的输入端与四个AES加密运算单元的反馈数据输出端连接,输出端与四个AES加密运算单元的反馈数据输入端连接,寄存器的数据位宽为16字节。
本发明是这样实现的,一种基于AES加密电路的AES加密方法,方法包括如下步骤:
S1、AES加密电路的前4(Nr-1)次运算构成(Nr-1)轮普通轮变换,在前4次运算中,选择器S1将从明文数据输入端输入的数据输出到合成矩阵乘法运算单元1,在第5~4(Nr-1)次运算中,选择器S2将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环4次,即完成一轮完整的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第(4Nr-3)~4Nr次运算构成末轮变换,在末轮变换运算中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(4Nr-3)~4Nr次从密文数据输出端输出的数据即构成密文。
本发明是这样实现的,一种基于AES加密电路的AES加密方法,方法包括如下步骤:
S1、AES加密电路的前2(Nr-1)次运算构成(Nr-1)轮普通轮变换,两个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在前2次运算中,选择器S1将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第3~2(Nr-1)次运算中,选择器S1将从反馈数据输入端输入的数据输出到合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环2次,即完成一轮完整(16字节)的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第(2Nr-1)~2Nr次循环构成末轮变换,两个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,选择器将反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(2Nr-1)~2Nr次从密文数据输出端输出的数据即构成密文。
本发明是这样实现的,一种基于AES加密电路的AES加密方法,方法包括如下步骤:
S1、AES加密电路的前(Nr-1)次运算构成(Nr-1)轮普通轮变换,四个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在第一次运算中,选择器将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第2~(Nr-1)次运算中,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器中,每循环一次,即完成一轮完整的普通轮变换运算后,寄存器1将存储的数据输出至寄存器2,寄存器将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,进行下一轮普通轮变换,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第Nr次循环构成末轮变换,四个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器2将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第Nr次从密文数据输出端输出的数据即构成密文。
本发明提出的AES加密运算单元通过常数矩阵的合并与合成运算,将轮变换中的所有线性变换运算组合成两个合成矩阵,合成矩阵Δ与合成矩阵Λ,从而缩短AES加密电路的关键路径,同时减少AES加密电路的实现面积,此外,通过复用合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元1来构建普通轮变换电路及末轮变换电路,通过复用来实现普通轮变换及末轮变换,从而进一步节省大量电路资源。
附图说明
图1为本发明实施例提供的现有的AES加密流程图;
图2为本发明实施例提供的基于合成矩阵的AES加密运算单元的结构示意图;
图3为本发明实施例一提供的AES加密电路的结构示意图;
图4为本发明实施例二提供的AES加密电路的结构示意图;
图5为本发明实施例三提供的AES加密电路的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有的运算单元主要包括:行移位运算单元、列混合运算单元、密钥加运算单元、字节替换运算单元均为现有的运算单元,运算单元的运算方法如下所述:
密钥加运算单元
密钥加运算单元进行密钥加运算,密钥加运算是一个很简单的运算,密钥加运算定义为状态矩阵加上子密钥矩阵,这里的加法运算为GF(2)域加法运算,即位异或运算,假设轮变换输入的状态矩阵为:
Figure GDA0002946253340000081
假设经过密钥加运算后的状态矩阵为:
Figure GDA0002946253340000082
密钥加运算表达式为:
Figure GDA0002946253340000083
其中矩阵K为子密钥矩阵,子密钥矩阵由输入的原始密钥通过密钥扩展算法产生,子密钥矩阵也为4×4字节矩阵。
字节替换运算单元
字节替换运算单元进行字节替换运算,字节替换运算通常称为S盒运算,S盒运算是将状态矩阵中的每个字节根据字节替换表进行替换操作。假设经过S盒运算后的状态矩阵为:
Figure GDA0002946253340000084
则S盒运算可以表达为:
Figure GDA0002946253340000091
其中S()为S盒运算函数。S盒运算是轮变换复用四个运算中唯一的非线性运算,也是运算复杂度最高的运算,因此S盒电路占据了整个AES电路的绝大部分面积和功耗。
AES S盒运算中,输入字节首先进行一个有限域GF(28)域上乘法逆运算,然后进行一个仿射运算,其表达式为:
Figure GDA0002946253340000092
其中x为输入字节,()A -1为GF(28)域上的乘法逆运算,τ为8×8bit常数矩阵,ω为字节常数,τ和ω用于完成S盒中的仿射运算。
本发明涉及的GF(28)域为AES密码算法中所指定的GF(28)域,其不可约多项式为
f(x)=x8+x4+x3+x+1
常数矩阵τ和字节常数ω分别为:
Figure GDA0002946253340000093
在众多S盒实现方式中,基于复合域的S盒实现具有最小的电路面积。复合域S盒通过数学变换将S盒中的主要运算单元—GF(28)域乘法逆运算单元映射到复合域中实现。复合域乘法逆运算的计算复杂度要远远小于GF(28)域乘法逆的计算复杂度,因而可以大大减少S盒电路实现的硬件复杂度。
基于复合域的AES S盒运算表达式为:
Figure GDA0002946253340000101
其中()C -1为复合域上的乘法逆运算,复合域为任意与GF(28)域同构的复合域,δ为8×8bit映射矩阵,其作用是将输入字节x从GF(28)域映射到复合域,δ′为δ逆矩阵,其作用是将复合域乘法逆运算结果从复合域映射回到GF(28)域。
在有限域中,加法运算为位异或逻辑运算。根据
Figure GDA0002946253340000102
Figure GDA0002946253340000103
因此,常数加运算+ω在硬件实现时,加0运算可以直接省略掉,加1运算可以用两种方法代替异或逻辑运算:1.任意两个变量的异或逻辑采用同或逻辑代替;2.任意两个变量的采用异或逻辑+取反逻辑实现。由于同或逻辑门与异或逻辑门的电路面积和延时几乎相同,同时相比于异或逻辑门,反向逻辑门的电路面积和延时可以忽略,因此,在S盒硬件实现时,常数加运算+ω电路面积和延时可以忽略不计。
行移位运算单元
行移位运算单元进行行移位运算,行移位运算是一个简单的运算,在这个运算中,状态矩阵的第一行不变换,第二,三,四行分别向左移位一个字节,二个字节,和三个字节。假设经过行移位运算后的状态矩阵为:
Figure GDA0002946253340000104
行移位之后的状态矩阵可以表达为:
Figure GDA0002946253340000105
在硬件实现中,行移位运算不需要消耗任何逻辑电路资源,只需调整总线位置即可实现行移位运算。
列混合运算单元
列混合运算单元进行列混合运算,在列混合运算中,状态矩阵的每一列可以视为环R上的一个三次多项式,则列混合运算定义为状态矩阵的各个列多项式与一个常数多项式在环R上的乘积。假设经过列混合运算后的状态矩阵为:
Figure GDA0002946253340000111
列混合运算的表达式为:
Figure GDA0002946253340000112
其中矩阵Φ为列混合常数矩阵,常数矩阵Φ中的
Figure GDA0002946253340000113
分别为GF(28)域上乘常数×{03}16、×{02}16、×{01}16的矩阵形式,本发明中{}16表示常数的十六进制形式。
普通轮变换公式
轮变换中的四个运算单元可以单独实现,也可以将相邻的几个运算单元合并成一个运算单元进行实现。运算单元单独实现的轮变换电路不仅浪费电路资源,且关键路径较长。本发明根据轮变换公式,通过常数矩阵的合并与合成运算,对轮变换中的线性运算进行合并。根据上述中轮变换中的各个子运算公式,可以得出轮变换中的普通轮变换公式为:
Figure GDA0002946253340000114
将上述公式中具有相同输入的输出变量rx,y划分一组,则每一列输出变量可以组成一组,上述公式共可以划分成四个分组。这四个分组具有相同运算操作,并在硬件实现时具有相同的电路运算单元。每一分组输出变量都可以表达为线性方程形式:
Figure GDA0002946253340000121
上式中的输入变量和输出变量在每一分组中对应的变量为:
组I:
Figure GDA0002946253340000122
组II:
Figure GDA0002946253340000123
组III:
Figure GDA0002946253340000124
组IV:
Figure GDA0002946253340000125
为了减少电路实现面积,本发明进一步将S盒中的GF(28)乘法逆映射到复合域中,映射后的普通轮变换分组公式为:
Figure GDA0002946253340000126
末轮变换公式
按照上述子运算公式,同样可以得出末轮变换公式为:
Figure GDA0002946253340000127
按照普通轮变换分组,将上述末轮变换公式也可以分成四个分组,末轮变换分组公式为:
Figure GDA0002946253340000131
分组公式中的输入变量和输出变量在每一分组中对应的变量与普通轮变换相同。基于复合域的末轮变换分组公式为:
Figure GDA0002946253340000132
本发明提出AES加密运算单元,实现4个字节的AES加密,AES加密运算单元通过常数矩阵的合并与合成运算,将轮变换中的线性变换运算组合成两个合成矩阵,合成矩阵Δ与合成矩阵Λ,从而缩短电路关键路径,减少电路实现面积。
图2为本发明实施例提供的AES加密运算单元的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分。
该AES加密运算单元包括:
二选一选择器S1、合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2,其中,选择器S1的两输入端分别与明文数据输入端及反馈数据输入端连接,输出端及密钥输入端与合成矩阵乘法运算单元1的输入端连接,合成矩阵乘法运算单元1的输出端与复合域乘法逆运算单元的输入端连接,复合域乘法逆运算单元的输出端及密钥输入端均与合成矩阵乘法运算单元2的输入端连接,合成矩阵乘法运算单元2的两输出端分别与常数加运算单元1及常数加运算单元2的输入端连接,常数加运算子1的输出端与反馈数据输出端连接,常数加运算单元2的输出端与密文数据输出端连接;
在进行第一轮普通轮变换运算时,二选一选择器S1选择将从明文数据输入端口输入明文数据向量Df=[df0,df1,df2,df3]T输出到合成矩阵乘法运算单元1,在第二轮至第(Nr-1)轮普通轮变换运算及末轮变换运算时,二选一选择器S1选择将从反馈数据输入端口输入数据向量Dn=[dn0,dn1,dn2,dn3]T输出到合成矩阵乘法运算单元1;
合成矩阵乘法运算单元,其数据位宽为4字节,将从数据输入端输入的列向量Dv=[d0,d1,d2,d3]T和密钥输入端输入的密钥向量Kn=[kn0,kn1,kn2,kn3]T组合成一个列向量Pv=[d0,d1,d2,d3,kn0,kn1,kn2,kn3]T,并将合成矩阵Δ与列向量
Figure GDA0002946253340000141
进行乘法运算,合成矩阵Δ表达如下:
Figure GDA0002946253340000142
其中,合成矩阵Δ由八个常数矩阵δ组合而成,常数矩阵δ为映射矩阵,其作用是将GF(28)域上的元素映射到复合域上。合成矩阵乘法运算单元1可以用具体公式进行表达为:
Figure GDA0002946253340000143
运算结果Lv=[l0,l1,l2,l3]T进一步输出到复合域乘法逆运算单元。
复合域乘法逆运算单元,其数据位宽为4字节,将Lv=[l0,l1,l2,l3]T中的每个字节进行复合域乘法逆运算,这里的复合域为任意与GF(28)域同构的复合域。复合域乘法逆运算字单元的具体表达形式为:
Figure GDA0002946253340000151
运算结果Iv=[i0,i1,i2,i3]T进一步输出到合成矩阵乘法运算单元2。
合成矩阵乘法运算单元2,其数据位宽为4字节,将数据向量Iv=[i0,i1,i2,i3]T和密钥向量Ki=[ki0,ki1,ki2,ki3]T组合成一个列向量Ov=[i0,i1,i2,i3,ki0,ki1,ki2,ki3]T,将合成矩阵Λ与列向量Ov进行乘法运算,合成矩阵Λ的具体表达如下:
Figure GDA0002946253340000152
其中,合成矩阵Λ由常数矩阵λ3、λ2、λ1
Figure GDA0002946253340000153
组合而成,常数矩阵λ3为常数矩阵
Figure GDA0002946253340000154
常数矩阵τ和常数矩阵δ′的乘积,即
Figure GDA0002946253340000155
常数矩阵λ2为常数矩阵
Figure GDA0002946253340000156
常数矩阵τ和常数矩阵δ′的乘积,即
Figure GDA0002946253340000157
常数矩阵λ1为常数矩阵
Figure GDA0002946253340000158
常数矩阵τ和常数矩阵δ′的乘积即
Figure GDA0002946253340000159
常数矩阵
Figure GDA00029462533400001510
分别为GF(28)域上乘常数×{03}16、×{02}16、×{01}16的矩阵形式;常数矩阵τ为AES S盒中仿射运算所指定的常数矩阵;常数矩阵δ′为映射矩阵,其作用是将复合域上的元素映射到GF(28)域上。合成矩阵乘法运算单元2可以用具体公式进行表达为:
Figure GDA0002946253340000161
乘法运算结果第一行至第四行组成的向量Qn=[qn0,qn1,qn2,qn3]T及乘法运算结果第五行至第八行组成的向量Ql=[ql0,ql1,ql2,ql3]T分别输出到常数加运算单元1及常数加运算单元2。
常数加运算单元1,数据位宽为4字节,将列向量Qn=[qn0,qn1,qn2,qn3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,其中常数ω为AES S盒中仿射运算所指定的字节常数。常数加运算子1单元的具体表达形式为:
Figure GDA0002946253340000162
常数加运算子1单元将运算结果Rn=[rn0,rn1,rn2,rn3]T通过反馈数据输出端反馈至反馈数据输入端;
常数加运算单元2,其数据位宽为4字节,将列向量Ql=[ql0,ql1,ql2,ql3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,其中常数ω为AES S盒中仿射运算所指定的字节常数,常数加运算子2单元的具体表达形式为:
Figure GDA0002946253340000163
常数加运算子2单元将运算结果Rn=[rn0,rn1,rn2,rn3]T通过密文数据输出端口输出,取第Nr次运算结果作为密文。
本发明提出的AES加密运算单元通过常数矩阵的合并与合成运算,将轮变换中的所有线性变换运算组合成两个合成矩阵,合成矩阵Δ与合成矩阵Λ,从而缩短AES加密电路的关键路径,同时减少AES加密电路的实现面积,此外,通过复用合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元1来构建普通轮变换电路及末轮变换电路,通过复用来实现普通轮变换及末轮变换,从而进一步节省大量电路资源。
图3为本发明实施例一提供的AES加密电路的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分。
该AES加密电路包括:
一个AES加密运算单元,以及寄存器1和寄存器2,其中,寄存器1的输入端与AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与AES加密运算单元的反馈数据输入端连接,寄存器1及寄存器2的数据位宽为16字节。
基于上述AES加密电路的加密方法,该方法包括如下步骤:
S1、AES加密电路的前4(Nr-1)次运算构成(Nr-1)轮普通轮变换,在前4次运算中,选择器S1将从明文数据输入端输入的数据输出到合成矩阵乘法运算单元1,在第5~4(Nr-1)次运算中,选择器S2将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环4次,即完成一轮完整(16字节)的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第(4Nr-3)~4Nr次运算构成末轮变换,在末轮变换运算中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(4Nr-3)~4Nr次从密文数据输出端输出的数据即构成密文。
图4为本发明实施例二提供的AES加密电路的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分。
该AES加密电路包括:
两个AES加密运算单元,以及寄存器1和寄存器2,其中,寄存器1的输入端与两个AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与两个AES加密运算单元的反馈数据输入端连接,寄存器1及寄存器2的数据位宽为16字节。
基于上述AES加密电路的加密方法,该方法包括如下步骤:
S1、AES加密电路的前2(Nr-1)次运算构成(Nr-1)轮普通轮变换,两个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在前2次运算中,选择器S1将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第3~2(Nr-1)次运算中,选择器S1将从反馈数据输入端输入的数据输出到合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环2次,即完成一轮完整(16字节)的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第(2Nr-1)~2Nr次循环构成末轮变换,两个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,选择器将反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(2Nr-1)~2Nr次从密文数据输出端输出的数据即构成密文。
图5为本发明实施例三提供的AES加密电路的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分
该加密电路包括:
四个AES加密运算单元,以及寄存器,其中,寄存器的输入端与四个AES加密运算单元的反馈数据输出端连接,输出端与四个AES加密运算单元的反馈数据输入端连接,寄存器的数据位宽为16字节。
基于上述AES加密电路的加密方法,该方法包括如下步骤:
S1、AES加密电路的前(Nr-1)次运算构成(Nr-1)轮普通轮变换,四个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在第一次运算中,选择器将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第2~(Nr-1)次运算中,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器中,每循环一次,即完成一轮完整的普通轮变换运算后,寄存器1将存储的数据输出至寄存器2,寄存器将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,进行下一轮普通轮变换,共进行Nr-1轮普通轮变换运算;
S2、AES加密电路的第Nr次循环构成末轮变换,四个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器2将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第Nr次从密文数据输出端输出的数据即构成密文。
本发明实施例一提供AES加密电路是通过四个AES加密运算单元的并行处理来完成16字节的AES加密,实施例二及实施例三是通过AES加密运算单元的复用来完成16字节的AES加密,通过AES加密运算单元的复用完成AES加密,可以进一步节省大量电路资源,但复用结构相比于并行处理结构而言,整个AES加密速度要慢。
本发明提出的AES加密电路是基于AES加密运算单元构成的,而AES加密运算单元通过常数矩阵的合并与合成运算,将轮变换中的线性变换运算组合成两个合成矩阵,合成矩阵Δ与合成矩阵Λ,从而缩短AES加密电路关键路径,减少AES加密电路实现面积,此外,通过复用合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元1来构建普通轮变换电路及末轮变换电路,通过复用来实现普通轮变换及末轮变换,从而进一步节省大量AES加密电路资源。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种AES加密运算单元,其特征在于,所述AES加密运算单元包括:
二选一选择器S1、合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2,其中,选择器的两输入端分别与明文数据输入端及反馈数据输入端连接,二选一选择器S1的输出端及普通密钥输入端口与合成矩阵乘法运算单元1的输入端连接,合成矩阵乘法运算单元1的输出端与复合域乘法逆运算单元的输入端连接,复合域乘法逆运算单元的输出端及最末密钥输入端口均与合成矩阵乘法运算单元2的输入端连接,合成矩阵乘法运算单元2的两输出端分别与常数加运算单元1及常数加运算单元2的输入端连接,常数加运算子1的输出端与反馈数据输出端连接,常数加运算单元2的输出端与密文数据输出端连接;
在进行第一轮普通轮变换运算时,二选一选择器S1将从明文数据输入端口输入明文数据向量Df=[df0,df1,df2,df3]T输出到合成矩阵乘法运算单元1,在第二轮至第(Nr-1)轮普通轮变换运算及末轮变换运算时,二选一选择器S1将从反馈数据输入端口输入数据向量Dn=[dn0,dn1,dn2,dn3]T输出到合成矩阵乘法运算单元1;
合成矩阵乘法运算单元1,将从数据输入端输入的列向量Dv=[d0,d1,d2,d3]T和普通密钥输入端口输入的密钥向量Kn=[kn0,kn1,kn2,kn3]T组合成一个列向量Pv=[d0,d1,d2,d3,kn0,kn1,kn2,kn3]T,将合成矩阵Δ与列向量Pv进行乘法运算,乘法运算结果Lv=[l0,l1,l2,l3]T输出到复合域乘法逆运算单元,所述合成矩阵Δ表达如下:
Figure FDA0002946253330000011
其中,合成矩阵Δ由八个常数矩阵δ组合而成,常数矩阵δ为将GF(28)域上的元素映射到复合域的映射矩阵;
复合域乘法逆运算单元,将向量Lv=[l0,l1,l2,l3]T中的每个字节进行复合域乘法逆运算,运算结果Iv=[i0,i1,i2,i3]T输出到合成矩阵乘法运算单元2,所述复合域为任意与GF(28)域同构的复合域;
合成矩阵乘法运算单元2,将数据向量Iv=[i0,i1,i2,i3]T和密钥向量Ki=[ki0,ki1,ki2,ki3]T组合成一个列向量Ov=[i0,i1,i2,i3,ki0,ki1,ki2,ki3]T,将合成矩阵Λ与列向量Ov进行乘法运算,乘法运算结果第一行至第四行组成的向量Qn=[qn0,qn1,qn2,qn3]T及乘法运算结果第五行至第八行组成的向量Ql=[ql0,ql1,ql2,ql3]T分别输出到常数加运算单元1及常数加运算单元2,所述合成矩阵Λ的具体表达如下:
Figure FDA0002946253330000021
其中,合成矩阵Λ由常数矩阵λ3、λ2、λ1
Figure FDA0002946253330000022
组合而成,常数矩阵λ3为常数矩阵
Figure FDA0002946253330000023
常数矩阵τ和常数矩阵δ′的乘积,即
Figure FDA0002946253330000024
常数矩阵λ2为常数矩阵
Figure FDA0002946253330000025
常数矩阵τ和常数矩阵δ′的乘积,即
Figure FDA0002946253330000026
常数矩阵λ1为常数矩阵
Figure FDA0002946253330000027
常数矩阵τ和常数矩阵δ′的乘积即
Figure FDA0002946253330000028
常数矩阵
Figure FDA0002946253330000029
分别为GF(28)域上乘常数×{03}16、×{02}16、×{01}16的矩阵形式;常数矩阵τ为AES S盒中仿射运算所指定的常数矩阵;常数矩阵δ′为将复合域上的元素映射到GF(28)域的映射矩阵;
常数加运算单元1,将列向量Qn=[qn0,qn1,qn2,qn3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,其中常数ω为AES S盒中仿射运算所指定的字节常数,将运算结果Rn=[rn0,rn1,rn2,rn3]T通过反馈数据输出端反馈至反馈数据输出入端;
常数加运算单元2,将列向量Ql=[ql0,ql1,ql2,ql3]T与常数向量Ωv=[ω,ω,ω,ω]T相加运算,运算结果Rn=[rn0,rn1,rn2,rn3]T通过密文数据输出端口输出,取第Nr次运算结果作为密文,Nr为轮变换数量;
所述合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的数据位宽均为4字节。
2.一种AES加密电路,其特征在于,所述AES加密电路包括:
一个如权利要求1所述的AES加密运算单元,寄存器1以及寄存器2,其中,所述寄存器1的输入端与所述AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与所述AES加密运算单元的反馈数据输入端连接;
所述寄存器1及所述寄存器2的数据位宽为16字节。
3.一种AES加密电路,其特征在于,所述AES加密电路包括:
两个如权利要求1所述AES加密运算单元,寄存器1以及寄存器2,其中,寄存器1的输入端与两个AES加密运算单元的反馈数据输出端连接,输出端与寄存器2的输入端相连接,寄存器2输出端与两个AES加密运算单元的反馈数据输入端连接,寄存器1及寄存器2的数据位宽为16字节。
4.一种AES加密电路,其特征在于,所述AES加密电路包括:
四个如权利要求1所述AES加密运算单元,以及寄存器,其中,寄存器的输入端与四个AES加密运算单元的反馈数据输出端连接,输出端与四个AES加密运算单元的反馈数据输入端连接,寄存器的数据位宽为16字节。
5.一种基于权利要求2所述的AES加密电路的AES加密方法,其特征在于,所述方法包括如下步骤:
S1、AES加密电路的前4(Nr-1)次运算构成(Nr-1)轮普通轮变换,在前4次运算中,选择器S1将从明文数据输入端输入的数据输出到合成矩阵乘法运算单元1,在第5~4(Nr-1)次运算中,选择器S2将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环4次,即完成一轮完整的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算,Nr为轮变换数量;
S2、AES加密电路的第(4Nr-3)~4Nr次运算构成末轮变换,在末轮变换运算中,寄存器2每次将4字节的数据通过反馈数据输入端输入选择器S1,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(4Nr-3)~4Nr次从密文数据输出端输出的数据即构成密文。
6.一种基于权利要求3所述的AES加密电路的AES加密方法,其特征在于,所述方法包括如下步骤:
S1、AES加密电路的前2(Nr-1)次运算构成(Nr-1)轮普通轮变换,两个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在前2次运算中,选择器S1将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第3~2(Nr-1)次运算中,选择器S1将从反馈数据输入端输入的数据输出到合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器1中,每循环2次,即完成一轮完整(16字节)的普通轮变换运算后,寄存器1将存储的数据输入到寄存器2中,寄存器2每次将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,进行下一轮普通轮变换运算,共进行Nr-1轮普通轮变换运算,Nr为轮变换数量;
S2、AES加密电路的第(2Nr-1)~2Nr次循环构成末轮变换,两个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器将两组4字节的数据通过两反馈数据输入端分别输入两AES加密运算单元的选择器,选择器将反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第(2Nr-1)~2Nr次从密文数据输出端输出的数据即构成密文。
7.一种基于权利要求4所述的AES加密电路的AES加密方法,其特征在于,所述方法包括如下步骤:
S1、AES加密电路的前(Nr-1)次运算构成(Nr-1)轮普通轮变换,四个AES加密运算单元同时进行普通轮变换运算,在普通轮变换运算中,在第一次运算中,选择器将从明文数据输入端输入的数据输出至合成矩阵乘法运算单元1,在第2~(Nr-1)次运算中,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2的运算,常数加运算单元1的运算结果输入寄存器中,每循环一次,即完成一轮完整的普通轮变换运算后,寄存器1将存储的数据输出至寄存器2,寄存器将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,进行下一轮普通轮变换,共进行Nr-1轮普通轮变换运算,Nr为轮变换数量;
S2、AES加密电路的第Nr次循环构成末轮变换,四个AES加密运算单元同时进行末轮变换运算,在末轮变换运算中,寄存器2将四组4字节的数据通过四反馈数据输入端分别输入四AES加密运算单元的选择器,选择器将从反馈数据输入端输入的数据输出至合成矩阵乘法运算单元1,依次经合成矩阵乘法运算单元1、复合域乘法逆运算单元、合成矩阵乘法运算单元2、常数加运算单元1及常数加运算单元2运算,常数加运算单元2的运算结果从密文数据输出端口输出,第Nr次从密文数据输出端输出的数据即构成密文。
CN201810596250.4A 2018-06-11 2018-06-11 Aes加密运算单元、aes加密电路及其加密方法 Active CN109033847B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810596250.4A CN109033847B (zh) 2018-06-11 2018-06-11 Aes加密运算单元、aes加密电路及其加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810596250.4A CN109033847B (zh) 2018-06-11 2018-06-11 Aes加密运算单元、aes加密电路及其加密方法

Publications (2)

Publication Number Publication Date
CN109033847A CN109033847A (zh) 2018-12-18
CN109033847B true CN109033847B (zh) 2021-06-18

Family

ID=64612656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810596250.4A Active CN109033847B (zh) 2018-06-11 2018-06-11 Aes加密运算单元、aes加密电路及其加密方法

Country Status (1)

Country Link
CN (1) CN109033847B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109639408A (zh) * 2019-01-25 2019-04-16 芜湖职业技术学院 一种aes解密复用轮变换电路结构
CN111241606B (zh) * 2020-01-21 2021-03-23 北京连山科技股份有限公司 一种一拖三的移动存储设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009122464A1 (ja) * 2008-03-31 2009-10-08 富士通株式会社 共通鍵暗号機能を搭載した暗号化装置及び組込装置
CN102035641A (zh) * 2009-09-24 2011-04-27 中兴通讯股份有限公司 一种实现aes加解密的装置和方法
CN104158652A (zh) * 2014-07-15 2014-11-19 南京航空航天大学 基于数据冗余实时检错机制的循环展开结构aes加/解密电路
CN106034021A (zh) * 2015-03-12 2016-10-19 中国科学院上海高等研究院 轻量级双模兼容aes加解密模块及其方法
CN106921487A (zh) * 2017-03-01 2017-07-04 芜湖职业技术学院 可重构s盒电路结构

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120089396A (ko) * 2010-11-16 2012-08-10 삼성전자주식회사 암호화 장치 및 그 암호화 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009122464A1 (ja) * 2008-03-31 2009-10-08 富士通株式会社 共通鍵暗号機能を搭載した暗号化装置及び組込装置
CN102035641A (zh) * 2009-09-24 2011-04-27 中兴通讯股份有限公司 一种实现aes加解密的装置和方法
CN104158652A (zh) * 2014-07-15 2014-11-19 南京航空航天大学 基于数据冗余实时检错机制的循环展开结构aes加/解密电路
CN106034021A (zh) * 2015-03-12 2016-10-19 中国科学院上海高等研究院 轻量级双模兼容aes加解密模块及其方法
CN106921487A (zh) * 2017-03-01 2017-07-04 芜湖职业技术学院 可重构s盒电路结构

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
An Area Optimized Implementation of AES S-Box Based on Composite Field and Evolutionary Algorithm;Yaoping Liu等;《Proceedings of the World Congress on Engineering and Computer Science 2015》;20151023;第1卷;第33-37页 *
Implementation of Low-Area S-Box Based on Normal Basis;Keerthi Elsa Thomson等;《2014 International Conference on Electronics and Communication Systems (ICECS)》;20140908;第1-4页 *
Optimization of Area and Delay for Implementation of the Composite Field Advanced Encryption Standard S-Box;Zhang XQ 等;《JOURNAL OF CIRCUITS SYSTEMS AND COMPUTERS》;20160531;第25卷(第5期);第1-29页 *
一种优化的AES算法及其FPGA实现;张伟;《计算机与数字工程》;20170331;第45卷(第3期);第502-507,511页 *

Also Published As

Publication number Publication date
CN109033847A (zh) 2018-12-18

Similar Documents

Publication Publication Date Title
CN106921487B (zh) 可重构s盒电路结构
CN109033892B (zh) 基于合成矩阵的轮变换复用电路及aes解密电路
CN103684749B (zh) 一种基于面积与性能平衡优化的klein加密实现方法
CN109039583B (zh) 复用轮变换电路、aes加密电路及加密方法
CN111064562A (zh) 一种fpga上的aes算法的实现方法
CN109150495B (zh) 一种轮变换复用电路及其aes解密电路
CN108933652B (zh) 一种普通轮变换运算单元、普通轮变换电路及aes解密电路
CN109033847B (zh) Aes加密运算单元、aes加密电路及其加密方法
CN109033893B (zh) 基于合成矩阵的aes加密单元、aes加密电路及其加密方法
CN108566271B (zh) 复用轮变换电路、aes加密电路及其加密方法
CN108809627B (zh) 轮变换复用电路及aes解密电路
Deshpande et al. AES encryption engines of many core processor arrays on FPGA by using parallel, pipeline and sequential technique
Arrag et al. Design and Implementation A different Architectures of mixcolumn in FPGA
Fu et al. Low-cost hardware implementation of SM4 based on composite field
CN108989018B (zh) 一种aes加密单元、aes加密电路及加密方法
CN109033023B (zh) 一种普通轮变换运算单元、普通轮变换电路及aes加密电路
CN108964875B (zh) 普通轮变换运算单元、普通轮变换电路及aes解密电路
Pyrgas et al. A very compact architecture of CLEFIA block cipher for secure IoT systems
CN109150496B (zh) Aes加密运算单元、aes加密电路及加密方法
Chen et al. Research and implementation of reconfigurable architecture of DES and ZUC
CN109033894B (zh) 普通轮变换运算单元、普通轮变换电路及其aes加密电路
CN109936440B (zh) Aes解密电路中的复用轮变换运算单元和构建方法
CN108964876B (zh) 普通轮变换运算单元、普通轮变换电路及aes加密电路
Mestiri et al. Performances of the AES design in 0.18 μm CMOS technology
Hulle et al. Compact Reconfigurable Architecture for Sosemanuk Stream Cipher

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant