当前位置: 主页 » 新闻资讯 » 公司新闻
[热门]金融智能卡安全不容忽视
目前主要对智能卡安全的攻击方法主要有两种:合肥安防监控一种是简易功率分析(SPA)是一种直接解释功率消耗测定值的技术,它所测定的功率消耗发生在加密操作期间。SPA能够给出关于一个设备的运行信息以及密钥信息。在SAP攻击中,攻击者直接观察一个系统的功率消耗。所消耗功率的大小随微处理器执行的指令不同而不同。由于微处理器在对DES周期、RSA运算等的不同部分执行运算时,变化很明显,故它们大的特征将可能被识别出。在较高的放大倍数下,单条指令将能够被区分开来。例如,通过揭示乘法运算与平方运算之间的差异,SPA分析将能够用于攻破RSA的实现方法。类似的,许多DES算法实现中的置换和移位过程有明显的差异,因此也可用SPA来攻破。  另一种是微分能量分析(DPA),此种方法的攻击力要比SPA强得多,而且更加难以预防。SPA攻击主要利用可见的重复采样和对芯片技术的了解来识别有关的功率波动,而DPA攻击则使用统计分析和误差修正技术,来提取与密钥有关的信息。一个完全不懂得智能技术的编程人员完全可以利用专用程序对没有DPA防范的智能卡芯片实现攻击。  执行一次DPA攻击包括两个阶段:数据采集与数据分析。DPA的数据采集可以采取前述方式,即在加密运算期间对设备的功率消耗进行采样,得到一个对时间的函数。对DPA而言,一系列使用欲破译密钥的加密运算均可被观察到。三、最新智能卡技术  在1997年,美国CryptographyResearch公司,一家一直致力于研究半体设备的加密技术安全公司,发现了当时智能卡技术存在的SPA和DPA防范问题,并向公众公布了其研究成果。1998年6月纽约时报报道了此消息,国内报纸也有相应的转载,但由于智能卡技术概念在国内尚未普及,人们没有注意此类报道。  在此之后,全球所有大的芯片以及卡片供应商都在致力于研究SPA和DPA防范技术,并取得一定的成果(具体防范技术可参考附录)。目前主要厂家提供的最新型芯片和操作系统都具有DPA和SPA防范。但是比较旧的型号产品没有此类技术,通常这类产品在国外主要使用在信息管理而非金融领域。  目前国内许多商业银行在选择智能卡产品时,片面的强调价格和操作速度,而忽略安全性。某些国内厂商为了争夺市场份额,降低成本,在芯片选择上不考虑产品的安全性,采用没有DPA和SPA安全防范的芯片,在操作系统的设计上,为了减少操作系统的容量(ROM空间的大小将影响智能卡的成本),也未增加任何DPA和SPA防范技术。国内市场出现了一个奇怪的现象,一些使用旧的型号芯片的智能卡的运行速度,比采用最新型号的芯片的运行速度要快很多,酒店智能门锁其原因就是有经验的智能卡供应商在操作系统中增加了安全防范。  由于我国目前磁条金融假卡案件的发生率与欧洲和北美市场相比相对较低。这是由于国内仅发行了一小部分的贷记卡,大量还是需要联机操作的借记卡,同时由于各种原因,国内使用金融卡的环境尚未完善,真正卡片交易远远低于与持卡人数量。因此在金融领域对于卡片的安全性观念比较淡薄,很多发卡行业在发行金融智能卡过程中总是抱着侥幸心理,强调在国内市场,并未发生通过智能卡被攻破卡片的案例。  由于我国发行的金融智能卡大部分是在脱机环境下使用,因此对于安全性应有更高的要求,虽然系统的安全性不仅仅依赖于卡片的安全性,但是其重要性是不可忽视的。从某种意义上讲,这是如同一场竞赛;对于黑客的攻击,我们应永远拥有超前的防御措施。“最好的防御就是不断进步,不断更新”。附录:  1.什么是DPA微分能量分析  微分能量分析DPA是一种新型的对智能卡以及其它安全加密设备的攻击技术。它由CryprographyResearch公司的研究人员发现http://www.ahmenkong.com。图1  显示一个完整DES操作的SPA轨迹  它利用了当今智能卡和其他加密设备的底层晶体管逻辑门电路以及所运行软件的特性,通过监视该设备的电子行为,并使用先进的数据统计分析手段,来得到该设备的保密信息(如密钥和用户的个人PIN码)。  2.DPA能量分析的物理机制  集成电路由各种晶体管构成,这些晶体管起电压控制开关的作用。当向晶体管的栅极通电或断电时,电流将流过晶体管的基极。接下来,该电流将向其它晶体管的栅极、自动感应门内部导线和其它电路负载传送电荷。电荷的运动将消耗能量,并产生电磁辐射,这两者均可从外部监测到。  为了测量一个电路的功耗,在电源输入端或接地端插入一个串联的小电阻(如50欧)。通过此电阻所分出的压降将会产生电流。装备良好的电子试验室中都备有能够对电压变化进行数字化抽样的设备,而且抽样频率可以超过1GHz、精确误差小于1%。购买一个能够以20MHz或更快的频率抽样,并向PC传送相应数据的设备所需要的开支低于400美元。  因此,各种晶体管都将产生从外部能够观测到的电子行为。由于微处理器的逻辑单元展示的是常规晶体管的开关模式,所以SPA攻击通过对能量消耗的简单监视,能够很容易地识别微处理器的运行行为的宏特征。DPA攻击则对这些数据执行更加复杂的解释工作。  3.SPA简单能量分析攻击技术  在SPA攻击中,攻击者直接观察一个系统的能量消耗。隔音门所消耗能量的大小随微处理器执行的指令不同而不同。由于微处理器在对DES周期、RSA运算等的不同部分执行运算时,变化很明显,故它们大的特征将可能被识别。在较高的放大倍数下,单条指令将能够被区分开来。例如,通过揭示乘法运算与平方运算之间的差异,SPA分析将能够用于攻破RSA的实现方法。类似地,许多DES算法实现中的置换和移位过程有明显的差异(例如,PC1置换或C和D寄存器的循环移位),因此也可用SPA来攻破。  由于SPA能够揭示执行指令的序列,故它可被用来破解加密的实现过程,而在加密过程当中,执行路径依赖于所处理的数据。4.SPA攻击技术分析DES加密过程示意图图1显示了一个典型的智能卡在执行一个DES操作时,产生的SPA轨迹。从图中可以清晰地看到DES运算过程中的16周期叠代。  图2是显示在一个DES加密操作期间,相同轨迹的第二周期叠代和第三周期叠代的细节图。此时可以看清DES操作的许多细节。摆闸例如,28位的DES密钥寄存器C和D在第二周期叠代中循环了一次(左箭头),在第三周期叠代中循环了两次(右箭头)。在图2中各周期之间的微小差异正好能够被查觉。许多这些可识别的特征是SPA所攻击的缺陷,而这些缺陷是由基于密钥数位和计算媒介的条件转移所产生的目前主要对智能卡安全的攻击方法主要有两种:一种是简易功率分析(SPA)是一种直接解释功率消耗测定值的技术,它所测定的功率消耗发生在加密操作期间。SPA能够给出关于一个设备的运行信息以及密钥信息。在SAP攻击中,攻击者直接观察一个系统的功率消耗。所消耗功率的大小随微处理器执行的指令不同而不同。由于微处理器在对DES周期、RSA运算等的不同部分执行运算时,变化很明显,故它们大的特征将可能被识别出。在较高的放大倍数下,单条指令将能够被区分开来。例如,通过揭示乘法运算与平方运算之间的差异,SPA分析将能够用于攻破RSA的实现方法。工业平开门类似的,许多DES算法实现中的置换和移位过程有明显的差异,因此也可用SPA来攻破。  另一种是微分能量分析(DPA),此种方法的攻击力要比SPA强得多,而且更加难以预防。SPA攻击主要利用可见的重复采样和对芯片技术的了解来识别有关的功率波动,而DPA攻击则使用统计分析和误差修正技术,来提取与密钥有关的信息。一个完全不懂得智能技术的编程人员完全可以利用专用程序对没有DPA防范的智能卡芯片实现攻击。  执行一次DPA攻击包括两个阶段:数据采集与数据分析。DPA的数据采集可以采取前述方式,即在加密运算期间对设备的功率消耗进行采样,得到一个对时间的函数。对DPA而言,一系列使用欲破译密钥的加密运算均可被观察到。三、最新智能卡技术  在1997年,美国CryptographyResearch公司,一家一直致力于研究半体设备的加密技术安全公司,发现了当时智能卡技术存在的SPA和DPA防范问题,并向公众公布了其研究成果。1998年6月纽约时报报道了此消息,国内报纸也有相应的转载,但由于智能卡技术概念在国内尚未普及,人们没有注意此类报道。  在此之后,全球所有大的芯片以及卡片供应商都在致力于研究SPA和DPA防范技术,并取得一定的成果(具体防范技术可参考附录)。目前主要厂家提供的最新型芯片和操作系统都具有DPA和SPA防范。但是比较旧的型号产品没有此类技术,通常这类产品在国外主要使用在信息管理而非金融领域。  目前国内许多商业银行在选择智能卡产品时,片面的强调价格和操作速度,而忽略安全性。某些国内厂商为了争夺市场份额,降低成本,在芯片选择上不考虑产品的安全性,采用没有DPA和SPA安全防范的芯片,在操作系统的设计上,为了减少操作系统的容量(ROM空间的大小将影响智能卡的成本),也未增加任何DPA和SPA防范技术。国内市场出现了一个奇怪的现象,一些使用旧的型号芯片的智能卡的运行速度,比采用最新型号的芯片的运行速度要快很多,其原因就是有经验的智能卡供应商在操作系统中增加了安全防范。  由于我国目前磁条金融假卡案件的发生率与欧洲和北美市场相比相对较低。这是由于国内仅发行了一小部分的贷记卡,大量还是需要联机操作的借记卡,同时由于各种原因,国内使用金融卡的环境尚未完善,真正卡片交易远远低于与持卡人数量。因此在金融领域对于卡片的安全性观念比较淡薄,很多发卡行业在发行金融智能卡过程中总是抱着侥幸心理,强调在国内市场,并未发生通过智能卡被攻破卡片的案例。  由于我国发行的金融智能卡大部分是在脱机环境下使用,因此对于安全性应有更高的要求,虽然系统的安全性不仅仅依赖于卡片的安全性,但是其重要性是不可忽视的。从某种意义上讲,这是如同一场竞赛;对于黑客的攻击,我们应永远拥有超前的防御措施。“最好的防御就是不断进步,不断更新”。附录:  1.什么是DPA微分能量分析  微分能量分析DPA是一种新型的对智能卡以及其它安全加密设备的攻击技术。它由CryprographyResearch公司的研究人员发现。图1  显示一个完整DES操作的SPA轨迹  它利用了当今智能卡和其他加密设备的底层晶体管逻辑门电路以及所运行软件的特性,通过监视该设备的电子行为,并使用先进的数据统计分析手段,来得到该设备的保密信息(如密钥和用户的个人PIN码)。  2.DPA能量分析的物理机制  集成电路由各种晶体管构成,这些晶体管起电压控制开关的作用。当向晶体管的栅极通电或断电时,电流将流过晶体管的基极。接下来,该电流将向其它晶体管的栅极、内部导线和其它电路负载传送电荷。电荷的运动将消耗能量,并产生电磁辐射,这两者均可从外部监测到。  为了测量一个电路的功耗,在电源输入端或接地端插入一个串联的小电阻(如50欧)。通过此电阻所分出的压降将会产生电流。装备良好的电子试验室中都备有能够对电压变化进行数字化抽样的设备,而且抽样频率可以超过1GHz、精确误差小于1%。购买一个能够以20MHz或更快的频率抽样,并向PC传送相应数据的设备所需要的开支低于400美元。  因此,各种晶体管都将产生从外部能够观测到的电子行为。由于微处理器的逻辑单元展示的是常规晶体管的开关模式,所以SPA攻击通过对能量消耗的简单监视,能够很容易地识别微处理器的运行行为的宏特征。DPA攻击则对这些数据执行更加复杂的解释工作。http://www.ahlinbo.com  3.SPA简单能量分析攻击技术  在SPA攻击中,攻击者直接观察一个系统的能量消耗。所消耗能量的大小随微处理器执行的指令不同而不同。由于微处理器在对DES周期、RSA运算等的不同部分执行运算时,变化很明显,故它们大的特征将可能被识别。在较高的放大倍数下,单条指令将能够被区分开来。例如,通过揭示乘法运算与平方运算之间的差异,SPA分析将能够用于攻破RSA的实现方法。类似地,许多DES算法实现中的置换和移位过程有明显的差异(例如,PC1置换或C和D寄存器的循环移位),因此也可用SPA来攻破。  由于SPA能够揭示执行指令的序列,故它可被用来破解加密的实现过程,而在加密过程当中,执行路径依赖于所处理的数据。4.SPA攻击技术分析DES加密过程示意图图1显示了一个典型的智能卡在执行一个DES操作时,产生的SPA轨迹。从图中可以清晰地看到DES运算过程中的16周期叠代。  图2是显示在一个DES加密操作期间,相同轨迹的第二周期叠代和第三周期叠代的细节图。此时可以看清DES操作的许多细节。例如,28位的DES密钥寄存器C和D在第二周期叠代中循环了一次(左箭头),在第三周期叠代中循环了两次(右箭头)。在图2中各周期之间的微小差异正好能够被查觉。许多这些可识别的特征是SPA所攻击的缺陷,而这些缺陷是由基于密钥数位和计算媒介的条件转移所产生的