实现
安全
一阶
掩码
方法
研究
密码学报ISSN 2095-7025 CN 10-1195/TNJournal of Cryptologic Research,2023,10(1):155167密码学报编辑部版权所有.E-mail:http:/Tel/Fax:+86-10-82789618实现高阶安全的一阶掩码与乱序方法研究*肖 冲,唐 明,严 飞武汉大学 国家网络安全学院 空天信息安全与可信计算教育部重点实验室,武汉 430072通信作者:唐明,E-mail:摘要:掩码是当前抵御侧信道攻击的可证明安全类防护手段,但实际应用中,高阶掩码由于受到资源开销的限制,通常会和其他轻量化防护结合使用,如掩码与乱序组合的方案.现有掩码与乱序组合方案的安全性评估均基于特定的区分器或特定的攻击技术.本文从泄露量的角度不依赖于特定的区分器及攻击方法评估这种组合方式,相较于已有基于具体攻击技术的评估更基础且通用,评估结果不会因新型区分器的提出或攻击技术的革新而变化.在噪声模型下对实际泄露量采用噪声指标来进行量化,通过模型规约得到能够同时衡量掩码方案以及防护组合方案的安全水平下界.通过仿真与实测实验来分析防护组合方案中影响安全水平的可配置因素.实验结果证实,组合防护的噪声指标 ARE 与乱序阶数 t 呈反比,1 阶掩码与乱序的组合防护能达到 2 阶或 3 阶掩码的攻击下界 m 的量级,即达到 2 阶或 3 阶安全水平.关键词:侧信道;掩码;乱序;轻量级防护;随机探针模型中图分类号:TP309.7文献标识码:ADOI:10.13868/ki.jcr.000586中文引用格式:肖冲,唐明,严飞.实现高阶安全的一阶掩码与乱序方法研究J.密码学报,2023,10(1):155167.DOI:10.13868/ki.jcr.000586英文引用格式:XIAO C,TANG M,YAN F.First order masking combined with shuffling to reach higher-ordersecurityJ.Journal of Cryptologic Research,2023,10(1):155167.DOI:10.13868/ki.jcr.000586First Order Masking Combined with Shuffling to Reach Higher-orderSecurityXIAO Chong,TANG Ming,YAN FeiKey Laboratory of Aerospace Information Security and Trusted Computing of Ministry of Education,Schoolof Cyber Science and Engineering,Wuhan University,Wuhan 430072,ChinaCorresponding author:TANG Ming,E-mail:Abstract:Masking is the most widely employed provable secure countermeasure against side-channelanalysis.However,when applying masking to protect the cryptographic algorithm,both resources andtiming are at least as twice as those in the plain implementation.Load of area and speed limitthe higher order masking in the real applications.Lightweight countermeasures are combined withmasking to replace the high order masking for applications.The combination of masking and shuffling isconsidered as reasonable among researchers,and its resistance is based on different SCA distinguishers.This paper analyzes the combined scheme from the leakage perspective,which is independent of any*基金项目:国家自然科学基金(61972295);武汉市科技项目应用基础前沿专项(2019010701011407)Foundation:National Natural Science Foundation of China(61972295);Wuhan Science and Technology Project ofApplication Foundation Frontier Special Project(2019010701011407)收稿日期:2022-01-15定稿日期:2022-08-02156Journal of Cryptologic Research 密码学报 Vol.10,No.1,Feb.2023specific analysis method.By modeling the physical leakage under the noisy model and reducing torandom probing model,it is able to quantify the security level of any order masking schemes and thecombined schemes.Some simulation experiments are conducted,and the results meet the theoreticconclusion.Experimental results show that the AREs are decreased in proportion to the order ofshuffling t.Furthermore,the 1st-order masking combined with shuffling can reach the security ofhigher order masking as it has approximately the same magnitude of m,the minimal number of tracesto successfully mount an attack.Key words:side-channel analysis(SCA);masking;shuffling;lightweight countermeasure;randomprobing model1引言不同于传统的暴力破解或基于数学统计分析方法,侧信道分析1利用从密码系统实际运行过程中采集的信息发起攻击.相关侧信道信息,如时间、能量消耗以及电磁泄露等,与密码算法在设备执行过程中产生的中间值存在依赖关系,使得攻击者能够依此推测出加密密钥.为抵御侧信道分析2,需要降低甚至消除这种依赖性.最主要的应对技术可以分为隐藏(hiding)和掩码(masking)两类3.隐藏技术旨在阻隔被处理的数据值与设备能量消耗之间的联系,通过降低信噪比,使攻击者难以从能耗中提取有效信息.尽管采用了隐藏技术的密码设备与未加保护的设备均执行了同样的操作,甚至产生同样的中间值,但隐藏技术使攻击者难以从能量迹中获得可利用的信息.乱序(shuffling)是一种常用的隐藏技术.乱序操作4是指在不影响加密结果的前提下将加密过程中的任何一组独立的操作随机化.可以对本来存在的操作进行乱序,还可以通过随机插入伪操作(dummy),让真实操作夹杂在其中5,6.存在两种不同的方式对一组操作进行随机化.其一,选择一种随机排列(random permutation,RP),按照该排列进行对应操作;其二,随机选择一个开始索引(random start index,RSI)来确定首个操作,然后依次执行后续操作,可以看作是将操作顺序进行循环移动.两种实现各有其优缺点,前者的开销较高但随机性更强,后者开销极少但随机性有限.Chari 等人7对密码算法随机化进行了分析,指出通过能量迹对齐,并借助信号处理技术,可以去除随机化效果.简易的乱序方案安全性受到质疑,通常需要与其他防护方案叠加使用,如掩码.掩码技术通过随机化密码设备所处理的中间值,消除中间值对于能耗的依赖性,其中用于掩盖中间值的随机数称为掩码.最常用的掩码为布尔掩码,d 个掩码通过异或运算对中间变量进行掩盖.掩码技术相当于 d+1 个共享因子的秘密共享方案8,中间变量表示为被掩值和 d 个掩码的异或.对于应用了掩码技术的密码算法,需要对多个共享因子进行存储与跟踪计算,因而导致其实现开销相较原始设计而言成倍增加.考虑到乱序技术在资源与速度上的额外开销要远小于增加掩码阶数产生的开销,可以将乱序与掩码技术相结合,使组合方案能在资源有限增加的条件下,其攻击代价与高阶掩码持平.当前对掩码与乱序组合方案评估的研究主要从防护和攻击入手.当前对防护能力的研究中,Herbst 等人9提出了一种有效的AES 软件实现.在该实现中,对中间结果进行了掩码并对 AES 执行过程的首轮和末轮的运算序列采用了基于 RSI 的随机化乱序.他们的安全评估表明掩码和乱序的组合能提高其对高阶差分能量分析(HO-DPA)10,11的抵抗力.Prouff 等人针对掩码与乱序组合对 HO-DPA 的有效性进行了理论分析12,并提出了一种通用的掩码与 RP 乱序的组合方案,可以根据预期的安全水平进行组合参数配置.他们指出组合方案中使用的表重计算方案7已被证明在掩码阶数 d 2 或 d 3 时不安全13,即该组合方案选择的掩码方案并不是任意阶安全的.Azouaoui 和 Bronchain 等人14,15从信息论的角度研究了基于位片(bitslice)的掩码与乱序方案在不同噪声水平下的安全性.从攻击角度进行的掩码与乱序的研究中,Tillich等人使用了文献 16 中提出的窗口技术来对掩码与乱序的组合方案进行了 HO-DPA 分析17.此外,还有一些针对掩码与乱序组合方案的新型攻击方法的研究1820,均是从白盒攻击者的角度入手,针对性地提出攻击技术以及区分器.对于掩码与乱序组合的研究,无论是从防护角度还是攻击角度,都是建立在基于特定区分器以及攻击技术的评估,评估结果的普遍性和通用性有限.我们试图从一种更通用的角度来评估这种组合方案的安全性,而不依赖于某一特定的区分器.肖冲 等:实现高阶安全的一阶掩码与乱序方法研究157为对防护方案进行安全性评估,我们从泄露量的角度切入,将其视为评价防护方案安全水平的指标,在相同泄漏模型和度量指标下,将组合方案与高阶掩码就安全水平进行对比.近年来学者们提出了多种泄漏模型,使用这些模型,可以对物理泄漏进行建模,以权衡防护实现的安全水平.Chari 等人7提出了第一个泄漏模型,用来描述密码算法加密过程中中间值与能量泄漏的关系,称作噪声模型.在设备运算过程中采集得到的能耗不仅包含与中间值相关的部分,还包含无关的部分,即为噪声.他们还对掩码在噪声模型下进行了分析,指出用于恢复单比特所需的样本数随共享因子数目增加呈指数增长.Prouff 和 Rivain在文献 7 的基础上,完善了噪声模型且引入了噪声指标欧几里得范数(Euclidean norm,EN),并对实施了掩码的分组密码安全性进行了分析21.在文献 22 中,Duc 等人使用文献 23 中提出的噪声量化指标统计距离(statistical distance,SD),将噪声模型归约到随机探针模型,进而与攻击