智能卡微控制器的静态分析
发布时间:2008/11/22 0:00:00 访问次数:390
(1)保护:半导体技术
芯片结构的尺寸(引线宽度、晶体管的大小等)逼近目前技术可能达到的极限,通常结构宽度约在1至0.35 μm的范围内,参看图片1。从其本身来说在技术上没有什么不寻常,然而在硅表面的晶体管最高密度目前可 用标准的平版印刷制造过程来达到。这种非常精细的技术使得采用分析的方法几乎不可能从芯片析取任何信 息。因此,1flm结构尺寸的半导体技术在目前被认为是安全的,可以确信这一尺寸在未来还将缩小。
图1 照片中(放大了1 000倍)比较了人的头发与智能卡微控制器的半导体结构(gieseeke&devrient公司 提供)
(2)保护:芯片设计
“标准单元”经常用于半导体集成电路的设计之中,它们可含有处理器的核心单元或特殊类型的存储器。 标准单元的采用,使得半导体制造商得以在高质量水平上生产大量不同类型的芯片。这一过程已经被用于安 全性不是关键的元件的大量生产,不能被用于智能卡微控制器。这是因为标准单元的设计和功能是众所周知 的,因此采用它们将给潜在攻击者提供如此之多的信息。智能卡微控制器的功能元件应当按有关应用而特殊 开发,并不做其他目的之用。
(3)保护:哑结构
在芯片上采用哑结构是专家们经常争议的主题,哑结构是半导体的不具有任何真实功能的元件,目的在于混淆与误导攻击者。其安全性纯粹在於保守该结构的存在与位置的秘密。哑元件可以受到 监测,使得能检查出它们的任何改变并用来切断芯片电源,哑结构的主要不利之处在于它们在芯片上占据了 额外的空间。
(4)保护:芯片的总线
芯片的所有总线把处理器连接到三种不同类型的存储器(rom,eeprom和ram)上,但都不引出到芯片之外 ,因而不能直接与这些总线相连。对于一个攻击者来说,不可能从微控制器的地址、数据或控制总线抽头去 影响总线信号以便读出存储器的内容。此外,芯片上的总线以静态或芯片专有的方式被搅乱排列,使得从外 部无法识别各条总线的功能。
(5)保护:存储器设计
大多数程序的存储介质是rom,rom的内容可用一台光学显微镜逐位读(看)出,把这些位组装成字节,排 列字节以获得完整的rom代码并不是特别困难的事。为了严密地防止这种类型的分析,rom不是位于芯片的顶 部表面,即最容易接触到的那一层。相反,它在硅片的低层中,这样就阻止了光学分析。
然而,如果把芯片上下颠倒地粘在托架上而把背面磨光,则仍有可能读出rom的内容。因此,在智能卡微控 制器中只使用离子注入的rom,这样的rom的内容既不能用可见光也不能用紫外光读出。这也极大地防止了用 选择性蚀刻半导体的方法,避免使rom的内容再次可见。
(6)防护:保护层
在芯片工作时对它电位的进行分析是一种威胁,这种技术可用来测量晶体上很小区域的电荷电势(电压) ,利用这些信息,就有可能在芯片工作时推导出ram的内容。为此,在存储单元的顶部要设计上金属化的导 流层以有效地防止这种分析。如果这些金属层用化学腐蚀的方法去掉,芯片将不能正常工作,因为这些层是 给芯片分配供电电源的。
此外,芯片可以利用整个芯片表面或需要特殊保护的区域(如过低频率检测器)的顶部弯曲部分作导流结 构,很容易监测这种结构的电阻,或者把它们结合到芯片的功能部件中去,使得在它们有危险时,芯片立即 停止工作。
也可设想采用不透明的保护层,它的完整性可以连续地由光敏晶体管监测,后者是很容易实现的半导体器 件。如果该层被去掉将立即被检出,而芯片将拒绝任何工作。
(7)攻与防:易失存储器的读出
ram的数据内容将随掉电而丢失,然而如果存储单元冷冻至-60℃时,这种情况就不会发生。若ram所存数 据保持长时间不变,其内容也不一定就丢失。这一效应的背景在petergutmans的一篇主题为存储介质的安全 擦除[cutmann 96]的论文中有所叙述。因此,秘密密钥不能保存在ram中是绝对必要的,应当立刻把它们 擦除掉或用其他数值改写,这样减少了对留在ram中秘密密钥进行跟踪的风险,同时也削弱了立足于冷冻或 火烧以固定ram内容的攻击。
读出bam单元的内容是极其困难的,因为它需要检测所包含的晶体管的开关状态。然而,使用高级电子显微 镜和特殊的增强反差的方法,确实能够析取出存在ram单元中的数据,参看图片2。为此的一个先决条件是去 掉钝化层和钝化层之下的金属化层,它们严密地保护ram以防止这种类型的攻击,去掉金属化层不可避免地 会引起rom单元受到破坏,因为它们的功能被部分地包含在这些层中。
图2 几个ram单元的照片,放大了3 000倍,没有附加金属层的保护。照片下图所示为同一ram单元的电位 ,是在
(1)保护:半导体技术
芯片结构的尺寸(引线宽度、晶体管的大小等)逼近目前技术可能达到的极限,通常结构宽度约在1至0.35 μm的范围内,参看图片1。从其本身来说在技术上没有什么不寻常,然而在硅表面的晶体管最高密度目前可 用标准的平版印刷制造过程来达到。这种非常精细的技术使得采用分析的方法几乎不可能从芯片析取任何信 息。因此,1flm结构尺寸的半导体技术在目前被认为是安全的,可以确信这一尺寸在未来还将缩小。
图1 照片中(放大了1 000倍)比较了人的头发与智能卡微控制器的半导体结构(gieseeke&devrient公司 提供)
(2)保护:芯片设计
“标准单元”经常用于半导体集成电路的设计之中,它们可含有处理器的核心单元或特殊类型的存储器。 标准单元的采用,使得半导体制造商得以在高质量水平上生产大量不同类型的芯片。这一过程已经被用于安 全性不是关键的元件的大量生产,不能被用于智能卡微控制器。这是因为标准单元的设计和功能是众所周知 的,因此采用它们将给潜在攻击者提供如此之多的信息。智能卡微控制器的功能元件应当按有关应用而特殊 开发,并不做其他目的之用。
(3)保护:哑结构
在芯片上采用哑结构是专家们经常争议的主题,哑结构是半导体的不具有任何真实功能的元件,目的在于混淆与误导攻击者。其安全性纯粹在於保守该结构的存在与位置的秘密。哑元件可以受到 监测,使得能检查出它们的任何改变并用来切断芯片电源,哑结构的主要不利之处在于它们在芯片上占据了 额外的空间。
(4)保护:芯片的总线
芯片的所有总线把处理器连接到三种不同类型的存储器(rom,eeprom和ram)上,但都不引出到芯片之外 ,因而不能直接与这些总线相连。对于一个攻击者来说,不可能从微控制器的地址、数据或控制总线抽头去 影响总线信号以便读出存储器的内容。此外,芯片上的总线以静态或芯片专有的方式被搅乱排列,使得从外 部无法识别各条总线的功能。
(5)保护:存储器设计
大多数程序的存储介质是rom,rom的内容可用一台光学显微镜逐位读(看)出,把这些位组装成字节,排 列字节以获得完整的rom代码并不是特别困难的事。为了严密地防止这种类型的分析,rom不是位于芯片的顶 部表面,即最容易接触到的那一层。相反,它在硅片的低层中,这样就阻止了光学分析。
然而,如果把芯片上下颠倒地粘在托架上而把背面磨光,则仍有可能读出rom的内容。因此,在智能卡微控 制器中只使用离子注入的rom,这样的rom的内容既不能用可见光也不能用紫外光读出。这也极大地防止了用 选择性蚀刻半导体的方法,避免使rom的内容再次可见。
(6)防护:保护层
在芯片工作时对它电位的进行分析是一种威胁,这种技术可用来测量晶体上很小区域的电荷电势(电压) ,利用这些信息,就有可能在芯片工作时推导出ram的内容。为此,在存储单元的顶部要设计上金属化的导 流层以有效地防止这种分析。如果这些金属层用化学腐蚀的方法去掉,芯片将不能正常工作,因为这些层是 给芯片分配供电电源的。
此外,芯片可以利用整个芯片表面或需要特殊保护的区域(如过低频率检测器)的顶部弯曲部分作导流结 构,很容易监测这种结构的电阻,或者把它们结合到芯片的功能部件中去,使得在它们有危险时,芯片立即 停止工作。
也可设想采用不透明的保护层,它的完整性可以连续地由光敏晶体管监测,后者是很容易实现的半导体器 件。如果该层被去掉将立即被检出,而芯片将拒绝任何工作。
(7)攻与防:易失存储器的读出
ram的数据内容将随掉电而丢失,然而如果存储单元冷冻至-60℃时,这种情况就不会发生。若ram所存数 据保持长时间不变,其内容也不一定就丢失。这一效应的背景在petergutmans的一篇主题为存储介质的安全 擦除[cutmann 96]的论文中有所叙述。因此,秘密密钥不能保存在ram中是绝对必要的,应当立刻把它们 擦除掉或用其他数值改写,这样减少了对留在ram中秘密密钥进行跟踪的风险,同时也削弱了立足于冷冻或 火烧以固定ram内容的攻击。
读出bam单元的内容是极其困难的,因为它需要检测所包含的晶体管的开关状态。然而,使用高级电子显微 镜和特殊的增强反差的方法,确实能够析取出存在ram单元中的数据,参看图片2。为此的一个先决条件是去 掉钝化层和钝化层之下的金属化层,它们严密地保护ram以防止这种类型的攻击,去掉金属化层不可避免地 会引起rom单元受到破坏,因为它们的功能被部分地包含在这些层中。
图2 几个ram单元的照片,放大了3 000倍,没有附加金属层的保护。照片下图所示为同一ram单元的电位 ,是在
上一篇:智能卡在实体水平上的攻击