[发明专利]改编和执行计算机程序的方法及其计算机体系结构有效
| 申请号: | 200980119756.5 | 申请日: | 2009-05-12 |
| 公开(公告)号: | CN102047261A | 公开(公告)日: | 2011-05-04 |
| 发明(设计)人: | J·A·崔斯切尔;P·M·H·M·A·格瑞森;W·P·A·J·米歇尔斯 | 申请(专利权)人: | NXP股份有限公司 |
| 主分类号: | G06F21/00 | 分类号: | G06F21/00 |
| 代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 王波波 |
| 地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 改编 执行 计算机 程序 方法 及其 计算机体系结构 | ||
技术领域
本发明涉及一种执行计算机程序的方法。
本发明也涉及一种计算机体系结构。
本发明也涉及一种装置。
本发明也涉及一种计算机程序产品。
本发明也涉及一种用于改编计算机程序的另外方法。
本发明也涉及一种另外的计算机程序产品。
背景技术
例如,故障攻击可以用于对诸如计算机产品之类的数据处理系统的安全性和完整性进行折中。具体地,故障攻击属于智能卡所关注的领域。故障攻击在操作期间向所述系统引入攻击,从而引起系统偏离其编程操作。过去,故障攻击通常是小故障攻击,例如在功率线或复位线上感应。最近以来,已经发现了光攻击是一种引入故障并且对微控制器的程序流进行干扰的相对容易的方式。典型地在操作IC的同时,在例如集成电路(IC)的表面上闪光来执行光攻击。
故障攻击典型地面向命令,例如条件跳转或者条件跳转之前的测试指令。例如,可以将故障攻击用于绕过智能卡中个人身份证号(PIN)码的验证。如果用户键入错误的PIN码,他/她可以在程序将要跳转到常规程序来处理错误PIN码的时刻执行故障攻击。作为故障攻击的结果,不会执行用于处理错误PIN码的常规程序的跳转,并且所述程序继续,如同所述PIN码是正确的一样。在这种情况下,即使他/她只用于错误的PIN码,用户通过所述故障攻击获得了与正确的PIN码相关联的特权。
使用故障攻击的其他种类的安全性攻击是对于密码算法的攻击,所述密码算法例如是在加密协议中使用的算法。例如,使用故障攻击,攻击者可以引起所述算法产生错误的值。通过分析按照这种方式发射的错误的类型,攻击者例如在某些情况下能够推论出密钥。例如,参见Boneh等人1997年Lecture Notes in Computer Science,卷1233,页37-51d“On the Importance of Checking Cryptographic Protocols for Faults”。已知后一种攻击是Bellcore攻击。
光攻击影响对于存储器的读取访问,对于诸如RAM之类的易失性存储器和诸如只读存储器(ROM)、EEPROM或闪速存储器之类的非易失性存储器均影响。通常,所述光攻击改变的不是存储器单元的内容,而是即刻改变了读取回的值。
例如,关于智能卡的一种主要的安全性弱点是处理处理器与芯片外外围设备和资源通信的总线,所述资源例如是代码存储器和数据存储器。可以执行篡改总线值的物理攻击。为了说明这种攻击的能力,考虑其中通过只改变单一的比特来改变程序计数器(PC)的值的情景,将所述程序计数器放置到所述总线上递给存储器,以便找到要执行的程序的下一个指令,攻击者可以禁止可能的临界指令的执行,所述指令在所述程序中获得的安全性措施或安全装置的一部分。
通常将计算机程序构建为一组指令的基本块。正好是一个入口点和一个出口点的、并且在入口点和出口点之间不包含跳转指令目的地的代码块是基本块。跳转指令是其中可以使用地址来更改控制流的计算机程序中的点。
更正式地,并且稍微优点更加一般地,如果必须在指令序列中的任意其他指令之前执行所述指令序列中的任意特定位置中的任意指令,所述其他指令是所述特定位置之后的位置,并且如果此外在所述指令序列中的两个连续指令之间没有其他的指令执行,所述指令序列形成基本块。可以将计算机程序表示为分立的段落,其中所述基本块的组形成节点和表示连接基本块的分立边缘的跳转。程序的这种表示称作控制流图。
注意:跳转可以是无条件跳转或者条件跳转。例如,在8051处理器的指令上,“LJMP”指令表示“长跳转”指令,这是一个到无条件地址的跳转。例如,同样对于8051处理器,“CJNE”指令表示“如果不相等则比较和跳转”指令,所述“CJNE”指令比较两个操作数,并且只在所述操作数相等的情况下跳转。
发明内容
已公开专利申请WO2007/077412“PROCEDED DE SECURISATIONDEL’EXECUTION D’UN PRGRAMME D’ORDINATEUR”公开了一种用于检测引起忽略执行指令的某种故障攻击。所述方法对一直到基本块的出口点但是不包括所述出口点的基本块中的中性指令的个数进行计数。在这一点上,将所计数的中性指令的个数与预期的中性指令的已存储个数进行比较。如果所计数的个数不等于所述预期的个数,唤起中断。
现有技术的问题是对于计算机程序的故障攻击可以引起计算机程序执行未授权的操作。
本发明的目的是减轻或者减小上述问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于NXP股份有限公司,未经NXP股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200980119756.5/2.html,转载请声明来源钻瓜专利网。





