首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

密码学领域的分支技术:旁路分析技术简介

旁路分析是密码分析领域的一个重要分支,其目的在于研究密码算法在物理实现上的安全性。理论上被证明安全的密码算法会在诸如智能卡、密码芯片之类的嵌入式软硬件系统上实现,而这些设备在使用过程中会产生功耗、电磁辐射、时间、缓存访问命中与失效等物理可测量的旁路信息泄露。攻击者能够利用该泄露并结合密码算法本身的结构特征,恢复设备中所使用的密钥,此类密码分析方法被称为“旁路分析”。旁路分析技术对各类嵌入式智能设备的安全性造成了极大的威胁。随着内嵌密码模块的智能设备的普及以及物联网等领域的高速发展,旁路技术对于嵌入式系统安全性所造成的实际威胁将日趋严重。

人工智能技术作为一门发展在统计学基础上的综合性学科,在多个领域展现出了相较于传统技术的优势,尤其是在一些难以利用统计学方法构建合理的模型或是确定具体特征的场景,人工智能技术能够利用数据规模和算法的优势来近似描述这些模型或特征。另一方面,人工智能核心算法的实现依赖于物理设备,从旁路角度存在泄露敏感信息的风险。如何抵抗这种风险,也是旁路分析人员需要认真考虑的问题。

传统意义上的旁路分析技术可以分为基于非建模(Non-Profiling-based)的分析方法和基于建模的(Profiling-based)的分析方法。非建模的分析方法主要包括差分功耗分析(Differential Power Analysis,DPA)、相关性功耗分析(Correlation Power Analysis,CPA)等。该方法结合输入的明文信息以及可能的密钥候选值,根据领域知识建立加密设备运行过程中泄露信息的猜测模型,采集加密设备运行过程中实际产生的物理泄露信息,利用统计学的方法确定实际泄露信息与人为构建的泄露模型之间的相关性,进而确定加密过程中使用的密钥值。基于这一特性,非建模的分析方法在泄露信息采集过程中需要固定密钥,保持密钥的一致性,才能够准确地刻画出实际泄露信息和猜测模型之间的相关性。

以模板攻击(Template Attack,TA)为代表的基于建模的分析方法,其过程主要分为模板构建(建模)和模板匹配(攻击)两个阶段。在模板构建(建模)阶段,攻击者假设能够获得与目标加密设备相似的设备,称为模板设备。一般情况下,模板设备的型号与目标设备相同。攻击者通过在模板设备上实现与目标设备相同的加密算法,并通过配置不同的密钥、明文等参数获取足量的泄露信息,然后利用这些信息刻画不同的明文和密钥组合对应的中间值的泄露信息特征,构建对应的模板。在模板匹配(攻击)阶段,攻击者从目标设备上采集泄露信息,将其与构建的模板进行匹配,从而确定密钥的候选值。与非建模的分析方法相比,基于建模的分析方法可以对敏感操作构建模板。例如,模板攻击可以直接针对密钥加载操作进行建模,并且在攻击阶段直接匹配对应的密钥值;当建模对象为特定中间值时,由于明文-密钥对能够确定所有可能的中间值,因此也能放宽在模板构建阶段对密钥一致性的要求。同时,模板攻击方法在攻击阶段往往难以从单条物理泄露中准确地恢复出密钥,因此会根据极大似然估计准则,在同一密钥加密场景下采集多条物理泄露信息,并结合每条泄露信息的密钥猜测结果,选择累计概率最高的密钥值。在此步骤中,恢复密钥所需要的最少泄露信息数量也能够作为衡量旁路攻击性能的重要指标。

针对以上旁路分析手段,智能设备生产厂商往往会采取不同的防护对策来降低或消除物理泄露信息和设备当前处理的数据之间的依赖性,进而实现对加密设备的防护。这些防护对策主要分为以下两类:

隐藏对策,其原理是使加密设备在不同时钟周期产生的物理泄露信息相等或是随机分布,从而消除泄露信息和处理数据的依赖关系。可以通过直接改变加密设备对于不同操作的功耗特征实现。

掩码对策,通过生成随机数与处理的中间值进行一定操作或运算(如异或运算),并将该运算结果作为后续处理的输入,执行后续的加密算法。由于设备产生的随机数对于攻击者来说是未知的,这样就消除了物理泄露信息和处理的中间值之间的依赖关系。同时,掩码对策可以在算法级上实现,而无须做硬件层面上的改动,减少了防护对策的实现成本。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191207A0M66W00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券