datasheet

采用MAX II器件实现FPGA设计安全解决方案

2008-04-28来源: 电子系统设计 关键字:MAX  器件  II  FPGA器件  FPGA设计  设计功能  置位  安全内核  解决方

  本文提供的解决方案可防止FPGA设计被拷贝,即使配置比特流被捕获,也可以保证FPGA设计的安全性。这种安全性是通过在握手令牌由MAX II器件传送给FPGA之前,禁止用户设计功能来实现的。

  基于SRAM的FPGA是易失器件,需要外部存储器来存储上电时发送给它们的配置数据。在传送期间,配置比特流可能会被捕获,用于配置其他FPGA。这种知识产权盗窃损害了设计人员的利益。

  本文提供的解决方案可防止FPGA设计被拷贝,即使配置比特流被捕获,也可以保证FPGA设计的安全性。通过在握手令牌由MAX II器件传送给FPGA之前,禁止用户设计功能来实现这种安全性。选用MAX II器件来产生握手令牌,这是因为该器件具有非易失性,关电时可保持配置数据。而且,对于这种应用,MAX II器件是最具成本效益的CPLD。本文还介绍了采用这种方案的一个参考设计。

  硬件实现

  FPGA设计安全解决方案的硬件实现如图1所示。MAX II器件产生连续的握手令牌,发送至FPGA,以使能用户设计。FPGA和MAX II器件之间传送5个信号:clock、shift_ena、random_number、ready和handshaking_data。

  一旦FPGA经过配置后,它向MAX II器件提供连续时钟。同时连接至FPGA和MAX II器件的启动/复位信号必须置位,以启动系统工作。FPGA中的随机数发生器(RNG)开始为FPGA和MAX II器件产生初始计数值(每次上电或者启动/复位信号置位时,仅向MAX II器件发送一次随机数)。随机数准备好后,shift_ena信号变为高电平,采用random_number信号,随机数串行移位至MAX II器件。随机数全部移位至MAX II器件后,ready信号置位,指示FPGA可以接收来自MAX II器件的握手令牌。

  配置之后,由于Enable信号还是逻辑低电平,FPGA中的用户设计功能被禁止。只有MAX II器件送出的握手令牌和FPGA内部产生的数据相匹配,Enable信号才会置位,启动用户设计功能。这两个数据之间出现差异时,Enable信号变为低电平,禁止用户设计功能。MAX II器件中产生握手令牌和FPGA器件中产生数据的方法和过程相同。如果没有正确的令牌,FPGA器件中的用户设计功能被禁用。这样,即使配置比特流被捕获,也可以防止用户设计被拷贝。

  图1:FPGA设计安全方案的硬件实现。

  设计构建模块

  FPGA的设计安全组成包括一个时钟分频器、随机数发生器(RNG)、安全内核、比较器和可靠性部分,而MAX II器件的设计安全组成只包括图1所示的安全内核。

  FPGA和MAX II器件使用的安全内核相同,如图2所示,由以下部分构成:随机数接收器、64位计数器、编码器、移位器/复用器。

  图2:FPGA和MAX II器件的安全内核。

  1、时钟分频器FPGA中的时钟分频器用于从系统时钟产生速率较低的时钟,供给FPGA和MAX II器件的安全内核使用。这是因为安全内核不需要运行在非常高的频率下。特别是当系统运行频率非常高时,时钟分频器的作用便比较显著,否则,如果系统运行频率较低,可以不使用该分频器。

  2、随机数发生器(RNG)每次启动/复位信号置位时,RNG为64位计数器产生随机初始值。然后,随机数同时串行移位至FPGA和MAX II器件的安全内核。参考设计采用32位RNG。

  3、随机数接收器随机数接收器接收来自RNG的串行随机数,并按照正确的顺序排列数据,将其做为初始值送入64位计数器。

  4、64位计数器64位计数器用于产生送入编码器的64位数据。它是按照公式X=X+A进行的一个简单加法器。X是一个64位初始值,而A是计数器递增值,应为质数。初始值X来自RNG。参考设计中,32位来自RNG,其余32位由用户在设计代码中设置。A可以由用户在设计代码中设置。计数器输出送入编码器,对数据进行加密。编码器每次完成前一数据的加密后,计数器数值递增。

  5、编码器编码器可以采用任何难以破译的加密标准。参考设计采用了三重数据加密标准(3DES)。3DES编码器的输入和输出是64位值,需要48个时钟周期完成64位数据加密。

  6、移位器/复用器移位器/复用器将编码器输出比特(16位)的一部分按照特定顺序,存储在寄存器中,编码器准备下一数值时,将其串行移位至比较器。

  7、比较器比较器将MAX II器件的编码数据(握手令牌)与FPGA内部产生的编码数据逐位比较。如果MAX II器件和FPGA的数据相匹配,Enable信号置位,使能用户设计功能。如果出现不匹配,请参见下面的可靠性保证一节。这种方式可以重复几次,以产生更多的Enable信号,使能用户设计的不同部分。这种重复方式可以防止有人篡改FPGA比特流(这种可能性较低),致使Enable信号变为高电平,导致设计安全方案失效。

  8、可靠性可靠性部分处理随机比特错误,这种错误可能会导致系统停止工作。参考设计允许每10个时钟周期中出现一次数据不匹配(这仅仅是一个例子,用户可以根据实际应用,修改该方法,达到最佳效果)。换句话说,如果10个时钟周期中,数据不匹配不超过一次,Enable信号仍将保持高电平,系统继续工作。如果10个时钟周期中出现两个错误,那么,Enable信号变为低电平,禁止用户设计功能。在启动/复位信号置位,复位系统前,系统停止工作。

  图3:不支持安全方案的FPGA设计。

  用户设计模块

  用户设计模块是真正的FPGA设计。来自安全模块的Enable信号低电平时用于禁止用户设计模块。换言之,如果比较器发现MAX II器件和FPGA的数据不匹配,考虑到可靠性之后,将禁止用户设计功能。

  图3是Enable信号低电平时,禁止用户设计功能的实例。图3所示的FPGA用户设计具有Clk_en输入信号,用于使能设计中的时钟。只有Clk_en信号高电平时,才启动设计功能。为实现设计安全方案,对用户设计稍做修改(增加了一个AND逻辑门),这样,当来自安全模块的Enable信号低电平时,禁止用户设计,如图4所示。

  解决方案的安全性

  上电时,当FPGA的配置比特流由外部存储器传送至FPGA时,有可能被捕获。使用捕获的比特流来配置其他FPGA可以拷贝FPGA设计。

  采用该解决方案,只有当MAX II器件的握手令牌与FPGA内部产生的数据相匹配时,FPGA用户设计才开始工作。由于被复制的设计在没有握手令牌时无法工作,因此保证了FPGA设计的拷贝安全性。用于产生握手令牌的MAX II器件具有非易失特性,关电时可保持其配置。

  解决方案的安全性依赖于MAX II器件产生的握手令牌。要破解该方案,需要拷贝MAX II器件产生的全部令牌比特流,或者计算出编码器用于产生令牌的密钥。由于每次上电时,MAX II器件产生的握手令牌都不同,因此,拷贝全部比特流来破解该方案是不可能的。这在于采用了RNG,它在上电时产生不同的数值送给MAX II器件。

  图4:支持安全方案的FPGA设计。

  如果采用了成熟的加密算法,那么破解编码器使用的密钥将非常困难。而且,无法从外部看到编码器输入数据,只有一部分加密数据串行移出,更难实现纯文本攻击。纯文本攻击分析编码器的输入和输出数据,猜出密钥,实施攻击。因此,该解决方案保护了FPGA设计。

  为保证该方案正常工作,安全模块的时钟应和FPGA用户设计的时钟一致,如图1所示。这样可以防止有人在Enable信号高电平时,禁用安全模块时钟。

  本文小结

  FPGA设计安全解决方案保护了Altera FPGA设计被拷贝(即使配置比特流被捕获)。在MAX II器件通过握手令牌验证前,禁止FPGA用户设计,实现了该解决方案。只有握手令牌与FPGA内部产生的数据匹配时,FPGA用户设计才被使能。该解决方案还保护了FPGA中的设计人员知识产权。

 

