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

    文章

    5037

    浏览量

    117764
  • 硬件
    +关注

    关注

    11

    文章

    2923

    浏览量

    64828
  • AES
    AES
    +关注

    关注

    0

    文章

    97

    浏览量

    33064
收藏 人收藏

    评论

    相关推荐

    AES加密协议是什么?AES加密协议的应用

    AES(Advanced Encryption Standard,高级加密标准)是一种广泛使用的对称密钥加密协议,它被设计用于保护电子数据的安全。以下是对AES加密协议的详细概述: 历史与标准化
    的头像 发表于 04-15 15:34 151次阅读

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

    可编程AES加解密IP内建密钥扩展功能,使用初始密钥产生扩展密钥,用于加解密过程。可编程AES加解密IP处理128-bit分组数据,并且支持
    发表于 01-09 10:49 243次阅读
    基于FPGA的可编程<b class='flag-5'>AES</b>加解密IP

    详解全志R128 RTOS安全方案功能

    efuse 只有安全世界才可以访问,非安全世界访问的结果为 0。 Flash Encryption Flash Encryption 模块向 Flash 写数据时计算 AES 进行加密,从
    发表于 12-28 15:59

    什么是efuseefuse在soc中的有何作用?

    在现代 SoC 设计中,efuse 是一种非常重要的技术,可以用于保护 SoC 中的敏感信息,防止黑客攻击和未经授权的访问。
    的头像 发表于 11-21 15:00 1286次阅读

    存储密钥与文件加密密钥介绍

    数据。 文件加密密钥 文件加密密钥(File Encryption Key, FEK)是安全存储功能用于对数据进行加密时使用的AES密钥,该密钥
    的头像 发表于 11-21 11:43 458次阅读
    存储<b class='flag-5'>密钥</b>与文件加密<b class='flag-5'>密钥</b>介绍

    Efuse是什么?聊聊芯片级的eFuse

    eFuse基于一个简单概念,即通过测量已知电阻器上的电压来检测电流,然后在电流超过设计限值时,通过场效应晶体管 (FET) 切断电流。
    的头像 发表于 11-01 14:12 8570次阅读
    <b class='flag-5'>Efuse</b>是什么?聊聊芯片级的<b class='flag-5'>eFuse</b>

    什么是efuseefuse在SoC设计中的应用及它的优缺点

    在现代 SoC 设计中,efuse 是一种非常重要的技术,可以用于保护 SoC 中的敏感信息,防止黑客攻击和未经授权的访问。
    的头像 发表于 10-07 14:12 2642次阅读

    反相器链路版图验证步骤

    今天的内容包括:反相器链路版图验证步骤和模拟版图验证中常见的问题及修改。
    的头像 发表于 09-11 16:36 932次阅读
    反相器链路版图<b class='flag-5'>验证</b><b class='flag-5'>步骤</b>

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

    应用程序:示例代码是进行 AES 加密和解密,将 AES 的私人密钥储存在 SPROM 中 。 BSP 版本:M480系列BSP CMSIS V3.03.001 硬件
    发表于 08-22 06:58

    无需公式即可了解密钥加密

    基于密钥的身份验证是一种通过间接比较密钥验证用户身份的方法,密钥是用户和系统之间的共享密钥。当
    的头像 发表于 06-27 10:14 424次阅读
    无需公式即可了解<b class='flag-5'>密钥</b>加密

    OTP与EFuse有什么不同呢?

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

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

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

    HDCP 2.2:身份验证密钥交换

    HDCP 发射器可以随时启动,甚至在之前的身份验证完成之前。HDCP 接收器的公钥证书由 HDCP 发射器验证,然后设备共享主密钥 Km。这个存储的主密钥公里加速了HDCP发射器和接收
    的头像 发表于 05-29 09:28 2812次阅读
    HDCP 2.2:身份<b class='flag-5'>验证</b>和<b class='flag-5'>密钥</b>交换

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

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

    什么是SSH密钥?如何使用SSH密钥

    SSH密钥是用户名和密码的替代方法,是一种用户身份验证方法。它主要用于向服务提供加密文件而不是基于文本的密码。
    的头像 发表于 05-04 09:04 4524次阅读
    什么是SSH<b class='flag-5'>密钥</b>?如何使用SSH<b class='flag-5'>密钥</b>?