CN108885663A - 用于使处理器抵御瞬时故障攻击的自适应系统和程序 - Google Patents

用于使处理器抵御瞬时故障攻击的自适应系统和程序 Download PDF

Info

Publication number
CN108885663A
CN108885663A CN201780019255.4A CN201780019255A CN108885663A CN 108885663 A CN108885663 A CN 108885663A CN 201780019255 A CN201780019255 A CN 201780019255A CN 108885663 A CN108885663 A CN 108885663A
Authority
CN
China
Prior art keywords
transient fault
processor device
fault
processor
control parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780019255.4A
Other languages
English (en)
Other versions
CN108885663B (zh
Inventor
奥利维尔·让·伯努瓦
大卫·塔马尼奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN108885663A publication Critical patent/CN108885663A/zh
Application granted granted Critical
Publication of CN108885663B publication Critical patent/CN108885663B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)
  • Computer And Data Communications (AREA)
  • Telephone Function (AREA)

Abstract

各种特征涉及使智能电话处理器或其它装置抵御瞬时故障攻击。在一个实例中,所述处理器被装备成使用故障检测系统检测瞬时故障且响应于所述瞬时故障适应性地调节控制参数,其中所述控制参数控制所述处理器的物理操作(例如通过门控所述处理器的时钟信号)或所述故障检测系统的功能操作(例如使用来检测瞬时故障的特定软件故障传感器SFS)。在一些实例中,响应于每个新检测到的故障,所述检测系统被控制消耗更多处理器时间,从而变得更加主动地检测额外故障。这用以响应于持续攻击快速地逐步增加故障检测以即时检测所述攻击,从而使得可停用所述装置以防止例如安全密钥或密码等敏感信息的丢失。

Description

