APP下载

分组密码硬件实现及针对其的侧信道攻击防御方案概述

2020-11-30陈柏沩夏璇钟卫东

科学与信息化 2020年30期

陈柏沩 夏璇 钟卫东

摘 要 本文在总结前人的文献的基础上,介绍了分组密码进行硬件实现并搭建侧信道攻击平台的基本架构,将其分为硬件实现和软件支撑两个部分。随后将针对侧信道攻击的防御方案进行归纳,其一共可以分为三级,分别为算法级,电路级和系统级。其中对算法级和电路级进行了着重阐述。并在最后确定了今后的研究方向。

关键词 分组密码;侧信道攻击平台;构建防御方案

引言

二十一世纪是信息技术不断发展的世纪。随着互联网的普及,人们对于信息安全问题的重视程度达到了前所未有的高度。而密码算法做为信息安全的基石,对其进行安全性研究具有十分重要的意义。随着国内电子芯片水平的不断提升,针对侧信道攻击的硬件支撑也在不断加强。其中尤其以现场可编程门列阵(FPGA)应用最为广泛。

随着各种新型攻击方式和承载平台的出现,攻击方式也逐渐多样。但国内在各个算法的硬件实现,以及攻击和防御方案的硬件实现方面都还有所欠缺。因此本文以分组密码算法的硬件实现和针对其进行差分功耗攻击和掩码防御为重点,进行研究。

本文主要有以下方面的贡献:①研究了密码芯片侧信道攻击平台的框架结构。②对密码芯片针对侧信道攻击的层次型防御方案进行部分归纳。

1侧信道攻击平台的搭建

针对分组密码进行侧信道攻击,相应的软件和硬件支持都是不可缺少的[5]。

在这几篇文献中,作者们构建平台所用的软硬件条件各有不同,但仍然可以找到许多共同点[2]。①所有的侧信道攻击平台必须要有硬件和软件两个部分支撑,缺一不可。②硬件实现部分主要由FPGA实现。③使用软件进行功耗采集和数据分析时使用Matlab较多,而Prime Power作为优秀的功耗仿真软件,也被广泛使用。

(1)密码算法的硬件实现与运行。密码算法的硬件实现是整个平台的核心部分,如果这个部分无法实现,则所有的后续工作都无法进行。AES算法的硬件实现过程中,行移位和轮密钥加都十分的简单,而字节替换消耗硬件资源较多。通过复合域运算的方式,有限域上的乘法逆运算可以通过转换矩阵转化到复合域上GF(24)2实现,而求逆运算只需要使用矩阵进行相反的流程就行。经过求逆后便是仿射变换,所以可以把和M运算相结合,以减小开支。同理,在进行逆S盒运算时,可以将和相结合,将所求结果变回原来的域内。根据苑志刚的方法进行硬件构造,可得出其所用硬件开支相较于传统的方法要减少硬件消耗面积达56%。

(2)平台的软件分析部分。随着编程技术的不断发展,各类软件进行数据分析和制图的功能越来越强大。而软件平台也是和实验者最为直观的互动平台。在侧信道平台中,软件部分主要进行仿真、数据分析和制图。根据功能不同,可以分为以下几大类:①Matlab 多用于数据分析和制图。②Labview是虚拟仪器系统及其开发程序。③Quartus ii是主要用于提供FPGA/CPLD开发集成环境。

2针对攻击的防御方案

(1)防御方案的总体概述。根据防御方案的复杂程度和控制层面,可以将防御方案分为三级:算法级,电路级和系统级。在此,对算法级和电路级防御方案进行说明。

(2)算法级防御方案。于敬超提出的方案是基于复合域掩码的功耗随机化设计,研究了算法级掩码S盒实现功耗随机化的设计思路[3]。

由于AES算法的运算域是,所以在有限域上的求逆是掩码方案的重要部分。主要思想是将上的求逆运算映射至对复合域上的字节求逆运算[1,4]。

设:

A∈GF(28),B,C∈GF(24),A(x)=B(x)+C(x)

A(x)=a7x7+a6x6+a5x5+a4x4+a3x3+a2x2+a1x+a0。

同理,B(x),C(x)也用相同的方式给出。则由向映射可作矩阵进行

通过构建上面运算,可以将 GF(28)上的求逆运算映射至对复合域GF((24))2上的字节求逆运算。

本文改进的求逆运算减少了乘法模块和平方模块。必然使得求逆运算的计算复杂度降低[3]。

(3)電路级防御方案。王晨旭的方案是基于差分传输管预充电逻辑的抗功耗攻击技术。DP2L逻辑是电路级防护的重要分支,王晨旭提出的是新型的DP2L逻辑[5]。DP2L逻辑是在CPL逻辑的基础上发展而来的,DP2L单轨“与非”输出的电路结构如下:PMOS管P1-P6 构成逻辑单元的预充电部分实现预充-求值两相协议;NMOS管N5和N6是逻辑单元的核心部分,用于实现单元的逻辑功能,分别相应于原始 CPL的N1和N2,剩余四个NMOS 管用来消除逻辑单元的短路电流及提前传播效应;而反相器则作为输出负载的驱动单元,起到了电平恢复的作用,同时也使单元的预充值为“0”保证了各逻辑单元间的正确级联。无论是预充阶段还是求值阶段,两个阶段中单元输出的跳变时刻都与输入信号的跳变时刻无关,因此,与标准 CMOS电路、WDDL以及MDPL电路相比,该逻辑单元结构可消除提前传播效应。有了上述逻辑结构,便可以构造电路。在每个逻辑单元的互补输出端,只有一个发生“1”到“0”的翻转。这样就可以保持元器件功耗的稳定性。

3结束语

以上便是对所读文献的部分总结。其中,在框架方面。针对硬件实现部分,可以实现的创新是使用另一个单片机芯片来驱动密码芯片,促进操作简便化,规范化。

在防御方案方面,可以将复合域由GF(28)转为GF((22)2)2,进一步降低功耗。在电路级防御方案方面,可以在前人的基础上,开发新的逻辑元件。促进方案构成。

参考文献

[1] 赵昱霖.密码算法的硬件实现与侧信道攻防技术研究[D].郑州:郑州大学,2019.

[2] 张振宾.国密SM4和SM2算法功耗攻击关键技术研究与实现[D].北京:清华大学,2015.

[3] 于敬超.分组密码芯片抗功耗攻击设计技术研究[D].郑州:解放军信息工程大学,2015.

[4] 苑志刚.抗功耗攻击的AES密码算法硬件设计[D].西安:西安电子科技大学,2014.

[5] 王晨旭.密码芯片抗功耗攻击技术研究[D].哈尔滨:哈尔滨工业大学,2013.