我的设备泄漏信息了吗?—浅谈密码芯片泄漏检测技术

密码算法的软硬件实现对其安全性提出了新的挑战,算法在理论上的安全性并不能代表其在具体实现和应用上的真正安全,算法的设计除了要抵抗常规的数学分析,还需要能够抵抗算法运行时针对泄漏出的电磁、能耗、时间等信息的侧信道分析。对密码设备抗侧信道敌手攻击能力的评估,成为一个越来越重要的问题,泄漏检测技术,也因此成为当前一个新的研究热点。

泄漏检测及其关键技术

区分器初探

侧信道分析和泄漏评估方法都是区分器(Distinguisher)的应用,大家可能对这个概念很陌生。其实,这里的“区分器”就是我们常说的分类器(Classifier)。举一个简单的例子,让一个人蒙着眼睛对一堆不同面值的硬币(含1元、5毛和1毛)进行分类,他能够根据硬币的不同重量,准确地将硬币分成三堆。也就是说,硬币的重量泄漏了硬币的面值信息,可以利用(硬币,重量)构建一个区分器,将硬币成功分类。如果仍然让这个蒙着眼睛的人去分一堆黑子和白子重量相同的五子棋棋子。那么,他分类得到的两堆子中,黑子和白子仍然约占一半。即(棋子,重量)不能作为一个分类器。但是,摘下眼罩,他能够通过不同的颜色对棋子进行分类。也就是说,(棋子,颜色)可以构建一个区分器。

图1 一堆不同面值的硬币和一堆五子棋棋子

泄漏检测原理

为了提高设备的效率,运算中间值(Intermediate Value)通常会暂存于寄存器(Register)中。寄存器存储数值的变化将引发功耗(Power Consumption)的变化。如,一个8位的寄存器,就像一个房间里的八个灯。由4盏灯切换到另外4盏,总线上的电流值基本不变。但若由4盏切换到8盏,那么我们能够显著地检测到电流变化。因为电流的大小与开灯的数量有明显的线性相关关系,根据电流的变化情况,我们就可以判断房间里面开了多少盏灯。

图2 亮不同数量的灯时,总线上的电流区别

跟灯与电流变化例子的道理类似,泄漏检测(Leakage Detection)算法如相关性检验(ρ-test),t检验,互信息检验等,利用不同的中间值与其产生不同的功耗泄漏的密切关系来进行检验。假设泄漏检测者采集到了加密过程中的功耗泄漏,现在他要确定泄漏是否与密钥运算的中间值相关。以相关性泄漏检验为例,只需根据正确的密钥对每一个样本点进行划分。若正确的密钥下,信号呈现较好的分类,使得每一类的功耗值与中间值的功耗模型(如汉明重量模型)呈较高的相关性,即可认为存在泄漏。

以AES-128在AT89S52微控制器系统上软件实现的相关性泄漏检验为例,当采集了1300个明文加密的泄露信息时,第一个密钥字节(值为213)对应的第一个S盒输出的功耗,每条信号包含5000个样本点(Samples)。正确密钥下,第2141个样本点的功耗与中间值具有较高的相关性。因而得到检测结果:该点泄漏了第一个S盒输出的与密钥相关的中间值(如下图左图所示)。但第700个样本点的相关性泄漏检验结果如下图右图所示,可以认为该点不存在密钥相关泄漏。

图3 样本点2141(左)、700(右)的相关性泄漏检测结果

当然,上面两图仅仅反映了两个样本点是否存在泄漏。对于泄漏检测而言,评估者需要对所有的样本点进行检验,才能得到最终结论。下图所示,对S盒输出中间值的相关性泄漏检测表明,在AT89S52上实现的AES-128加密算法的第一个S盒多次泄漏了密钥相关信息。可以通过修改算法,消除信号与敏感信息的相关性,从而消除泄漏,保证算法的安全实现。

图4 所有5000个样本点的相关性泄漏检测结果

泄漏检测平台

常用侧信道分析平台,如Riscure公司的Inspector分析测试平台,也可以用作泄漏检测。该平台主要包括泄漏采集(示波器)和泄漏分析设备(台式机)等。泄漏检测过程一般为,攻击者利用示波器等信号采集设备采集泄漏信息并进行预处理,利用泄漏检测算法进行检验,评估设备泄漏情况和安全性。

图5 Riscure公司的Inspector分析测试平台

设备的安全性度量

