微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > FPGA和CPLD > 针对FPGA实现安全的系统内编程功能

针对FPGA实现安全的系统内编程功能

时间:09-03 来源:互联网 点击:
安全ISP的完整解决方案

能充分保障器件及其编程安全的完整解决方案必须能抗衡这些严峻的安全问题。这样的解决方案必须包含如下要素:  

*安全的基础构架。Flash FPGA具非挥发性、上电即行和单芯片等特性,在芯片上拥有一切所需的非挥发性内存,在锁定后也很安全。
*AES (先进加密系统) 技术。必须采用先进的加密技术确保编程位流的安全传输。
*信息验证代码 (MAC)。必须在安全位流传输中采用MAC验证来确保信息在传输时没被更改。
*非挥发性内存/FlashROM (FROM)。FPGA板上的非挥发性FROM寄存器可存储键和标识,以实现安全ISP的控制和序列化处理。

AES加密系统

先进加密系统 (AES) - 美国联邦信息处理标准197 (AES-FIPS 197) 是美国国家标准技术研究院 (NIST) 最新颁布的加密标准。AES算法能够使用128、192和256位的加密键来实现128位数据块的加密和解密,从而保护电子数据。AES算法替代了原本安全性较低的DES和3DES算法。AES-128能在多达3.4 * 1038个独特密码键中任挑一个来加密位流。这样,每秒能破解一百万个加密键并可用于设计的精密黑客程序 (这已是非常高的并发算法能力了) 也需要1 * 1025年(即千万个万亿年) 才能找到AES-128生成的那个加密键。

信息验证代码 (MAC) 的目的是检测位流在传输过程中有否被更改。如果更改并非恶意,如由传输出现的一些问题引起,接收端可以检测得到并请求重新传送。如果更改是恶意的,MAC检测出的改变将拒绝由攻击者更改的信息被接受。从概念上讲,这系统颇为简单。发送端和接收端共享一个加密键。接收端利用共享的加密键计算接收信息的MAC。如果计算出来的MAC与接收到的MAC不匹配,说明信息在传输过程中被更改。系统软件于是会拒绝该位流并请求重新传输。

FROM

FlashROM (FROM) 是安全ISP解决方案的一个关键组件。作为非挥发性板级数据存储器,FROM存储着诸如加密键和独特设备标识之类的宝贵资源。FPGA通常采用的构架,是让FROM和FPGA结构能独立地进行编程,容许FROM在毋须更改FPGA核心结构的情况下也可以更新。为了保证FROM内容的安全性, FROM只允许采用JTAG编程;并不能通过内核来更新。但是为支持某些应用,尤其是依赖于独特器件标识 (序列化) 的应用,FPGA内核应当能读取FROM的内容。



图1 安全ISP的完整解决方案

采用适当的配置支持,并结合基本的编程功能如自动增量和自动减量,FROM和AES的使用就能支持许多涉及设备序列化的应用,即是支持独的设备标识。目的是为了更方便地管理大量器件的FROM内容。序列化支持在面对下述功能和应用领域时尤其有用:

*资产管理跟踪
*日期和时间戳
*互联网协议寻址
*库存控制
*基于认购方式的经营模式
*系统校准设置
*版本管理

真实环境下的安全ISP

FPGA产品在过去20多年来获得巨大成功,因为能提供配合客户所需的生产力和成本优势。这些优势主要分为三大类别,并被认为是更改系统设计或配置变得越来越困难及执行也日益昂贵的关键阶段:

*在设计接近完成或设计完成并进入组装的設計工程阶段,出现了后来突发的系统变更需求,或出于制造考虑的变更需求。
*在次级承包商的据点,FPGA正进行编程,而系统经已组装、测试及付运至终端用户,又或分销商在交货前必需对系统进行定制的现场。
*在客户的应用现场或其它远程现场,需要按最终客户的要求变更系统,添加所需功能或更新系统参数。  

SP安全架构的三个级别分别对应了这三个阶段:

例1:工厂/可信赖环境。这是最简单的选项,器件的编程在可信赖的环境中进行 (通常是客户的“工厂”),也是系统设计完成的地方。在这种情况下,并不需要加密。这是保护设计的安全方法,因为设计的编程文档不会离开这个可信赖的环境。当OEM厂商不能进行编程时,编程服务通常由FPGA制造商(“IHP”) 提供,也就是向OEM厂商提供另一个安全的可信赖环境。



图2 真实环境下的ISP

例2:合约制造。为了减少制造成本,器件编程一般都不会在实施设计的地方进行。海外编程中心和合约制造商是这个情况的一些例子。在这种情况下,AES加密键最先由OEM厂 (可信赖的环境) 内部进行编程。最后的编程则连同AES加密编程档案在工厂以外“不可信赖”的地点进行。过建的情况不会在这里出现,因为合约制造商在市场上购买的任何额外部件由于没有装载适当的AES加密键,因此都无法使用,也不能用AES加密编程档案进行编程。

例3:现场“订购”升级。为了提供最高的灵活性,最终用户必须能在应用现场享用ISP功能。这即是说需要在“不可信赖”的地点来进行编程,包括在有线、互联网、卫星链路等公网 (或私网) 的远程现场据点进行消费产品/设备的重新配置。与上面的例子一样,这也需要使用AES加密编程档案。在这种情况下,当客户要求系统升级时,在供应商据点的技术支持便会查询设备的独特器件标识,该标识已在可信赖的环境中安全地写入FROM。器件的标识将由系统于远程现场送回,并用来在“器件词典”中查核对应的AES键。该加密键会被送到内部程序中,根据所请求的功能取得适当的编程档案,然后利用该加密键生成加密位流。这样器件就能利用加密编程后位流重新编程,并在MAC算法核对过收发双方都拥有相同的加密键后进行。

明显地,AES、MAC和FROM非挥性内存的结合能组成安全的可编程解决方案,为系统设计人员及客户提供重大优势。非挥发性以Flash为基础的FPGA,例如Actel的ProASIC3/E系列器件,便能提供所有这些甚至更多功能。以Flash为基础的FPGA提供高度安全和低成本的单芯片解决方案,并通过非挥发性Flash技术实现上电即行的功能。AES-128加密技术可在不安全的环境下进行安全ISP,而芯片上内置的FROM可基于独特的器件标识而实行多种崭新应用。此外,以Flash为基础器件能满足实现安全ISP的所有要求,并主动地保护客户的产品免受各种棘手的安全问题威胁,包括过建、盗取敏感的数据、篡改产品和黑客攻击等。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top