vivado 高级编程功能1

适用于 7 系列、 UltraScale UltraScale+ FPGA MPSoC 的回读和验证
7 系列器件生成已加密文件和已经过身份验证的文件
注释 如需获取其它信息 请参阅《使用加密确保 7 系列 FPGA 比特流的安全》 ( XAPP1239 )
要生成加密比特流 请在 Vivado IDE 中打开已实现的设计。在主工具栏中 依次选择“ Flow ” → “ Bitstream Settings” 这样会显示“设置 (Settings) ”对话框。在此对话框顶部单击“ Configure Additional Bitstream Settings”。
这样会显示“编辑器件属性 (Edit Device Properties) ”对话框。选择左侧窗格中的“ Encryption ”。
在“编辑器件属性 (Edit Device Properties) ”对话框中 指定加密和密钥设置
• 加密设置 (Encryption Settings)
Enable Bitstream Encryption ”可设置为“ YES ”。
Select location of encryption key ”可设置为“ BBRAM ”或“ EFUSE ”。
- 密钥位置将嵌入加密比特流中。
- 当加密比特流下载至器件后 它会指令 FPGA 使用已加载到 BBR eFUSE 密钥寄存器中的密钥来对加密的 比特流进行解密。
• 密钥设置 (Key Settings)
指定 HMAC 身份验证密钥和密码分组链接 (CBC) 起始值。
- 如果不指定这些值 Vivado 会为您生成随机值。
- 这些值将嵌入加密比特流 而无需编程到 FPGA 中。
注释 除非指定输入加密文件 否则这些值将存储在当前工程约束文件中。要避免将该值存储在约束文件中 , 请指定输入加密文件。
AES encryption key ”用于指定对比特流进行加密时要使用的加密密钥。您可使用最多 64 个十六进制字符来 指定 256 位密钥。
- 此密钥将写入含 .nky 文件扩展名的文件中。将该密钥加载到 BBR 中时 或者将该密钥编程到 eFUSE 密钥 寄存器中时, 请使用此文件。
注释 除非指定输入加密文件 否则这些值将存储在当前工程约束文件中。要避免将该值存储在约束文件中 , 请指定输入加密文件。
指定输入加密文件。
- 指定现有 .nky 文件即可获取加密密钥设置。该字段为可选字段 如果手动指定 AES HMAC CBC 则 可省略该字段。 指定加密设置后, 请单击“ OK ”以将设置应用于工程并重新生成比特流。成功完成 write_bitstream 操作后 , 将得到 1 个编程文件和 1 .nky 加密文件。
UltraScale UltraScale+ 生成已加密文件和已经过 身份验证的文件
注释 如需了解更多信息 请参阅《使用加密和身份验证确保 UltraScale/UltraScale+ FPGA 比特流的安全》 ( XAPP1267 ) 。 要生成加密比特流, 请在 Vivado IDE 中打开已实现的设计。在主工具栏中 依次选择“ Flow ” → “ Bitstream Settings” 这样会显示“设置 (Settings) ”对话框。在此对话框顶部 单击“ Configure Additional Bitstream Settings”。
这样会显示“编辑器件属性 (Edit Device Properties) ”对话框。选择左侧窗格中的“ Encryption ”。
在“ Edit Device Properties ”对话框中 指定“ Encryption Settings ”和“ Key Settings
• “ Encryption Settings
Enable Bitstream Encryption ”可设置为“ YES ”。
Select location of encryption key ”可设置为“ BBRAM ”或“ EFUSE ”。
- 密钥位置会嵌入加密比特流中。
- 当加密比特流下载至器件后 它会指令 FPGA 使用已加载到 BBR eFUSE 密钥寄存器中的密钥来对加密的 比特流进行解密。
Enable obfuscated key load ”可设置为“ ENABLE ”或“ DISABLE ”。
- 启用此项后 此用户生成的密钥将先经过加密 随后再被存储到 BBRAM 中。如果禁用此项 那么此密钥将 “按现状”直接存储到 BBRAM 中。
• “ Key Settings
Starting AES encryption key (key0) ”用于指定对比特流进行加密时要使用的加密密钥。您可使用最多 64 个十 六进制字符来指定 256 位密钥。
- 此密钥将写入含 .nky 文件扩展名的文件中。将该密钥加载到 BBR 中时 或者将该密钥编程到 eFUSE 密钥 寄存器中时, 请使用此文件。
注释 除非指定输入加密文件 否则该值将存储在当前工程约束文件中。要避免将该值存储在约束文件中 请 指定输入加密文件。
Input encryption file ”用于指定输入加密文件。
- 指定现有 .nky 文件即可获取加密密钥设置。该字段为可选字段 如果手动指定 AES HMAC CBC 则 可省略该字段。
Starting AES initial vector (IV0) value ”用于指定输入加密文件。
- 对应第一个密钥的初始化矢量。请注意 每个密钥都需要 1 个独立的初始化矢量值 该值可通过输入加密文 件来提供。
注释 该值将存储在当前工程约束文件中。要避免将该值存储在约束文件中 请指定输入加密文件。
Starting obfuscate initial vector (Obfuscate IV0) value ”用于指定输入加密文件。
- 对应模糊密钥的初始化矢量。
注释 该值将存储在当前工程约束文件中。要避免将该值存储在约束文件中 请指定输入加密文件。
• “ Key Rolling Settings
如需生成调试文件以报告 KDF 模式下生成的所有密钥 请指定“ debug file to report all the keys generated in KDF mode”。
Fixed Input Data for KDF keyrolling ”可指定用于 KDF 密钥滚动的固定输入数据。该值为可选 60 字节固定输
入值 并指定为 120 位十六进制值。此 60 字节输入搭配 4 字节计数器即可通过 RAND_bytes 充当 KDF 虚拟随 机固定输入值的 64 字节输入。
Seed for KDF Keyrolling ”用于指定 KDF 密钥滚动的种子。该值为 KDF 的可选 32 字节种子值 指定为 64 位十六进制值。
Number of encryption blocks per key ”用于指定每个密钥的加密块数 Number of frames per AES-256 key”则用于指定每个 AES-256 密钥的帧数。
- 加密块数和帧数用于指定每个比特流通过每个不同密钥细分到的段数。
要执行身份验证设置 请选择左侧窗格中的“ Authentication ”。
在“ Edit Device Properties - Authentication ”对话框中 指定如下加密和密钥设置
• “ Authentication Settings
Enable Bitstream Authentication ”可设置为“ YES ”。
Input file containing RSA Private Key ”用于指定包含 RSA 专用密钥的输入文件。
指定加密和身份验证设置后提供 RSA 专用密钥 单击“ OK ”即可将这些设置应用于工程。重新运行实现 并重新 生成比特流文件。成功完成 write_bitstream 操作后 生成的 .nky 加密密钥文件将显示在加密比特流文件所 在目录中。
您可通过使用 256 位高级加密标准 (AES) 密钥、下载比特流并仅在经授权的 FPGA 上运行来保护比特流中的 IP 。具体 方法是将 256 位密钥编程到经授权的 FPGA BBR 寄存器中 然后再下载加密比特流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/788524.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式之代理模式解析(下)