用于使处理器抵御瞬时故障攻击的自适应系统和程序
相关申请的交叉引用
本申请要求于2016年4月1日在美国专利商标局提交的非临时申请第15/089,379号的优先权和权益,所述非临时申请的整个内容通过引用结合在此,正如下文以其全文且出于所有可适用目的完整阐述的一样。
技术领域
本公开涉及用于使处理器装置抵御瞬时故障攻击的技术,所述处理器装置例如智能电话的处理器等。
背景技术
瞬时故障攻击是对处理器的物理攻击,其中例如恶意实体选择性地对处理器施加物理能量或力(即,物理扰动)以企图注入或引发瞬时操作处理故障,所述瞬时操作处理故障可用于破坏处理器的安全性以例如获得安全密钥或实现否则未经授权的交易。举例来说,恶意攻击者可能会在处理器运行的同时将激光束引导到处理器的一部分上以通过翻转寄存器位注入瞬时故障。这种形式的攻击可利用当前技术发展水平的处理器的相对窄的“防护频带”,其中在与晶体管等的接通和断开状态相关联的电压之间可能存在相对窄的差。如果适当地定时和施加,那么此类攻击可致使系统在操作期间作出错误决策,这可能会泄露安全码或实现未经授权的交易,例如从账户中取钱。由于故障是瞬时而非永久的,因此它们可能难以被适当地检测到和解决。另外,一些数目的故障将甚至可能在不存在恶意攻击的情况下由于由环境辐射或其它环境因素触发的随机操作性“干扰”而发生。
可通过运行故障检测程序以检测校验和错误检测到瞬时故障攻击。举例来说,处理器可被装备以周期性地计算数学函数且将结果与已知的(正确的)结果进行比较。如果不存在匹配,那么由此检测到故障。处理器接着递增故障检测计数。如果计数最终超出预定阈值,那么自动停用装置。如果故障是由于恶意用户的持续攻击所致,那么由此阻止攻击(假设其尚未成功)。如果故障实际上自然地发生,那么无恶意的用户接着获得替换装置,例如通过获得新的银行卡等。实际上,除非提供对故障攻击的至少一定抵抗性,否则许多易受攻击的装置无法被认证以供使用。参见例如与如安全内容存储协会(SCSA)和EMV(Europay/MasterCard/Visa)等组织相关联的标准和基准。这些策略对于一些装置且在一些情况下可能是令人满意的。对于例如廉价智能卡,用户可能仅仅会丢弃停用的智能卡且获得一张新的智能卡。然而,对于智能电话或其它昂贵且精密的装置,停用装置的主处理器可能会对用户强加相当大的负担和烦恼。在紧急情形下,其中用户可能处于危险状态且需要使用智能电话,停用的智能电话可能会对用户造成严重和不利的后果。
因此,将合乎希望的是提供用于抵御瞬时故障攻击、特别是供其中前代途径可能并不是令人满意的智能电话或其它装置使用的改进的系统和程序。
发明内容
描述一种可在处理器装置上操作的方法。可检测到处理器装置内的瞬时故障(例如,使用故障检测系统)。可响应于瞬时故障适应性地调节处理器装置的(瞬时故障防御系统的)控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
在另一方面中,处理器装置可检测处理器装置内的瞬时故障(例如,使用故障检测系统)。处理器装置接着可响应于瞬时故障调节处理器装置的(例如,瞬时故障防御系统的)控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
在又一方面中,一种装置包含:用于检测处理器装置内的瞬时故障的装置;和用于响应于瞬时故障适应性地调节处理器装置的控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量的装置。
在再又一方面中,一种机器可读存储媒体包含一或多个指令,所述一或多个指令当由至少一个处理电路执行时致使至少一个处理电路来:检测处理器装置内的瞬时故障;和响应于瞬时故障适应性地调节处理器装置的控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
在另一方面中,一种可在处理器装置上操作的方法,包含:检测处理器装置内的瞬时故障;和响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环。
在另一方面中,一种处理器装置可被配置成:检测处理器装置内的瞬时故障;和响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环。
在又一方面中,一种装置包含:用于使用故障检测系统检测处理器装置内的瞬时故障的装置;和用于响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环的装置。
在再又一方面中,一种机器可读存储媒体具有一或多个指令,所述一或多个指令当由处理电路执行时致使处理电路来:使用故障检测系统检测处理器装置内的瞬时故障;和响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环。
附图说明
根据在结合图式进行的下文阐述的详细描述,各种特征、本质和优点可变得显而易见,在图式中,相同的元件符号贯穿全文对应地进行识别。
图1说明可由攻击者使用以从装置获得敏感信息的示范性瞬时故障攻击系统。
图2提供故障攻击防御策略的概述。
图3说明示范性故障抵抗系统和程序。
图4说明示范性故障检测系统和程序。
图5说明示范性故障检测系统和程序。
图6说明示范性故障反应状态。
图7说明示范性故障检测计数(FDC)调节。
图8说明配备有用于抵御瞬时故障攻击的自适应防御系统的智能电话的示范性芯片上系统(SoC)。
图9说明自适应防御系统响应于持续瞬时故障攻击的示范性操作。
图10说明自适应防御系统响应于非恶意瞬时故障的示范性操作。
图11进一步说明自适应防御系统响应于瞬时故障的示范性操作。
图12说明由自适应防御系统响应于瞬时故障进行的示范性处理器时钟调节。
图13说明响应于瞬时故障进行的选择性地递增和递减故障检测计数(FDC)的示范性过程。
图14概述自适应防御系统的特征。
图15是说明用于使用处理系统的设备的硬件实施方案的实例的框图,所述硬件实施方案可利用图2到14的系统、方法和设备。
图16是说明处理器装置的涉及适应性地控制瞬时故障防御的选定和示范性组件的框图。
图17是说明处理器装置的涉及适应性地控制处理器时钟的选定和示范性组件的框图。
图18是说明处理器装置的选定和示范性组件的框图,所述选定和示范性组件包含用于适应性地控制瞬时故障防御和适应性地控制处理器时钟两者的组件。
图19是广泛地说明可在处理器装置上操作以用于适应性地控制瞬时故障防御的方法的流程图。
图20是广泛地说明可在处理器装置上操作以用于适应性地控制处理器时钟的方法的流程图。
图21是进一步说明可在处理器装置上操作的示范性方法的流程图,包含用于适应性地控制瞬时故障防御和适应性地控制处理器时钟两者的程序。
图22是广泛地说明可在处理器装置上操作的另一方法的流程图。
图23是广泛地说明可在处理器装置上操作的又一方法的流程图。
图24是广泛地说明可在处理器装置上操作的再又一方法的流程图。
具体实施方式
在以下描述中,给出具体细节以提供对实施例的透彻理解。然而,所属领域的技术人员应理解,可在没有这些具体细节的情况下实践所述实施例。举例来说,可以框图示出电路以免以不必要的细节混淆实施例。在其它情况下,可不详细示出熟知电路、结构和技术以便不混淆所述实施例。
概述
图1说明由恶意实体(即,攻击者)使用的瞬时故障攻击系统100。出于图示和解释的目的,在此特定实例中,遭受攻击的装置是被盗智能卡102。然而,本文中所描述的示范性瞬时故障攻击程序适用于其它易受攻击的装置或其组件,包含智能电话的处理器等。在图1中,被盗智能卡102耦合到智能卡读取器104,所述智能卡读取器104被装备以提示系统响应于适当证书输出安全码或其它所要信息。然而,恶意攻击者没有那些证书且因此力图通过在智能卡的芯片内引发一或多个瞬时故障而引发被盗智能卡输出安全码,尽管他们没有适当证书。为此目的,激光或其它瞬时故障注入装置106由攻击者使用以向智能卡102施加热量、光或其它形式的电磁能108以致力于在智能卡的处理芯片内引发或注入瞬时故障。举例来说,激光束可被施加到智能卡的处理芯片的已知易受瞬时故障注入攻击的特定部分。如上文所解释,瞬时故障的注入可通过利用当前技术发展水平处理器的相对窄的防护频带翻转寄存器位,其中在与晶体管或其它电路组件的接通和断开状态相关联的电压之间可能存在相对窄的差。在其它实例中,攻击者可引发电源波动或时钟扰动。如果适当地定时和施加,此类攻击可致使芯片在操作期间作出错误决策,这可能会泄露可用于实现未经授权的交易的安全码。
因此,攻击者可使用瞬时故障注入控制器110来控制注入装置106以向智能卡102选择性地施加激光束或其它能量源以致力于引发一或多个注入故障,从而希望故障将致使智能卡102的芯片作出错误决策且输出足以泄露密码的信息或其它所要信息。同时,来自智能卡102的输出由智能卡读取器104读取且被转发到智能卡输出分析器112,所述智能卡输出分析器112分析输出以确定是否可从输出获得密码或其它所要信息。由智能卡输出分析器112获得的信息被反馈到瞬时故障注入控制器110中以进一步控制注入装置106。在一些情况下,激光脉冲的施加被仔细地定时以致力于增强触发将会泄露所要信息的故障的可能性。也就是说,攻击利用“时域局部化”。这可通过例如以下方式来实现:使用智能卡读取器104对智能卡102施加在智能卡102的芯片内触发已知中断的提示且接着在中断之后的准确控制的时间递送激光脉冲以最大化获得所要信息的可能性。
在实践中,可能会花费数小时对智能卡102周期性地施加激光束、同时在触发足以泄露所要信息的瞬时故障之前通过智能卡读取器104反复地提示智能卡102。假设攻击者成功获得智能卡102的安全码,那么智能卡102可能会被带到自动柜员机(ATM)等以提取资金或实现其它未经授权的交易。如果有待获得的信息是充分有价值的(例如,可获得相当大量的钱)且“非法侵入”智能卡所需的时间并不太长,那么攻击者可认为值得进行图1的程序。然而,如果程序太费时或如果在攻击者能够完成他或她的攻击之前智能卡存在相当大的可能性将被智能卡内的内部故障检测系统自动停用,那么这种攻击将不太可能被认为是值得的。本文中描述了系统和程序,所述系统和程序例如用来(a)费时地多地作出成功攻击和/或(b)大大增加遭受攻击的装置本身将在攻击者能够完成攻击之前自动停用由此阻止或防止此类攻击的可能性。
如上文所解释,一种用于抵御瞬时故障攻击的技术是在处理器或芯片内设置故障检测系统以检测瞬时故障。系统可对瞬时故障的数目进行计数,且如果故障计数超出预定限值,那么处理器本身自动停用。然而,为了及时检测持续瞬时故障攻击以在攻击能够被完成之前停用处理器,限值可能需要被设定成相当低的值。如果限值被设定成相当低的值,那么可能由环境辐射等触发的一系列自然发生的瞬时故障接着可致使处理器在没有实际攻击的情况下关机。这对于相对廉价的智能卡来说可能并不是相当大的问题,其中用户可能会丢弃停用的智能卡且获得一张新的智能卡。然而,对于智能电话或其它昂贵且精密的装置,停用装置的主处理器可能会对用户强加相当大的负担。因此,尽管适用于广泛多种处理器或芯片,但本文中在下文所描述的系统和程序主要意图用于与智能电话或其它相对昂贵且精密的装置内的处理器一起使用。相对精密的装置的其它实例包含导航装置、通信装置、移动电话、个人数字助理(PDA)、固定定位终端、平板计算机、音乐播放器、视频播放器、娱乐单元和/或膝上型计算机。
应注意,为了对被盗智能电话或类似装置进行瞬时故障攻击,攻击者通常将会砸开装置以移除(或至少暴露)装置的主处理器,从而使得激光束等可被施加到处理器。假设攻击者成功地获得存储在装置内的密码或其它安全密钥,攻击者接着可使用密码经由网站访问银行系统以发起未经授权的金融交易。智能电话本身接着将最可能被丢弃。然而,应注意,本文中所描述的瞬时攻击实例仅仅是说明性的且可进行广泛多种其它形式的攻击以从装置获得广泛多种所要信息或致使遭受攻击的装置进行广泛多种所要功能。还应注意,瞬时故障攻击可组合在其它类型的恶意攻击内,例如旁道攻击等。
为了解决这些和其它问题,本文中描述了各种自适应系统和程序。在一个实例中,提供一种自适应程序,由此处理器故障防御程序(可能是另外常规的)响应于检测到故障被节流,以使得程序响应于频繁故障更加主动且响应于不频繁故障不太主动。也就是说,故障检测/抵抗系统的至少一个功能操作被适应性地调节以便使更多处理器装置资源致力于瞬时故障防御。在一个实例中,其中处理器周期性地运行故障检测程序以经由校验和错误检测瞬时故障,激活程序的频率响应于在某一时间间隔内检测到每个新的故障而增加,以由此使更多处理器装置资源致力于瞬时故障检测且使得故障检测更加主动。作为特定实例,否则可能每秒运行一次的故障检测程序被加速成每秒运行十次,接着每秒一百次等。如果在间隔内未检测到新的故障,那么降低频率。如果接着检测到过多故障(例如,故障计数超出可编程和可调节阈值),那么停用处理器或采取其它对策。
通过使故障防御响应于一系列故障逐渐地更加主动,由恶意攻击触发的频繁故障将迅速地逐步增加故障计数,从而触发装置的相当即时的关机。然而,由环境条件或另外无害操作“干扰”所致的不频繁故障仅将临时增加故障检测/抵抗的主动性且不会导致装置关机。还应注意,虽然故障防御正在更加主动的状态中操作,但是其将可能花费攻击者更长时间来“攻破”系统,原因是越来越多处理器的资源将致力于运行故障检测/抵抗程序。因此,恶意攻击变得更加困难,原因是(a)在响应于过多故障停用处理器之前存在更少总时间可供使用以攻破或“非法侵入”系统和(b)在所述时间期间处理器使越来越多的资源致力于运行故障防御程序(而非在其操作期间引起故障时可能会泄露敏感信息的其它过程)。举例来说,如果处理器通常使其1%的时间致力于运行故障检测和/或抵抗程序,那么所述百分比可响应于频繁故障被适应性地增加到10%、50%、且接着90%等。
本文中,术语“主动性”大体上指代致力于抵抗故障、检测故障和/或响应于故障的资源的相对量,其中相对更加主动的程序使更多处理器资源致力于抵抗检测和/或响应于瞬时故障且相对不太主动的程序使更少处理器资源致力于抵抗、检测和/或响应于瞬时故障。与不太主动的程序相比,更加主动的程序更可能会检测到已经被注入到处理器中的瞬时故障。与不太主动的程序相比,更加主动的程序更可能会推断瞬时故障攻击已经被发起且采取适当对策。由此,主动程序是对故障攻击大体上更加稳固的程序。
一般来说,可适应性地调节影响故障检测和/或故障抵抗的任何软件或硬件参数或配置,而不仅仅是与主动性有关的那些软件或硬件参数或配置。本文中所描述的软件实例包含调节周期性故障检测程序的频率或持续时间和/或响应于频繁故障使用更加彻底和精密的故障检测程序,而当存在不频繁故障时使用不太彻底和不太精密的程序。在一些实例中,计数器用于计数瞬时故障且接着使用根据计数值缩放的自适应对策。尽管本文中所描述的实例主要与故障防御有关,但在可适用的情况下本文中所描述的各种技术可结合物理扰动(下文论述)而非故障使用。与扰动相反,可使用多个计数器,包含用于计数实际故障的不同计数器。在一些实例中,基于故障或扰动适应性地调节在处理器上运行的一些过程相对于其它过程的定时。这有助于抵御依赖于注入的瞬时故障的精确定时的攻击,即,依赖于时域局部化的攻击。本文中所描述的自适应调节的硬件实例包含选择性地调节处理器的时钟,以及具体地说,选择性地跳过或“门控”时钟循环。通过跳过一些时钟循环,依赖于注入的瞬时故障的精确定时的恶意攻击变得困难得多,原因是处理器的操作的定时由于跳过的时钟循环而偏移。也就是说,程序的时域局部化被适应性地调节以提供给攻击者“移动目标”,从而使得更加难以攻击。自适应调节中的任一个,无论是在软件中还是在硬件中,可包含随机或伪随机组件以进一步阻止恶意攻击。举例来说,时钟循环的门控可基于控制跳过哪一时钟循环的随机生成的散列码。
在其它特征当中,本文中所描述的自适应程序可用来:(a)限制安全性特征对整体性能的影响,同时在需要时大大增加抵抗级别;(b)响应于每次故障注入使处理器芯片重新配置有更加主动的安全参数;和(c)在目标过程的时域局部化改变时提供给攻击者移动目标;因此(d)通常导致检测到持续攻击的机率或可能性增加。这提供“良性循环”,从而大大阻止了瞬时故障攻击。
防御策略和其它考量
故障攻击可影响芯片或其它处理器的硬件性能且因此潜在地影响在硬件上运行的软件。故障攻击修改芯片上的某一操作或特征且通常转换成一或多个位翻转,这可用适当传感器检测到。对故障攻击的合适的策略是使得系统能够检测到其正遭受攻击,接着允许其相应地作出反应。额外目的是当攻击者对另一装置重复相同攻击以便降低对现场装置利用攻击时降低成功概率。增加抵抗性还由于以下原因而是有益的:其迫使攻击者在成功之前注入更多故障,这继而增加检测到故障的机率,由此触发更加主动的对策。
图2说明整体防御策略,包含抵抗块202(即,RESIST)、检测块204(即,DETECT)和反应块206(即,REACT)。抵抗的示范性形式是随机延时。检测的示范性形式包含硬件(HW)和软件(SW)传感器。反应的示范性形式包含冷复位、递增故障计数(其可用于触发各种反应功能)、增加抵抗和增加检测。控制或进行故障抵抗程序、故障检测程序和/或故障反应程序(例如,对策)的系统可被称为故障防御系统。故障抵抗程序、故障检测程序和/或故障反应(例如,对策)程序可被统称为故障防御程序。
图3通过示出可包括或利用安全译码304和/或时域去同步化306的抵抗块302进一步说明抵抗策略。时域去同步化的实例包含SW随机延时308、HW CPU时钟门控310和HW随机分支312。通过使用这些技术,可通过降低贯穿时域去同步化的可再现性和通过使用降低成功攻击的概率的安全译码风格来增加系统的固有抵抗性。时域去同步化可在SW和/或HW中实现。应注意,HW随机延时可提供跨越板的通用覆盖。SW随机延时可选择性地添加(例如,仅在敏感过程中)以提供一层额外安全性,尤其是在敏感测试与对应冗余测试之间,从而显著降低攻击者成功地注入两个故障以克服冗余测试的概率。
图4进一步说明可响应于由攻击者进行以成功地引发故障攻击的三个主要步骤而施加的检测策略:(1)具有正确扰动参数的物理扰动402由攻击者施加,从而(2)触发具有正确的时间和空间两者的位置(即,芯片定位)的数字故障404,因此(3)产生故障攻击406。在此方面,检测策略可涉及检测故障攻击或可能导致攻击的条件或情形。这可通过在系统中实施可在由攻击者使用的三个步骤中的任一个或全部处操作的各种类型的传感器(在HW中)和检测器(在SW中)来实现。应注意,有可能通过现有代码内的通用机构或临时机构中的任一个用软件实施故障检测器。可由攻击者施加的物理扰动402的实例包含激光脉冲、电压干扰(例如,电源Vcc干扰)引发、时钟干扰引发或电磁(EM)脉冲施加。一或多个HW扰动传感器408可用于例如通过监测Vcc电平、芯片温度、操作频率和/或通过检测芯片复位条件来检测扰动。示范性数字故障404包含读取故障、写入故障、指令集(INS)解码故障和算法逻辑单元(ALU)计算故障。一或多个HW故障传感器410可用于通过例如使用奇偶校验位或数字传感器来检测此类故障。另外,可使用一或多个SW故障传感器412,例如基于“魔术数字”的检测器(如利用所谓的魔术调试值的检测器)或确定性代码检测器。故障攻击406本身可绕过访问控制、触发差分故障分析或内存转储,这些可使用基于冗余或基于一致性的SF故障攻击检测器414被检测到。
图5进一步说明可由SW故障检测器502进行的SW故障检测系统和程序。通用软件故障检测器具有可在运行时间修改的至少一个参数:代码持续时间。因此,通用确定性代码504可用于评估代码持续时间506。另外,如果以中断方式执行代码,其基于HW计时器随机地发生,那么也可在运行时间配置发生频率。通用确定性技术可利用在固定定位处呼叫508和以中断方式510,所述以中断方式510可评估中断频率512。在关注临时技术514的范围内,实例包含检查不一致状态516(例如其中从不指定值)、检查回路518之后的不一致长度或各种其它临时技术520。
图6借助于曲线图600说明示范性防御反应状态,所述曲线图600示出四个反应状态(状态1到状态4)。在曲线图内,x轴602示出故障检测计数(FDC)的值,所述故障检测计数对检测到的故障的数目进行计数且如下文所描述递增和递减。曲线图的y轴604示出由处理器在进行各种对策(CM)的同时花费的时间的相对百分比。在状态1(606)中,处理器进行处于基线或默认级别(CM基线)608的对策。一旦FDC达到下限阈值(FDCCMMIN)610,处理器就进入状态2(612),在所述状态2期间,通过用增加的FDC缩放对策,对策变得愈发主动,如由逐渐增加的线614所示出。在状态2内,对于FDC的给定值X(616),装置资源的百分比Y(618)致力于对策。在存在持续攻击的情况下,FDC将继续升高,直到其达到触发进入状态3(622)的更高阈值(FDCCMMAX)620为止,在所述状态3中使用最大级别的对策(CMMAX)624。如果FDC仍继续升高,那么其将达到触发状态4的上限阈值(FDCCMMAX)626,在所述状态4中停用628处理器(或其组件,例如安全处理器子系统(SPSS))。如所指出,这可以是冷复位。应注意,在其中使用三个阈值的实施例中,FDCCMMAX阈值可被称为“中间”阈值。还应注意,尽管在图6中未示出,但软件记录持续攻击企图以便实现自适应防御策略(下文更详细地描述的类型)。此外,如将解释,可使用跟踪间隔,如果在跟踪间隔内未检测到额外故障,那么所述跟踪间隔触发FDC的递减。因此,FDC值可能不会一直单调增加(如图6中所示出),而实际上可及时减小,从而触发对策降低。还应注意,不同状态可表示对策与功能性代码处理的不同比率。在状态1内,比率表示为CM基线。在状态2内,比率表示为Y。在状态3内,比率表示为CMMAX。在状态4内,其中处理器被停用,比率可被看作是大体上“无穷大”,原因是未进行任何功能码且因此比率的分母为零。
表I概述图6的四个状态及其对应比率:
表I
图7说明在不同条件下FDC值的示范性改变,且具体地说示出FDC可如何选择性地递减。在此方面,为了应对导致与恶意攻击无关的故障检测(例如,环境引起的干扰)的“不友好环境”,在处理器不受攻击时处理器允许FDC缓慢减小回到零。图7的第一曲线图700说明没有持续攻击的实例(即,故障检测是误报)。更具体地说,曲线图700示出在FDC随时间改变时y轴702上的FDC值,如由x轴704所表示。在第一时间706的故障检测致使FDC从0递增到1(如由第一FDC值708所标示)。在此实例中,在时间间隔ΔT 710(其是从一个故障“恢复”所需的时间)期间不会检测到其它故障,从而致使FDC接着在第二时间712递减回到0。稍后,在第三时间714开始,一对连续故障检测致使FDC从0递增到1且接着从1递增到2(如由第二FDC值716所标示)。然而,同样地,在随后的ΔT时间间隔期间不会检测到其它故障,从而致使FDC接着递减回到1且接着递减回到0。又一故障检测,在第四时间717的第三FDC值718,致使FDC在复位到0之前临时递增到1。在此实例中,FDC决不会达到低阈值FDCCMMIN 720,且因此不会触发对策增加。也就是说,处理器保持完全在状态1(图6)内且各种故障被看作是例如由随机环境“噪声”触发的误报。
图7的第二曲线图722说明持续攻击的实例。示出了在FDC随时间改变时y轴724上的FDC值,如由x轴726所示出。在时间间隔ΔT(730)内的第五时间728开始的一系列紧密连续的故障检测致使FDC快速地递增高达低阈值732,从而指示持续攻击企图且在第六时间734触发进入状态2(图6)。在第六时间734开始,增加对策的主动性,如已经论述。在此特定实例中,增加的对策用来通过防止其它故障被成功地注入而阻止攻击。因此,在每个随后的时间间隔ΔT结束时,FDC递减,直到FDC在第七时间736再次达到0为止。在此实例中,假设攻击者由于攻击被停止成功地注入额外故障而在第六时间734之后的某一时间放弃攻击且因此不会检测到其它故障。如果攻击者实际上将要恢复攻击,那么处理器接着将检测到一系列新的故障(在图7中未示出)且再次快速地增加对策的主动性。再进一步,如已经论述,如果攻击持续且愈发主动的对策未能阻止攻击,那么处理器最终将被推动到状态4(图6),从而触发停用。
因此,图2到7说明各种自适应防御策略、程序和系统。在下文中,阐述更详细的实例。
示范性芯片上系统硬件环境
本文中所描述的系统和程序可在广泛范围的装置中利用。为了提供具体实例,现在将描述示范性硬件环境,其中组件设置在芯片上系统(SoC)处理电路上以供在移动通信装置或其它接入终端中使用。
图8说明根据其中可利用各种新颖特征的一个实例的移动通信装置的SoC处理电路800。SoC处理电路可以是并入有、修改后并入有本文中所描述的各种额外组件和特征的高通SnapdragonTM处理电路。在此实例中,SoC处理电路800包含系统时钟控制器802,所述系统时钟控制器802向SoC的所有组件提供时钟信号,所述所有组件包含具有多核心CPU 812的应用程序处理电路810。应用程序处理电路810包含自适应控制器815,所述自适应控制器815控制故障防御系统817的涉及抵御瞬时故障攻击的操作。在此实例中,故障防御系统817包含故障抵抗系统819、故障检测系统821和故障反应系统823,所述故障防御系统817可进行或控制对应于图2到7中所示出的那些的程序(和下文所论述的其它程序)。如下文将解释的,自适应控制器815也可选择性地和适应性地控制系统时钟控制器802和/或SoC或外围系统(例如,SPSS,在图8中未示出)的其它组件以智能地抵御瞬时故障攻击。瞬时故障检测系统821可包含各种软件故障传感器(SFS)。取决于特定实施方案,自适应控制器815、故障防御系统817及其各种组件可在硬件和/或软件中实施。还应注意,在一些实例中,故障可另外或或者由不是SoC的部分的外围故障传感器检测到。
还应注意,应用程序处理电路810通常控制移动通信装置的所有组件的操作。在一个方面中,应用程序处理电路810耦合到主存储控制器850以用于控制数据的存储,包含将公用和专用密钥存储在形成内部共享HW资源830的部分的内部共享存储装置832的密钥存储元件833中。瞬时故障攻击可通过以足以引发在CPU核心812上运行的主系统程序作出将会泄露密钥的错误处理决策的方式将故障注入到SoC 800的电路内的某个地方而寻求获得存储在密钥存储装置833中的密钥。自适应控制器815使用下文详细描述的系统和程序操作以阻碍或阻止那些攻击,且同时对SoC 800并入其中的智能电话的用户具有有限或最小扰乱。
应用程序处理电路810还可包含引导ROM 818,所述引导ROM 818存储SoC处理电路800的各种组件的引导顺序指令。SoC处理电路800进一步包含由应用程序处理电路810控制的一或多个外围子系统820。外围子系统820可包含但不限于存储子系统(例如,只读存储器(ROM))、随机存取存储器(RAM)、视频/图形子系统(例如,数字信号处理电路(DSP)、图形处理电路单元(GPU))、音频子系统(例如,DSP、模/数转换器(ADC)、数/模转换器(DAC)、功率管理子系统、安全子系统(例如,其它加密组件和数字权限管理(DRM))组件)、输入/输出(I/O)子系统(例如,键盘、触摸屏)以及有线和无线连接子系统(例如,通用串行总线(USB)、全球定位系统(GPS)、Wi-Fi、全球系统移动(GSM)、码分多址接入(CDMA)、4G长期演进(LTE)调制解调器)。示范性外围子系统820,其是调制解调器子系统,包含DSP 822、各种其它HW和SW组件824、以及各种射频(RF)组件826。在一个方面中,每个外围子系统820还包含引导ROM828,所述引导ROM 828存储相关联外围子系统820的主引导映像(未示出)。
如所指出,SoC处理电路800进一步包含各种内部共享HW资源830,例如内部共享存储装置832(例如,静态RAM(SRAM)、闪存存储器等),其由应用程序处理电路810和各种外围子系统820共享以存储各种运行时间数据或其它参数且提供主存储器。在图8的实例中,内部共享存储装置832包含以上提及的密钥存储组件833,所述密钥存储组件833可用于存储公用和专用密钥或其它敏感信息。在其它实例中,密钥存储在移动装置内的其它地方。
在一个方面中,SoC 800的组件810、818、820、828和830集成在单芯片衬底上。SoC处理电路800进一步包含各种外部共享HW资源840,所述各种外部共享HW资源840可位于不同芯片衬底上且可经由一或多个总线与SoC处理电路800通信。外部共享HW资源840可包含例如外部共享存储装置842(例如,双倍数据速率(DDR)动态RAM)和/或永久或半永久数据存储装置844(例如,安全数字(SD)卡、硬盘驱动器(HDD)、嵌入式多媒体卡、通用闪存装置(UFS)等),所述外部共享HW资源840可由应用程序处理电路810和各种外围子系统820共享以存储各种类型的数据,例如操作系统(OS)信息、系统文件、程序、应用程序、用户数据、音频/视频文件等。
用于抵御瞬时故障攻击的示范性自适应程序
图9提供时序图900,其说明智能电话或其它装置的组件响应于持续瞬时故障攻击的示范性操作,包含由系统时钟控制器902、自适应控制器904和瞬时故障防御系统906(其可包含瞬时故障抵抗、瞬时故障检测和瞬时故障反应组件)进行的操作,且具体地说说明在智能电话或其它装置的组件之间交换以供在使智能电话抵御攻击时使用的信息和控制信号。自适应故障防御可包含各种功能,例如以增加的随机性调节各种时钟频率和/或调节各种软件随机延时以增加延时的大小,这将在下文更详细地描述。在一些实例中,组件902、904和/或906的操作基于故障检测计数(FDC)进行调节以控制在故障防御中花费的时间量(Y),例如通过根据FDC调节Y(即,Y=f(FDC),其中Y可因此被设定成Y1、Y2或Y3...YN,其中X1<X2<X3<YN,以由此控制主动性的级别)。
在908处,瞬时故障防御系统906检测瞬时故障且经由SoC的内部连接线将故障指示发送到自适应控制器904。瞬时故障防御系统906可使用任何合适的程序来检测瞬时故障,包含另外常规的故障检测程序或新颖程序。(参见例如上文结合图5所论述的检测程序)。在一个实例中,通过运行标准、基线或默认SFS故障检测程序检测瞬时故障以检测可能由于瞬时故障发生的校验和错误等。举例来说,瞬时故障防御系统906可被装备以周期性地计算数学函数(例如通过以某一预定精确度计算π)且接着将结果与已知的(正确的)结果进行比较。如果不存在匹配,那么由此在908处检测到故障。基线或默认程序可消耗装置的Y1资源,其中Y1表示处理资源的某一百分比,例如1%。
响应于在910处检测到故障,自适应控制器904开始对跟踪间隔911(ΔT)进行跟踪,所述跟踪间隔911用于帮助确定是否有恶意攻击持续(在此情况下将停用智能电话的SPSS)或是否没有恶意攻击持续(在此情况下将如图10中所示出恢复正常装置操作,如下文所论述)。跟踪间隔911(ΔT)可基于例如预期在不存在恶意攻击的情况下瞬时故障由于正常因素而发生得多么频繁和预期在存在恶意攻击的情况下其发生得多么频繁而被设定成预定或可调节值。在一些实例中,跟踪间隔的合适的值可例如是一分钟。
在910处,自适应控制器904还增加瞬时故障防御的主动性和/或调节或修改系统时钟。下文详细描述用于增加瞬时故障防御的主动性的各种技术。出于图9的目的,应注意,自适应控制器取决于其编程可通过以下方式增加瞬时故障防御的主动性:将信号发送到瞬时故障防御系统906以调节控制瞬时故障防御系统906的功能操作的控制参数。如所指出,控制参数可控制装置资源的致力于故障防御的百分比(例如,如果处理器通常使其Y1%的时间致力于运行故障检测或抵抗程序,那么所述百分比可被适应性地增加到Y2%,其中Y2%是10%、50%、90%等)。作为另一实例,控制参数控制频率(f),用所述频率(f)激活故障防御系统或其组件(例如,每秒一次、每毫秒一次、每微秒一次等)。作为又一实例,控制参数选择有待使用的特定故障检测SFS程序(如果瞬时故障防御系统被装备以控制或进行各种可选择故障检测SFS程序,那么其中一些可选择故障检测SFS程序比其它可选择故障检测SFS程序更加彻底或更加精密)。在调节或修改系统时钟的范围内,自适应控制器904取决于其编程可选择性地增加或减小时钟速率(以由此影响SoC处理器内的事件的时域局部化,从而阻碍依赖于时域局部化的瞬时故障攻击)和/或选择性地跳过或门控时钟循环(以由此同样影响SoC处理器内的事件的时域局部化),包含通过生成指定特定循环进行跳过的随机或伪随机散列而门控时钟循环。系统时钟控制器902在912处通过根据指令调节或修改系统时钟作出响应。
在图9的实例中,由于存在持续瞬时故障攻击,因此在914处使用更加主动的检测程序在跟踪间隔内即时检测到另一瞬时故障。在914处使用的更加主动的程序可消耗装置的Y2资源,其中Y2大于Y1。自适应控制器904接着在915处又再次增加主动性和/或进一步修改或调节系统时钟。如果是所述915所述的情况,那么系统时钟控制器902在916处根据指令作出响应。故障防御系统906接着在918处使用再更加主动的防御程序。在918处使用的更加主动的程序可消耗装置的Y3资源,其中Y3大于X2。最终,假设瞬时故障攻击继续,将在跟踪间隔内检测到足够数目的瞬时故障以触发SoC的自动停用。也就是说,在920处,将检测到瞬时故障(在使用消耗例如YN资源的程序的同时),所述瞬时故障将超出指示持续攻击的预定阈值。作为响应,在922处,自适应控制器904检测持续恶意瞬时故障攻击(当在跟踪间隔内瞬时故障的数目超出预定阈值时)且停用智能电话。如上文结合图6所解释,可使用多个阈值。
图10提供时序图1000,其说明智能电话或其它装置的组件响应于非恶意瞬时故障的示范性操作,所述非恶意瞬时故障例如由环境辐射或另外无害干扰所致的故障。如同图9,图10单独地说明由系统时钟控制器1002、自适应控制器1004和瞬时故障防御系统1006进行的操作。在1008处,瞬时故障防御系统1006检测瞬时故障且将故障指示发送到自适应控制器1004。瞬时故障防御系统1006可同样使用任何合适的程序来检测瞬时故障,例如消耗Y1资源的基线或默认程序。响应于在1010处检测到故障,自适应控制器1004开始对跟踪间隔1011(其可被设定成与图9中相同的持续时间ΔT)进行跟踪且使瞬时故障防御系统1006的主动性增加到Y2和/或调节或修改系统时钟。系统时钟控制器1002在1012处通过根据指令调节或修改系统时钟作出响应。瞬时故障防御系统1006在1014处通过使用更加主动的检测程序监测额外瞬时故障作出响应。
在图10的实例中,不存在持续瞬时故障攻击,且因此在跟踪间隔1011内未检测到其它瞬时故障,尽管有更加主动的检测程序。因此,在1016处,在跟踪间隔1011到期时,自适应控制器1004确定、确认或作出结论不存在持续恶意瞬时故障攻击(由于在跟踪间隔内未检测到其它瞬时故障)且恢复正常智能电话功能。系统时钟控制器1002在1018处通过恢复正常时钟操作来作出响应。瞬时故障防御系统1006在1020处通过恢复正常故障防御操作且接着使用其标准、默认或另外正常SFS检测程序(例如,Y1)监测额外瞬时故障而作出响应。同样,可使用多个阈值,如图6中所示出。
因此,如图9和10中所说明,在存在持续瞬时故障攻击的情况下,因为自动触发了更加主动的故障检测程序,所以检测到的故障的数目将快速地逐步增加,从而可能导致智能电话的即时停用。然而,在不存在持续瞬时故障攻击的情况下,正常装置操作会很快恢复。以此方式,源自天然或无害源的瞬时故障将一直触发智能电话的停用是高度不可能的。瞬时故障攻击将成功同样是高度不可能的,原因是智能电话将在账户能够完备之前被即时停用。此外,通过响应于瞬时故障增加故障防御(包含检测和/或抵抗)的主动性,智能电话的更多资源由此致力于监测故障,从而有效地减慢在特定恶意攻击者可作为目标以便完成攻击的智能电话的SoC上运行的其它过程。也就是说,图9和10的系统和程序用来(a)更加费时地作出瞬时故障攻击和/或(b)大大增加遭受攻击的智能电话将在攻击者能够完成攻击之前本身自动停用、由此阻止或防止此类攻击的可能性。
图11进一步说明可由处理器装置(例如智能电话的SoC)响应于瞬时故障进行的示范性操作。在1102处,处理器装置使用故障检测系统的SFS组件检测处理器装置内的瞬时故障、记录时间、递增FDC且开始对跟踪间隔进行跟踪。故障检测系统可包含一组可选择故障检测组件或程序(例如,可选择SFS组件),其中一些可选择故障检测组件或程序比其它可选择故障检测组件或程序更加精密或更加彻底。一般来说,除其它过程外,更加精密的检测程序将消耗更多处理器的资源,且因此可具有减慢其它过程的进行或完成的效果。如上文所指出,这继而可具有使得瞬时故障攻击更加困难的影响,原因是攻击将可能花费更长时间来完成。首先,在1102处,使用不会消耗过度资源的标准或默认SFS故障检测程序,即,可使用相对不精密的基线SFS。
在1104处,响应于检测到的故障,处理器装置适应性地调节处理器装置和/或外围故障检测系统的特征中的一或多个。举例来说,可增加处理器装置资源的致力于故障检测和/或抵抗的百分比。如所指出,如果处理器通常使其Y1%的时间致力于运行故障检测程序,那么百分比可被适应性地增加到Y2%以例如使两倍百分比的资源致力于如前所述的故障检测。调节可基于FDC,其中Y的值根据FDC进行设定,即,Y=f(FDC)。取决于特定处理器装置的能力,这可通过以下方式来实现:使用另外常规的系统工具或以中断方式或通过改变故障检测过程相对于其它过程的优先权或持续时间来改变处理器资源的分配。作为另一调节实例,增加激活故障检测系统的频率。举例来说,如果通常每N数目个时钟循环激活故障检测过程,那么可减小N以更常地或更频繁地激活过程。作为又一实例,可调节用于恶意攻击检测的阈值中的任一个。举例来说,如果在M个时钟循环内的N数目个瞬时故障通常用于确定是否停用处理器,那么可适应性地降低N的值。作为又一实例,可响应于在跟踪间隔内检测到的每个新的瞬时故障选择性地递增用于恶意攻击检测的任何计数。作为另一实例,可改变由处理器装置激活的特定故障检测和/或抵抗系统、程序或组件以通过例如激活更加彻底的SFS而使用更加精密或更加彻底的故障检测程序。作为再另一实例,可调节处理器装置的时钟以帮助防止依赖于时域局部化的攻击。下文论述特定实例,其中适应性地调节门控时钟循环与非门控循环的比率。作为再又另一个实例,可改变或调节选定过程相对于处理器装置的其它过程的激活的特定定时。同样,取决于处理器装置的能力,这可使用可编程系统工具或以中断方式实现。这也可帮助阻止依赖于时域局部化的攻击。
在1106处,处理器装置检测或跟踪自上一瞬时故障以来的时间量。在1108处,处理器装置接着检测和计数任何额外故障(使用FDC)且进一步调节上文列举的参数中的一或多个以(a)不论何时在跟踪间隔内检测到一或多个新的瞬时故障,使故障防御更加主动和(b)如果在跟踪间隔内未检测到新的瞬时故障,那么使故障防御不太主动。在一些实例中,在无任何故障检测的T小时跟踪间隔之后,递减FDC。在1110处,如果故障计数超出合适的阈值(例如,如果在FDC再次在跟踪间隔ΔT结束时递减之前FDC超出上文所描述的CMMAX阈值)或如果恶意攻击另外被检测到或确认,那么停用处理器装置本身。
图12说明可由图8的自适应控制器815或由其它适当装备的电路或装置控制以例如适应性地调节门控时钟循环与非门控时钟循环的比率的各种示范性时钟调节或修改。说明默认时钟1202,其可以是例如8.5GHz时钟。响应于检测到第一个新的瞬时故障,时钟速率可减慢以使其速率减半,如由减慢时钟1204所指示。这可帮助阻止依赖于瞬时故障的注入的精确定时的恶意攻击,原因是处理器接着将以与攻击者假设处理器使用的速率不同的速率操作。因此,取决于时域局部化的攻击可被阻碍或阻止。此外,取决于特定攻击,通过减慢时钟以使其速率减半,恶意攻击接着可能会花费两倍的时间。额外瞬时故障接着可用于触发时钟速率的再进一步降低,也许降至特定处理器适应的最慢速率。在一些实例中,在存在持续攻击的情况下,速率可最终降低十倍。由此,否则将需要一小时以具有良好机会成功地欺骗系统泄露所要信息的攻击实际上可能会花费十小时,这被攻击者认为是过长而不值得的(取决于有待从装置获得的信息的值)。应注意,在不存在持续攻击的情况下,系统时钟的任何减慢将仅是临时的且甚至不大可能被用户注意到。
图12还说明使用随机或伪随机散列函数1206以散列时钟1202,从而产生具有门控与非门控时钟循环的选定比率的门控时钟1208。散列或门控模式或功能1206可由伪随机数生成器(PRNG)生成且被施加以门控或跳过一些时钟循环,同时保持其它时钟循环(如所示出),其中在一些实例中,PRNG被控制以提供1's到0's的选定比率。假设处理器(和其中安装处理器的整体智能电话)可用门控时钟适当地操作,效果将是随机地偏移或延时在处理器上运行的过程的定时以阻碍或阻止任何时域局部化攻击。门控时钟与默认时钟相比还是相对更短的时钟且因此上文所论述的考量同样适用,原因是处理器的整体更慢操作由于使攻击需要更长时间完成而能够阻止攻击。同样,在不存在持续攻击的情况下,时钟的任何门控将仅是临时的且甚至不大可能被用户注意到。在至少一些实例中,自适应策略控制散列1206中1's和0's的比率。举例来说,默认可以是1's的50%(保持时钟循环的50%),但由于越来越多的故障被检测到,因此自适应策略改变时钟控制器的参数以增加0's相对于1's的比率,这将减慢系统且由此及时将目标过程移动到新的位置,因此阻碍故障攻击过程。
图13更详细地说明可由处理装置使用的特定示范性过程,所述处理装置利用已经论述的特征中的一些。具体地说,图13阐述使用上限和下限阈值以用于与FDC进行比较的程序。简要地,如果FDC<低阈值(例如,FDCCMMIN),那么不进行处理器分配的改变。如果低阈值<FDC<高阈值(例如,FDCCMMAX),那么装置根据FDC的值增加处理器资源的致力于防御的百分比(例如,FDC越大,百分比就越大)。如果高阈值<FDC,那么停用处理器(或如在上文所论述的图6的实例中,FDCMAX的再更高的阈值可用于触发装置的停用,且如果这样的话,图13的高阈值实际上是中间阈值)。低阈值允许装置完全忽略不频繁的干扰(原因是FDC将在跟踪间隔内达到低阈值之前递减)。因此,调节处理器分配仅在跟踪间隔内发生足够数目个故障检测时发生以证明分配变化,如已经解释。
在1302处,处理装置使用SFS监测瞬时故障且在检测到故障时递增FDC、记录时间且开始对跟踪间隔进行跟踪。在1304处,处理装置将FDC与下限阈值进行比较以确定FDC在跟踪间隔内是否超出下限阈值,且如果超出的话,那么处理器装置增加处理器装置资源的致力于SFS的百分比且继续使用SFS监测故障。如果在跟踪间隔期间未检测到另一故障,如在1306处所确定,那么处理装置在1308处递减FDC且复位跟踪间隔,处理接着返回到1302以监测新的故障。这表示当瞬时故障相对不频繁时在不存在持续攻击的情况下处理装置的正常操作。另一方面,如果在1306处在跟踪间隔内检测到另一故障,那么处理装置在1310处递增FDC,且将计数与上限(攻击)检测阈值进行比较。假设FDC尚未超出上限阈值,如在1312处所确定,处理返回到1304,在所述1304中如果FDC超出下限阈值,那么处理器装置资源的致力于SFS的百分比会增加。如果FDC最终还是超出上限阈值,如在1312处所确定,那么在1314处停用处理器。这表示当瞬时故障频繁时在存在持续攻击的情况下处理装置的响应。
图14广泛地概述可使用本文中所描述的程序中的一或多个实现的“良性循环”。简要地。在1402处检测到故障会在1404处触发故障检测能力和/或主动性的增加。这继而帮助在1402处检测新注入的故障,从而导致在1404处检测能力和/或主动性的再进一步增加。持续恶意攻击由此导致检测能力的快速升级且接着停用装置以防止例如安全密钥或密码等敏感信息的丢失。应注意,除完全停用智能电话的处理器之外,可实施其它对策,例如擦除敏感信息或复位处理器。
示范性装置和方法
图15说明其中可实施图2到14的系统、方法和设备的整个系统或设备1500。根据本公开的各种方面,元件或元件的任何部分或元件的任何组合可用包含一或多个处理电路1504的处理系统1514实施。举例来说,设备1500可以是用户设备(UE),例如移动通信系统的智能电话,且可结合未单独示出的无线电网络控制器(RNC)使用。在一些实例中,处理电路1504被实施为SoC(例如图8的SoC)。除了SoC之外,合适的处理电路1504的实例包含微处理电路、微控制器、数字信号处理电路(DSP)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、状态机、门控逻辑、离散硬件电路以及被配置成进行贯穿本公开所描述的各种功能性的其它合适的硬件。如在设备1500中利用的处理电路1504可用于实施上文所描述且在图2、3、4、5、6、7、8、9、10、11、12、13和14(以及图16、17、18、19、20、21、22、23和24中所说明的那些,下文论述)中所说明的过程中的任何一或多个。
在图15的实例中,处理系统1514用大体上由总线1502表示的总线架构实施。取决于处理系统1514的具体应用和总设计约束,总线1502可包含任何数目的互连总线和网桥。总线1502将各种电路连接在一起,所述电路包含一或多个处理电路(大体上由处理电路1504表示)、存储装置1505和机器可读、处理器可读、处理电路可读或计算机可读媒体(大体上由非暂时性机器可读媒体1506表示)。总线1502还可连接各种其它电路,例如定时源、外围设备、电压调节器和功率管理电路,这些电路是所属领域中众所周知的且因此将不再做任何进一步描述。总线接口1508提供总线1502与收发器1510之间的接口。收发器1510提供用于经由传输媒体与各种其它设备通信的装置。取决于设备的性质,还可提供用户接口1512(例如,小键盘、显示器、扬声器、麦克风、操纵杆)。处理电路1504负责管理总线1502和一般处理,包含存储在机器可读媒体1506上的软件的执行。所述软件在由处理电路1504执行时致使处理系统1514进行本文中所描述的各种功能以用于任何特定设备。机器可读媒体1506还可用于存储由处理电路1504在执行软件时操控的数据。
处理系统1514中的一或多个处理电路1504可执行软件或软件组件。软件应广泛地解释为意味着指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用程序、软件应用程序、软件包、例程、子例程、对象、可执行代码、执行线程、程序、功能等,不管其是被称为软件、固件、中间件、微码、硬件描述语言还是其它项。处理电路可进行任务。代码段可表示步骤、函数、子程序、程序、例程、子例程、模块、软件包、类,或指令、数据结构或程序语句的任何组合。代码段可通过传递和/或接收信息、数据、自变量、参数或存储器或存储装置内容而耦合到另一代码段或硬件电路。信息、自变量、参数、数据等可经由包含存储器共享、消息传递、权标传递、网络传输等任何合适的手段传递、转发或传输。
软件可驻存在机器可读媒体1506上。机器可读媒体1506可以是非暂时性机器可读媒体。举例来说,非暂时性处理电路可读媒体、机器可读媒体或计算机可读媒体包含:磁性存储装置(例如,硬盘、软盘、磁条)、光盘(例如,压缩光盘(CD)或数字多功能光盘(DVD))、智能卡、闪存存储器装置(例如,卡、棒或密钥驱动器)、RAM、ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、寄存器、可移动磁盘、硬盘、CD-ROM和用于存储可通过机器或计算机存取和读取的软件和/或指令的任何其它合适的媒体。术语“机器可读媒体”、“计算机可读媒体”、“处理电路可读媒体”和/或“处理器可读媒体”可包含但不限于非暂时性媒体,例如便携式或固定式存储装置、光学存储装置以及能够存储、含有或携带指令和/或数据的各种其它媒体。因此,本文中所描述的各种方法可完全或部分通过可存储在“机器可读媒体”、“计算机可读媒体”、“处理电路可读媒体”和/或“处理器可读媒体”中且通过一或多个处理电路、机器和/或装置执行的指令和/或数据来实施。举例来说,机器可读媒体还可包含载波、传输线和用于传输可由计算机存取和读取的软件和/或指令的任何其它合适的媒体。
机器可读媒体1506可驻存在处理系统1514中、在处理系统1514外部或跨越包含处理系统1514的多个实体分布。机器可读媒体1506可实施于计算机程序产品中。借助于实例,计算机程序产品可包含封装材料中的机器可读媒体。取决于特定应用和强加于整个系统上的总设计约束,所属领域的技术人员将认识到如何最好地实施贯穿本发明呈现的所描述功能性。举例来说,机器可读存储媒体1506可具有一或多个指令,所述一或多个指令当由处理电路1504执行时致使处理电路来:使用故障检测系统检测处理器电路内的至少一个瞬时故障;和响应于至少一个瞬时故障适应性地调节控制参数,其中所述控制参数控制以下中的一或多个(a)处理器装置的物理操作或(b)故障检测系统的功能操作以便使更多处理器装置资源致力于瞬时故障检测。
图式中所说明的组件、步骤、特征和/或功能中的一或多个可重新布置和/或组合成单个组件、步骤、特征或功能或实施于若干组件、步骤或功能中。在不脱离本公开的情况下,还可添加额外元件、组件、步骤和/或功能。图式中所说明的设备、装置和/或组件可被配置成进行图式中所描述的方法、特征或步骤中的一或多个。本文中所描述的算法还可有效地实施于软件中和/或嵌入于硬件中。
可通用通用处理电路、数字信号处理电路(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑组件、离散门或晶体管逻辑、离散硬件组件或其被设计成进行本文中所描述的功能的任何组合来实施或进行结合本文中所公开的实例而描述的各种说明性逻辑块、模块、电路、元件和/或组件。通用处理电路可以是微处理电路,但在替代方案中,处理电路可以是任何常规处理电路、控制器、微控制器或状态机。处理电路还可实施为计算组件的组合,例如,DSP和微处理电路的组合、多个微处理电路的组合、结合DSP核心的一或多个微处理电路的组合或任何其它此类配置。
因此,在本公开的一个方面中,处理电路1504可以是专用处理电路(例如,ASIC)),所述专用处理电路具体地说被设计和/或硬接线以进行图2、3、4、5、6、7、8、9、10、11、12、13和/或14(和/或图16、17、18、19、20、21、22、23和24,下文论述)中所描述的算法、方法和/或块中的至少一些,例如涉及抵御瞬时故障攻击的那些。因此,这种专用处理电路(例如,ASIC)可以是用于执行图2、3、4、5、6、7、8、9、10、11、12、13和/或14(和/或图16、17、18、19、20、21、22、23和24,下文论述)中所描述的算法、方法和/或块的装置的一个实例。机器可读存储媒体可存储指令,所述指令在由专用处理电路(例如,ASIC)执行时致使专用处理电路进行本文中所描述的算法、方法和/或块。
图16是广泛地说明处理器装置1600的选定和示范性组件的框图,所述选定和示范性组件例如智能电话的SoC。处理器装置1600可包含处理电路1612(例如,一或多个处理器)和通信接口电路1614(用以将处理器装置耦合到总线和/或其它装置)。处理电路1612可实施一或多个瞬时故障检测功能、瞬时故障自适应控制功能、瞬时故障抵抗功能、瞬时故障反应功能和/或故障防御功能。应注意,在各种实例中,故障检测系统、瞬时故障控制系统和/或故障防御系统可实施于软件、固件和/或嵌入式代码中,所述软件、固件和/或嵌入式代码结合处理电路的硬件/电路/模块操作以分别实施故障检测功能、瞬时故障自适应控制功能、瞬时故障抵抗功能、瞬时故障反应功能和/或故障防御功能。在此实例中,瞬时故障防御系统1602包含可操作以控制或进行故障抵抗程序的瞬时故障抵抗系统1604、可操作以控制或进行故障检测程序的瞬时故障检测系统1606和可操作以控制或进行其它故障反应程序的对策的瞬时故障反应系统1608。瞬时故障自适应控制系统1610可操作以适应性地控制瞬时故障防御系统1602或其组件以例如响应于瞬时故障适应性地调节瞬时故障防御系统1606的控制参数,从而与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
在一些实例中,控制参数被适应性地调节以响应于更加频繁的瞬时故障使瞬时故障防御系统更加主动且响应于不太频繁的瞬时故障使其不太主动。举例来说,可通过以下方式适应性地调节控制参数:检测自上一瞬时故障以来的时间量;当在跟踪间隔内检测到新的瞬时故障时,调节控制参数以与由处理器装置分配给其它过程的时间量相比增加由处理器装置分配给瞬时故障防御过程的时间量;和当在跟踪间隔内未检测到新的瞬时故障时,调节控制参数以与由处理器装置分配给其它过程的时间量相比减小由处理器装置分配给瞬时故障防御过程的时间量。
再进一步,在一些实例中,控制参数控制以下各项中的一或多个:处理器装置资源的致力于故障防御系统的百分比;由处理器装置周期性地激活故障防御系统的组件的频率;故障防御系统的组件的执行持续时间;由故障检测系统使用以用于瞬时故障攻击检测的阈值;由连接到处理器装置的外围传感器使用以用于瞬时故障攻击检测的阈值;用于检测下一故障的特定故障检测程序;和/或在处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。在再其它实例中,通过以下方式适应性地调节瞬时故障防御系统的控制参数:跟踪自上一瞬时故障以来的时间量;当在跟踪间隔内检测到新的瞬时故障时,增加由处理器装置致力于防御对策的时间的百分比;和当在跟踪间隔内未检测到新的瞬时故障时,减小由处理器装置致力于防御对策的时间的百分比。
取决于实施方案,上文所描述的装置和组件的功能和操作可由进行相同或类似功能的其它合适的组件进行。由此,在一些实例中,提供一种设备、系统或装置,包含:用于检测处理器装置内的瞬时故障的装置(例如,使用故障检测系统);和用于响应于瞬时故障适应性地调节处理器装置的(例如,瞬时故障防御系统的)控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量的装置。用于适应性地调节控制参数的装置可包含用于适应性地调节控制参数以使瞬时故障防御系统响应于更加频繁的瞬时故障更加主动且响应于不太频繁的瞬时故障不太主动的装置。用于适应性地调节控制参数的装置可包含:用于检测自上一瞬时故障以来的时间量的装置;用于当在跟踪间隔内检测到新的瞬时故障时调节控制参数以与由处理器装置分配给其它过程的时间量相比增加由处理器装置分配给瞬时故障防御过程的时间量的装置;和用于当在跟踪间隔内未检测到新的瞬时故障时调节控制参数以与由处理器装置分配给其它过程的时间量相比减小由处理器装置分配给瞬时故障防御过程的时间量的装置。
再进一步,取决于实施方案,上文所描述的装置和组件的功能和操作可实施为用于与机器可读存储媒体一起使用的指令。由此,在一些实例中,提供指令,所述指令当由处理电路执行时致使处理电路来检测处理器电路内的瞬时故障(例如,使用故障检测系统)和响应于瞬时故障适应性地调节处理器装置的(例如,瞬时故障防御系统的)控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
图17是广泛地说明处理器装置1700的选定和示范性组件的框图,所述选定和示范性组件例如智能电话的SoC。处理器装置1700可包含处理电路1704(例如,一或多个处理器)和通信接口电路1708(用以将处理器装置耦合到总线和/或其它装置)。处理电路1704可实施一或多个瞬时故障检测功能、瞬时故障自适应控制功能和/或故障防御功能。应注意,在各种实例中,故障检测系统、瞬时故障控制系统和/或故障防御系统可实施于软件、固件和/或嵌入式代码中,所述软件、固件和/或嵌入式代码结合处理电路的硬件/电路/模块操作以分别实施故障检测功能、自适应故障控制功能和/或故障防御功能。在此实例中,瞬时故障防御系统1702包含可操作以控制或进行故障检测程序的瞬时故障检测系统1706。瞬时故障自适应控制系统1710可操作以适应性地控制具有选择性可门控时钟信号的时钟系统1712以例如响应于瞬时故障适应性地调节时钟信号,从而选择性地门控时钟循环。在一些实例中,通过施加散列代码以选择时钟信号的时钟循环进行门控来适应性地调节时钟信号,其中所述散列代码是随机或伪随机生成的。具体地说,可适应性地调节时钟信号以控制门控时钟循环与非门控时钟循环的比率。在一些实例中,通过以下方式适应性地调节时钟信号:检测自上一瞬时故障以来的时间量;当在跟踪间隔内检测到新的瞬时故障时,调节控制参数以增加门控时钟循环的数目;和当在跟踪间隔内未检测到新的瞬时故障时,调节控制参数以减小门控时钟循环的数目。
取决于实施方案,上文所描述的装置和组件的功能和操作可由进行相同或类似功能的其它合适的组件进行。由此,在一些实例中,提供一种设备、系统或装置,包含:用于检测处理器装置内的瞬时故障(例如,使用故障检测系统)的装置;和用于响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环的装置。通过施加散列代码以选择时钟信号的时钟循环进行门控来适应性地调节时钟信号,其中所述散列代码是随机或伪随机生成的。在一些实例中,适应性地调节时钟信号以控制门控时钟循环与非门控时钟循环的比率。而且,在一些实例中,用于适应性地调节时钟信号的装置包含:检测自上一瞬时故障以来的时间量的装置;用于当在跟踪间隔内检测到新的瞬时故障时调节控制参数以增加门控时钟循环的数目的装置;和当在跟踪间隔内未检测到新的瞬时故障时调节控制参数以减小门控时钟循环的数目的装置。
再进一步,取决于实施方案,上文所描述的装置和组件的功能和操作可实施为用于与机器可读存储媒体一起使用的指令。由此,在一些实例中,提供指令,所述指令当由处理电路执行时致使处理电路检测处理器电路内的瞬时故障(例如,使用故障检测系统)和响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环。
图18是说明又一示范性处理器装置1800的选定和示范性组件的框图,所述选定和示范性组件例如智能电话的SoC。在此实例中,处理器装置1800包含瞬时故障/扰动检测系统1802,所述瞬时故障/扰动检测系统1802可操作以检测处理器装置1800内的至少一个瞬时故障或扰动(所述至少一个瞬时故障或扰动可包含例如一或多个SFS)。故障抵抗系统1803可操作以控制故障抵抗程序。(可被装备以进行或控制对策的检测系统1802、故障抵抗系统1803和图18的各种组件可被统称为故障防御系统,如图16中所示出,上文所论述。)在一个实例中,图18中所说明的系统可由图17中所说明的处理电路1704实施。
自适应控制系统1804耦合到故障/扰动检测系统1802和/或故障抵抗系统1803且适用于响应于至少一个瞬时故障或扰动适应性地调节控制参数,其中所述控制参数控制以下各项中的一或多个:(a)经由物理操作控制系统1806控制处理器装置1800的物理操作,(b)故障/扰动检测系统1802的功能操作(以便例如使更多处理器装置资源致力于瞬时故障检测)或(c)经由功能操作控制系统1808控制故障抵抗系统1803的功能操作(以便例如使更多处理器装置资源致力于故障抵抗)。具体地说,自适应控制系统1804可使用故障/扰动防御主动性控制器1810来适应性地调节控制参数以使故障/扰动检测系统1802和/或例如故障抵抗系统1803等其它组件响应于更加频繁的瞬时故障/扰动更加主动且响应于不太频繁的瞬时故障/扰动不太主动。
跟踪间隔控制系统1812可操作以:检测或跟踪自上一瞬时故障和/或扰动以来的时间量;当在跟踪间隔内检测到新的瞬时故障和/或扰动时,调节控制参数以使更多处理器资源致力于故障防御;和当在跟踪间隔内未检测到新的瞬时故障和/或扰动时,调节控制参数以使更少处理器资源致力于故障防御。示范性控制参数是控制以下各项中的一或多个的参数:处理器装置资源的致力于故障检测系统1802或例如故障抵抗系统等其它组件的百分比;由处理器装置1800周期性地激活故障检测系统1802或例如故障抵抗系统等其它组件的频率;由处理器装置1800或其组件使用以用于瞬时故障攻击检测的阈值;由处理器装置1800或其组件使用以用于瞬时故障攻击检测的计数器;由故障检测系统1802和/或故障抵抗性系统1803或其组件使用以检测或防止下一故障的特定程序;和/或在处理器装置1800或其组件上运行的至少一个过程相对于至少一个其它过程的定时。
为了调节这些或其它控制参数,处理装置1800在此实例中包含:可操作以调节或修改处理器装置1800的时钟的时钟控制器1814;可操作以生成随机或伪随机数以供在生成用于门控时钟的散列时使用的伪随机数生成器(PRNG)1816;和可操作以跳过或门控如由散列代码指定的选定时钟循环的时钟门控控制器1818,所述散列代码是随机或伪随机生成的且在一些实例中提供门控与非门控时钟循环的选定比率。过程资源频率/定时/分配系统1820可操作以控制或调节处理器装置资源的致力于故障检测系统1802和/或故障抵抗系统1803的百分比、由处理器装置1800周期性地激活故障检测系统1802和/或故障抵抗系统1803的频率和/或在处理器装置1800上运行的至少一个过程相对于至少一个其它过程的定时。软件故障传感器(SFS)选择系统1822可操作以选择或控制由处理器装置1800的瞬时故障检测系统1802使用的特定故障检测程序(例如特定SFS)的选择。
再进一步,处理器装置1800在此实例中包含:可操作以递增或递减例如FDC等故障计数的故障计数递增/递减系统1824;可操作以将故障计数与指示恶意瞬时故障攻击的阈值进行比较的阈值比较系统1816;可操作以确定、检测或确认恶意瞬时故障攻击的恶意瞬时故障攻击检测系统1828;和可操作以在检测或确认这种攻击或进行其它合适和适当对策时停用处理器1800的处理器/对策/关机/停用系统1830。
取决于实施方案,上文所描述的装置和组件的功能和操作可由进行相同或类似功能的其它合适的组件进行。由此,在一些实例中,提供一种设备、系统或装置,包含:用于使用故障/扰动检测系统检测处理器装置内的至少一个瞬时故障或扰动的装置和用于响应于至少一个瞬时故障适应性地调节控制参数的装置,其中所述控制参数控制以下各项中的一或多个:(a)处理器装置的物理操作;(b)故障/扰动检测系统的功能操作以便使更多处理器装置资源致力于瞬时故障检测和/或(c)故障抵抗系统1803的功能操作(以便使更多处理器装置资源致力于故障抵抗)。用于适应性地调节控制参数的装置可包含用于使故障检测系统和/或故障抵抗系统响应于更加频繁的瞬时故障/扰动更加主动且响应于不太频繁的瞬时故障/扰动不太主动。
用于适应性地调节控制参数的装置可另外或或者包含:用于检测自上一瞬时故障以来的时间量的装置;用于调节控制参数以当在跟踪间隔内检测到新的瞬时故障时使更多处理器资源致力于故障检测且调节控制参数以当在跟踪间隔内未检测到新的瞬时故障时使更少处理器资源致力于故障检测的装置。这可进一步包含用于控制以下各项中的一或多个的装置:处理器装置资源的致力于故障检测系统的百分比;由处理器装置周期性地激活故障检测系统的频率;由处理器装置使用以用于瞬时故障攻击检测的阈值;由故障检测系统使用以检测下一故障的特定故障检测程序;和/或在处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。可提供用于通过控制处理器装置的时钟来控制处理器装置的物理操作的装置,包含用于跳过由随机或伪随机生成的散列代码指定的选定时钟循环的装置。另外,可提供用于从一组可选择故障检测程序中选择特定故障检测程序的装置。还可提供用于检测瞬时故障攻击且在瞬时故障的计数超出阈值时停用处理器装置的装置。
再进一步,取决于实施方案,上文所描述的装置和组件的功能和操作可实施为用于与机器可读存储媒体一起使用的指令。由此,在一些实例中,提供指令,所述指令当由处理电路执行时致使处理电路使用故障检测系统检测处理器电路内的至少一个瞬时故障和响应于至少一个瞬时故障适应性地调节控制参数,其中所述控制参数控制以下各项中的一或多个:(a)处理器电路的物理操作或(b)故障检测系统的功能操作以便使更多处理器装置资源致力于瞬时故障检测。用于适应性地调节控制参数的指令可包含用于使故障检测系统响应于更加频繁的瞬时故障更加主动且响应于不太频繁的瞬时故障不太主动的指令。
用于适应性地调节控制参数的指令可另外或或者包含:用于检测自上一瞬时故障以来的时间量的指令;用于调节控制参数以当在跟踪间隔内检测到新的瞬时故障时使更多处理器资源致力于故障检测和用于调节控制参数以当在跟踪间隔内未检测到新的瞬时故障时使更少处理器资源致力于故障检测的指令。这可进一步包含用于控制以下各项中的一或多个的指令:处理器装置资源的致力于故障检测系统的百分比;由处理器装置周期性地激活故障检测系统的频率;由处理器装置使用以用于瞬时故障攻击检测的阈值;由故障检测系统使用以检测下一故障的特定故障检测程序;和/或在处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。可提供用于通过控制处理器装置的时钟来控制处理器装置的物理操作的指令,包含用于跳过由随机或伪随机生成的散列代码指定的选定时钟循环的指令。另外,可提供用于从一组可选择故障检测程序中选择特定故障检测程序的指令。还可提供用于检测瞬时故障攻击且在瞬时故障的计数超出阈值时停用处理器装置的指令。
图19是流程图,其说明可在处理器装置上操作的方法,所述处理器装置例如智能电话的SoC,具体地说对瞬时故障攻击敏感的处理器装置。在1902处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统)。在1904处,处理器装置响应于瞬时故障适应性地调节处理器装置的(例如,瞬时故障防御系统的)控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量,从而例如使瞬时故障防御系统响应于更加频繁的瞬时故障更加主动且响应于不太频繁的瞬时故障不太主动。举例来说,故障防御系统的故障检测系统的功能操作可被适应性地调节以当在跟踪间隔内检测到新的瞬时故障时增加由处理器装置致力于防御对策的时间的百分比,且当在跟踪间隔内未检测到新的瞬时故障时减小由处理器装置致力于防御对策的时间的百分比。应注意,在各种实例中,故障检测系统和/或故障防御系统可实施于软件、固件和/或嵌入式代码中,所述软件、固件和/或嵌入式代码结合处理器装置的硬件/电路/模块操作以分别实施故障检测功能和/或故障防御功能。
图20是流程图,其说明可在处理器装置上操作的方法,所述处理器装置例如智能电话的SoC,具体地说对瞬时故障攻击敏感的处理器装置。在2002处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统)。在2004处,处理器装置响应于瞬时故障适应性地调节处理器装置的时钟信号以选择性地门控时钟循环,从而例如控制门控时钟循环与非门控时钟循环的比率以响应于频繁瞬时故障增加比率。
图21是流程图,其进一步说明可在处理器装置上操作的方法。在2102处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统),所述故障检测系统具有一组可选择故障检测程序,其中一些可选择故障检测程序比其它可选择故障检测程序更加彻底或更加精密,其中所述处理器装置并入到智能电话、视频播放器、娱乐单元、导航装置、通信装置、移动电话、音乐播放器、个人数字助理、固定定位终端、平板计算机和/或膝上型计算机中。在2104处,处理器装置响应于至少一个瞬时故障适应性地调节控制参数,其中所述控制参数控制以下各项中的一或多个:(a)处理器装置的物理操作或(b)故障检测系统的功能操作以便使更多处理器装置资源致力于瞬时故障检测,其中所述控制参数被适应性地调节以使故障检测响应于更加频繁的瞬时故障更加主动且响应于不太频繁的瞬时故障不太主动,如通过例如以下方式适应性地调节所述控制参数:检测自上一瞬时故障以来的时间量;调节控制参数以当在跟踪间隔内检测到新的瞬时故障时使更多处理器资源致力于故障检测;以及调节控制参数以当在跟踪间隔内未检测到新的瞬时故障时使更少处理器资源致力于故障检测。
在2106处,另外或或者,处理器装置适应性地调节控制以下各项中的一或多个的控制参数:处理器装置资源的致力于故障检测的百分比;由处理器装置周期性地激活故障检测的频率;由处理器装置使用以用于瞬时故障攻击检测的阈值;由故障检测使用以检测下一故障的特定故障检测程序;和/或在处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。在2108处,另外或或者,处理器装置适应性地调节控制控制参数,所述控制参数通过例如以下方式控制处理器装置的物理操作:控制处理器装置的时钟更快或更慢运行或跳过如由散列代码指定的选定时钟循环,所述散列代码是随机或伪随机生成的且例如选择或控制门控与非门控时钟循环的比率。在2110处,处理器装置检测瞬时故障攻击且在瞬时故障的计数超出指示瞬时故障攻击的阈值时停用处理器装置(或进行其它对策)。
图22是流程图,其说明可在例如智能电话的SoC等处理器装置上操作的又一方法。在2202处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统)。在一些实例中,此类故障检测系统可实施为软件、固件和/或嵌入式代码,所述软件、固件和/或嵌入式代码结合处理器装置的硬件/电路/模块操作以实施故障检测功能。在2204处,处理器装置检测自上一瞬时故障以来的时间量。在2206处,处理器装置调节控制参数以当在跟踪间隔内检测到新的瞬时故障时与由处理器装置分配给其它过程的时间量相比增加由处理器装置分配给瞬时故障防御过程的时间量。在2208处,处理器装置调节控制参数以当在跟踪间隔内未检测到新的瞬时故障时与由处理器装置分配给其它过程的时间量相比减小由处理器装置分配给瞬时故障防御过程的时间量。
图23是流程图,其说明可在例如智能电话的SoC等处理器装置上操作的又一方法。在2302处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统)。在一些实例中,此类故障检测系统可实施为软件、固件和/或嵌入式代码,所述软件、固件和/或嵌入式代码结合处理器装置的硬件/电路/模块操作以实施故障检测功能。在2304处,处理器装置跟踪自上一瞬时故障以来的时间量。在2306处,当在跟踪间隔内检测到新的瞬时故障时,但仅当在跟踪间隔内检测到的新的瞬时故障的数目超出下限阈值时,处理器装置与在跟踪间隔内检测到的新的瞬时故障的数目成比例地增加由处理器装置致力于防御对策的时间的百分比。在2308处,当在跟踪间隔内检测到的新的瞬时故障的数目达到中间阈值时使由处理器装置致力于防御对策的时间的百分比增加到最大对策级别,且接着当在跟踪间隔内检测到的新的瞬时故障的数目达到上限阈值时停用处理器装置。在2310处,当在跟踪间隔内未检测到新的瞬时故障时,处理器装置减小由处理器装置致力于防御对策的时间的百分比。
图24是流程图,其说明可在例如智能电话的SoC等处理器装置上操作的又一方法。在2402处,处理器装置检测处理器装置内的瞬时故障(例如,使用故障检测系统)。在一些实例中,此类故障检测系统可实施于软件、固件和/或嵌入式代码中,所述软件、固件和/或嵌入式代码结合处理器装置的硬件/电路/模块操作以实施故障检测功能。在2404处,处理器装置检测自上一瞬时故障以来的时间量。在2406处,当在跟踪间隔内检测到新的瞬时故障时,处理器装置调节处理器装置的控制参数以增加门控时钟循环的数目。在2408处,当在跟踪间隔内未检测到新的瞬时故障时,处理器装置调节处理器装置的控制参数以减小门控时钟循环的数目。
另外,应注意,实施例可描述为描绘为流程图、流程框图、结构图或框图的过程。尽管流程图可将操作描述为顺序过程,但许多操作可并行或同时执行。另外,操作的顺序可重新安排。当过程的操作完成时,所述过程终止。过程可对应于方法、功能、程序、子例程、子程序等。当过程对应于功能时,过程的终止对应于功能返回到调用功能或主功能。
此外,存储媒体可表示用于存储数据的一或多个装置,包含只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储媒体、光学存储媒体、快闪存储器装置和/或用于存储信息的其它机器可读媒体。术语“机器可读媒体”包含但不限于便携式或固定式存储装置、光学存储装置、无线通道以及能够存储、含有或携带指令和/或数据的各种其它媒体。
结合本文中所公开的实例描述的方法或算法可以处理单元、编程指令或其它方向的形式直接体现在硬件、可由处理器执行的软件模块或两者的组合中,且可包含于单个装置中或跨越多个装置而分布。软件模块可驻存在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM,或所属领域中已知的任何其它形式的存储媒体中。存储媒体可耦合到处理器,使得处理器可从存储媒体读取信息和将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体。
所属领域的技术人员将进一步了解,结合本文中所公开的实施例描述的各种说明性逻辑块、模块、电路和算法步骤可被实施为电子硬件、计算机软件或两者的组合。为了清晰地说明硬件与软件的此可互换性,上文已大体上就各种说明性组件、块、模块、电路和步骤的功能性加以描述。此类功能性是实施为硬件还是软件取决于特定应用和强加于整个系统的设计约束。
本文中所描述的本发明的各种特征可在不脱离本发明的情况下实施于不同系统中。应注意,前述实施例仅为实例,且不应解释为限制本发明。实施例的描述意图为说明性的,且不限制权利要求书的范围。由此,本发明的教示可易于应用于其它类型的设备,且许多替代方案、修改和变化对于所属领域的技术人员将显而易见。

