为基于FPGA的嵌入式系统进行安全升级.doc

为基于FPGA的嵌入式系统进行安全升级.doc

ID:27837038

大小:207.50 KB

页数:9页

时间:2018-12-06

为基于FPGA的嵌入式系统进行安全升级.doc_第1页
为基于FPGA的嵌入式系统进行安全升级.doc_第2页
为基于FPGA的嵌入式系统进行安全升级.doc_第3页
为基于FPGA的嵌入式系统进行安全升级.doc_第4页
为基于FPGA的嵌入式系统进行安全升级.doc_第5页
资源描述:

《为基于FPGA的嵌入式系统进行安全升级.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、为基于FPGA的嵌入式系统进行安全升级如何防止器件“砖头化”,只发出警告就够了吗?  “系统正在更新,请勿关闭电源。”我们都看到过这个警告,它通常在电子器件要在闪存安装代码更新时出现。如果更新被中断,闪存将无法正确更新,代码将会损坏,而器件无法运行,即“砖头化”(bricked)。这种大家熟悉的警告存在的原因,是因为使用闪存的大多数半导体器件在编程或擦除操作期间需要一直供电。显然,防止器件“砖头化”是非常重要的。但是,只发出警告就够了吗?有些嵌入式器件甚至都没有用户显示器,因此无法产生警告。在设计中如何才能确保可靠且安全的远程系统更新呢

2、?  嵌入式系统远程升级的重要性  远程升级对连接的嵌入式系统日益重要。通过互联网远程修复漏洞或增加新特性,可以节省大量的维护费用;当部署数千个嵌入式系统时,维护便是一个大问题了。随着嵌入式系统安全问题的不断增加,通过远程安全定向代码升级来修复潜在安全漏洞变得愈发重要。显然,升级必须安全地完成,否则,攻击算法便很容易利用不安全的更新来破坏系统。下面是一个典型系统的示例,有助于更好地了解安全可靠的远程升级设施的要求。  系统示例——控制平面桥  通信或网络机箱内的控制平面桥(ControlPlaneBridge),是需要远程更新的常见系统

3、示例。这种子系统汇集了许多低速外设,比如模拟传感器、电源管理模块、风扇、故障记录存储器和利用I2C、SPI和GPIO接口的状态输出。然后,可以采用速度更快的总线——可能是通信和连网机箱内很常见的子系统接口PCIe,与低速外设直接通信。这种机箱控制子系统能够实施智能汇聚功能,当规定启动点被激活,例如到达最高温度或最低电压水平时,便会“推进”通信。图1所示就是这样一个系统,它是用配备片上微控制器的FPGA(通常称为SoCFPGA)实现的。    图1经PCIe远程升级的机箱控制平面桥  FPGA和闪存  在上面的例子中,远程更新经由PCIe

4、总线实现,但并未对编程期间可能出现的断电进行保护。让我们看看常见的FPGA实施类型,从而更好地防范闪存远程更新过程中突然断电时可能出现的重大故障。  几乎每个基于FPGA的系统都需要采用某种形式的非易失性存储器来储存配置存储。一般说来,配置存储器位于芯片外或芯片上。基于SRAM的FPGA需要外部闪存,用于上电时的配置。基于闪存的FPGA可以使用嵌在FPGA结构(结构嵌入闪存FPGA)内的配置存储器,或使用基于SRAM的结构,但将一个闪存块放在芯片上(侧面闪存FPGA)。  基于SRAM的FPGA通常使用NORSPI闪存,因为它消耗的引脚

5、数最少,几家供应商有同样的引脚输出,而且密度高达1Gb。目前的NORSPI闪存器件拥有32位地址选择,可扩展成为4GB器件,而且不需要改变指令和控制协议。当这种SPI闪存处于程序或擦除模式(电荷泵启动)且电力消失时,会发生什么事情呢?电荷在哪里消失?是否有电路检测到这些闪存的电力故障并将电荷安全地引导到地面?一般说来,正被写入的页面将出现数据损坏。    图2三种FPGA配置图:带外部配置闪存的基于SRAM的FPGA、侧面闪存FPGA和嵌入闪存FPGA  侧面闪存FPGA系统采用较宽的片上数据总线在上电时载入基于SRAM的配置存储。通常

6、,这种方法载入配置比基于SRAM的FPGA要快,因为后者是采用外部闪存来配置器件的。但是,这种方法存在程序或擦除周期期间功率损失的问题。电荷去了哪里?闪存是否被破坏?是否仅写入页面被破坏?整个闪存都存在风险?FPGA是否能够检测被破坏的片上存储器,或者,在上电期间,被破坏的数据是否被载入到配置存储器内?  闪存的破坏是个问题,如何确保远程数据的安全也非常重要。当嵌入式产品可由终端用户访问时,就存在被篡改的可能。为了防止攻击,必须同时采用软件和硬件的安全功能。仅对远程配置数据文件进行加密远远不够。虽然这种软件加密安全有用,但是还必须将解密

7、数据的硬件(FPGA)置于安全保护内。当用户访问嵌入式器件时,加密数据文件很容易被提取。利用价格便宜的电磁探针和进行差分功耗分析(DPA)即可实现这一点。采用这种方法提取FPGA安全密匙的例子很多。如果FPGA并未内置DPA对抗措施,则任何远程更新都存在安全风险。当用户能够访问嵌入式产品时,如果没有DPA对抗措施,便如同中门大开,没有安全可言。  在嵌入闪存的FPGA中,配置储存在芯片上,并紧密集成在FPGA结构内。例如,在美高森美SmartFusion2和IGLOO2flashFPGA上,可经由外部通信端口如USB、PCIe或JTAG

8、等进行编程,整个编程过程由片上专用编程接口管理。此外,SmartFusion2和IGLOO2FPGA使用了一种称为“在应用中编程”(IAP)的高级编程机制,即便在编程期间有功率损耗的情况下,仍可提供可靠且安

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。