4)远程代理介绍 远程代理(Remote Proxy) 使客户端程序可以访问在远程主机上的对象,远程代理对象承担了大部分的网络通信工作,并负责对远程业务方法的调用。 5)虚拟代理介绍 1.概述 虚拟代理(Virtual Proxy) 对于一些占用系统资…

零基础入门多媒体音频(7)-AAOS audio

概览 Android Automotive OS (AAOS) 是基于核心的 Android 音频堆栈打造,以支持用作车辆信息娱乐系统。AAOS 负责实现信息娱乐声音(即媒体、导航和通讯),但不直接负责具有严格可用性和时间要求的铃声和警告。 虽然 AAOS 提供了信号…

路由器拨号失败解决方法

目录 一、遇到问题 二、测试 三、解决方法 (一)路由器先单插wan口设置 (二)mac地址替换 (三)更改路由器DNS 一、遇到问题 1 .在光猫使用桥接模式,由路由器进行拨号的时候,出现…

【C语言】——指针七:数组和指针试题解析

【C语言】——指针七: 前言一、 s i z e o f sizeof sizeof 与 s t r l e n strlen strlen 的对比1.1、 s i z e o f sizeof sizeof1.2、 s t r l e n strlen strlen1.3、 s i z e o f sizeof sizeof 和 s t r l e n strlen strlen 对比 二、数组和指针笔试题解析…

算法打卡day32|贪心算法篇06|Leetcode 738.单调递增的数字、968.监控二叉树

算法题 Leetcode 738.单调递增的数字 题目链接:738.单调递增的数字 大佬视频讲解:单调递增的数字视频讲解 个人思路 这个题目就是从例子中找规律,例如 332,从后往前遍历,32不是单调递增将2变为9,3减1,变成了329&…

Marin说PCB之电源完整性之电源网络的PDN仿真CST---01

最近朋友圈最火的消息我感觉是除了开封的王婆外莫过于是小米SU7汽车发布这件事情了,小编我也是一位资深的米粉,我在上个月28号的时候守在电脑前直播看小米SU7汽车的发布会,其中雷总演讲的一段话很打动我:不甘于平庸,还…

微信小程序-文字转语音(播放及暂停)

