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

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

3天内不再提示

eFUSE AES密钥验证步骤详解

C29F_xilinx_inc 来源:赛灵思 作者:赛灵思 2022-02-26 18:09 次阅读

以下为个人译文,仅供参考,如有疏漏之处,还请不吝赐教。

eFUSE 具备一次性可编程特性,即只要使用特定密钥将“熔丝 (FUSE)”熔断,就无法再使用任何其他密钥对其进行编程。

在本文中,我们将探讨有关 AES 密钥验证步骤的内容,当您在器件上以物理方式对 eFUSE 密钥进行编程时应遵循这些验证步骤进行操作。

eFUSE 具备一次性可编程特性,即只要使用特定密钥将“熔丝 (FUSE)”熔断,就无法再使用任何其他密钥对其进行编程。

eFUSE 广泛适用于各种量产器件,在本文中我们将为大家演示一个典型情境,即客户希望向第三方供应商提供采用 AES 编程的 FPGA 的情境。

曾经出现过这样的问题,用户以错误方式对错误的 eFUSE 密钥进行编程,导致加密比特流编程失败。在此情境中,我们无法将 eFUSE 复原,因为它已发生熔断。

在下文中,我们将探讨有关 AES 密钥验证步骤的内容,当您在器件上以物理方式对 eFUSE 密钥进行编程时应遵循这些验证步骤进行操作。

1. 使用 EFUSE_TEST_MODE 对 AES 密钥进行测试性编程。

这将把 eFUSE 编程软件命令发送到器件,但并不会实际对任何熔丝进行编程。

2. 要启用 EFUSE_TEST_MODE,请右键单击“硬件管理器 (Hardware Manager)”上的“硬件服务器属性 (Hardware Server Properties)”,然后选中“EFUSE_TEST_MODE”选项,如下图所示:

eFUSE AES密钥验证步骤详解

3. 启用 EFUSE_TEST_MODE 并对 eFUSE 密钥编程后,就会在 Vivado 安装目录中创建一个 .nkz 文件。

请检查该 .nkz 文件,确认其中是否已正确显示 AES 密钥。

4. 如果此操作成功,请取消勾选“EFUSE_TEST_MODE”框,然后以真正物理方式仅将此 AES 密钥编程到器件中。

请勿对任何其他控制寄存器、安全寄存器或 RSA 进行编程。操作完成后将重新写入 .nkz 文件,但其中所含内容应不变。

请验证两个 .nkz 文件的内容是否相同。

5. 如果两个 .nkz 文件内容相同,那么请对加密比特流文件进行编程。

6. 运行以下命令以验证 .nky 和加密比特流:

create_hw_bitstream -hw_device [current_hw_device ] -nky mtl1_c1.nky mtl1_c1.bit

verify_hw_devices -key efuse

注释:特此澄清,在第 3 步中,除非您已在 eFUSE Wizard 中更改 .nkz 文件的文件名,否则,将覆盖同一个输出 .nkz 文件。因此,您应该将第 1 个 .nkz 复制到其他文件或者在向导中更改此 .nkz 文件的文件名以便后续对两个文件进行比较。

EFUSE_TEST_MODE 仅用于验证目的。如果编程测试成功,并且您取消勾选 EFUSE_TEST_MODE 并遵循与测试过程相同的编程步骤进行操作,那么就能将正确的 AES 密钥编程到器件中。

遵循上述步骤进行操作时,请勿对控制寄存器或安全寄存器进行编程。成功完成验证后即可进行各项详细设置。

审核编辑:汤梓红

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

    关注

    30

    文章

    4483

    浏览量

    116150
  • 硬件
    +关注

    关注

    11

    文章

    2670

    浏览量

    63871
  • AES
    AES
    +关注

    关注

    0

    文章

    88

    浏览量

    32955
