发明内容
本发明提供一种抗侵入式攻击的芯片及其制作方法和攻击检测的方法,用以实现芯片自检测封装是否已遭破坏的过程,从而起到抗攻击的作用。
本发明提供一种抗侵入式攻击的芯片,包括:
两个以上接触点,从所述芯片的内部延伸至所述芯片的外表面;
导电介质,附着在所述芯片的外表面;
检测电路,集成在所述芯片内部,用于检测所述两个以上接触点中的至少两个接触点之间的互联信息,得到参考数据信息,将所述参考数据信息存储在所述芯片的非易失性存储器中,当所述芯片上电后,重新检测所述至少两个接触点之间的互联信息,得到评估数据信息,根据所述参考数据信息和所述评估数据信息,判定所述芯片是否受到侵入式攻击。
本发明还提供一种前述抗侵入式攻击的芯片的制作方法,包括:
将所述检测电路集成在所述芯片内部;
设置至少两个接触点,从所述芯片内部延伸至所述芯片的外表面;
将导电介质附着在所述芯片的外表面。
本发明还提供一种前述抗侵入式攻击的芯片进行侵入式攻击检测的方法,包括:
所述检测电路检测至少两个接触点之间的互联信息,获得参考数据信息,保存在所述芯片的非易失性存储器中;
在所述芯片上电时,所述检测电路重新检测所述至少两个接触点之间的互联信息,获得评估数据信息;
所述检测电路根据所述参考数据信息和所述评估数据信息,判断所述芯片是否受到侵入式攻击。
在本发明中,两个以上接触点从芯片的内部延伸至芯片的外表面,导电介质附着在芯片的外表面,检测电路集成在芯片内部,用于检测至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片的非易失性存储器中,当芯片上电后,重新检测所述至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片是否受到侵入式攻击。这样,一旦导电介质被破坏,所述至少两个接触点之间的互联信息就会被破坏,芯片在上电时重新检测得到的评估数据信息就会与参考数据信息有所不同,于是可以自检测出芯片导电介质已经遭到破坏,芯片就会向系统发出报警信号,从而可以防御任何需要破坏封装才能实施的攻击有段。此外,在本发明中,对于不同的芯片,导电介质的特性、剂量、形状、位置、数量都可以不同,导致不同的装置中芯片内部保存的数据不同,所以,即使攻击者使用某种攻击手段获得了一个芯片的内部数据,对攻击者攻击另外一个芯片也是没有任何帮助的,这样就提高了实施攻击的难度,从而保障了芯片的高安全性。
具体实施方式
下面结合说明书附图和具体实施方式对本发明作进一步的描述。
如图1所示,为本发明抗侵入式攻击的芯片第一实施例的结构示意图,该抗侵入式攻击的芯片11可以包括:两个以上接触点、导电介质12和检测电路111,检测电路111集成在芯片11内部;两个以上接触点从芯片11的内部延伸至芯片11的外表面;两个以上接触点包括:接触点201、202、203、204…20n,n为大于或等于2的自然数。导电介质12附着在芯片11的外表面;检测电路111用于检测两个以上接触点中的至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片11的非易失性存储器中,当芯片11上电后,重新检测至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片11是否受到侵入式攻击。可选地,至少两个接触点之间的互联信息可以包括下列中的至少一个:至少两个接触点之间的电阻值、至少两个接触点之间的电流值、信号流经至少两个接触点之间的延时值和至少两个接触点之间是否有电气连接。可选地,非易失性存储器可以包括但不限于:只读存储器(Read-Only Memory,以下简称:ROM)、闪存(Flash Memory,以下简称:FLASH)、电可擦可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,以下简称:EEPROM)和一次可编程存储器(One Time Programmable Read-Only Memory,以下简称,OTPROM)。
在本实施例中,两个以上接触点从芯片11的内部延伸至芯片11的外表面;导电介质12附着在芯片11的外表面;检测电路111集成在芯片11内部,用于检测至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片11的非易失性存储器中,当芯片11上电后,重新检测所述至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片11是否受到侵入式攻击,这样,一旦导电介质被破坏,所述至少两个接触点之间的互联信息就会被改变,芯片发现受到攻击后,会自动报警,从而提高了侵入式攻击的实施难度,保障了芯片的高安全性。
可选地,导电介质具体可以为导电胶、导电漆等等可以附着在芯片表面的导电介质。
可选地,导电介质12覆盖全部或部分接触点。导电介质12也可以不覆盖任何接触点,导电介质覆盖的接触点应大于或等于零。例如,如图1a所示的结构示意图表示导电介质部分覆盖接触点,包括:接触点201、202、203、204…20n,导电介质12附着在芯片11的正表面上,其中,被导电介质12覆盖的接触点也分为全部覆盖的接触点和部分覆盖的接触点,全部覆盖的接触点有接触点202,部分覆盖的接触点有接触点201,还有没有覆盖的接触点有接触点203;图1b所示为图1a所示的结构示意图中A-A位置横截面的结构示意图。由于导电介质12的存在,被导电介质12覆盖的接触点电气相连,所谓电气相连是指产品内部不同点之间在电学特性上连接在一起的状态,例如,接触点201和接触点202之间存在电气相连,二者之间可以有电流流过。导电介质12没有覆盖的接触点之间没有电气相连,例如,接触点203和接触点204,二者之间不会有电流流过。导电介质12没有覆盖的接触点与被导电介质12覆盖的接触点之间也没有电气相连,例如,接触点203和接触点204与接触点201之间不存在电气相连,接触点203和接触点204与接触点202之间也不存在电气相连。
可选地,如图2所示,为本发明抗侵入式攻击的芯片第二实施例的结构示意图,该抗侵入式攻击的芯片11可以包括:两个以上接触点、导电介质12、检测电路111和绝缘介质15,检测电路111集成在芯片11内部;两个以上接触点从芯片11的内部延伸至芯片11的外表面;两个以上接触点包括:接触点201、202、203、204…20n。导电介质12附着在芯片11的外表面;检测电路111用于检测至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片11的非易失性存储器中,当芯片11上电后,重新检测所述至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片11是否受到侵入式攻击;绝缘介质15用于覆盖在导电介质12上。在导电介质12上再覆盖一层绝缘介质15的目的是,绝缘介质可以混淆导电介质,这样可以提高攻击的壁垒,增加实施攻击的难度。可选地,绝缘介质可以为绝缘胶。
可选地,检测电路还用于检测重新选择的至少两个接触点之间的互联信息,得到新的参考数据信息,将新的参考数据信息存储在芯片的非易失性存储器中,当芯片上电后,重新检测重新选择的至少两个接触点之间的互联信息,得到新的评估数据信息,根据新的参考数据信息和新的评估数据信息,判定芯片是否收到侵入式攻击。检测电路所具有的以上这种动态选择功能可以通过硬件电路、中央处理器(Central Processing Unit,以下简称:CPU)、或微控制单元(Micro Control Unit,以下简称:MCU)实现。如图3所示,为本发明抗侵入式攻击的芯片第一实施例中图1所示的检测电路的工作示意图。检测电路检测重新选择的至少两个接触点之间的互联信息应该是在预设检测次数之后或预定时长之后或特权模式下重新选择至少两个接触点,并检测这些接触点之间的互联信息;可以选择两个接触点、三个接触点或者更多直至选择所有接触点;预设检测次数可以大于或等于1次。例如,当芯片11的外表面具有超过两个接触点时,首先,设置检测电路111检测接触点201和接触点202之间的互联信息并保存;选择预设检测次数为10次;那么,检测10次以后,检测电路111会重新选择至少两个接触点,可以选择接触点203和接触点204并检测接触点203和接触点204之间的互联信息,更新数据之后并保存。芯片进入特权模式后,例如:管理员权限,也可以重新选择接触点。当芯片11上电时,检测电路111重新检测接触点203和接触点204之间的互联信息,获得评估数据信息;最后,根据参考数据信息与评估数据信息,判断芯片11是否受到侵入式攻击;当参考数据信息和评估数据信息的相同度小于80%时,可以判断出芯片受到侵入式攻击,这时芯片就会向系统发出报警信号,表明芯片已经遭到了侵入式攻击。
可选地,如图4所示,为本发明抗侵入式攻击的芯片第三实施例的结构示意图,该抗侵入式攻击的芯片可以包括:两个以上接触点、导电介质12、检测电路111和芯片载体13,检测电路111集成在芯片11内部;两个以上接触点从芯片11的内部延伸至芯片11的外表面;两个以上接触点包括:接触点201、202、203、204…20n。导电介质12附着在芯片11的外表面;检测电路111用于检测至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片11的非易失性存储器中,当芯片11上电后,重新检测至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片11是否受到侵入式攻击;芯片载体13用于在封装芯片11时固定芯片11。可选地,芯片载体具体为:印刷电路板(Printed circuit board,以下简称,PCB板)。如果导电介质12附着在芯片11的下表面,那应该在芯片11还没有固定在芯片载体13之前进行。
可选地,如图5所示,为本发明抗侵入式攻击的芯片第四实施例的结构示意图,该抗侵入式攻击的芯片可以包括:两个以上接触点、导电介质12、检测电路111、芯片载体13和封装外壳材料14,检测电路111集成在芯片11内部;两个以上接触点从芯片11的内部延伸至芯片11的外表面;两个以上接触点包括:接触点201、202、203、204…20n。导电介质12附着在芯片11的外表面;检测电路111用于检测两个以上接触点中的至少两个接触点之间的互联信息,得到参考数据信息,将参考数据信息存储在芯片11的非易失性存储器中,当芯片11上电后,重新检测至少两个接触点之间的互联信息,得到评估数据信息,根据参考数据信息和评估数据信息,判定芯片11是否受到侵入式攻击;芯片载体13用于在封装芯片11时固定芯片11;封装外壳材料14用于封装芯片11。封装外壳材料14和芯片载体13共同将芯片11包裹在二者组成的壳内,保护芯片免于物理和化学伤害。
如图6所示,为本发明抗侵入式攻击的芯片的制作方法实施例的流程示意图,该抗侵入式攻击的芯片的制作方法可以包括如下步骤:
步骤61、将检测电路集成在芯片内部;
步骤62、设置至少两个接触点,从芯片内部延伸至芯片的外表面;
可选地,接触点可以位于芯片的正表面、侧表面、或正表面和侧表面,如图7所示,为本发明抗侵入式攻击的芯片的制作方法实施例中图6所示的接触点位于芯片侧表面的结构示意图,图7a所示为芯片的正表面和侧表面同时具有接触点的实施例的正表面示意图,芯片11正表面有接触点201、202、203,…,20n。图7b是图7a所示实施例的A-A位置的侧表面示意图,芯片11侧表面有接触点301、302,…,30n。导电介质12同时覆盖了芯片11的部分正表面和部分侧表面。由于导电介质12的存在,被导电介质12覆盖的接触点电气相连,例如,接触点202和接触点302之间电气相连。导电介质12没有覆盖的接触点之间没有电气相连,例如,接触点201、接触点203和接触点301之间不存在电气相连。导电介质12没有覆盖的接触点与被导电介质12覆盖的接触点之间也没有电气相连,例如,接触点203和接触点302之间不存在电气相连。
步骤63、将导电介质附着在芯片的外表面。
可选地,将导电介质附着在芯片的外表面具体为:将导电介质附着在芯片的上表面、侧表面、下表面、或上表面、侧表面和下表面的任意组合。上表面、侧表面和下表面的任意组合可以包括四种情况,分别为:上表面和侧表面组合,上表面和下表面组合,侧表面和下表面组合,以及上表面、侧表面和下表面的组合。
可选地,将导电介质附着在芯片的外表面具体为:将不同形状的导电介质附着在芯片的外表面。
可选地,将导电介质附着在芯片的外表面具体为:将不同剂量的导电介质附着在芯片的外表面。
可选地,将导电介质附着在芯片的外表面具体为:将至少一块导电介质附着在芯片的外表面。
如图8所示,为本发明抗侵入式攻击的芯片的制作方法实施例中图6所示的导电介质的形状示意图,导电介质12在芯片11表面的形状、数量、剂量和位置是完全不同的,如图8a和图8b所示为导电介质12覆盖部分接触点、图8c所示为导电介质12覆盖全部接触点,如图8a、图8b和图8c所示的导电介质12的形状、位置和剂量都不同;图8d所示为两块导电介质12覆盖部分接触点;当然,导电介质也可以超过两块,可以为三块甚至更多,在此不再赘述。在批量生产中,芯片的模具是固定不变的,所以用同一模具生产的所有芯片都是一样的,这样,攻击者获得一片芯片工作过程中的机密信息,那就相当于知道了这一批芯片的机密信息,这就对芯片的安全性造成了极大的威胁,本发明里利用导电介质形状、数量、剂量和位置的不同,使得每一个芯片和导电介质的组合都是一个独一无二的组合,这样即使其中一个芯片遭受到攻击,也不会影响其他芯片的安全性,提高了实施攻击的壁垒,增加实施攻击的难度。
可选地,导电介质具体为各向异性导电胶或各向同性导电胶。其中,各向异性导电胶有:YC-01型导电胶(久七)、SONY导电胶(SONY)等;各向同性导电胶有:E-005CS型导电胶(长先化工)、Treebond3301F型导电胶(日本三键公司)、Easiman3885型导电胶(美国伊士曼化工)等。
可选地,导电介质具体为:透明导电介质或不透明导电介质。透明导电介质有:HC-77型导电胶(华创)、4342型导电胶(正量新材料)等;不透明导电介质有:XG6166型导电胶(鑫冠橡胶)等。
可选地,导电介质的电导率不同。
可选地,针对不同的芯片,所使用的导电介质的特性也不相同,例如:电导率、各向异性、各向同性以及透明和不透明,这些因素的差异性同时造就了每一个芯片和导电介质的组合的独一无二性。
在本实施例中,将检测电路集成在芯片内部,设置至少两个接触点,从芯片内部延伸至芯片的外表面,将导电介质附着在芯片的外表面,这样,一旦导电介质被破坏,至少两个接触点之间的互联信息就会被改变,芯片发现受到攻击后,会自动报警,本发明抗侵入式攻击的芯片可以提高侵入式攻击的难度,从而保障芯片的高安全性。
可选地,在步骤63之后,还可以包括步骤64:
步骤64、将绝缘介质覆盖在导电介质上。
将绝缘介质覆盖在导电介质上的目的是,绝缘介质可以混淆导电介质,这样可以提高攻击的壁垒,增加实施攻击的难度。
可选地,在步骤63之后或者步骤64之后,还可以包括:将芯片固定在芯片载体上进行压焊;
可选地,芯片载体具体为:PCB板。
可选地,芯片载体具体为:封装的引线框。
可选地,在步骤63之后,还可以包括:用封装外壳材料封装芯片。
封装外壳材料和芯片载体共同将芯片包裹在二者组成的壳内,保护芯片免于物理和化学伤害。
可选地,在步骤64之后,还可以包括:用封装外壳材料封装芯片。
如图9所示,为本发明抗侵入式攻击的芯片进行侵入式攻击检测的方法实施例的流程示意图,该方法可以包括如下步骤:
步骤91、检测电路检测至少两个接触点之间的互联信息,获得参考数据信息,保存在芯片的非易失性存储器中;
可选地,至少两个接触点之间的互联信息包括下列中的至少一个:至少两个接触点之间的电阻值、至少两个接触点之间的电流值、信号流经至少两个接触点之间的延时值和至少两个接触点之间是否有电气连接。
可选地,非易失性存储器包括但不限于ROM、FLASH、EEPROM和OTPROM。
步骤92、在芯片上电时,检测电路重新检测所述至少两个接触点之间的互联信息,获得评估数据信息;
步骤93、检测电路根据参考数据信息和评估数据信息,判断芯片是否受到侵入式攻击。
可选地,检测电路根据参考数据信息和评估数据信息,判断芯片是否受到侵入式攻击具体为:根据参考数据信息中至少两个接触点之间的电阻值与评估数据信息中所述至少两个接触点之间的电阻值的对比结果,判断芯片是否受到侵入式攻击;根据参考数据信息中至少两个接触点之间的电流值与评估数据信息中所述至少两个接触点之间的电流值的对比结果,判断芯片是否受到侵入式攻击;根据参考数据信息中信号流经至少两个接触点之间的延时值与评估数据信息中信号流经所述至少两个接触点之间的延时值的对比结果,判断芯片是否受到侵入式攻击;根据参考数据信息中至少两个接触点之间是否电气相连与评估数据信息中所述至少两个接触点之间是否电气相连的对比结果,判断芯片是否受到侵入式攻击。
可选地,判断芯片是否受到侵入式攻击可以包括:当评估数据信息与参考数据信息的相同度小于预定阈值时,判定芯片受到侵入式攻击。例如,预定阈值为80%,也就是说,当参考数据信息和评估数据信息的相同度小于80%时,可以判断出芯片受到侵入式攻击,这时芯片就会向系统发出报警信号,表明芯片已经遭到了侵入式攻击。
可选地,检测电路检测重新选择的至少两个接触点之间的互联信息,得到新的参考数据信息,将新的参考数据信息存储在芯片的非易失性存储器中,当芯片上电后,重新检测所述重新选择的至少两个接触点之间的互联信息,得到新的评估数据信息,根据新的参考数据信息和新的评估数据信息,判定芯片是否收到侵入式攻击。检测电路所具有的上述这种动态选择功能可以通过硬件电路、CPU、或MCU实现。检测电路检测所述重新选择的至少两个接触点之间的互联信息应该是在预设检测次数之后或预定时长之后或特权模式下重新选择至少两个接触点,并检测这些接触点之间的互联信息;可以选择两个接触点、三个接触点或者更多直至选择所有接触点;预设检测次数可以大于或等于1次。特权模式,例如:可以为管理员权限。
如图10所示,为本发明抗侵入式攻击的芯片进行侵入式攻击检测的方法实施例中图9所示的流程示意图中的芯片是否受到侵入式攻击的判断方法的说明示意图,以图1所示的抗侵入式攻击的芯片为例进行说明,接触点201和接触点202之间电气相连,接触点203和接触点204之间没有电气相连。接触点201与接触点203、以及接触点201与接触点204之间没有电气相连,接触点202与接触点203、以及接触点202与接触点204之间也没有存在电气相连。电气相连用1表示,没有电气相连用0表示。首先,检测电路111检测位于芯片11的外表面的至少两个接触点之间的互联信息,获得参考数据信息,保存在芯片11的非易失性存储器中。例如,测量接触点201和接触点202之间的评估函数值,分别是电阻值为1Ω,电流值1A、延时值1S和电气相连1;测量接触点203和接触点204之间的评估函数值,分别是电阻值为∞Ω,电流值0A、延时值∞S和没有电气相连0;将上述评估函数值保存并获得参考数据信息,如图10a所示。然后,在芯片上电时,检测电路重新检测所述至少两个接触点之间的互联信息,获得评估数据信息。芯片正常上电工作时,检测电路重新检测这些接触点之间的评估数据,获得评估数据信息。将评估数据信息与已存储在非易失性存储器内的参考数据信息进行对比,电阻值与电阻值对比,电流值与电流值对比,延时值与延时值对比,是否电气相连之间进行对比,即可发现导电介质是否被移除了,从而判断芯片是否受到侵入式攻击。如图10b所示的评估数据信息,评估数据信息中的接触点201和接触点202之间的电流值为0.5A,而图10a所示的参考数据信息中的电流值为1A,该电流值与图10a所示的电流值是不同的,其他数据对比结果是相同的,八对数据对比结果中仅一对电流值对比结果不同,也就是说,评估数据信息与参考数据信息的相同度为87.5%,这时判断出芯片没有受到侵入式攻击。如图10c所示的评估数据信息,评估数据信息中接触点201和接触点202之间的电阻值、电流值、延时值和是否电气相连与图10a所示的参考数据信息中的接触点201和接触点202之间的数据是完全不同的,图10c所示的评估数据信息中接触点201和接触点202之间的电阻值变为∞Ω,电流值变为0A,延时值变为0S,电气相连1变为没有电气相连0,八对数据对比结果中有四对数据对比结果不同,也就是说,评估数据信息与参考数据信息的相同度为50%,这时判断出芯片受到侵入式攻击,芯片就会向系统发出报警信号。因为,一旦攻击者在拆解芯片封装或去除芯片钝化层时移除了导电介质,那么原本电气相连的接触点201和接触点202就断开了连接。此时,评估数据信息和参考数据信息的对比结果就会不同,只要评估数据信息与参考数据信息的相同度小于预定阈值,例如,预定阈值为80%,就会判断出芯片的封装遭到了破坏,芯片受到了侵入式攻击,于是芯片向系统发出报警信号。
在本实施例中,检测电路检测至少两个接触点之间的互联信息,获得参考数据信息,保存在芯片的非易失性存储器中,在芯片上电时,检测电路重新检测所述至少两个接触点之间的互联信息,获得评估数据信息,检测电路根据参考数据信息和评估数据信息,判断芯片是否受到侵入式攻击,这样,芯片在工作过程中可以自检测芯片封装是否已经遭到破坏,从而可以防御任何需要破坏封装才能实施的攻击有段。此外,使用本发明的方法,不同的芯片内部保存的参考数据表不同,所以,即使攻击者使用某种攻击手段获得了一个芯片的内部数据,对攻击者攻击另外一个芯片也是没有任何帮助的,这样就提高了实施攻击的难度,从而保障了芯片的高安全性。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。