集成电路作为整个信息产业的基础,在信息安全上有着重要和关键性的作用,这不仅表现在现代信息处理要依赖集成电路技术,更反映在集成电路本身的安全与否和被处理信息的安全息息相关。在信息安全大量采用集成电路技术的今天,人们理所当然地要问:集成电路既然是实现信息安全的重要手段,那么集成电路本身是否有安全问题?它的安全属性包含哪些内涵并会对信息安全起什么作用?我们应该如何去解决它?下面我们着重看一下集成电路安全中的几个概念和问题。
一、 集成电路是信息安全的关键技术,需从系统层面考察其安全
信息安全技术的核心就是对信息进行处理。信息处理技术的核心则是计算机技术,而究其根本是集成电路技术。
微电子技术的快速发展(摩尔定律:半导体产品的集成度每18个月翻一倍)带来的技术复杂度不断提升,其领域涵盖半导体、计算机、CAE(电子设计自动化)、材料科学、物理、化学和嵌入式软件等领域。
这种学科的综合也使得我们在考察集成电路的安全性时候不能仅仅用分析的方法去片面地、直观地评价,而是更要侧重于在系统层面,使用综合的方法,立体地、全面地认识。不但要看硬件,也要看软件,更要看软件和硬件的协同设计;不但看设计,也要看生产,还要关注整个产业链。
二、 集成电路信息安全应在架构问题上立体地考虑
信息安全采用集成电路技术后,使得信息安全得到了一些额外的保护,被保护信息的安全度也因此而有所提高。正因为如此,人们开始比较乐观地认为采用集成电路实现信息加密算法(如硬核)就会有较高的安全性。显然这种看法是片面的、甚至是非常有害的。因为仅将集成电路技术作为一种实现手段,忽略了集成电路本身的安全设计,那么被保护信息的安全仍然是一句空话。
一个信息安全芯片无外乎通过下列三种方式来实现被保护信息的处理:将信息处理算法完全用硬件实现(逻辑加密型),将信息处理算法完全用软件实现(智能型),将信息处理算法部分用硬件、部分用软件来实现(可编程逻辑加密型)。
第一种方法的优点是处理速度快,芯片的结构相对简单,缺点是:面对复杂算法的实现,它会占用比较多的逻辑电路资源,导致成本增加;其次,芯片一旦制作完成,无法再进行修改。如果出现算法泄漏,除了更换芯片之外没有其它办法,由此产生的代价是非常高的;第三,由于算法的全部信息包含在芯片的拓扑结构中,通过逆向工程的方法可以获得有关算法的内容,这显然是不能容忍的。
第二种方法克服了第一种方法的部分缺点,从实现复杂运算和算法更新的角度上看是一个很好的设计思路。如果能够解决软件代码的保密问题,那么它也是安全等级最高的方法。从复杂算法实现的角度上看,它的成本也是有竞争力的。其缺点是处理速度较低,如需要对高速数据进行处理一般需要增加额外的协处理器。
第三种方法兼有前面两种方法的优缺点。从安全的角度上看,它向攻击者提供的是算法的基本架构,而不是算法的全部,如果能够解决算法的参数不被攻破,则攻击者很难彻底破解算法。但是算法被攻破后的更新将是比较困难的一件事,因为算法的基本架构已经被固定。
综上所述,目前尚没有一种完美的方案能彻底解决芯片的安全问题。安全是要付出代价的,付出的代价越多,获得的保护也越多。与不可能付出无限的代价一样,安全也不可能是绝对的。显然,如果能够针对上述各种实现方法在安全上的弱点建立一系列有效的物理防护手段,那么可以在很大程度上解决芯片的安全问题,因为如果攻击芯片的代价很高,高于攻击者能从攻破芯片中获得的回报,攻击行动本身将失去意义。
(责任编辑:adminadmin2008)