对于加密芯片的选择,我们要从三个方面考虑:芯片平台、芯片操作系统安全性、可行性加密方案。
1.芯片平台的选择
目前嵌入式加密行业内存在两大阵营,一个是传统的逻辑加密芯片,采用的IIC接口,其原理是EEPROM外围,加上硬件保护电路,内置某种算法;另外一个是采用智能卡芯片平台,充分利用智能卡芯片本身的高安全性来抗击外部的各种攻击手段。逻辑加密芯片本身的防护能力很弱,大多数的解密公司都可以轻松**,已经逐步被淘汰。取而代之的是被证明最好的智能卡平台。为提高智能卡芯片高安全性,要求选用的智能卡芯片具有国际安全认证委员会的EAL4+以上的芯片,否则安全性也难以达到要求。凌科芯安公司的LKT系列加密芯片完全符合这个要求。
2.芯片操作系统的安全性
在确定智能卡芯片平台的前提下,需要考虑的是芯片操作系统的安全性,凌科芯安的LKCOS操作系统,经过了权威部门的严格检测,具有极高的安全性,不存在安全漏洞。而未经过PBOC认证的加密芯片系统是无法具有高安全性的。此外,凌科芯安的LKCOS对芯片内部资源可以进行有效的管理,同时对底层接口做了大量切实有效的防护,保证盗版商无法从芯片操作系统来攻击或**。这一点非常重要,某些采用智能卡芯片平台的加密芯片只是提供了算法下载的接口,对芯片资源管理和接口的底层防护几乎没有做任何的处理,那么,盗版商是可以作为漏洞来进行攻击的。
3.加密方案的选择
传统的加密芯片,都是采用算法认证的方案,他们声称加密算法如何复杂,如何难以**,却没有考虑到算法认证方案本身存在极大的安全漏洞。我们清楚的知道,单片机是一个不安全的载体,对于盗版商而言甚至是完全透明的。做算法认证势必要在单片机内部提前写入密钥或密码,每次认证后给单片机一个判断标志,作为单片机执行的一个判断依据,那么盗版商就可以轻松抓住这一点进行攻击,模拟给出单片机一个信号,轻松绕过加密芯片,从而达到**的目的。如果要**芯片内部数据,那么通过传统的剖片、紫外光、调试端口、能量分析等多种手段,都可以**。
采用智能卡芯片平台的加密芯片,本身就可以有效防护这些攻击手段,将MCU中的部分代码或算法植入到加密芯片内部,在加密芯片内部来执行这些程序,使得加密芯片内部的程序代码成为整个MCU程序的一部分,从而达到加密的目的。因为MCU内部的程序不完整,即便被盗版了,由于缺少关键代码,也无法进行复制,那么,选择什么样的代码或程序放入到加密芯片内部,就是考验MCU编程者的功力了,尽可能地多植入程序并增加算法的强度,就可以有效防止被破译的可能。LKT4200 32位的智能卡芯片平台可以解决上述所有问题,甚至在芯片内部做浮点运算都是没有问题的。
因此我们建议,选择加密芯片,首选智能卡芯片平台,更要选择32位的智能卡芯片平台。 |