加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于FPGA加密问题

发布时间:2020-12-15 06:23:59 所属栏目:百科 来源:网络整理
导读:众所周知,所有FPGA基本上都是基于SRAM结构的,其程序(固件)是通过JTAG口直接加载或从外部Flash加载到内部SRAM中运行的。由于Flash本身无法加密,因此FPGA程序加密保护是所有开发者必须面临的一个主要问题。 目前,FPGA程序加密主要有两种方法: 1、如果系

众所周知,所有FPGA基本上都是基于SRAM结构的,其程序(固件)是通过JTAG口直接加载或从外部Flash加载到内部SRAM中运行的。由于Flash本身无法加密,因此FPGA程序加密保护是所有开发者必须面临的一个主要问题。

目前,FPGA程序加密主要有两种方法:

1、如果系统中没有可加密的微处理器,可 选用自带加密功能的FPGA ,其中Xilinx的有Virtex-2~5系列,采用的是DES( Data Encryption Standard)加密算法;ALtera的有Stratix II~III系列,采用128位密钥的高级加密算法AES( Advanced Encryption Standard)。两者的加密原理是:程序被加载到Flash时被加密,再加载到FPGA内部SRAM时被还原。第三者从Flash拷出的程序是加了密的,无法复制使用。这种方法简单、实用,但大部分FPGA(特别是中、低档FPGA)都不具备加密功能。
2、对于自身没有加密功能的FPGA,可在系统中 增加一个可加密的MCU (单片机),FPGA程序在下载到Flash之前,由用户根据自定的算法加其加密,然后再下载到Flash中,MCU将Flash中程序还原后装载到FPGA的SRAM中运行。因MCU是加密的,其还原算法第三者无法破译,即使将Flash中的代码拷出,也无法使用。这种方法虽然复杂些,但对所有FPGA都适用。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读