旁路攻击

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

旁路攻击SCA及防御密码攻击•对加密算法的攻击大体可分为数学攻击、实体攻击、实现攻击等。•实体攻击需要昂贵的高端实验室设备和专门的探测技术,实施起来具有一定的难度;应对实体攻击的关键在于提高芯片设计的复杂程度和芯片制造的精细程度。•实现攻击并不需要打开密码模块或密码系统的硬件封装,因此是一种相对廉价与相当有效的攻击方式。与传统的数学分析方法相比,实现攻击具有较小的密钥搜索空间和较高的分析效率。密码攻击-数学攻击•数学攻击:是以线性攻击和差分攻击为代表的传统密码分析方法,利用加密算法的统计特性,通过分析选择的明密文对来获取密钥。实施这类攻击往往需要俘获和处理异常巨大的数据量,在现实中并不总是可行。密码攻击-实体攻击•实体攻击主要是通过去除芯片或电路的封装,观察、操纵和干预系统内部芯片的某些点的状态及芯片与外围电路之间的通讯来获得信息;改变电路结构;直接获取存储器数据等。实体攻击方法之一•(1)微探针技术:攻击者通常在去除芯片封装之后,通过恢复芯片功能焊盘与外界的电气连接,最后可以使用微探针获取感兴趣的信号,从而分析出电路的有关设计信息和存储结构,甚至直接读取出存储器的信息进行分析。实体攻击方法之二•(2)版图重构:利用高倍光学及射电显微镜研究电路的连接模式,可以迅速识别芯片上的一些基本结构,如数据线、地址线、控制线、RNG等。其结果是存储内容被攻击者非法获得,旁路某些敏感电路。密码攻击-实现攻击•实现攻击:加密算法的实现电路经常会泄漏一些有用信息,这些信息能够被用来分析加密算法的敏感数据或密钥,这即是实现攻击。•实现攻击可分为主动式攻击(失效分析攻击)和被动式攻击(旁路攻击)实现攻击使密码系统设计陷入困境•因为用以往我们保护分组密码的技术来对付实现攻击效果将适得其反。比如,以往我们采用尽量长的密钥来保证分组密码系统的安全,但是长密钥带来的就是长时间的运算操作,这使得实现攻击根据时间分析来获得更多的关于密码系统的信息。因此也许我们应该改变设计密码系统的方法。实现攻击-主动式攻击•主动式攻击是一种侵入式攻击,通过引入故意错误如数据抖动、电源或时钟突变来影响加密电路的正常运算过程,从而分析出密钥。•在主动式攻击中,攻击者通过将芯片放置于异常物理环境中有意使得芯片指令的执行出现故障或错误。干扰式攻击通常用来将芯片关键指令的执行替换成任意其他指令的执行,也可以用来在数据传递于寄存器和存储器间时更改传输数据。实现攻击-主动式攻击•目前已知的干扰方式有时钟信号短暂扰动,电源供应短暂扰动,外部电磁场短暂扰动等;还有光、温度、射线等扰动;•时钟信号扰动是目前最容易和有效的干扰方式。干扰攻击目的•回避某些判断、跳转指令的执行,从而逃避安全检查,例如认证等;•降低时钟频率可以更容易的采集信息,从而提高获取敏感数据的可能性;•使CPU执行非法指令可能引起非法的地址访问,从而泄露芯片中的安全信息;•简短程序循环的次数,比如减少密码运算的轮运算,使得算法更易攻击。干扰攻击机理•瞬间扰动可以应用在时钟信号或电源信号上,因为不同信号路径的逻辑门数目不同,延迟就不同,通过改变扰动的精确时间和长度,可以导致处理器执行错误或非法指令。例如:•高频时钟可导致处理器没有足够的时间将跳转地址写入程序计数器而使得程序分支跳转无法执行;•高频时钟与时钟毛刺的效果是一样的,可对CPU的译码和指令执行产生影响,导致CPU执行非法指令;•非正常的电压会影响NVRAM的写入特性;•非正常的电压会引起RNG的不正常工作,使随机数输出不随机,还可能使CPU执行非法指令。•时间和功耗分析可以用来在扰动中监视程序走到哪一步,以辅助扰动的效果。失效分析攻击--电涌攻击•(1)尖峰电涌攻击在多种失效分析攻击方法中.多年来最简单、应用最广泛的方法就是修改智能卡控制器的信号输入或供电。目前市场上广泛存在的卫星电视黑卡就是用这种方法破解的。供电中的瞬时能量脉冲被称为电涌Spike;所谓的Glitch尖峰脉冲则被定义为对时钟信号的特别修改。由于电源和时钟信号都是芯片运行的必需条件,尖峰和电涌攻击都会导致芯片控制器故障,即某些电子模块会暂时失效,因此会跳过或实施错误的操作。失效分析攻击--电磁攻击•(2)电磁攻击虽然尖峰和电涌攻击能够得到一些效果,更复杂的方法已经能把电压和信号的改变融合进半导体芯片中。例如,对GSMSIM卡的PIN码攻击可以使攻击者完全不需懂得PIN码的知识就能分析出卡中的保护数据。为了把扰乱的信号注入芯片,经常使用电磁线圈,需要把它直接放到芯片表面电磁攻击虽然更复杂,但比起传统的尖峰或电涌攻击方法来,一个明显的进步是可以把芯片放在一个特殊的模块上进行本地的攻击。这就导致相应的防范策略更难被开发。一个安全控制器可以监视它的外部供电压,可以监测到一些尖峰和电涌,但是如果一个电磁脉冲被加到一个专门的模块上,例如加密协处理器.就很难被监测出。电磁攻击电磁攻击失效分析攻击--光攻击•(3)光攻击光攻击是指用光照射正在工作的安全控制器表面,由于光的入侵,芯片的硅片内部会产生电压和电流.从而导致失效行为。采用这种技术的攻击者可以绕过密码或PIN码,而得到私密数据;或者对加密操作进行攻击从而产生密钥数据。分为全局光攻击和局部光攻击。这种攻击需要很强的光照,这就意味着需要用到闪光灯或激光。任何芯片覆盖层都不能提供有意义的屏障。光攻击光攻击失效分析攻击--热攻击•(4)热攻击修改环境温度也可被用作对安全控制器的攻击方法。在最近的文献中,有对PC内存中的内容进行攻击的详细描述。通过增加周边环境的温度,RAM内存的一些位会被修改,这种方法可被用来攻击各种虚拟机架构。相反,降低温度也可用来进行攻击——极低的温度可以导致RAM中存储信息的冻结,即便是外部供电已被关闭。温度攻击用于安全芯片的有效性很大程度上取决于芯片采用哪种内存类型。一般应对热攻击的对策在芯片上加装温度传感器,如果温度超过界限,则发出警报。失效分析攻击--Mpha射线攻击•(5)Mpha射线攻击对芯片用Alpha射线照射已成为及其简单且有效的攻击,但这种攻击方法仍存在一些局限性采用Alpha射线,攻击者将不能够预测失效发生的确切时刻,也就是说,这种攻击纯属统计过程。对Alpha射线的聚焦并不容易。必需通过对多次失效结果的纪录,然后进行后期的分析。这就导致攻击的实时性不好。已知的Alpha射线攻击的效果包括对内存内容的更改和信号时序的延迟等。因为不需要昂贵的设备,用Alpha射线的攻击对某些应用是很危险的。Alpha攻击的成功主要取决于攻击者的经验和特别对芯片内部的了解。实现攻击-被动式攻击•被动式攻击也旁路攻击SCA(sidechannelattack),它是指加密系统能够以各种形式泄漏信息,比如温度、声波、能量耗散、执行时间、电磁泄漏和光信号等,通过提取加密电路中的泄漏物理量,分析泄漏物理量变化规律来从而分析出密钥。•旁道攻击是一种针对密码设备的新型攻击技术。研究人员于1996-1999年间开始进行关于旁道攻击的研究。•旁道攻击不同于传统经典的、专注于数学理论而对密码系统进行研究的方式,而是一种针对密码系统实现上的物理攻击方式。但它既没有系统的攻击方式,也没有系统的解决方法。旁路攻击旁路攻击实现攻击-被动式攻击•利用电磁辐射的电磁攻击方法和利用能量消耗的能量攻击方法是两种非常有效的旁道攻击方法,也是目前旁道攻击的热点;•电磁信号的噪声比能量信号的噪声小,保留了泄露的秘密密钥的模式,而能量信号暴露了芯片在该位置的的电位差,所以电磁攻击和能量攻击这两种攻击方法可以互相补充,有时可以联合使用。实现攻击-被动式攻击•旁路攻击是基于统计理论的物理攻击方法。•旁路攻击的必要条件:一、有足够多的采样样本;二、各密钥相关状态的准确采样值。•攻击过程可以分为2个阶段:一、泄露信息的采集阶段二、密钥分析阶段。SCA最新趋势以及最新的研究成果•监听PC机运行时的声音来获得GNUPGRSA签名操作的信息;•分析PC机的USB端口能量变化获得OPENSSL加解密操作的信息;•分析缓存来获得AES运算信息;•对RFID标签进行能量分析等。旁路攻击机理•集成电路的核心技术即为CMOS技术。CMOS电路是由上拉P-MOS管和下拉N-MOS管电路构成,PN结是互补的。•当输入电流稳定,只有一个结导通;•当数据发生变化时,反映在CMOS电路上即为状态的变化,这种状态的变化导致CMOS电路的功率消耗(电路的瞬间物理功耗模型见下页)。•通过仪器可以测量到变化。CMOS电路的瞬间物理功耗模型•门电路的功耗是以下三种类型功耗的和:•(1)泄漏电流功耗,就整体功耗来说是很小的;•(2)对电容CL充电放电的动态功耗,为主要功耗。•(3)发生0到1转换时从源到地的短路电流功耗,大约占整体功耗的15-20%;•倒相器的动态功耗Pm表达式为:Pdyn=CL*VDD^2*P0-1*f•其中Pdyn为0、1转换的功率•f为设备的工作频率•VDD为电源电压•CL为电路中的电容CMOS电路的瞬间物理功耗模型•如果CMOS门改变了状态,这种改变可以监测到。变更状态的电路越多,耗散的功率越大。在同步设计中,所有门电路在同一时刻改变其状态。每个门的输出均有一个由引线产生的寄生电容和下一级门电路构成的容性负载。输入端的变化导致了输出端的变化,从而对寄生电容进行充放电,引起电源端电流流动和电磁辐射。•在一个特定的时间t,电路的功耗和辐射是同一时刻所有门电路的功耗和辐射的和。旁路攻击原理旁路攻击分类目前已经发现且被证实有效的旁路泄漏信息有多种,按泄漏特征进行划分,旁路攻击可以分为以下几类:•(1)时间攻击(TimingAttack)•(2)故障攻击(FaultAttack)•(3)功耗攻击(PowerAttack)•(4)电磁攻击(ElectromagneticAttack)•(5)声音攻击(AcousticAttack)•(6)可见光攻击(VisibleLightAttack)•(7)组合分析攻击•在诸多旁路攻击手段中,能量攻击和电磁攻击最为强大和高效,目前的研究工作主要是对这两种攻击方法。旁路攻击之一-----时间攻击•时间攻击(TimingAttack)•1996年美国科学家Paul首先发现针对密码芯片的时间攻击法。该方法通过对密码芯片运算过程中执行时间信息的采集,结合密码算法的内部实现,证实了算法指令和执行时间存在相关性,从而推测出密钥信息。在Paul的基础上,Dhem等人将时间攻击方法成功地应用于破解RSA密码算法。旁路攻击之二-----故障攻击•故障攻击(FaultAttack)•故障攻击是1996年由Boneh等人首次提出的对RSA公钥密码体制的新型攻击方法。该方法利用密码计算过程中的故障信息来破解密码系统。1997年Biham和Shamir将这种攻击方法应用于对称密码体制,首次提出“差分故障攻击”的概念,并成功地攻击了DES算法。此后,研究人员提出各种不同的故障攻击方法,成功地攻击了多种密码体制,如ECC、AES、3DES等。旁路攻击之三----功耗攻击•功耗攻击(PowerAttack)•功耗攻击是一种利用密码设备运行时的功耗泄露信息来推测密码系统所进行的操作和秘密信息的攻击方法。功耗攻击已经被用于破解几乎所有的对称密码和公钥密码,Paul声称仅需要数十条功耗泄漏曲线,就可以在几分钟内迅速地破解没有防御措施的大多数智能卡。旁路攻击之四----电磁攻击•电磁攻击(ElectromagneticAttack)•2001年,Gandolfi等人提出了电磁攻击方法。2002年Dakshi对电磁泄露攻击进行了系统深入的研究,并指出电磁泄露的信息非常大,其攻击方法比时间攻击和能量攻击更为有效,电磁攻击不仅可以与能量攻击相媲美,而且对于某些能量攻击无法破解的系统,电磁攻击也能够破解。旁路攻击之五----声音攻击•声音攻击(AcousticAttack)•声音攻击的研究主要是由以色列Weizmann科学研究院的科学家AdiShamir和EranTromer开展的。从理论上说,主板上电容器发出的声音

1 / 74
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功