论文研究-AES加密算法面积与性能平衡优化研究.pdf

所需积分/C币:15 2019-07-22 23:15:29 678KB .PDF
收藏 收藏
举报

AES密码是目前主流应用的加密算法,研究了在面积优化的同时兼顾加密速度的解决方法。根据字节代换的要求和特点,S盒变换采用16×16位的空间预存储置换表,通过O(1)查表效率即可实现SubBytes变换。将伽罗华域上所有元素的两倍先存储在一张表格中,相应运算只需要通过查表和相加就可以完成,避免了有限域的乘法运算,有效减少了运算次数。密钥扩展是独立于加密算法本身的一个特殊模块,采用上升沿有效的时钟控制密钥生成方法,在生成密钥的同一个时钟周期下降沿进行密钥传递,减少了系统延时,增强了并行性,使得面积优化后的AES加密效率更高,吞吐量更大。通过计数器控制加密函数调用的轮数,使得每个模块能多次被调用,从
3724· 计算机应用研究 第31卷 Sim6.If测试结果如图4所示。从图4屮测试数据可以证明 5|if(j!=0 实现正确。 i for (k=0;k<R; k++) i[k][j=ti-1][k][jTt[i[k]j-1];} 4 Aeseesidout f8f bccaa C35d10-frdFfthrc: FA?05动行A子 for(k=0;k<R; k++)i D Aecae:/s: te [k]=sbt[i-1][(k+1)%4][3]]; 图4字节替换变换仿真结果 if(k==0)s0」=s0」'rcli-1 3.2列混合变换( MixColumns) ti「k「j=ti-11「k「i^s「k;}}:} 3.3.3仿真实验 3.2.1列混合模块框图 用 Verilog HDl实现后,经 Modlesim仿真测试结果如图8 Mixcolumns模块主要用丁实现列变换。 State为128hit输 入端口,dout为128lit输出端口,模块运算过程如图5所示。 所小。实验数据表明密钥扩展优化正确 口28 128 state[ 1: 128IF>MixColumns dou1:128 2be151528c2b]52b 44541525 图5列混合变换模块 图8密钥扩展仿真结果 3.2.2列混合优化算法 3.4主模块( AESmain) 列混合主要实现列变换,达到允分混淆的目的。其优化算 3.4.1主控模块框图 法用C语言描述如下 λ ESmain模块主要用丁实兜加密模块组合与控制。 State 算法2 Mix columns 与key为128bit输人端凵, result为128bit输出端口,clk为时 Input: state 1: 1281 Output:dutl:128]。 钟信号,sigb为一轮密钥扩展控制信号,siga为加密轮数控制 I Int 1, J 信号,流程如图9所示。 2 for(i=0; i<C;i++ 3 une har I[R], th R state[1: 128 nchar stL R」={0x02,0x03,0×01,0x01 AESmain <R 國 wreu128」 for(k=o:k<r:k++ ey[1: 128 yanis(sI[(k-j+4)%4], stale[k[i]); 图9主控模块流程 thj=(t[0]t[1]t2]t[3]) 9 for (k=0;k<R: k++) 3.4.2主控模块实现 10 state[k]li]=th[k] 主控模块用于实现加密模块组合与控制。在ⅤeigI)I 3.2.3仿真实验 语言实现中,变量 count初始值为1l,用于控制加密轮数。 对算法用硬件描述语言Ⅴ erilog hd实现后,经 Modlesim AES_Cihper:: keyexpantion( 测试结果如图6所示。从图6中可以证明列混合优化正确。 for( addroundkey (0), i=l; i<=Round; i++) wave- delaull AES_Cihper:: subsbytes() /testees/ck testes/dout5313ead42求还3 AES_Cihper:: shiftrows() testae/state 3243683083243689530811983203704 if(i!= Round mixeloum() roundkey(i) 图6列混合变挨仿真结果 3.3密钥扩展( KeyExpansions) 3.4.3仿真实验 3.3.1密钥扩展模块框图 绎过 Modlesim仿真测试结果如图10所示。图10的仿真 Key Expansions模块主要用于实现密钥扩展。Key为128结果验证优化正确。 bit输入端口,nkey为128bit输出端口,lk为时钟信号,siga为 teslas/siga 轮控制密钥,sgc为复位信号。模块运算如图7所示。 /eslaewagl b7e151626a2a62h7e51 KeyExpansion 10AES仿真结果 key[1: 128] 3.5S盒变换模块与tab模块 图7密钥扩展模块 3.5.1S盒变换模抉框图 3.3.2密钥扩展优化算法 盒变换模块主婁用于查表替换。 State为128hit输入端 密钥扩展算法主要用于实现密钥扩展,其中变量r为轮变口,dot为128bt输出端凵,流程如图1所示 换常量。密钥扩展优化算法描述如下: 8 算法3 KeyExpansion ate[1: 81 sh dout[1: 8] Input;clk,siga,kev「1:1281。 Output: sige, nkey[ 1: 128] 图I!S盒模块 3.5.2S盒变换实现 2 for(i=l: i<=Hound: i ++ 3 nchar s[R] S盒变换中主要是进行S盒查表操作。查表操作只需按S for(j=0; j<R;j++) 数组的下标索引,复杂度为O(1)。Ⅴ erilog d.语言优化实现 第12期 李浪,等:AES加密算法面积与性能平衡优化研究 3725 如下 LX50T。图16是本文优化后的AES下载到FPGA上的实验数 module sh(stale, dout) 据直接截图。 input [1: 8 stal ou!putl:8」cout egL1:8」dout,c; t of 23.500 L1:8 0:255」 94oa83J434 br.fIy we LLT万r y gin Design starter mem[0]=8h63; Naimum perod: 993 ms mAzun fequensy: 100.654MHz) mem[1]=8'h7c; 12)df45025% ot时11 am dary from m any node 4.49u Maximmum Det debr 0.338as mem[255=8′h16; space Fence thelin Analyais completed Moc Jul 2923: 49:19 2013 always(@( state)dout =mem[ state] 图16AES优化结果 endmodu 对比文献[7]的实验结果,本设计所实现的AFS-128加密 3.5.3Tab盒模块框图 模块所占用的器件面积为Size=5743+5420=ll163 Slices,相 Tab盒模块为新增模块,主要用于列变换查表替换。 State比文献[7的20173 Slices,占用面积优化了将近1/2倍。系统 为128ⅶi输人端冂,dou为128ⅶi输出端冂,模块图解详见图12。时钟周期是9.935ns,时钟频率100.654MHz state[1:8] dout[1: 81 5结束语 图12'ab盒模块 随着物联网的应用越来越深入,如何在资源约束的物联网 3.5.4Tab盒优化算法 智能卡上进行信息安仝保障是一个非常重要的研究课题。 Tab盒模块查表操作与S盒模块查表操作是完仝一致的。AES是日前的主流加密算法,但共并不适合在小面积的智能卡 Tab盒预存储操作的C语言实现如算法4所小 上加密实现。因此,如何对AES密码算法进行硬件面积优化 算法4Tl 是必要的。本文对AFS密码算法的结构进行优化,在面积减 state[1:128]。 少的同时也兼顾了加密速度 Output: dout[ 1: 128] 参考文献 k=0 t=al 「I]夏春林,周德云,张 算法的CUDA高效实现方法「J].计 3for(st0]=bl,i=0;i<8;i++) 算机应用研究,2013,30(6):1907-1909 4if(i!=0){s「il=sti-11<<1; le hard ware performance if(st i-I&0x80)t i"=Oxlb AES candidates using reconfigurable hardware EB/OL..(2000-04 5 if((t1 >>i) 2010-08-o1.http://teal.gmuedu/crypto/aes-gaj.Pdi 6 return nt [3 WANG SS, N WanI-sheny. An effic ient FPGA implernenlation of ad- 3.5.5仿真实验 对上述优化算法用硬件描述语言Ⅴ eriloy hdl实现后,经 vanced encryption standard algorithm[ C|// Proc of IEEE Internation al Symposium on Circuits and Systems. Washington DC: IEEE Com- orllesim仿真测试具体结果,S盒与tab盒仿真结果分别如图 puter Society, 2004: 23-26 13、14所示。 [4 RAIS M H, QASIM SM. A novel FPGA implementation of AFS-128 using reduced residue of prime numbers based S-box EB/OL I [209-01-20].hp:/pa-er.jsns.org07-hxk/200909/2009 aes.stae 0039.pd 图135盒仿真结果 [5]李涛,成晓雄,王文华,等.一种GPON-AES的FPGA优化实现 」凵凵凵凵凵L [J].电信科学,200N,25(12):100-104 [6]韩津生,林家骏,叶建武,等.FPGA的AFS高速处理模型设计 图14Tb盒仿真结果 「J.哈尔滨工业大学学报,2012,44(3):128-131 3.5.6优化后的AES最终仿真结果 [7]李田田,付宇卓.AFS加密算決的FPGA高速实现[J].上海船舶 图15为最终仿真结果。从图15的最终仿真结果对比输 运输科学研究所学报,2010,33(2):120-128. 入的明文与密钥和输出的密文,验证了优化实现功能是正[8]何德彪,胡进,陈建华基于FPGA的高速AES实现[J]华中科 确的。 技大学学报:自然科学版,2010,38(2):101-104 [9]叶剑,李立新.基于GPU的AFS快速实現「J].计算机工猩与设 计,2010,31(2):256-25 [10J CHUNG Y L, CHIEN C F, HONG Jin-hua, et al. An efficient area 图15最终仿真结果 delay product design for mixcolumns/invmixcolumns in AES[C// Proc of IEEE Computer Society Annual Symposium on VLSI. Wash 4综合下载实验结果与分析 IEEE Computer Society, 2008: 503-506 [11]KUNDI DS, AZIZ. A, IKRAM N. Re 对优化后的AES密码算法进行了FPGA实现,通过ISE of T-boxes in AES on Virtex-5 FPGA[J. Information Processing 13.2综合下载进行性能分析,FPGA型号为 Xilinx irtex-5 Letters,2010,110(10):373-377

...展开详情
试读 4P 论文研究-AES加密算法面积与性能平衡优化研究.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    抢沙发
    一个资源只可评论一次,评论内容不能少于5个字
    • 至尊王者

      成功上传501个资源即可获取
    关注 私信 TA的资源
    上传资源赚积分,得勋章
    最新推荐
    论文研究-AES加密算法面积与性能平衡优化研究.pdf 15积分/C币 立即下载
    1/4
    论文研究-AES加密算法面积与性能平衡优化研究.pdf第1页
    论文研究-AES加密算法面积与性能平衡优化研究.pdf第2页

    试读已结束,剩余2页未读...

    15积分/C币 立即下载 >