关键字:MAX  器件  II  FPGA器件  FPGA设计  设计功能  置位  安全内核  解决方

编辑:ssb 引用地址:http://www.eeworld.com.cn/gykz/2008/0428/article_856.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:大型设计中FPGA的多时钟设计策略
下一篇:利用Virtex-5 FPGA实现最低功耗解决方案

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

Microchip 推出全新单芯片maXTouch触摸屏控制器系列产品

随着汽车触摸屏显示器尺寸增大,驾驶员希望在操作时获得像手机一样的触摸体验。然而,汽车屏幕需要通过严格的头部碰撞和振动测试,因此具有较厚的盖板玻璃,这可能影响触摸屏的性能。由于屏幕尺寸增大,触摸屏更可能受到其他频率的干扰,例如调幅收音机和车辆门禁系统。所有这些因素成了设计现代汽车电容式触摸系统时面临的主要问题。为了解决这些问题,Microchip Technology Inc.(美国微芯科技公司)推出全新的单芯片maXTouch触摸屏控制器系列产品。 采用近3000个触摸传感节点的MXT2912TD-A和支持超过2000个节点的MXT2113TD-A可以为客户带来梦寐以求的汽车触摸屏用户体验。这些新器件基于被全球制造商广泛
发表于 2018-12-10
Microchip 推出全新单芯片maXTouch触摸屏控制器系列产品