Claims (42)

1.一种可在处理器装置上操作的方法,包括:
检测所述处理器装置内的瞬时故障;和
响应于所述检测到的瞬时故障适应性地调节控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
2.根据权利要求1所述的方法,其中所述处理器装置实施瞬时故障防御系统以适应性地调节所述控制参数,其中所述瞬时故障防御系统包含瞬时故障抵抗系统、所述瞬时故障检测系统和瞬时故障反应系统中的一或多个,且其中进行适应性地调节所述控制参数以控制所述瞬时故障抵抗系统、所述瞬时故障检测系统和所述瞬时故障反应系统中的一或多个。
3.根据权利要求1所述的方法,其中所述控制参数被适应性地调节以更加主动地对更加频繁的瞬时故障作出响应且不太主动地对不太频繁的瞬时故障作出响应。
4.根据权利要求1所述的方法,其中适应性地调节所述控制参数包括:
检测自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的时间量相比增加由所述处理器装置分配给瞬时故障防御过程的时间量;和
当在跟踪间隔内未检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的所述时间量相比减小由所述处理器装置分配给瞬时故障防御过程的所述时间量。
5.根据权利要求1所述的方法,其中所述控制参数控制以下各项中的一或多个:
处理器装置资源的致力于瞬时故障防御的百分比;
由所述处理器装置周期性地激活用于故障防御的组件的频率;
执行用于故障防御的组件的持续时间;
用于瞬时故障检测和/或瞬时故障攻击检测的阈值;
由连接到所述处理器装置的外围传感器使用以用于瞬时故障攻击检测的阈值;
用于检测下一故障的特定故障检测程序;和/或
在所述处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。
6.根据权利要求1所述的方法,其中适应性地调节所述控制参数包括:
跟踪自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,增加由所述处理器装置致力于防御对策的时间的百分比;和
当在跟踪间隔内未检测到新的瞬时故障时,减小由所述处理器装置致力于防御对策的所述时间的百分比。
7.根据权利要求6所述的方法,其中仅当在所述跟踪间隔内检测到的新的瞬时故障的数目超出下限阈值时增加由所述处理器装置致力于防御对策的所述时间的百分比。
8.根据权利要求6所述的方法,其中在所述跟踪间隔期间与在所述跟踪间隔内检测到的新的瞬时故障的数目成比例地增加由所述处理器装置致力于防御对策的所述时间的百分比。
9.根据权利要求6所述的方法,其中当在所述跟踪间隔内检测到的所述新的瞬时故障的数目达到中间阈值时使由所述处理器装置致力于防御对策的所述时间的百分比增加到最大对策级别。
10.根据权利要求6所述的方法,其中当在所述跟踪间隔内检测到的所述新的瞬时故障的数目达到上限阈值时停用所述处理器装置。
11.根据权利要求1所述的方法,其中所述处理器装置并入到以下各项中的至少一个中:智能电话、视频播放器、娱乐单元、导航装置、通信装置、移动电话、音乐播放器、个人数字助理、固定定位终端、平板计算机和/或膝上型计算机。
12.一种处理器装置,包括:
通信接口;
处理电路,其耦合到所述通信接口,所述处理电路被配置成
检测所述处理器装置内的瞬时故障;和
响应于所述瞬时故障适应性地调节所述处理器装置的控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
13.根据权利要求12所述的处理器装置,其中所述处理器电路实施瞬时故障防御系统以适应性地调节所述控制参数,其中所述瞬时故障防御系统包含瞬时故障抵抗系统、所述瞬时故障检测系统和瞬时故障反应系统中的一或多个。
14.根据权利要求12所述的处理器装置,其中所述控制参数被适应性地调节以更加主动地对更加频繁的瞬时故障作出响应且不太主动地对不太频繁的瞬时故障作出响应。
15.根据权利要求12所述的处理器装置,其中所述处理电路通过以下方式适应性地调节所述控制参数:
检测自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的时间量相比增加由所述处理器装置分配给瞬时故障防御过程的时间量;和
当在跟踪间隔内未检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的所述时间量相比减小由所述处理器装置分配给瞬时故障防御过程的所述时间量。
16.根据权利要求12所述的处理器装置,其中所述控制参数控制以下各项中的一或多个:
处理器装置资源的致力于瞬时故障防御的百分比;
由所述处理器装置周期性地激活用于瞬时故障防御的组件的频率;
执行用于故障防御的组件的持续时间;
用于瞬时故障检测和/或用于瞬时故障攻击检测的阈值;
由连接到所述处理器装置的外围传感器使用以用于瞬时故障攻击检测的阈值;
用于检测下一故障的特定故障检测程序;和/或
在所述处理器装置上运行的至少一个过程相对于至少一个其它过程的定时。
17.根据权利要求12所述的处理器装置,其中所述处理电路通过以下方式适应性地调节所述控制参数:
跟踪自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,增加由所述处理器装置致力于防御对策的时间的百分比;和
当在跟踪间隔内未检测到新的瞬时故障时,减小由所述处理器装置致力于防御对策的所述时间的百分比。
18.根据权利要求19所述的处理器装置,其中仅当在所述跟踪间隔内检测到的新的瞬时故障的数目超出下限阈值时增加由所述处理器装置致力于防御对策的所述时间的百分比。
19.根据权利要求19所述的处理器装置,其中在所述跟踪间隔期间与在所述跟踪间隔内检测到的新的瞬时故障的数目成比例地增加由所述处理器装置致力于防御对策的所述时间的百分比。
20.根据权利要求19所述的处理器装置,其中当在所述跟踪间隔内检测到的所述新的瞬时故障的数目达到中间阈值时使由所述处理器装置致力于防御对策的所述时间的百分比增加到最大对策级别。
21.根据权利要求19所述的处理器装置,其中当在所述跟踪间隔内检测到的所述新的瞬时故障的数目达到上限阈值时停用所述处理器装置。
22.根据权利要求12所述的处理器装置,其中所述处理器装置并入到以下各项中的至少一个中:智能电话、视频播放器、娱乐单元、导航装置、通信装置、移动电话、音乐播放器、个人数字助理、固定定位终端、平板计算机和/或膝上型计算机。
23.一种处理器装置,包括:
用于检测所述处理器装置内的瞬时故障的装置;和
用于响应于所述瞬时故障适应性地调节所述处理器装置的控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量的装置。
24.根据权利要求23所述的处理器装置,其中所述用于适应性地调节所述控制参数的装置进一步适应性地调节以更加主动地对更加频繁的瞬时故障作出响应且不太主动地对不太频繁的瞬时故障作出响应。
25.根据权利要求23所述的处理器装置,其中所述用于适应性地调节所述控制参数的装置包括:
用于检测自上一瞬时故障以来的时间量的装置;
用于当在跟踪间隔内检测到新的瞬时故障时调节所述控制参数以与由所述处理器装置分配给其它过程的时间量相比增加由所述处理器装置分配给瞬时故障防御过程的时间量的装置;和
用于当在跟踪间隔内未检测到新的瞬时故障时调节所述控制参数以与由所述处理器装置分配给其它过程的所述时间量相比减小由所述处理器装置分配给瞬时故障防御过程的所述时间量的装置。
26.一种机器可读存储媒体,具有一或多个指令,所述一或多个指令当由处理电路执行时致使所述处理电路来:
检测所述处理器装置内的瞬时故障;和
响应于所述瞬时故障适应性地调节用于所述处理器装置的瞬时故障防御的控制参数以与处理器装置资源的致力于其它操作的量相比适应性地控制处理器装置资源的致力于瞬时故障防御的量。
27.根据权利要求26所述的机器可读存储媒体,进一步具有一或多个指令,所述一或多个指令当由所述处理电路执行时致使所述处理电路适应性地调节所述控制参数以更加主动地对更加频繁的瞬时故障作出响应且不太主动地对不太频繁的瞬时故障作出响应。
28.根据权利要求26所述的机器可读存储媒体,进一步具有一或多个指令,所述一或多个指令当由所述处理电路执行时致使所述处理电路来:
检测自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的时间量相比增加由所述处理器装置分配给瞬时故障防御过程的时间量;和
当在跟踪间隔内未检测到新的瞬时故障时,调节所述控制参数以与由所述处理器装置分配给其它过程的所述时间量相比减小由所述处理器装置分配给瞬时故障防御过程的所述时间量。
29.一种可在处理器装置上操作的方法,包括:
检测所述处理器装置内的瞬时故障;和
响应于所述瞬时故障适应性地调节所述处理器装置的时钟信号以选择性地门控时钟循环。
30.根据权利要求29所述的方法,其中通过施加散列代码适应性地调节所述时钟信号以选择所述时钟信号的时钟循环进行门控。
31.根据权利要求30所述的方法,其中所述散列代码是随机或伪随机生成的。
32.根据权利要求29所述的方法,其中适应性地调节所述时钟信号以控制门控时钟循环与非门控时钟循环的比率。
33.根据权利要求29所述的方法,其中适应性地调节所述时钟信号包括:
检测自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,调节所述控制参数以增加门控时钟循环的数目;和
当在跟踪间隔内未检测到新的瞬时故障时,调节所述控制参数以减小所述门控时钟循环的数目。
34.根据权利要求29所述的方法,其中所述处理器装置并入到以下各项中的至少一个中:智能电话、视频播放器、娱乐单元、导航装置、通信装置、移动电话、音乐播放器、个人数字助理、固定定位终端、平板计算机和/或膝上型计算机。
35.一种处理器装置,包括:
通信接口;和
处理电路,其耦合到所述通信接口,所述处理电路被配置成
检测所述处理器装置内的瞬时故障;和
响应于所述瞬时故障适应性地调节所述处理器装置的时钟信号以选择性地门控时钟循环。
36.根据权利要求35所述的处理器装置,其中所述处理电路被进一步配置成实施自适应控制系统,所述自适应控制系统通过施加散列代码适应性地调节所述时钟信号以选择所述时钟信号的时钟循环进行门控。
37.根据权利要求36所述的处理器装置,其中所述散列代码是随机或伪随机生成的。
38.根据权利要求35所述的处理器装置,其中所述时钟信号由所述处理电路适应性地调节以控制门控时钟循环与非门控时钟循环的比率。
39.根据权利要求35所述的处理器装置,其中所述处理电路被配置成通过以下方式适应性地调节所述时钟信号:
检测自上一瞬时故障以来的时间量;
当在跟踪间隔内检测到新的瞬时故障时,调节所述控制参数以增加门控时钟循环的数目;和
当在跟踪间隔内未检测到新的瞬时故障时,调节所述控制参数以减小所述门控时钟循环的数目。
40.根据权利要求35所述的处理器装置,其中所述处理器装置并入到以下各项中的至少一个中:智能电话、视频播放器、娱乐单元、导航装置、通信装置、移动电话、音乐播放器、个人数字助理、固定定位终端、平板计算机和/或膝上型计算机。
41.一种处理器装置,包括:
用于检测所述处理器装置内的瞬时故障的装置;和
用于响应于所述瞬时故障适应性地调节所述处理器装置的时钟信号以选择性地门控时钟循环的装置。
42.一种机器可读存储媒体,具有一或多个指令,所述一或多个指令当由处理电路执行时致使所述处理电路来:
检测所述处理器装置内的瞬时故障;和
响应于所述瞬时故障适应性地调节所述处理器装置的时钟信号以选择性地门控时钟循环。
CN201780019255.4A 2016-04-01 2017-03-08 用于使处理器抵御瞬时故障攻击的自适应系统和程序 Active CN108885663B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/089,379 2016-04-01
US15/089,379 US10380341B2 (en) 2016-04-01 2016-04-01 Adaptive systems and procedures for defending a processor against transient fault attacks
PCT/US2017/021455 WO2017172318A1 (en) 2016-04-01 2017-03-08 Adaptive systems and procedures for defending a processor against transient fault attacks