就目前而言,并没有哪一种检测方法能够以100%的概率得到设备是否存在泄漏的结论。故而,检测者需要根据密码算法的实现,多尝试几种泄漏检测方法,提高检测结果的可信度(Confidence)。

评估者会想,需要采集多少条信号来检测泄漏呢?现在用条信号都没有检测到泄漏,那么是否没有泄漏呢?不尽然,也许当我们使用条信号进行检测时,就检测到泄漏了。因此,评估者通常将安全性划分成若干等级。如,条信号没有检测到泄漏,将安全等级划分6级;条信号没有检测到泄漏,将安全等级划分5级;以此类推。

研究现状和未来发展趋势

随着侧信道分析的发展,攻击者能够更加精确地刻画设备的泄漏信息、提出更加精准的功耗模型、提出更加高效的区分器,使得其能够在更少的能量迹、更小的代价下成功恢复密钥。而最好的防御侧信道攻击的方法,就是设备不存在敏感信息相关的泄漏。泄漏检测的目的,就是检测密码芯片在密码运算过程中,是否泄漏与密钥相关的关键信息,以便于更好地防止泄漏。

泄漏检测与评估框架完善

相对于侧信道分析和防御的研究,侧信道泄漏检测的研究比较滞后。最早可追溯到2009年,Standaert等人侧信道评估(Side Channel Assessment)框架的首次提出。2011年,NIST组织招开研讨会,希望能够建立被公认的方法来评估设备的安全性,并首次通过实验来检测泄漏。这些方法通过观测对设备执行一系列攻击实验时的是否成功,以及在成功的情况下所消耗的代价(如时间复杂度、空间复杂度和采样复杂度等)来评估设备的安全性。相关的工作为侧信道泄漏检测与评估提供了参考。但是,侧信道泄漏检测与评估体系十分不完善,大量的工作有待研究。

泄漏检测算法的优化

2013年,Luke等人提出了新的泄漏评估方法,他们在一系列实际相关的侧信道分析场景中,比较了t检验、连续互信息和离散互信息这三种检验的效果,并考虑样本容量、泄漏函数、噪声和其他假设检验标准对检测性能的影响。但是,他们的方案具有较高的复杂度。在单核CPU上,需要近1一个月的时间。在使用两个AMD Radeon 7970型号的GPU,吞吐量达到每秒3000亿次浮点运算的情况下,仍需要约14个小时来完成校验。可见,使用该方法来评估设备的安全性,仍然十分的困难。类似的研究是近几年的主流,更多的检测算法和优化算法被陆续提出。

高阶掩码泄漏检测

Durvaux等人利用基于相关性的漏检实验来检测不同信噪比和汉明重量下的信息泄漏情况,并使用该方法改进了其在COSASE 2015 上提出的高阶掩码(Higher-Order Masking)算法特征点的快速检测工具,为泄漏检测开辟了一个新的研究方向。

高阶掩码将中间值分成多片,至少要寻找到一组分片的样本点才能恢复该中间值。串行实现的高阶掩码的泄漏检测,其困难性在于随着掩码阶数的增加,分片的位置越难找。比如10个点里有5个点分别对应5个分片的泄漏,穷举很快就可以找到这5个点。但是100万个点里面寻找5个点将变得十分困难。此外,随着分片的增加,组合分片得到的信号的噪声迅速增大,这使得即使设备存在泄漏仍然难以被检测出来。而且,检测需要大量的信号,也极大增加了检测难度。

掩码方案泄漏预检验

Oscar于FSE 2016上提出了一种带掩码方案的密码算法在设备实现上之前,验证其是否存在泄漏的方法。该方案的好处在于,省去泄漏采样和特征点检测环节。此外,直接利用中间值的组合进行泄漏检测,避免了噪声对检测的影响。这是目前较好的泄漏检测方法。但是,密码实现是否存在泄漏,还与设备密切相关,所以该方法还有待进一步改进。

总结

泄漏检测和评估对密码芯片安全有着至关重要的作用,是目前侧信道分析领域的研究热点之一,但是其理论体系目前尚不完善,大量研究工作有待进行!

【本文为专栏作者“中国保密协会科学技术分会”原创稿件,转载请联系原作者】

戳这里,看该作者更多好文

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/153202.html<

(0)
运维的头像运维
上一篇2025-03-14 08:50
下一篇 2025-03-14 08:51

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注