在 5G 世界中,快速安全的连接非常重要。JEDEC 通用闪存 (UFS) 4.0 版有助于确保在我们的日常设备中实现这一点。作为附加的安全元素,UFS 设备中包含重放保护内存块 (RPMB),作为安全存储加密数据的一种方式,只能通过身份验证访问。
RPMB 以经过身份验证和重放保护的方式存储信息,该过程只能在对身份验证密钥进行编程后执行。UFS 设备具有包含多个 RPMB 区域的 RPMB 逻辑单元;每个区域都有自己唯一的身份验证密钥。当使用 HMAC SHA-256 算法将密钥与消息(数据)一起作为输入来计算消息身份验证代码 (MAC) 时,此身份验证密钥有助于访问 RPMB 区域。在本博客中,我们将讨论高级 RPMB 的身份验证编程流程如何比以前的版本更高效。
回顾旧的RPMB流程
在 RPMB 中执行身份验证密钥编程需要先发送请求,然后发送结果读取请求。然后,身份验证密钥编程的响应将作为结果读取响应接收。
旧版本的 RPMB 需要传输许多命令来编程用于 MAC 计算的身份验证密钥,然后将 RPMB 字段传输到每个命令的数据块中。提醒一下,旧版 RPMB 流程中涉及的步骤如下:
身份验证密钥编程请求 – 通过发出安全协议输出命令 UPIU 来启动带有“0001h”请求消息的密钥发送。
读取请求的结果 – 通过使用安全协议输出命令 UPIU 将请求消息类型发送为“0005h”来确保身份验证密钥编程的验证过程。
读取响应结果 – 主机在结果字段中检索响应消息类型为“0100h”的身份验证密钥编程的结果。结果字段指示身份验证是否成功完成,或者在写入数据时失败或身份验证密钥尚未编程时标记。根据结果,主机可以处理即将到来的 RPMB 进程,也可以尝试再次对身份验证密钥进行编程。
为了消除旧RPMB流程中涉及的许多步骤,UFS 4.0配备了高级RPMB,这是一种利用命令和响应UPIU中额外标头段(EHS)字段的简单高效流程。
为什么我应该改用高级 RPMB?
在高级 RPMB 中,身份验证密钥编程是通过单个安全协议输出命令和 EHS 字段的帮助完成的。
UFS 4.0 具有新的 EHS 功能,该功能已针对高级 RPMB 和供应商特定用途添加。让我们看看事务 UPIU 如何结合 EHS 来传达 RPMB 字段。
在 EHS 标头中,主机需要将 EHS 类型指定为 01h,用于访问高级 RPMB,将 EHS 长度指定为 02h,用于在事务 UPIU 本身中发送高级 RPMB 字段。在高级 RPMB 流程中,我们只需要执行以下步骤即可实现身份验证密钥编程:
安全协议输出命令 UPIU(带 EHS 字段)– 这为请求消息类型为 0001h 的身份验证密钥提供。
响应 UPIU(带 EHS 字段)– 这将提供响应消息类型为 0100h 的结果。因此,结果字段指示身份验证是否成功。
UFS 4.0 的发布提供了对这种增强的高级 RPMB 过程的访问,与旧的 RPMB 过程相比,允许高效、简单、快速的身份验证编程流程。
审核编辑:郭婷
-
闪存
+关注
关注
16文章
1775浏览量
114801 -
5G
+关注
关注
1353文章
48361浏览量
563274 -
UFS
+关注
关注
6文章
103浏览量
23941
发布评论请先 登录
相关推荐
评论