0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

xilinx FPGA bit 文件加密

电子工程师 来源:工程师李察 2018-12-01 09:33 次阅读

当你的项目终于做完了,到了发布的关键节点,为了防止自己的心血被别人利用,最好对产品进行bit加密。首先咱们来了解一下加密的优点,xilinx的V6和7全系列FPGA支持AES256加密,加密的好处: 1. 可以防止别人回读或者对你的程序进行逆向; 2. 防止更改烧写的bit文件。 如果仅仅是防止回读,可以简单设置BITSTREAM.READBACK.SECURITY,其中LEVEL1是禁止回读,LEVEL2禁止回读和重新烧写FPGA。 但如果对手的逆向能力很强,比如说在FPGA上电加载bit的时候用逻辑分析仪把用bit文件“读”出来,这个简单的设置肯定就不行了。这时候可以使用AES256加密。AES算法简介:AES即高级加密标准,是一种区块加密,当然也是对称加密。区块固定为128bit,秘钥为128,192或256bit。AES有5种加密模式,xliinx采用的是CBC模式。有一个128bit初始向量IV(startCBC),先利用初始向量IV与第一组数据进行异或后再进行加密运算生成C1。将C1作为初始向量与第二组数据进行异或后再进行加密运算生成C2。以此类推,当最后一组数据加密完毕后,将加密结果拼接为最终结果,C = C1C2C3……Cn。 所以采用CBC模式的256AES需要两个东西,128bit-startCBC和256bit-AES key。 到这里还没完,完成了bit加密还没有认证,万一别人把烧进去bit文件篡改了怎么办?(重新烧了新的bit文件)。所以xilinx又提供了HMAC的认证,这个就跟校验差不多了,检查消息的完整性。所以还需要提供256bit-HMAC,加上128bit-startCBC和256bit-AES key,一共是三个。这三个key可以自己生成,也可以指定空的 .nky文件,由软件随机生成好。 for example ··· Device xc7a35t; Key 0 0f2ec1178ae0d04c8c1431afe8266d08e799b01c5c486c2567f3621f47319aaf; Key StartCBC a6262d508c338eeab815340a7832436d; Key HMAC d82e72733a7bd7904c802d13db37187b8ad20b972ac163470c5a4d239bce6308; ··· 加密的AES key可以存到FPGA内部易失性的BBR或只能烧写一次(OTP)的eFUSE中。 BBR需要电池供电,可以多次编程。eFUSE不需要电池,但只能烧写一次。这里使用eFUSE. eFUSE寄存器 首先来看一下eFUSE寄存器:

要打开edit device properties,先要打开sythesized design 或者implement design,然后在generate bitstream右键设置

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21735

    浏览量

    603177
  • 加密
    +关注

    关注

    0

    文章

    304

    浏览量

    23916
  • 加载
    +关注

    关注

    0

    文章

    8

    浏览量

    11016

原文标题:xilinx FPGA bit 文件加密

