时间:2024-09-03
时争光,郑梦策,胡红钢,俞能海
基于在线计数的改进快速泄露评估
时争光1,2,郑梦策1,2,胡红钢1,2,俞能海1,2
(1. 中国科学院电磁空间信息重点实验室,安徽 合肥 230027; 2. 中国科学技术大学网络空间安全学院,安徽 合肥 230027)
快速泄露评估(FLA,fast leakage assessment)在2017年被提出,利用“计数”的思想极大地提升了计算效率。首先对快速泄露评估的性能进行分析,然后提出基于在线计数的方法对评估流程进行改进,并使用FPGA对该方法进行实现。根据实验结果对比,所提方法不仅可以减少评估中所需要占用的内存,而且能够缩短评估所用时间,使评估效率得到明显提升。
泄露评估;在线处理;高效计算;侧信道防护
侧信道分析攻击是目前密码学领域一个比较热门的课题,它揭示了密码算法本身的安全性与实际的安全性之间的差距,即使是理论上安全的密码算法,在实际运行过程中也不一定是安全的,它可能会存在其他形式的安全薄弱点,如侧信道信息泄露。侧信道分析技术始于Kocher等[1]在1999年提出的差分能量分析,他们发现密码设备运行过程中能量消耗与密码算法的中间值之间存在联系,原因是密码设备的某些操作在处理“0”和“1”时会产生不同的能量消耗,而这些不同可能与密钥有关系。因此,攻击者可以通过侧信道信息间接获取到密码设备的中间值信息,从而破解出设备的密钥。
侧信道分析技术发展至今,给密码设备的安全性带来了极大的威胁,在FIPS 140-3标准草案中已经明确要求商用密码设备需要能够抵抗侧信道分析攻击[2]。出于安全需求,研究者提出了一些防护措施,最常见的两种方法是隐藏[3]和掩码[4],其目的是掩盖能量消耗的不同或者打破能量消耗与密码算法中间值之间的联系,而如何验证防护措施的有效性成为一个新的问题。
泄露评估是检验密码设备测信道信息泄露和验证防护措施有效性中最常用的手段。Coron等[5]在2001年首次提出了泄露评估的概念,其目的是检验两组数据是否有明显的不同。目前的主流方法是由密码学研究机构在2013年提出的测试向量泄露评估(TVLA,test vector leakage assessment)[2],该方法基于检验,它精心选择输入数据得到两组能量曲线作为待测数据,然后使用检验对两组数据进行两组非特定的Fixed-VS.-Random检验与896组特定的Fixed-VS.-Fixed检验,以判断这两组待测数据是否有明显的不同,TVLA因其标准的评估流程和对泄露的敏感性成为广泛接受的评估方法。之后,Ding等在文献[6]中提出了一些检验的使用建议,可以加速采集过程并增强对泄露的检测能力。然而,检验的方法存在一些局限性,它只能在检测到泄露时声明泄露存在,却不能在未检测到泄露时声明泄露不存在,并且统计值的计算受到能量曲线条数等因素的影响。因此,Bache等[7]提出了一种基于置信区间的评估方法对检验进行了扩展,并在此基础上提出了一个评估流程的框架[8]。
无论是检验还是置信区间的方法,都需要先得到两组待检验数据各自的均值和方差。因此,在数据量较大时,如何尽可能提升计算效率成为一个研究重点。传统的基于定义的方法计算均值和方差需要多次遍历整个数据集合,效率较低[9]。2015年,Schneider等[10]提出了基于增量计算的方法,该方法只需要遍历整个数据集合一次便可以迭代地更新数据的均值和方差;在2017年,Reparaz等[11]基于计数的思想,提出了快速泄露评估,该方法遍历一遍数据集合,将数据处理为计数矩阵的形式并存储,之后使用计数矩阵可以快速地计算出均值和方差,比文献[10]的方法计算效率高了几个量级。
本文对快速泄露评估的性能进行了分析,探究影响其性能的因素并给出了相应的使用建议;之后基于在线计数的思想对快速泄露评估进行了改进,并将改进前后的评估方法使用FPGA进行了实现;根据实验结果,改进后的方法能够显著地减少评估所用的内存和时间,极大地提升评估效率。
本节首先对主要使用的符号进行说明,然后对检验和快速泄露评估进行简要的介绍。
检验是TVLA中常用的检验方法,它于2011年在文献[12]中首次被应用于泄露评估。检验通过计算两组待检验数据的相似性,来检验设备的同一操作在处理不同数据时消耗的能量是否有明显的差异。对于两组待测数据,检验通常将它们取自同一分布作为零假设,之后通过计算得出一个概率来检验是否接受零假设。
表1 符号说明
基于TVLA的泄露评估方法通常采用分步的策略来部署,其流程主要分为以下几个阶段。
预处理阶段:遍历原始数据矩阵将其转化为对应计数矩阵。
计算阶段:基于所得计数矩阵计算各列数据的均值和方差,并进行检验。
(2)采样点的采样精度,即的大小,因为计数矩阵的行数为2,所以采样精度的增加会影响到所构建的计数矩阵的规模。对于0来说,值的增加会使集合中的元素个数以指数量级增长,之后计算阶段需要遍历的次数和所用时间会随之增加。
根据实验结果,本节得到一些结论,并给出如下使用建议。
③预处理阶段:无。
考虑到方案实现需要几个核心功能,即数据采集、在线处理(即可编程)和数据发送功能,本文选择了一块FPGA作为开发平台,其型号为赛灵思Virtex-7XC7VX485T-2FFG1761,简称VC707(如图1所示),在该FPGA上主要实现两种方案采集阶段和发送阶段的功能。
图1 实验所用VC707FPGA开发板
Figure 1 The VC707 FPGA board
实验中所选用的待测设备(DUT)为ChipWhisperCW303测试板,在其上运行的是无防护的串行AES算法,算法运行过程中测量板上的电压变化作为能量曲线。在VC707上有一个1M采样率的ADC模块——XADC,实验使用专用外部差分模拟输入信道来采集能量曲线。在实验中,XADC被设置工作在双端输入,连续采样模式,在每次采样的转换阶段,它会在状态寄存器中产生一个16 bit的值,其中高12 bit为有效值,为了实验方便,取其高8 bit作为采样结果。在发送阶段,FPGA上的UART模块将所采集的数据发送到PC上。
根据两组实验结果,本文分别对各个阶段的运行时间进行单独分析。
图2 在Np= 1 000 时,两种方案在不同N0下各阶段的运行时间
Figure 2 Required time of each stage over0withN= 1 000 in two designs
图3 在N0= 2 000时,两种方案在不同Np下各阶段的运行时间
Figure 3 Required time of each stage overNwith0= 2 000 in two designs
图4 两种方案在不同N0和Np下的总运行时间
Figure 4 Total required time of two designs over0andN
本文首先分析了快速泄露评估能够提升评估效率的原因,之后提出了两个影响其性能的因素,分别是计数矩阵的变量类型和采样精度;对这两个因素分别进行了分析和实验,并根据结果给出了使用建议。
然后,在保留快速泄露评估特点的基础上,本文基于在线计数思想对其进行了改进,通过将预处理阶段的操作加入采集阶段的方法,可以在采集阶段直接获得相应的计数矩阵。这样不仅可以减少存储数据所需的内存,简化采集流程,使其适用于可用内存有限的评估场景,而且可以在原始能量曲线条数较多时显著减少评估所用时间,提升整个评估流程的效率。
虽然在线计数带来了明显的提升,但是有一些局限性,因为所存储的是处理后的计数矩阵,而非原始的能量曲线,所以该方法在处理阶段只适用于使用快速泄露评估的方法来处理,且后续难以进一步对原始数据进行分析和利用。此外,当采集过程中出现错误时该方法不能发现和处理,因此该方法要求实验中有良好的采集环境。
[1] KOCHER P, JAFFE J, JUN B. Differential power analysis[C]//Advances in Cryptology -CRYPTO' 99. 1999: 388-397.
[2] BECKER G, COOPER J, DEMULDER E, et al. Test vector leakage assessment (TVLA) methodology in practice[C]//International Cryptographic Module Conference 2013.
[3] TIRI K, VERBAUWHEDE I. A logic level design methodology for a secure DPA resistant ASIC or FPGA implementation[C]//Proceedings Design, Automation and Test in Europe Conference and Exhibition. 2004, 1: 246-251.
[4] CNUDDE T D, REPARAZ O, BILGIN B, et alMasking AES with d+1 shares in hardware[C]//Cryptographic Hardware and Embedded Systems-CHES. 2016: 194-212.
[5] CORON J S, KOCHER P, NACCACHE D. Statistics and secret leakage[C]//International Conference on Financial Cryptography. 2001: 157-173.
[6] DING A ASimpler, faster, and more robust t-test based leakage detection[C]//Constructive Side-Channel Analysis and Secure Design. 2016: 163-183.
[7] BACHE FConfdent leakage assessment—a side-channel evaluation framework basedon confdence intervals[C]//Design, Automation Test in Europe Conference Exhibition-DATE. 2018. 1117-1122.
[8] BACHEFEvaluation of (power) side-channels in cryptographic implementations[J]. IT-Information Technology, 2019,61(1): 15-28.
[9] CHAN T F, GOLUB G H, LEVEQUE R J. Algorithms for computing the sample variance: analysis and recommendations[J]. American Statistician, 1983, 37(3): 242-247.
[10] SCHNEIDER T, MORADI A. Leakage assessment methodology[C]//Cryptographic Hardware and Embedded Systems – CHES. 2015: 495-513.
[11] REPARAZ O, GIERLICHS B, VERBAUWHEDE I. Fast leakage assessment[C]//Cryptographic Hardware and Embedded Systems(CHES). 2017: 495-513.
[12] GILBERT G, BENJAMIN J, JAFFE J, et alA testing methodology for side-channel resistance validation [C]//NIST Non-Invasive Attack Testing Workshop, 2011.
[13] UG960-7 series FPGA AMS targeted reference design[EB].
Improved fast leakage assessment based on online counting
SHI Zhengguang1,2, ZHENG Mengce1,2, HU Honggang1,2, YU Nenghai1,2
1. Key Laboratory of Electromagnetic Space Information, Chinese Academy of Science, Hefei 230027, China 2. School of Cyber Science, University of Science and Technology of China, Hefei 230027, China
Fast leakage assessment (FLA) was proposed in 2017, which made use of the idea of "counter" and significantly improves the computing efficiency. The performance of FLA was analyzed, an online-counting based method was proposed to improve the evaluation flow, and the method was also validated via FPGA implementation. According to the comparisons of experimental results, the proposed method could not only decrease the required memory but also lower the runtime of the evaluation flow. Hence it can improve the evaluation efficiency significantly.
leakage assessment, online processing, efficient computation, side-channel countermeasures
TP309
A
10.11959/j.issn.2096−109x.2021017
2020−10−22;
2021−01−18
胡红钢,hghu2005@ustc.edu.cn
国家自然科学基金(61632013, 61972370, 62002335);中央高校基本科研业务费专项资金(WK3480000007)
The National Natural Science Foundation of China (61632013, 61972370, 62002335), Fundamental Research Funds for Central Universities in China (WK3480000007)
时争光, 郑梦策, 胡红钢, 等. 基于在线计数的改进快速泄露评估[J]. 网络与信息安全学报, 2021, 7(2): 141-150.
SHI Z G, ZHENG M C, HU H G, et al. Improved fast leakage assessment based on online counting[J]. Chinese Journal of Network and Information Security, 2021, 7(2): 141-150.
时争光(1994− ),男,河南开封人,中国科学技术大学硕士生,主要研究方向为密码学、侧信道分析与泄露评估。
郑梦策(1990− ),男,浙江宁波人,博士,主要研究方向为应用密码学。
胡红钢(1978− ),男,四川彭州人,中国科学技术大学教授、博士生导师,主要研究方向为密码学、编码、网络安全。
俞能海(1964− ),男,安徽无为人,中国科学技术大学教授、博士生导师,主要研究方向为多媒体数据处理与分析和数字内容安全。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!