Publications (2)

Publication Number Publication Date
CN108885663A true CN108885663A (zh) 2018-11-23
CN108885663B CN108885663B (zh) 2021-11-26

Family

ID=58398277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780019255.4A Active CN108885663B (zh) 2016-04-01 2017-03-08 用于使处理器抵御瞬时故障攻击的自适应系统和程序

Country Status (7)

Country Link
US (1) US10380341B2 (zh)
EP (1) EP3437010A1 (zh)
JP (1) JP2019510318A (zh)
KR (1) KR20180132067A (zh)
CN (1) CN108885663B (zh)
BR (1) BR112018069821A2 (zh)
WO (1) WO2017172318A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10019280B2 (en) * 2016-03-25 2018-07-10 Intel Corporation Technologies for dynamically managing data bus bandwidth usage of virtual machines in a network device
US10726122B2 (en) * 2017-07-03 2020-07-28 Nxp B.V. Automatic reset filter deactivation during critical security processes
FR3070076B1 (fr) * 2017-08-09 2019-08-09 Idemia Identity And Security Procede de protection d'un dispositif electronique contre des attaques par injection de faute
JP6993365B2 (ja) * 2018-03-09 2022-01-13 株式会社メガチップス 情報処理システム、情報処理装置、及び情報処理装置の制御方法
CN109544868B (zh) * 2018-09-28 2021-04-27 广州智伴人工智能科技有限公司 一种自动报警提醒系统
KR20200044206A (ko) 2018-10-10 2020-04-29 삼성전자주식회사 전자 장치 및 이의 제어 방법
US11366898B2 (en) * 2019-11-18 2022-06-21 Silicon Laboratories Inc. Integrated circuit with electromagnetic fault injection protection
US11321458B2 (en) * 2020-01-28 2022-05-03 Nuvoton Technology Corporation Secure IC with soft security countermeasures
CN111447106B (zh) * 2020-03-18 2022-05-03 深圳市普威技术有限公司 一种故障检测方法、装置、存储介质及通信设备
TWI755771B (zh) * 2020-06-24 2022-02-21 新唐科技股份有限公司 處理電路及處理方法
TWI812042B (zh) * 2021-03-30 2023-08-11 新唐科技股份有限公司 安全系統

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965673B1 (en) * 1997-09-19 2005-11-15 Telcordia Technologies, Inc. Method of using transient faults to verify the security of a cryptosystem
US20070244951A1 (en) * 2004-04-22 2007-10-18 Fortress Gb Ltd. Accelerated Throughtput Synchronized Word Stream Cipher, Message Authenticator and Zero-Knowledge Output Random Number Generator
CN101334744A (zh) * 2007-12-27 2008-12-31 华为技术有限公司 一种检测多处理器系统故障的方法、系统和装置
US20090013178A9 (en) * 1997-07-15 2009-01-08 Kia Silverbrook Integrated circuit for the authentication of a consumable storage device
CN101529389A (zh) * 2006-10-18 2009-09-09 朗讯科技公司 用于注入供软件测试用的临时硬件故障的方法和装置
US20090271676A1 (en) * 2008-04-23 2009-10-29 Arijit Biswas Detecting architectural vulnerability of processor resources
US20130103972A1 (en) * 2011-10-24 2013-04-25 Emre Özer Data processing apparatus and method for analysing transient faults occurring within storage elements of the data processing apparatus
US8619445B1 (en) * 2013-03-15 2013-12-31 Arctic Sand Technologies, Inc. Protection of switched capacitor power converter
EP2942732A1 (en) * 2014-05-07 2015-11-11 Gemalto SA Dynamic change of security configurations
US20150341384A1 (en) * 2014-05-23 2015-11-26 Broadcom Corporation Randomizing Countermeasures For Fault Attacks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743262B2 (en) * 1997-07-15 2010-06-22 Silverbrook Research Pty Ltd Integrated circuit incorporating protection from power supply attacks
WO1999063696A1 (en) 1998-06-03 1999-12-09 Cryptography Research, Inc. Using unpredictable information to minimize leakage from smartcards and other cryptosystems
US7570205B2 (en) * 2005-07-29 2009-08-04 Honeywell International Inc. Automatic detection of GPS SA base value for HFOM
US8810216B2 (en) * 2011-06-30 2014-08-19 Advanced Analogic Technologies Incorporated Current sink with low side voltage regulation
US8848429B2 (en) * 2013-02-14 2014-09-30 Qualcomm Incorporated Latch-based array with robust design-for-test (DFT) features
FR3012637B1 (fr) 2013-10-28 2015-12-25 Commissariat Energie Atomique Procede et dispositif de detection d'attaque d'une source d'entropie

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090013178A9 (en) * 1997-07-15 2009-01-08 Kia Silverbrook Integrated circuit for the authentication of a consumable storage device
US6965673B1 (en) * 1997-09-19 2005-11-15 Telcordia Technologies, Inc. Method of using transient faults to verify the security of a cryptosystem
US20070244951A1 (en) * 2004-04-22 2007-10-18 Fortress Gb Ltd. Accelerated Throughtput Synchronized Word Stream Cipher, Message Authenticator and Zero-Knowledge Output Random Number Generator
CN101529389A (zh) * 2006-10-18 2009-09-09 朗讯科技公司 用于注入供软件测试用的临时硬件故障的方法和装置
CN101334744A (zh) * 2007-12-27 2008-12-31 华为技术有限公司 一种检测多处理器系统故障的方法、系统和装置
US20090271676A1 (en) * 2008-04-23 2009-10-29 Arijit Biswas Detecting architectural vulnerability of processor resources
US20130103972A1 (en) * 2011-10-24 2013-04-25 Emre Özer Data processing apparatus and method for analysing transient faults occurring within storage elements of the data processing apparatus
US20140223229A1 (en) * 2011-10-24 2014-08-07 Arm Limited Data processing apparatus and method for analysing transient faults occurring within storage elements of the data processing apparatus
US8619445B1 (en) * 2013-03-15 2013-12-31 Arctic Sand Technologies, Inc. Protection of switched capacitor power converter
EP2942732A1 (en) * 2014-05-07 2015-11-11 Gemalto SA Dynamic change of security configurations
US20150341384A1 (en) * 2014-05-23 2015-11-26 Broadcom Corporation Randomizing Countermeasures For Fault Attacks