文章出处:【微信号:FPGAer_Club,微信公众号:FPGAer俱乐部】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于Xilinx ZYNQ7000 FPGA嵌入式开发实战指南

    电子发烧友网站提供《基于Xilinx ZYNQ7000 FPGA嵌入式开发实战指南.pdf》资料免费下载
    发表于 12-10 15:31 2次下载

    ADC3583怎么用Xilinx的ISERDESE2采集信号?

    我看datasheet上3种模式2-wire/1-wire/1/2-wireSLDVS都是9位或者18位的,我用xilinxfpga中的ISERDESE2的DDR模式只支持4-,6-,8-bit位宽,或者2个级联支持10或1
    发表于 11-21 07:12

    采用Xilinx FPGA的AFE79xx SPI启动指南

    电子发烧友网站提供《采用Xilinx FPGA的AFE79xx SPI启动指南.pdf》资料免费下载
    发表于 11-15 15:28 0次下载
    采用<b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>的AFE79xx SPI启动指南

    Xilinx 7系列FPGA PCIe Gen3的应用接口及特性

    Xilinx7系列FPGA集成了新一代PCI Express集成块,支持8.0Gb/s数据速率的PCI Express 3.0。本文介绍了7系列FPGA PCIe Gen3的应用接口及一些特性。
    的头像 发表于 11-05 15:45 783次阅读
    <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b> PCIe Gen3的应用接口及特性

    如何在ModelSim中添加Xilinx仿真库

    今天给大侠带来在FPGA设计应用中如何在ModelSim中添加Xilinx仿真库,话不多说,上货。 注意:ModelSim一定要安装在不带空格的目录下,即不要安装在“Program
    发表于 07-03 18:16

    基于FPGA的AES256光纤加密设计

    AES算法的硬件实现,国内外研究学者大部分是基于FPGA的硬件实现。解放军理工大学的吕游等人研究高级加密标准俄歇算法的设计原理,并通过加密部分和密钥拓展共用 S 盒以减少资源占用,然后在FPG
    发表于 06-19 19:50

    FPGA | Xilinx ISE14.7 LVDS应用

    今天给大侠带来 Xilinx ISE14.7 LVDS应用,话不多说,上货。 最近项目需要用到差分信号传输,于是看了一下FPGA上差分信号的使用。Xilinx FPGA中,主要通过
    发表于 06-13 16:28

    基于 FPGA 的光纤混沌加密系统

    加密数据送至寄存 器缓存,使得我们的加密效率提高了 15 倍。 系统综合测试分析 IBERT(Integrated Bit Error Ratio Tester)是 Xilinx
    发表于 04-26 17:18

    基于FPGA的光纤通信加密系统

    FPGA 设计加密算法具有安全性高,加密速度快,开发周期短,开发成本较低, 可重配,可靠性高以及移植性好等优点。 系统链路部分采用 Aurora 协议,该协议是一款轻量级的光纤链路协议,具有冗余少,可定制度高,链路速率快等特点。
    发表于 04-26 11:33 1244次阅读
    基于<b class='flag-5'>FPGA</b>的光纤通信<b class='flag-5'>加密</b>系统

    Xilinx 7系列FPGA功能特性介绍

    Xilinx7系列FPGA由四个FPGA系列组成,可满足一系列系统需求,从低成本、小尺寸、成本敏感的大容量应用到最苛刻的高性能应用的超高端连接带宽、逻辑容量和信号处理能力。
    发表于 04-22 10:49 5392次阅读
    <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b>功能特性介绍

    适用于 Xilinx® MPSoC 和 FPGA的可配置多轨PMU TPS650864数据表

    电子发烧友网站提供《适用于 Xilinx® MPSoC 和 FPGA的可配置多轨PMU TPS650864数据表.pdf》资料免费下载
    发表于 04-01 09:58 0次下载
    适用于 <b class='flag-5'>Xilinx</b>® MPSoC 和 <b class='flag-5'>FPGA</b>的可配置多轨PMU TPS650864数据表

    Xilinx fpga芯片系列有哪些

    Xilinx FPGA芯片拥有多个系列和型号,以满足不同应用领域的需求。以下是一些主要的Xilinx FPGA芯片系列及其特点。
    的头像 发表于 03-14 16:24 3301次阅读

    适用于 Xilinx® MPSoC 和 FPGA 的可配置多轨PMU TPS650864数据表

    电子发烧友网站提供《适用于 Xilinx® MPSoC 和 FPGA 的可配置多轨PMU TPS650864数据表.pdf》资料免费下载
    发表于 03-06 17:07 0次下载
    适用于 <b class='flag-5'>Xilinx</b>® MPSoC 和 <b class='flag-5'>FPGA</b> 的可配置多轨PMU TPS650864数据表

    AMD Xilinx 7系列FPGA的Multiboot多bit配置

    Multiboot是一种在AMD Xilinx 7系列FPGA上实现双镜像(或多镜像)切换的方案。它允许在FPGA中加载两个不同的配置镜像,并在需要时切换。
    的头像 发表于 02-25 10:54 1268次阅读
    AMD <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b>的Multiboot多<b class='flag-5'>bit</b>配置

    FPGA设计高级技巧 Xilinx

    FPGA设计高级技巧 Xilinx
    发表于 01-08 22:15