收藏 人收藏

    评论

    相关推荐

    转:熟悉AES加密

    AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度
    发表于 07-09 17:24

    转:【SAMV71】熟悉AES加密

    AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度
    发表于 08-12 11:58

    基于FPGA的可编程AES加解密IP

    验证AES IP 对外接口:1.简易的Valid-Vector形式的模式/密钥控制总线接口2.标准的AXI-Stream数据总线 性能指标:1.加解密吞吐率大于3Gbps
    发表于 11-15 09:28

    请问有没有办法在Spartan 6上对电池供电的AES密钥进行编程?

    AES密钥进行编程?我想在将密钥提交到eFuse寄存器之前测试和验证操作(和可重新编程)。我没有看到使用iMpact工具将密钥输入电池备份RAM的方法。我
    发表于 06-14 09:15

    如何使用Impact和平台线USB II将aes加密密钥放入Spartan 6 EFUSE寄存器

    aes加密密钥放入Spartan 6 EFUSE寄存器。前4个字节配置成功,但其余全部保持为零。我现在无法在设备中配置其余的密钥,因为单独的论坛帖子
    发表于 07-25 10:37

    介绍一种芯片AES加密密钥生成工具

    AES加密密钥生成工具前言:嵌入式单片机开发,为了防止别人将芯片内的代码读取出来通过反编译手段拿到源码,常用的手段是对芯片和烧录文件进行加密。大部分的芯片厂商都会提供一个加密烧录和配置文件的工具
    发表于 02-14 06:43

    MCUBoot写入闪存之前将AES密钥存储在哪里?

    AES密钥,解密sdcard中的文件,最终将程序写入flash 0xA000。我想知道在写入闪存之前将 AES 密钥存储在哪里,我应该什么时候将它写入闪存才能使整个更新过程安全?
    发表于 03-23 08:47

    是否可以使用带有标记密钥的 cbc(aes)-essiv 加密?

    密钥的 cbc(aes)-essiv 加密? 我在做什么? 我在 iMX6UL 上与 CAAM 合作。在测试期间,我在我的主机上准备了三个图像。它们使用相同的对称
    发表于 05-06 06:11

    如何创建一个经过身份验证的会话以使用DeleteAll函数?

    AES 密钥与 se050 创建经过身份验证的会话。nano 包似乎不支持这一点。我的理解正确吗? 这很重要 b/c 我想为特定
    发表于 06-08 08:36

    如何将AES的私人密钥储存在SPROM中

    AES 加密和解密,将 AES 的私人密钥储存在 SPROM 中 。 BSP 版本:M480系列BSP CMSIS V3.03.001 硬件
    发表于 08-22 06:58

    芯片AES加密密钥生成工具

    AES加密密钥生成工具前言:嵌入式单片机开发,为了防止别人将芯片内的代码读取出来通过反编译手段拿到源码,常用的手段是对芯片和烧录文件进行加密。大部分的芯片厂商都会提供一个加密烧录和配置文件的工具
    发表于 12-09 14:36 6次下载
    芯片<b>AES</b>加密<b>密钥</b>生成工具

    有关AES密钥验证步骤的内容

    EFUSE_TEST_MODE,请右键单击“Hardware Manager”上的“Hardware Server Properties”,然后选中“EFUSE_TEST_MODE”选项,如下图所示:
    的头像 发表于 06-03 16:54 2814次阅读
    有关<b>AES</b><b>密钥</b><b>验证</b><b>步骤</b>的内容

    关于工程安全保护的FPGA设计方案

    AES-EFUSE是将密钥存储在FPGA内置的,只能写入一次的EFUSE寄存器中,同时必须使用原厂的JTAG Cable。写入后密钥将永远保存在EFUSE中,用于解密。
    的头像 发表于 07-04 11:36 2086次阅读
    关于工程安全保护的FPGA设计方案

    HDCP 2.2:身份验证密钥交换

    验证完成之前。HDCP 接收器的公钥证书由 HDCP 发射器验证,然后设备共享主密钥 Km。这个存储的主密钥公里加速了HDCP发射器和接收器之间的后续
    的头像 发表于 05-29 09:28 1380次阅读
    HDCP 2.2:身份<b>验证</b>和<b>密钥</b>交换

    OTP与EFuse有什么不同呢?

    EFuse,是芯片内部用于存储信息的常用单元,广泛应用设备识别,授权管理,数据保护等领域,如:芯片UUID,根密钥等信息;
    的头像 发表于 06-25 17:31 1290次阅读
    OTP与<b>EFuse</b>有什么不同呢?