1、使用微信小程序的同声传译功能 小程序平台-设置-第三方设置-插件管理-新增同声传译插件 小程序app.json文件配置 "plugins": {"WechatSI": {"version": "0.3.5","provider": "wx069ba97219f66d99"}},小程序中…

VMware-16.0配置虚拟机网络模式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、为什么要配置网络?二、配置步骤1.检查VMware服务2.进入配置页面3.添加网络模式1.Bridge2.NAT3.Host-only 4.DHCP租约5.静态IP 三、使用总结 前言…

JS-23-原型继承

一、JS的原型继承 在传统的基于Class的语言如Java、C中,继承的本质是扩展一个已有的Class,并生成新的Subclass。 但是,JavaScript由于采用原型继承,根本不存在Class这种类型。 但是办法还是有的。我们先回顾Student构造函数&am…

手机真机连接USB调试adb不识别不显示和TCPIP连接问题

手机真机连接USB调试adb devices不显示设备和TCPIP连接 本文手机型号为NOVA 7 ,其他型号手机在开发人员模式打开等方式可能略有不同,需根据自己的手机型号修改。 文章目录 1. 打开和关闭开发者模式2. 真机USB连接调试adb不显示设备问题的若干解决方法3…

前端调试工具之Chrome Elements、Network、Sources、TimeLine调试

常用的调试工具有Chrome浏览器的调试工具,火狐浏览器的Firebug插件调试工具,IE的开发人员工具等。它们的功能与使用方法大致相似。Chrome浏览器简洁快速,功能强大这里主要介绍Chrome浏览器的调试工具。 打开 Google Chrome 浏览器&#xff0c…

Linux(centos) 安装GraalVM

文章目录 版权声明GraalVM 版权声明 本博客的内容基于我个人学习黑马程序员课程的学习笔记整理而成。我特此声明,所有版权属于黑马程序员或相关权利人所有。本博客的目的仅为个人学习和交流之用,并非商业用途。我在整理学习笔记的过程中尽力确保准确性&…

视频汇聚/安防监控/EasyCVR平台播放器EasyPlayer更新:新增【性能面板】

视频汇聚/安防监控/视频存储平台EasyCVR基于云边端架构,可以在复杂的网络环境中快速、灵活部署,平台视频能力丰富,可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云…

物联网行业中,我们如何选择数据库?

在当今数字化潮流中,我们面对的不仅是海量数据,更是时间的涟漪。从生产线的传感器到金融市场的交易记录,时间序列数据成为了理解事物演变和趋势的关键。在面对这样庞大而动态的数据流时,我们需要深入了解一种强大的工具——时序数…

素数的判断方法总结

目录 素数介绍 试除法 埃氏筛 欧拉筛 素数介绍 判断一个数n是不是素数:当时,用试除法;当时,试除法不够用,需要用高级算法。 试除法 把内的所有数去试除n,如果都不能整除,就是素数。 boo…

谷粒商城实战(008 缓存)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第151p-第p157的内容 简介 数据库承担落盘(持久化)工作 拿map做缓存 这种是本地缓存,会有一些问题 分布…

【嵌入式硬件】三极管伏安特性曲线-饱和区

1.三极管伏安特性 三极管工作电路如下图所示。 三极管伏安特性曲线 书本上的描述: 截止区:三极管工作在截止状态,当发射结的电压Ube 小于 导通电压(0.6V-0.7V),发射结没有导通;集电结处于反向偏置,没有放大作用。 放大区:三极管的发射极加正向电压(…

晨控RFID读写器与罗克韦尔PLC可编程逻辑控制器MODBUSTCP通讯说明

晨控RFID读写器与罗克韦尔PLC可编程逻辑控制器MODBUSTCP通讯说明 晨控RFID读写器系列是支持标准工业通讯协议 MODBUSTCP 的读卡器,方便用户集成到PLC等控制系统中。读卡器提供了网络 POE 供电和直流电源供电两种方式,确保用户在使用无 POE 供电功能的交换机时可采用…

vue3中怎么点击按钮就上传文件

<el-button text type"primary" click"importBillExcel(row)">导入账单</el-button> // 导入客户账单Excel表 const importBillExcel (row) > {let input document.createElement(input)input.type fileinput.accept .pdf, .png, .zip…

文本自动粘贴编辑器:支持自动粘贴并筛选手机号码,让信息处理更轻松

在信息时代的浪潮中&#xff0c;文本处理已成为我们日常工作与生活的重要组成部分。无论是商务沟通、社交互动还是个人事务处理&#xff0c;手机号码的筛选与粘贴都显得尤为关键。然而&#xff0c;传统的文本处理方式效率低下、易出错&#xff0c;已无法满足现代人的高效需求。…