激光故障注入系统及方法
文献发布时间:2023-06-19 19:27:02
技术领域
本发明涉及芯片安全领域,特别涉及一种激光故障注入系统及方法。
背景技术
近年来,物联网、车联网的技术发展日新月异,相应的安全问题也越来越多地受到从业人员和社会大众的关注。由于芯片涉及通信验证和业务数据处理,芯片安全成为保障物联网、车联网安全的重要基础。
在现有技术中,故障注入是测评芯片安全有效的手段之一。电压、时钟毛刺注入是较为传统的故障注入。对被攻击设备(芯片)注入激光是非常有效的一种半侵入式攻击手段,可以很好的验证设备的安全性。但是目前市面上支持激光故障注入的装置基本都是为传统智能卡所开发,适用范围窄,已远远不能满足各场景各类芯片的通信要求。
因此,希望能有一种新的激光故障注入系统及方法,能够克服上述问题。
发明内容
鉴于上述问题,本发明的目的在于提供一种激光故障注入系统及方法,特别是一种支持多接口的激光故障注入系统装置,从而支持多种接口的激光故障注入,方便验证不同类型设备的安全性。
根据本发明的一方面,提供一种激光故障注入系统,包括:执行装置,用于向被测装置注入激光;以及控制装置,与所述执行装置相连接,用于所述执行装置的控制,其中,所述执行装置包括连接端口,所述连接端口包括不同类型的连接子端口;所述被测装置通过至少一个所述连接子端口与所述执行装置通信连接;所述控制装置根据所述连接子端口不同的端口类型设置有不同的通信参数。
可选地,所述连接子端口包括选自7816接口、UART接口、SPI接口、I2C接口、WIFI接口、蓝牙接口和NB-IOT接口中的至少一个。
可选地,所述控制装置包括选自7816接口界面、UART接口界面、SPI接口界面、I2C接口界面、WIFI接口界面、蓝牙接口界面和NB-IOT接口界面中的至少一个;所述控制装置中不同的接口界面用于相应的连接子端口的通信。
可选地,所述执行装置包括:移动平台,用于设置所述被测装置的扫描范围;红外模块,用于获取所述被测装置的内部结构;激光控制发生器,用于产生激光;以及摄像头模块,用于获取所述被测装置的图像信息。
可选地,所述控制装置包括:移动平台控制界面,用于设置所述移动平台的工作参数;红外控制界面,用于设置所述红外模块的工作参数;激光控制界面,用于设置所述激光控制发生器的工作参数,其中,所述激光控制发生器的工作参数包括选自激光能量、激光持续时长、毛刺个数和偏移量中的至少一种;摄像头模块界面,用于设置所述摄像头模块的工作参数。
可选地,所述执行装置和所述控制装置间通过第一监测信号线和第一复位信号线连接;所述第一监测信号线用于监测所述执行装置和所述控制装置间的通信信号;在所述执行装置和所述控制装置间的通信信号故障时,所述控制装置通过所述第一复位线向所述控制装置传递复位信号。
可选地,所述执行装置和所述被测装置间通过第二监测信号线和第二复位信号线连接;所述第二监测信号线用于监测所述执行装置和所述被测装置间的通信信号;在所述执行装置和所述被测装置间的通信信号故障时,所述执行装置通过所述第二复位线向所述被测装置传递复位信号。
可选地,所述控制模块还包括判断单元;在向所述被测装置注入所述激光后,所述判断单元接收所述被测装置的反馈信号,并根据所述反馈信号判断所述被测装置的安全性。
根据本发明的另一方面,提供一种激光故障注入方法,应用于如前所述的激光故障注入系统。该激光故障注入方法包括:通过至少一个连接子端口建立所述被测装置与所述执行装置的通信连接,其中,所述执行装置包括连接端口,所述连接端口包括不同类型的连接子端口;所述控制装置根据所述连接子端口的不同类型设置不同的通信参数;以及所述控制装置控制所述执行装置以向所述被测装置注入激光。
可选地,所述激光故障注入方法还包括:所述控制装置生成控制所述激光的参数,并将所述参数发送至所述执行装置,其中,所述参数包括选自激光能量、激光持续时长、毛刺个数和偏移量中的至少一种;监测所述执行装置和所述控制装置间的通信信号,并在所述执行装置和所述控制装置间的通信信号故障时,向所述控制装置发送复位信号;监测所述执行装置和所述被测装置间的通信信号,并在所述执行装置和所述被测装置间的通信信号故障时,向所述被测装置发送复位信号。
根据本发明实施例的激光故障注入系统及方法,支持多种接口的激光故障注入,可以连接不同的物联网、车联网设备以验证设备安全性,且无需通信转接板,连接方式简便。
进一步地,控制装置与执行装置、被测装置间的复位设置,保证了系统的稳定。
进一步地,红外模块的设置能够准确获取被测装置的内部结构,从而保证激光注入位置的准确性;被测装置发送触发信号的设置能够保证激光注入时机的准确性。
进一步地,执行装置能够产生精准的激光毛刺触发信号,以此为基准,根据控制装置设置的毛刺偏移参数,激光产生器可以在时间幅度上精准产生激光毛刺信号注入被测设备。
进一步地,执行装置能够接收控制装置发来的通信接口识别信号,自主识别控制装置各种通信接口,从而省去人为自主切换连接端口(通信接口)的繁琐流程。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示出了根据本发明实施例的激光故障注入系统的结构示意图。
图2示出了根据本发明实施例的控制装置的结构示意图。
图3示出了根据本发明实施例的执行装置的结构示意图。
图4示出了根据本发明实施例的激光故障注入系统的应用场景示意图。
图5示出了根据本发明实施例的激光故障注入方法的方法流程图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。此外,在图中可能未示出某些公知的部分。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。在下文中描述了本发明的许多特定的细节,例如部件的结构、材料、尺寸、处理工艺和技术,以便更清楚地理解本发明。但正如本领域的技术人员能够理解的那样,可以不按照这些特定的细节来实现本发明。
应当理解,在描述部件的结构时,当将一层、一个区域称为位于另一层、另一个区域“上面”或“上方”时,可以指直接位于另一层、另一个区域上面,或者在其与另一层、另一个区域之间还包含其它的层或区域。并且,如果将部件翻转,该一层、一个区域将位于另一层、另一个区域“下面”或“下方”。
图1示出了根据本发明实施例的激光故障注入系统的结构示意图。如图1所示,根据本发明实施例的激光故障注入系统用于被测装置300的测试,该激光故障注入系统包括控制装置100和执行装置200。
具体地讲,执行装置200用于向被测装置300注入激光。被测装置300例如为芯片。芯片的实现材料是硅半导体以及少量掺杂元素,其中n型半导体带有电子,p型半导体带有空穴,电子空穴在共价键中处于束缚状态。当执行装置200向芯片注入激光,给电子提供足够的能量后,电子就会脱离束缚变成自由的电子。由于半导体的能量吸收与材质、光的波长、以及光的强度等因素有关。当硅半导体吸收特定波长的光子达到一定程度后,电子将脱离共价键束缚变成自由电子,这样会使芯片的CMOS(metal-oxide-semiconductor,金属-氧化物-半导体)晶体管导通,产生非正常的数据输出,从而达到故障注入的目的。
控制装置100与执行装置200相连接,用于执行装置200的控制。控制装置100与执行装置200的连接例如为有线连接或无线连接。
执行装置200包括连接端口。连接端口包括不同类型的连接子端口。连接子端口例如包括7816接口、UART接口、SPI接口、I2C接口、WIFI接口、蓝牙接口和NB-IOT接口等中的至少一个/种。
被测装置300通过至少一个连接子端口与执行装置200通信连接。控制装置100根据连接子端口的端口类型设置有不同的通信参数。可选地,控制装置100包括7816接口界面、UART接口界面、SPI接口界面、I2C接口界面、WIFI接口界面、蓝牙接口界面和NB-IOT接口界面等中的至少一个/种。控制装置100中不同的接口界面/不同的通信参数用于相应的连接子端口的通信。
可选地,控制模块100还包括判断单元。在向被测装置300注入激光后,判断单元接收被测装置300的反馈信号,并根据反馈信号判断被测装置300的安全性。
可选地,根据本发明实施例的激光故障注入系统在验证设备(被测装置300)的安全性时,通过对应的连接子端口连接被测装置300和执行装置200。被测装置(芯片)300进行运算,执行装置200向被测装置300进行运算的物理结构部分注入激光(运算对应的物理结构部分可通过红外模块确定)。可选地,针对不同的连接子端口,控制模块100具有不同的指令信息(通信接口识别信号),从而让执行装置200自动识别连接端口(通信接口)的类型。可选地,被测装置300向控制模块100提供触发信号,在接收到触发信号后,控制装置100控制激光的注入,以保证激光注入时机的准确性。触发信号例如为GPIO信号,可以是从高电平到低电平的信号、从低电平到高电平的信号等。
图2示出了根据本发明实施例的控制装置的结构示意图。如图2所示,根据本发明实施例的控制装置100包括多个接口界面、(XYZ)移动平台控制界面、红外控制界面、激光控制界面和摄像头模块界面等。图3示出了根据本发明实施例的执行装置的结构示意图。如图3所示,根据本发明实施例的执行装置200包括多个接口、(XYZ)移动平台、红外模块、激光控制发生器和摄像头模块等。
结合图1至图3所示,移动平台用于设置被测装置300的扫描范围。红外模块用于获取被测装置300的内部结构,具体地,红外光可以获取到被测装置300的内部结构(例如芯片不同位置处的结构及对应功能等)。红外模块能够准确获取被测装置300的内部结构,从而准确提供激光注入的位置信息。激光控制发生器用于产生激光。摄像头模块用于获取被测装置300的图像信息。移动平台可以帮助被测装置300在激光产生器下精准移动,红外摄像头可以用来观察被测装置300表面。各个模块例如集成在执行装置200中。
移动平台控制界面用于设置移动平台的工作参数。红外控制界面用于设置红外模块的工作参数。激光控制界面用于设置激光控制发生器的工作参数,工作参数例如包括激光能量、激光持续时长、毛刺个数和偏移量(精准偏移)等中的至少一种。摄像头模块界面用于设置摄像头模块的工作参数。移动平台控制界面/移动平台可以精准设置被测装置300扫描范围,精度达到μm级别。红外控制界面可以精准设置红外模块工作参数。各个界面例如集成在控制装置100中。
控制装置100例如为上位机端,例如在JAVA架构下开发上位机控制环境。该上位机端支持WiFi(无线网络通信技术)、蓝牙、NB-IOT(Narrow Band-Internet of Things,窄带物联网)、7816、UART(Universal Asynchronous Receiver/Transmitter,通用异步接收/发送装置)、SPI(Serial Peripheral Interface,串行外设接口)、I2C(Inter-IntegratedCircuit,两线式串行总线)等通信接口,可以灵活设置通信参数,并与执行装置200正常收发数据。执行装置200例如为FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)硬件设备端。
执行装置200例如为FPGA硬件设备端,即在FPGA平台下开发设备端硬件。该FPGA硬件设备端支持Wifi,蓝牙,NB-IOT,7816,UART,SPI,I2C等多种通信主接口,可以方便外接各种被测装置300,并支持激光产生器和XYZ移动平台,红外摄像头等。
图4示出了根据本发明实施例的激光故障注入系统的应用场景示意图。如图4所示,执行装置200和控制装置100间通过第一监测信号线401和第一复位信号线402连接。执行装置200和被测装置300间通过第二监测信号线403和第二复位信号线404连接。
具体地讲,第一监测信号线401用于监测执行装置200和控制装置100间的通信信号。在执行装置200和控制装置100间的通信信号故障时,控制装置100通过第一复位线402向控制装置100传递复位信号。
第二监测信号线403用于监测执行装置100和被测装置300间的通信信号。在执行装置200和被测装置300间的通信信号故障时,执行装置200通过第二复位信号线404向被测装置300传递复位信号。
在一个具体实施例中,FPGA硬件设备与上位机端设计有两条信号线,一条用来实时监测通信信号,一条用来复位FPGA硬件设备。FPGA硬件设备与被测装置设计有两条信号线,一条用来实时监测被测装置通信信号,一条用来复位被测装置。在该实施例中,上位机端与FPGA硬件设备端有实时通信监控信号判断通信中断情况,若中断,上位机端能够主动发起FPGA硬件端复位操作,重新进行通信;FPGA硬件设备与被测设备间有实时通信监控信号,一旦检测到异常能将被测设备复位,同时FPGA硬件设备通知上位机端重新连接并进行指令下发,不用来回擦拔被测设备,提高测评效率。
图5示出了根据本发明实施例的激光故障注入方法的方法流程图。该激光故障注入方法应用于上述的激光注入系统。如图5所示,根据本发明实施例的激光故障注入方法包括以下步骤:
在步骤S101中,通过至少一个连接子端口建立被测装置与执行装置的通信连接;
执行装置包括连接端口,连接端口包括不同类型的连接子端口。通过至少一个连接子端口建立被测装置与执行装置的通信连接。
在步骤S102中,控制装置根据连接子端口的不同类型设置不同的通信参数;
控制装置根据连接子端口的不同类型设置不同的通信参数,不同的通信参数用于不同连接子端口的通信。
在步骤S103中,控制装置控制执行装置以向被测装置注入激光。
在本发明的可选实施例中,激光故障注入方法还包括,监测执行装置和控制装置间的通信信号,并在执行装置和控制装置间的通信信号故障时,向控制装置发送复位信号;监测执行装置和被测装置间的通信信号,并在执行装置和被测装置间的通信信号故障时,向被测装置发送复位信号。在该实施例中,FPGA硬件设备与被测设备间有实时通信监控信号,一旦检测到通信异常能将被测设备复位,同时FPGA硬件设备通知上位机端重新复位FPGA硬件,进行重新连接并执行指令下发;若FPGA设备端不能使被测设备复位,则上位机端强制发起FPGA设备端复位,再进行被测设备复位,省去人为自主切换通信接口的繁琐流程,若还不能工作,则上位机提示超时。
在本发明的可选实施例中,激光故障注入方法还包括,控制装置生成控制激光的参数,并将参数发送至执行装置。其中,参数包括激光能量、激光持续时长、毛刺个数和偏移量等中的至少一种。具体地,FPGA硬件设备能产生精准的激光毛刺触发信号,以此为基准,根据上位机端设置的毛刺偏移参数,激光产生器可以在时间幅度上精准产生激光毛刺信号注入被测设备,XYZ移动平台可以帮助被测设备在激光产生器下移动,红外摄像头用来观察被测设备表面。FPGA硬件设备端产生精准的激光毛刺触发信号包括,在各种通信接口下,一条完整指令下发后,同时接收被测设备接收完毕的信号后,精准发出激光毛刺信号基准,并根据上位机端设置时间偏移精准注入激光毛刺信号,若被测设备无法产生通信接收完毕的信号,则FPGA端可以自由设置时间进行激光毛刺信号产生,进行灵活适配。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。
- 故障注入方法、故障注入器、存储介质及故障注入系统
- 一种故障注入方法和系统、控制设备及故障注入管理系统