受iPhone XS/XS Max/XR销量疲软影响,两月内苹果股价大跌超20%

集微网消息,受新iPhone销量疲软影响,苹果股价相比10月初的最高点跌幅已经超过20%,目前总市值只有8800亿美元,市值已经蒸发了约2000亿美元。因此苹果将iPhone XR、XS和XS Max三款新机的订单进了大幅度削减,其中iPhone XR的订单量将削减三分之一,而且未来很有可能会再次削减iPhone XR的产量。受订单量减产影响,本周一苹果股价继续下跌,截至收盘跌幅高达3.96%,股价创4个月来新低,这两个月也是苹果上市以来跌幅最高的阶段。
发表于 2018-11-20
受iPhone XS/XS Max/XR销量疲软影响,两月内苹果股价大跌超20%

科恩实验室研究员:iPhone XS Max iOS 12.1越狱成功

        科恩实验室(KeenLab)的研究员陈亮(Liang Chen)通过个人推特宣布,已经成功完成了运行iOS 12.1最新系统的iPhone XS Max的越狱。  他还在POC 2017大会上对此进行了演示,但未公布更具体的技术细节,也没有放出相关代码,似乎也无意公开,看来普通用户想给iPhone XS Max越狱是没戏了。  一般来说,现在研究iOS越狱的往往会把相关技术卖给第三方机构,或者反馈给苹果并在下次更新中修复。  从另一个角度来看,这意味着苹果的各种限制仍然是能够绕过的,出现公开越狱仍有可能。  只不过现在iOS越来越完善,越狱基本没什么必要了,而且越狱带来的潜在
发表于 2018-11-13
科恩实验室研究员:iPhone XS Max iOS 12.1越狱成功

iPhone XS Max上的iOS 12.1证实已被越狱

集微网消息,苹果在不久前发布了最新的iOS 12.1系统更新版本,但就在近日腾讯KeenLab研究员Liang Chen在Twitter上发图证实,他已经成功在iOS 12.1上越狱了iPhone XS Max。        不过,虽然已成功在iPhone XS Max上进行iOS 12.1越狱,但研究出越狱方法的研究人员拒绝公开发布代码,因为通常情况下研究人员会更愿意出售其他第三方,或者向Apple报告漏洞。
发表于 2018-11-13
iPhone XS Max上的iOS 12.1证实已被越狱

展锐与Micromax和Lava合作,进军100美元以下手机市场

        集微网消息,今日,展锐在与印度当地品牌JioPhone合作取得成功之后,为了进一步扩大影响,增加营收,正在与当地手机供应商Micromax和Lava洽谈合作,生产价格100美元以下的智能手机。        展锐的印度负责人Neeraj Sharma表示:“与JioPhone的合作在展锐的印度战略中扮演着非常重要的作用,我们已经成为其生态系统的一部分,未来我们将继续保持与其的合作。”        可以说,展锐作为功能手机的主要芯片提供商,在与JioPhone达成良好的合作之后,并不担心其在印度
发表于 2018-11-13

中兴为美国市场带来2款新机:MAX 2s与MAX View

        相较于一直无法进入美国市场的华为,中兴在美国的境遇就要好上很多,中兴手机进入了美国运营商市场,并且还曾占据超过10%的市场份额,在美国排名第四。          所以在今年的禁售事件中,中兴手机在美国的销售也受到重创,其市场也被TCL和LG瓜分。          不过随着禁售结束,中兴也在试图回复其在美国市场的销售,近日,中兴就为美国消费者带来了2款新机——中兴Blade MAX 2s和中兴Blade Max View。        两款手机都是入门级
发表于 2018-11-01
中兴为美国市场带来2款新机:MAX 2s与MAX View

小广播

更多每日新闻

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved
pt type="text/javascript" src="//v3.jiathis.com/code/jia.js?uid=2113614" charset="utf-8">