Also Published As

Publication number Publication date
EP3437010A1 (en) 2019-02-06
KR20180132067A (ko) 2018-12-11
US10380341B2 (en) 2019-08-13
JP2019510318A (ja) 2019-04-11
BR112018069821A2 (pt) 2019-01-29
WO2017172318A1 (en) 2017-10-05
CN108885663B (zh) 2021-11-26
US20170286680A1 (en) 2017-10-05

Similar Documents

Publication Publication Date Title
CN108885663A (zh) 用于使处理器抵御瞬时故障攻击的自适应系统和程序
Jang et al. SGX-Bomb: Locking down the processor via Rowhammer attack
CN109871695B (zh) 一种计算与防护并行双体系结构的可信计算平台
EP3779745B1 (en) Code pointer authentication for hardware flow control
Irazoqui et al. MASCAT: Stopping microarchitectural attacks before execution
EP3007093A1 (en) System and method for reducing information leakage from memory
EP3198399B1 (en) Detecting a change to system management mode bios code
JP2007529803A (ja) 周辺機器に対するアクセスを制御する方法およびデバイス
US20140373171A1 (en) Security protection of software libraries in a data processing apparatus
US7451485B2 (en) Information processing unit having tamper-resistant system
Brasser et al. Advances and throwbacks in hardware-assisted security: Special session
Brasser et al. Special session: Advances and throwbacks in hardware-assisted security
JP2003228521A (ja) 集積回路の動作のブロック
EP1295200A2 (en) Data processing method and device for protected execution of instructions
US10984845B2 (en) Protection of a microcontroller
JP7383750B2 (ja) 故障注入攻撃を検出する改善されたシステムと方法
WO2019219400A1 (en) Electronic system and method for preventing malicious actions on a processing system of the electronic system
Neto et al. ISC-FLAT: On the Conflict Between Control Flow Attestation and Real-Time Operations
CN111480160B (zh) 用于过程验证的系统、方法和介质
EP3387535B1 (en) Apparatus and method for software self test
US10552602B2 (en) System and method for protecting a device against attacks on processing flow using a code pointer complement
CN115729771A (zh) 内核线程的保护方法、终端和计算机可读存储介质
CN112685741A (zh) 一种智能电网环境下计算与防护并行的可信计算平台的静态度量方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant