CN108134665A - 一种面向IoT应用的8比特AES电路 - Google Patents
一种面向IoT应用的8比特AES电路 Download PDFInfo
- Publication number
- CN108134665A CN108134665A CN201711384586.6A CN201711384586A CN108134665A CN 108134665 A CN108134665 A CN 108134665A CN 201711384586 A CN201711384586 A CN 201711384586A CN 108134665 A CN108134665 A CN 108134665A
- Authority
- CN
- China
- Prior art keywords
- key
- sbox
- byte
- round
- carried out
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 72
- 238000002156 mixing Methods 0.000 claims description 23
- 238000000034 method Methods 0.000 claims description 21
- 125000004122 cyclic group Chemical group 0.000 claims description 11
- 238000004891 communication Methods 0.000 abstract description 2
- 239000011159 matrix material Substances 0.000 description 14
- 238000007792 addition Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种面向IoT应用的8比特AES电路,属于保密或安全通信装置的技术领域。该电路包括:并行处理sbox运算和移位操作以及列混合运算的数据处理模块、并行处理sbox运算和字节循环移位操作以及异或运算的密钥扩展模块、控制模块、密钥加模块,数据处理模块和密钥扩展模块共用一个sbox核,采用寄存器到寄存器的方式实现移位操作,以较少的周期以及逻辑组合实现了高吞吐率的8比特AES电路。
Description
技术领域
本发明公开了一种面向IoT应用的8比特AES电路,属于保密或安全通信装置的技术领域。
背景技术
随着物联网(IoT,Internet Of Things)和片上***(SoC,System on Chip)的不断发展以及先进的技术不断采用,可穿戴设备也越来越多,同时,个人信息安全的问题也愈发重要,最近频繁发生个人信息泄密的事情让更多的企业意识到信息加密的重要。
物联网芯片的通用架构由模拟,数字和RF组成,其中,在数字组成部分中,安全性是比较重要的一块。物联网的发展引起了人们对安全性的担忧,同时,超低功耗密码硬件加速器是现代SoC的重要组件,高级加密标准(AES,Advanced Encryption Standard)成为支持媒体内容保护、内存加密和网络安全的安全基础。
但是,根据目前IoT方面的应用要求,传统128-bit datapath AES存在面积过大、功耗太大的问题,不符合现有IoT的要求。所以,提出面向IoT应用的AES电路实现能效优化-实现8-bit datapath AES,从而降低功耗和面积。
AES的一般流程如下,输入的128位明文通过由4个子块组成的AES回路电路迭代地处理,包括涉及诸如伽罗瓦域(GF,Galois Field)加法的操作,即,将明文数据与128位轮密钥混合的操作;在SubBytes块中的逆运算,也称为Sbox;ShiftRows块中的字节置换和列混合阶段中的伽罗瓦域中的列混合,这些迭代循环操作重复10次,最终产生128位加密的密文。
传统128-bit AES采用的是16字节的128位数据路径,64个布线轨道用于ShiftRows置换,以实现单周期轮延迟和10周期的迭代。然而,这些并行运行导致了大的面积开销和能量消耗,进而导致传统128-bit AES不适合在受电池电量约束的移动和可穿戴***中使用,同时,这些***还具有能量和热约束,这促使轻量、低成本的AES的出现。
传统128-bit AES中,组合逻辑的功耗和面积占很大比重,分别为91.78%和77.39%,进一步分析可以发现组合逻辑中Sbox的功耗和面积占很大比重(一共有20个Sbox),其中,Sbox功耗约占整体功耗的40%,面积约占整体面积的72%,具有很大的优化空间。
发明内容
本发明的发明目的是针对上述背景技术的不足,提供了一种面向IoT应用的8比特AES电路,设计了共用一个sbox的数据处理模块和密钥扩展模块,数据处理模块并行处理sbox运算、移位操作和列混合运算,密钥扩展模块并行处理sbox运算、字节循环移位操作、异或运算,以较少的周期以及逻辑组合实现了高吞吐率的8比特AES电路,解决了传统128比特AES电路功耗面积大、传统8比特AES电路加密运算周期长的技术问题。
本发明为实现上述发明目的采用如下技术方案:
一种面向IoT应用的8比特AES电路,包括控制模块、共用一个Sbox核的密钥扩展模块和数据处理模块、密钥加模块;
密钥扩展模块并行处理数据的sbox运算、字节循环移位操作和异或运算以更新扩展密钥;
数据处理模块并行处理数据的sbox运算、移位操作和列混合运算以更新密文;
密钥加模块,根据更新的扩展密钥及更新的密文生成轮密钥;及,
控制模块,根据外部加密使能信号来执行加密操作,同时协调密钥扩展模块和数据处理模块的执行,依次使能数据处理模块、密钥扩展模块、密钥加模块以完成一轮密钥加操作,在执行最后一轮密钥加操作的过程中使能数据处理模块并行处理轮密钥的sbox运算、移位操作以更新密文。
作为面向IoT应用的8比特AES电路的进一步优化方案,sbox核一共含有两条短路径和一条长路径,通过对这三条路径***D触发器的方式以平衡延时长的路径和延时短的路径。
作为面向IoT应用的8比特AES电路的进一步优化方案,数据处理模块把传统的sbox运算、列混合运算和移位操作进行优化整合,按照从高位到低位的顺序并行处理轮密钥的sbox运算和移位操作,按照从低四位至高四位的顺序进行轮密钥的列混合运算,所述列混合运算与sbox运算和移位操作的并行处理交叉进行,共包含18个周期,在1-17周期内完成sbox运算和移位操作,在13-17周期内完成列混合运算。通过采用寄存器到寄存器的硬连线方式实现移位操作,具体流程为:
步骤一:当收到来自控制模块的数据处理使能信号sub_start_i时,进行数据处理,若为第一轮,则直接调用明文,若非第一轮,则对密钥加运算后的结果(即,轮密钥)进行数据处理;
步骤二:在第1-12周期中,完成对高12位字节的数据进行sbox运算(AES数据一共有128比特,共16个字节);同时进行相应的寄存器到寄存器的赋值方式以完成移位功能;
步骤三:在目前的加密轮数不等于10时,执行步骤四,在目前的加密轮数等于10时,执行步骤五;
步骤四:在第13个周期里,完成对第13个字节的sbox运算,同时完成对第12个字节的sbox运算后的值的移位,
在第14个周期里,完成对第14个字节的sbox运算;同时完成对第13个字节的sbox运算后的值的移位,以及对移位后的第13-16个字节进行列混合运算,
在第15个周期里,完成对第15个字节的sbox运算;同时完成对第14个字节的sbox运算后的值的移位,以及对移位后的第9-12个字节进行列混合运算,
在第16个周期里,完成对第16个字节的sbox运算;同时完成对第15个字节的sbox运算后的值的移位,以及对移位后的第5-8个字节进行列混合运算,同时生成sbox使用完成信号sub_key给控制模块,
在第17个周期里,完成对第16个字节的sbox运算后的值的移位,以及对移位后的第1-4个字节进行列混合运算;
步骤五:在第13-17周期中,完成剩余四个字节的sbox运算,同时进行相应的寄存器到寄存器的赋值方式以完成移位功能;
步骤六:第18个周期,生成经过数据处理后的数据sub_data_o以及数据处理完成信号sub_ready_o。
作为面向IoT应用的8比特AES电路的进一步优化方案,密钥扩展模块按照从扩展密钥最后一列最后一行元素至扩展密钥最后一列第一行元素的顺序并行处理扩展密钥最后一列各元素的sbox运算和字节循环移位操作,对经字节循环位移操作后的扩展密钥以及扩展密钥的各列数据进行异或运算得到更新后的扩展密钥,通过5个周期来实现新的密钥扩展,在1-5周期内完成sbox运算和字节循环移位,在第五周期内完成异或运算,其具体运算流程如下:
步骤一:当收到来自控制模块的密钥使能信号key_start_i时,进行密钥扩展,若为第一轮,则直接调用原始密钥,若非第一轮,则进行密钥扩展;
步骤二:第1-4周期完成对矩阵中最后一列数据的sbox运算;同时,第2-5周期对已完成sbox运算的字节进行字节循环移位;
步骤三:第5个周期完成所有的异或运算,同时,生成经过密钥扩展后的新密钥new_key_o以及密钥扩展完成信号key_ready_o;
在数据处理模块最后两个不使用sbox核的周期内执行密钥扩展模块的并行处理过程。
本发明采用上述技术方案,具有以下有益效果:
(1)本申请提出的8比特AES电路仅包含一个sbox核且通过寄存器到寄存器的赋值方式实现移位操作,sbox核数目的降低减少了组合逻辑的数目,sbox核三条路径***D触发器的方式能够减少毛刺功耗,寄存器到寄存器的赋值方式减少移位操作所带来的组合逻辑数目,改善了传统128比特AES电路中组合逻辑的功耗和面积占较大比重的缺陷,有效减小AES电路的整体面积开销和能量消耗,能够适用于体积有限、电池能量有约束的物联网领域;
(2)并行处理sbox运算、移位操作和列混合运算的数据处理模块以较少的周期实现了密文更新,并行处理扩展密钥的sbox运算、字节循环移位操作、异或运算的密钥扩展模块以较少的周期实现扩展密钥的更新,利用数据处理模块不使用sbox的时间间隙执行密钥扩展模块,实现数据加密和密钥扩展的并行处理,整体上压缩了8比特AES电路处理数据的周期,提高了吞吐率,使得本申请提出的8比特AES电路能够适用于吞吐率要求较高的物联网领域。
附图说明
图1为本发明8比特AES电路的结构框图。
图2为本发明的sbox核结构图。
图3为本发明的8比特AES电路的执行流程图。
图4为本发明的数据处理模块的流程图。
图5为本发明的密钥扩展模块的流程图。
图6为本发明AES加密的仿真波形图。
具体实施方式
下面结合附图对发明的技术方案进行详细说明。
本发明涉及的面向IoT应用的AES电路如图1所示,包括:控制模块,密钥扩展模块,数据处理模块、密钥加模块。该电路的输入信号为***时钟clk、复位信号reset、加密使能信号start_i、明文data_i、密钥key_i,输出信号为加密之后的密文data_o以及加密完成信号ready_o。控制模块在外部加密使能信号start_i的作用下生成相应的控制信号,控制密钥扩展模块和数据处理模块以及密钥加操作以实现AES的加密。
由于密钥扩展模块和数据处理模块这两个模块都需要调用sbox核,所以通过key_sbox_access_o信号来区分。当key_sbox_access_o=1时,密钥扩展模块调用sbox核;当key_sbox_access_o=0时,数据处理模块调用sbox核。
图2为本发明中的sbox核结构图,在本发明中仅采用一个sbox核供密钥扩展模块和数据处理模块使用;由于sbox核是AES功耗的主要来源,为了降低sbox核的功耗,本发明采用平衡sbox核中延时长的路径和延时短的路径方法,如图2所示,sbox核中一共含有两条短路径、一条长路径,通过对这三条路径***D触发器的方式以减少毛刺功耗,即在①②③处***触发器以减少毛刺功耗。
图3为本发明8比特AES电路的执行流程图,主要包括以下步骤:
步骤1:在电路启动初始,控制模块通过监测外部加密使能信号start_i来执行加密操作,首先进行第一轮运算,将输入的原始明文data_i和密钥key_i直接输入至密钥加模块,进行密钥加运算;
步骤2:密钥加运算完成之后,发送密钥加已完成信号addroundkey_ready_o至控制模块,控制模块发出数据处理使能信号sub_start_i信号给数据处理模块,同时将数据传入数据处理模块,开始进行三步数据处理,分别是sbox运算、列混合运算和移位操作;
步骤3:当数据处理完之后,发出sbox使用完成信号sub_key给控制模块,控制模块发出密钥扩展使能信号key_start_i给密钥扩展模块;
步骤4:密钥扩展完成之后,发出密钥已准备信号key_ready_o给控制模块,控制模块发出密钥加使能信号addroundkey_start_i,执行新一轮的密钥加功能;
步骤5:重复步骤2-4,一共9轮;
步骤6:密钥加运算完成之后,发送密钥加已完成信号至数据处理模块,同时将数据传入数据处理模块,进行最后一轮的数据处理,只包含sbox运算和移位操作;
步骤7:重复步骤3和4,得到最终的密文。
按上述七个步骤执行,一共需要T个周期完成AES加密运算,公式如下:
T=Tcycle*10+Tinit+Tready,
其中,
Tcycle代表每轮需要的周期,值为22,表示一共需要22个周期完成一轮密钥加运算,数据处理模块需要18个周期,密钥扩展需要5个周期(数据处理模块和密钥扩展并行两个周期),密钥加需要1个周期,即为18+5+1-2=22,
Tinit代表第一轮密钥加需要的周期,值为2;步骤1阶段中第一轮密钥加时,需要2个周期完成运算,
Tready代表生成加密完成信号需要的周期,值为1,最后一轮完成运算时产生最终AES加密完成信号ready_o需要1个周期,
故整个8位AES加密运算需要223个周期完成。
下面分别介绍本发明的面向IoT应用的AES电路涉及的两个关键模块:数据处理模块和密钥扩展模块。
一、数据处理模块
如图4所示为数据处理模块的实例:
其中数据输入为:128’hffeeddccbbaa99887766554433221100
数据处理模块一共包含18个周期,其具体流程如下:
步骤一:当收到来自控制模块的数据处理使能信号sub_start_i时,进行数据处理。若为第一轮,则直接调用明文;若非第一轮,则对密钥加运算后的结果进行数据处理,即对数据128’hffeeddccbbaa99887766554433221100进行处理(数据转化为矩阵形式如图4中矩阵1所示)。
步骤二:在第1-13个周期中,对高13位字节数据进行sbox运算(128’hffeeddccbbaa99887766554433221100,黑体部分);同时进行相应的寄存器到寄存器的赋值方式以完成移位功能(因为sbox运算需要两个周期,所以此时只有高12位字节完成运算,第13位尚未完成运算,所以移位时对高12位进行移位),此时处理后的数据为:
data_reg_var=128’hff’aa’55’XXbb’66’XXcc’77’XXdd’88’XXee’99’44’
(XX表示尚未有数据填入,处理后的数据如图4中矩阵3所示)。
步骤三:根据目前的加密轮数判断,当轮数不等于10时,执行步骤四;当轮数等于10时,执行步骤五。
步骤四:在第14个周期里,完成对第14个字节的sbox运算;同时将第13个字节sbox运算后的值赋给矩阵中第1行第4列位置(移位后第13位字节33′),同时对矩阵中第4列数据进行列混合运算;
在第15个周期里,完成对第15个字节的sbox运算;同时将第14个字节sbox运算后的值赋给矩阵中第2行第3列位置(移位后第10位字节22′),同时对矩阵中第3列数据进行列混合运算;
在第16个周期里,完成对第16个字节的sbox运算;同时将第15个字节sbox运算后的值赋给矩阵中第3行第2列位置(移位后第7位字节11′),同时对矩阵中第2列数据进行列混合运算,同时发出sbox使用完成信号sub_key给控制模块;
在第17个周期里,将第16个字节sbox运算后的值赋给矩阵中第4行第1列位置(移位后第4位字节00’),同时对矩阵中第1列数据进行列混合运算(处理后的数据如图4中矩阵4所示)。
步骤五:在第14-17周期中,完成剩余字节的sbox运算,同时进行相应的寄存器到寄存器的赋值方式以完成移位功能。
步骤六:第18个周期,生成经过数据处理后的数据sub_data_o以及数据处理完成信号sub_ready_o。
图4中:data_reg_var中加粗部分表示的是在第1-13个周期中尚未完成sbox运算的字节,mixn表示第n个周期完成该列仅留的一个字节的sbox运算和移位以及该列的列混合。
二、密钥扩展模块
如图5所示为数据处理模块的实例:
密钥扩展的原理如下:(Nk=4)
1)、最前面的Nk个字是由原始密钥填充的;
2)、之后的每一个字W[j]等于前面的字W[j-1]与Nk个位置之前的字W[j-Nk]的异或;
3)、对于Nk的整数倍的位置处的字,在异或之前,先进行sbox运算,且对W[j-1]进行如下变换:字节循环移位Rotate,即:(a,b,c,d)→(b,c,d,a)。
其中密钥扩展一共包含5个周期:
步骤一:当收到来自控制模块的密钥使能信号key_start_i时,进行密钥扩展。若为第一轮,则直接调用原始密钥;若非第一轮,则进行密钥扩展;
步骤二:第1-4周期完成对矩阵中最后一列数据的sbox运算;同时,第2-5周期对已完成sbox运算的字节进行字节循环移位;
步骤三:第5个周期,完成所有的异或运算。同时,生成经过密钥扩展后的新密钥new_key_o以及密钥扩展完成信号key_ready_o。
如图6所示为aes加密的仿真波形。其中clk为时钟信号,reset为复位信号,start_i为加密使能信号,data_i为明文,key_i为密钥,ready_o为加密完成信号,data_o为密文。明文为128’b23,密钥为128b’fedcba98,加密后结果为128b’13b8f039831b14417d04c0b907351abd,与软件计算结果一致。
Claims (8)
1.一种面向IoT应用的8比特AES电路,其特征在于,包括:
数据处理模块,并行处理轮密钥的sbox运算、移位操作、列混合运算以更新密文,
密钥扩展模块,并行处理扩展密钥的sbox运算、字节循环移位操作、异或运算以更新扩展密钥,
密钥加模块,根据更新的扩展密钥及更新的密文生成轮密钥,及,
控制模块,依次使能数据处理模块、密钥扩展模块、密钥加模块以完成一轮密钥加操作,在执行最后一轮密钥加操作的过程中使能数据处理模块并行处理轮密钥的sbox运算、移位操作以更新密文。
2.根据权利要求1所述面向IoT应用的8比特AES电路,其特征在于,所述数据处理模块并行处理轮密钥的sbox运算、移位操作、列混合运算以更新密文的方法为:按照从高位到低位的顺序并行处理轮密钥的sbox运算和移位操作,按照从低四位至高四位的顺序进行轮密钥的列混合运算,所述列混合运算与sbox运算和移位操作的并行处理交叉进行。
3.根据权利要求1所述面向IoT应用的8比特AES电路,其特征在于,所述密钥扩展模块并行处理扩展密钥的sbox运算、字节循环移位操作、异或运算以更新扩展密钥的方法为:按照从扩展密钥最后一列最后一行元素至扩展密钥最后一列第一行元素的顺序并行处理扩展密钥最后一列各元素的sbox运算和字节循环移位操作,对经字节循环位移操作后的扩展密钥以及扩展密钥的各列数据进行异或运算得到更新后的扩展密钥。
4.根据权利要求1所述面向IoT应用的8比特AES电路,其特征在于,所述数据处理模块和密钥扩展模块共用一个sbox核,sbox核含有两条短路径和一条长路径,通过对这三条路径***D触发器的方式来平衡延时长的路径和延时短的路径。
5.根据权利要求2所述面向IoT应用的8比特AES电路,其特征在于,所述数据处理模块在收到控制模块输出的数据处理使能信号后开始并行处理轮密钥的sbox运算、移位操作、列混合运算以更新密文,并行处理的方法具体包括以下步骤:
A、在第1至第12周期,对轮密钥高12位字节进行sbox运算及移位操作的并行处理,
B、在当前加密轮数未达到设定值时,进入步骤C,否则,进入步骤D;
C、在第13个周期,对轮密钥的第13个字节进行sbox运算,同时,对轮密钥的第12个字节sbox运算后的值进行移位操作,
在第14个周期,对轮密钥的第14个字节进行sbox运算,对轮密钥的第13个字节sbox运算后的值进行移位操作,对移位后轮密钥的第13至第16个字节进行列混合运算,
在第15个周期,对轮密钥的第15个字节进行sbox运算,对轮密钥的第14个字节sbox运算后的值进行移位操作,对移位后轮密钥的第9至第12个字节进行列混合运算,
在第16个周期,对轮密钥的第16个字节进行sbox运算,对轮密钥的第15个字节sbox运算后的值进行移位操作,对移位后轮密钥的第5至第8个字节进行列混合运算,同时反馈sbox使用完成信号给控制模块,
在第17个周期,对轮密钥的第16个字节sbox运算后的值进行移位操作,对移位后轮密钥的第1至第4个字节进行列混合运算,
进入步骤E;
D、在第13至第17周期,对轮密钥剩余的四个字节进行sbox运算及移位操作的并行处理,
E、第18个周期,将经并行处理后的轮密钥作为更新的密文输出,反馈数据处理完成信号至控制模块;
上述轮密钥字节数按照从高位至低位的顺序标号。
6.根据权利要求1或5所述面向IoT应用的8比特AES电路,其特征在于,所述移位操作通过寄存器到寄存器的赋值方式实现。
7.根据权利要求3所述面向IoT应用的8比特AES电路,其特征在于,密钥扩展模块在收到控制模块输出的密钥使能信号后开始并行处理扩展密钥的sbox运算、字节循环移位操作、异或运算以更新扩展密钥,并行处理的方法具体包括如下步骤:
a、在第1个周期,对扩展密钥最后一列最后一行元素进行sbox运算;
b、在第2个周期,对扩展密钥最后一列倒数第二行元素进行sbox运算,对扩展密钥最后一列最后一行元素sbox运算后的值进行移位操作;
c、在第3个周期,对扩展密钥最后一列倒数第三行元素进行sbox运算,对扩展密钥最后一列倒数第二行元素sbox运算后的值进行移位操作;
d、在第4个周期,对扩展密钥最后一列第一行元素进行sbox运算,对扩展密钥最后一列倒数第三行元素sbox运算后的值进行移位操作;
e、在第5个周期,对扩展密钥各列数据及移位操作后的扩展密钥进行异或运算,将异或运算的结果作为更新的扩展密钥输出,反馈密钥扩展完成信号至控制模块。
8.根据权利要求1至7中任意一项所述面向IoT应用的8比特AES电路,其特征在于,所述密钥扩展模块利用数据处理模块未使用sbox核的周期并行处理扩展密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711384586.6A CN108134665B (zh) | 2017-12-20 | 2017-12-20 | 一种面向IoT应用的8比特AES电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711384586.6A CN108134665B (zh) | 2017-12-20 | 2017-12-20 | 一种面向IoT应用的8比特AES电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108134665A true CN108134665A (zh) | 2018-06-08 |
CN108134665B CN108134665B (zh) | 2020-11-17 |
Family
ID=62391889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711384586.6A Active CN108134665B (zh) | 2017-12-20 | 2017-12-20 | 一种面向IoT应用的8比特AES电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108134665B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039608A (zh) * | 2018-08-24 | 2018-12-18 | 东南大学 | 一种基于双S核的8-bitAES电路 |
CN112241250A (zh) * | 2020-08-19 | 2021-01-19 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102223228A (zh) * | 2011-05-11 | 2011-10-19 | 北京航空航天大学 | 基于fpga的aes加密芯片设计方法及嵌入式加密*** |
US8452006B2 (en) * | 2010-03-18 | 2013-05-28 | Lsi Corporation | Cryptographic processing using a processor |
CN103516512A (zh) * | 2013-10-21 | 2014-01-15 | 深圳市芯通信息科技有限公司 | 基于aes算法的加解密方法及加解密器 |
CN103916236A (zh) * | 2014-04-25 | 2014-07-09 | 东南大学 | 面向aes算法的抗功耗攻击方法及电路实现 |
-
2017
- 2017-12-20 CN CN201711384586.6A patent/CN108134665B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8452006B2 (en) * | 2010-03-18 | 2013-05-28 | Lsi Corporation | Cryptographic processing using a processor |
CN102223228A (zh) * | 2011-05-11 | 2011-10-19 | 北京航空航天大学 | 基于fpga的aes加密芯片设计方法及嵌入式加密*** |
CN103516512A (zh) * | 2013-10-21 | 2014-01-15 | 深圳市芯通信息科技有限公司 | 基于aes算法的加解密方法及加解密器 |
CN103916236A (zh) * | 2014-04-25 | 2014-07-09 | 东南大学 | 面向aes算法的抗功耗攻击方法及电路实现 |
Non-Patent Citations (2)
Title |
---|
SANU MATHEW ET AL.: "340 mV–1.1 V, 289 Gbps/W, 2090-Gate NanoAES Hardware Accelerator With Area-Optimized Encrypt/Decrypt GF(24)2 Polynomials in 22 nm Tri-Gate CMOS", 《IEEE JOURNAL OF SOLID-STATE CIRCUITS》 * |
范傲: "面向IoT应用的高能效AES电路设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039608A (zh) * | 2018-08-24 | 2018-12-18 | 东南大学 | 一种基于双S核的8-bitAES电路 |
WO2020037981A1 (zh) * | 2018-08-24 | 2020-02-27 | 东南大学 | 一种基于双S核的8-bitAES电路 |
CN112241250A (zh) * | 2020-08-19 | 2021-01-19 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108134665B (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kalenderi et al. | Breaking the GSM A5/1 cryptography algorithm with rainbow tables and high-end FPGAS | |
WO2007098687A1 (en) | Encryption and decryption processing method of achieving sms4 cryptographic algorithm and system thereof | |
KR20100083848A (ko) | 패킷 암호 알고리즘에 기초하는 엔크립션 처리 방법 | |
US20050240764A1 (en) | Apparatus and method for performing RC4 ciphering | |
CN108134665B (zh) | 一种面向IoT应用的8比特AES电路 | |
CN108183790B (zh) | 一种aes加密装置、芯片及*** | |
Dao et al. | An energy efficient aes encryption core for hardware security implementation in iot systems | |
Nabil et al. | Design and implementation of pipelined and parallel AES encryption systems using FPGA | |
US7869590B2 (en) | Method and system for hardware accelerator for implementing f9 integrity algorithm in WCDMA compliant handsets | |
Jothi et al. | Parallel RC4 Key Searching System Based on FPGA | |
CN112765614A (zh) | 一种在fpga上实现sm4加密算法的模块及方法 | |
CN109039608B (zh) | 一种基于双S核的8-bitAES电路 | |
US20010005155A1 (en) | Method and an electrical device for efficient multi-rate pseudo random noise (PN) sequence generation | |
WO2008017261A1 (fr) | Procédé de cryptage/décryptage très efficace et méthode de mise en oeuvre de l'algorithme sms4 | |
CN108494547B (zh) | 一种aes加密***及芯片 | |
US20060039553A1 (en) | Method and system for implementing the A5/3 encryption algorithm for GSM and EDGE compliant handsets | |
KR101126776B1 (ko) | 패킷 암호 알고리즘에 기반하는 엔크립션 처리 디바이스 | |
Peng et al. | FPGA implementation of AES encryption optimization algorithm | |
Rais et al. | A novel FPGA implementation of AES-128 using reduced residue of prime numbers based S-Box | |
Li et al. | Implementation of PRINCE with resource-efficient structures based on FPGAs | |
Lam et al. | Implementation of lightweight cryptography core PRESENT and DM-PRESENT on FPGA | |
Wei et al. | A small first-order DPA resistant AES implementation with no fresh randomness | |
Farmani et al. | Hardware implementation of 128-Bit AES image encryption with low power techniques on FPGA | |
JP2000056679A (ja) | Desの鍵スケジュール装置 | |
CN112054889B (zh) | 消息认证码的生成方法及生成装置、计算机可读存储介质 |
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 |