![]() |
|
||||||||||||||
| . 网站首页 . 新闻 . 新品 . 方案 . 专访 . 活动 . DSP . EDA . 评测室 . 技术文库 . 会员区 . 商城 . 服务导航 . 邮购 . 资源 . | ||
|
||
|
|||||
| 用Spartan-3A和Spartan-3AN平台实现低成本安全解决方案 | |||||
作者:Maureen … 文章来源:Xilinx公司 点击数: 更新时间:2008-1-3 ![]() |
|||||
|
三大安全威胁 电子设计中最常见的侵权行为就是反向工程。当盗版者以在公开市场低价销售为目的而企图重新设计或制作某产品时,这种行为就会发生。通过反向工程,盗版者能够非常迅速地完成设计,由于无需研发经费,因此成本可以很低。 目前, 许多公司采取了外包生产的方式,因而面临着两种新侵权行为的威胁,即超量生产和克隆。在超量生产中,承包制造商只需生产出多于OEM(原始设备制造商)订货量的产品,这些超量生产的产品会在未经OEM 授权的情况下售出。 克隆是指盗版者以相同或不同的品牌复制设计、IP或产品。同样,克隆者不必花费任何研发成本。而且,超量生产和克隆的产品都能快速上市。 还未得到重视的是与这类侵权行为有 使用Device DNA 实现安全功能 传统的FPGA 使用比特流加密技术来防范反向工程和克隆。虽然以往的效果不错,但现在,比特流加密已无法保护设计免遭超量生产的侵权。 为了保护设计不被以上三种行为所盗版,Xilinx 提供了几种解决方案,并在最近推出了带有DeviceDNA 的Spartan-3A 和Spartan-3AN器件系列,可帮助防范克隆者、超量生产者和反向工程者。这种DeviceDNA 设计级安全功能可以保护设计、IP和嵌入式代码。DeviceDNA 是一种特殊的57 位ID,对于每个器件都是独一无二的。这种57 位ID 是在Xilinx 工厂中固化或设定的,因而不能更改。Spartan-3A 和Spartan-3AN 两种FPGA 在每个出厂的器件中都包含独一无二的ID。 然后,该ID 会与设计师的个性化算法结合起来储存在FPGA 上。该算法基本上是一个算术方程式,它规定如何提取DeviceDNA, 并创建一个结果。此结果可以存储在任何地方,如外部存储器或Flash 中。该算法是安全性的秘密所在,因为只有设计师才知道它。尽管它存储在FPGA 上,但在旁观者看来,这只是一部分比特流。 Spartan-3A 的安全性 对于Spartan-3A 器件,该算法将使用DeviceDNA 的结果与器件配置后存储在Flash 中的结果相比较。如果二者匹配,则认可该设计。如果二者不匹配,该设计会被设置成多种行为方式,从轻微故障到严重功能障碍。 为了便于理解,可以把DeviaDNA比作ATM银行卡,把个性算法比作ATM卡的密码。其潜在的弱点是,可能出现有人同时得到了ATM 卡和密码的情况。这个性化算法一旦为人知晓便很容易被克隆,这正是设计本身集成授权算法的原因。该算法置于可编程逻辑内部最隐秘的位置,可以选择数百万种配置方案。 Spartan-3AN 的安全性 对于Spartan-3AN 平台(即新型非易失性FPGA 平台),此过程大同小异,只是有几个增强项。第一个安全增强项是,比特流隐藏在FPGA 内部。这样更难于被人窥见。 S p a r t a n -3AN FPGA 的第二个安全增强项是两个特有的序列号,即DeviceDNA和工厂预设Flash ID,存储在Flash 中。这两个特有的ID 提供长达70个字节的序列号,可产生大量可能的算法,从而延长了破解认证算法所需的时间。于是,设计既要受FPGA 约束,又要受Flash ID 的约束。 第三项改进是在存储的授权代码中。在Spartan-3AN 平台上,可以将授权代码存储在片上一个叫做Flash 用户字段的专用一次性可编程64字节寄存器中。这样可使整个安全系统自成一体。由于不需要外部接口或存储器,整体安全性得以提高,使反向工程更加困难。 该认证算法由用户定义,这使用户能在设计预算内实现恰当的安全等级。该认证算法也是安全系统中的主要秘密。认证过程中必须有不为人知的秘密,才能保护安全系统不被破解。因为算法是未知的,所以它是设计级安全性的关键。算法是在FPGA 架构中实现的,因此便成为FPGA中数百万配置位当中的少数几个配置位。除非知道这些位如何组合在一起,或者知道是哪种算法,否则这看起来仅仅是一堆数字。应用Spartan-3AN 器件的一种可能的流程如图1 所示。
图1 可用Spartan-3AN FPGA实现的安全设置 Spartan-3AN 设计级安全功能是完全自成一体的安全解决方案,如图2 所示。Flash 中既包含FPGA 配置比特流,也包含预生成的授权代码。此代码由可信/安全制造商或注册流程存储在一次性可编程Flash 用户字段中。
图2 安全Spartan-3AN器件 通电后,FPGA 进行正常配置。一旦配置完成,FPGA 应用程序便包括了批准已授权设计在相关Spartan-3AN FPGA 上运行的电路。认证算法将读取DeviceDNA和工厂预设Flash ID,然后生成一个主动授权代码,并将此授权代码与Flash 用户字段中存储的预生成授权代码进行比较。如果两个代码相等,则器件通过认证。否则,器件属非法而无法获得授权。 拒绝访问 失败认证的处理是DeviceDNA 设计级方案的又一强项。认证可以完全集成到设计中。这样
本文所述的设计级安全功能是Spartan-3A 和Spartan-3AN 平台中可实现的基本安全级别。 结语 在开始进行下一代电路设计时,安全是一个重要的问题,Spartan-3A 和Spartan-3AN 平台中的安全措施为防范反向工程、超量生产和克隆提供了多种方法。 |
|||||
| 欢迎点击进入:TI德州中文网 (国内唯一针对TI应用的中文技术网站) 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 没有相关文章 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|
|