中文 英语
知识中心
导航
知识中心

侧通道攻击

通过使用不同的访问方法分析信息,对设备及其内容进行的一类攻击。
受欢迎程度

描述

侧通道攻击是攻击者试图评估加密设备及其内容的状态的一类攻击。这是通过观察和分析使用不同的访问方法可以观察到的信息来实现的。

通过分析设备发出的电磁辐射,可以非侵入性地从设备中提取密钥和其他敏感信息。基本上,DPA测量芯片不同部分的功率水平,并使用统计分析。测量这些功率波动可以识别DPA正在运行的计算类型,重复的排列和分析可以揭示加密密钥的比特。足够多的重复,最终会产生完整的密钥。只是简单地记录下密文的波形和侧信道泄漏,再进行后处理,突然之间,密钥就

更常见的侧通道攻击类型包括:

电磁.当芯片的处理器运行它们的功能和算法时,电磁场就产生了。我们都知道,电子的运动会产生一个电磁场,无论电磁场有多小,只要有一点知识和合适的设备,就可以测量和分析这个电磁场。这样的电场在几乎任何没有某种射频屏蔽或泄漏消除过程的芯片上都是免费和普遍可用的。

用于捕获和分析加密处理器发出的射频场的设备与任何射频分析设置相同。它只需要能够捕捉到微小的电磁场。它包括探针;power -它只不过是一个电压或电流传感探头,EM -一个线圈和一个LNA的一些配置。其他设备是一个数字存储示波器,一个高带宽放大器和一个带有RF/EM分析软件的工作站。

电力监控.由于在芯片上运行的不同进程具有不同的执行参数,因此它们具有独特的功率签名。分析这些能量特征可以提供数据包含什么的线索。有两种类型的功率分析,差分功率分析(DPA)和简单功率分析(SPA)。这两种技术都必须直接访问芯片上的电源引脚,并通过直接检查和转换或对波动进行统计分析来分析数据。这两种技术将在以后的文章中深入讨论。

获取能量痕迹相对简单。所需要的只是一个与适当的引脚平行放置的电阻,以监控密码操作所消耗的功率。在电阻上放置一个采样装置,如示波器,然后收集和分析电阻上的电压变化。

SPA检查特性,如时序、设备属性、算法结构等,这些特性可以直接在单个功率迹线中观察到,也可以通过比较功率迹线对观察到。它更多地依赖于模式识别而不是数学分析,对于更大规模的功率变化很有用。它的优点是可以显示所执行代码的顺序。因此,它可以揭示加密信息,如DES密钥调度计算和排列。

DPA比SPA更能分析功率例程,因为它可以使用统计分析分析附加在数据值上的异常。该程序分析子集的轨迹,取平均值,并计算平均值的差值。然后将子集分配给跟踪(将哪个子集分配给哪个跟踪并不重要)。事实证明,如果子集与轨迹相关,则子集的排列将接近某个有限数。如果它们不相关,那么排列将趋近于零。最终,给定足够数量的迹线,甚至可以在迹线中识别出非常微小的相关性。

计时攻击.这些攻击分析执行各种加密操作所需的时间。攻击者分析算法并确定算法的时间间隔。然后,将测量结果输入统计模型,例如输出某个键的某些变化。虽然它可能不是确切的关键,但它有一定的确定性。该过程用于执行时序信息的统计相关性分析,最终恢复正确的密钥。定时攻击对RSA、ElGamal和数字签名等加密算法最有效。

故障攻击.从某种意义上说,这些是一种不同的动物,它们对芯片做了一些事情,破坏了芯片的功能。它们仍然被认为是侧通道攻击,因为它们使用与一些非侵入性攻击相同的分析方法,特别是差分故障分析。与DPA一样,DFA尝试以与功率分析类似的方式提取密钥或加密数据,除了它会导致算法中的方差作为过程的一部分。

这在加密过程中(在本讨论中,是DES算法,但该过程也可以应用于DES、RSA、IDEA、RC5、DSA和其他密码)创建了一个已知的异常,导致它们出现故障。例如,这些故障可能包括热、过电压/欠电压、时钟偏移、电磁场或辐射。恩智浦半导体公司漏洞分析创新中心加密与安全业务单元安全与连接负责人Axel York Poschmann博士指出:“一次成功的故障攻击可能会导致程序流中断。这可能会导致,例如,跳过PIN验证步骤。它也可能转储内存的全部内容,包括密钥,例如

虽然方法因密码而异,但Poschmann非常优雅地描述了它:“基本前提是在加密过程中引入一个错误。例如,通过电压或时钟故障,或激光故障注入,并观察两个或多个加密运行时输出结果的差异,使用相同的明文和密钥。由于加密算法是完全指定的,并且攻击者知道,除了秘密密钥(Kerckhoff原理),因此可以通过算法反向跟踪差异。

他补充说:“像AES这样的分组密码通过具有特定的构建块——所谓的s盒,针对密码分析攻击(例如线性和微分密码分析)进行了优化。它们是高度非线性的,具有均匀的输出分布。这是通过减少固定输入-输出模式出现的概率来实现的。在DFA中,这个特征被用来排除许多关键候选,从而大大减少了搜索空间。从理论上讲,引入十几个错误就足以找回整个128位AES密钥。

这些是更明显的侧通道攻击。其他类型的方法包括声学密码分析(试图分析来自声学特征的数据)和数据残留(试图在覆盖之前发现剩余的敏感数据)。

Baidu