证明

已认证设备是指已通过 Connectivity Standards Alliance (Alliance) Matter 认证流程。

在配置过程中,经过认证的设备需要自行证明。换言之,就是要证明它确实如您所愿, 正品。因此,所有 Matter 台设备都有凭据 其中包含认证密钥对和关联的证书链。 设备认证证书 (DAC) 是该证书链的一部分。部署 处于调试阶段的设备将 DAC 提交给其调试器,后者将 证明:

  • 它是由经过认证的制造商生产的。
  • 设备是正品。
  • 已通过 Matter 项合规性测试。

在开发阶段,制造商可以测试其设备 没有完整的认证流程应明确告知测试人员: 设备正在测试中,尚未通过认证和发布。一次 制造商进入生产阶段,也就是预配工具的生态系统, 应强制执行所有证明要求。

证明使用利用 Root 的公钥基础架构 (PKI) 证书授权中心和中间证书 广泛采用的服务器身份验证证书用于 SSL/TLS。此过程 称为“设备认证证书链”

设备认证 PKI

DAC 是 X.509 v3 证书。X.509 的第一个版本由 ITU-T 于 1988 年发布。X.509 v3 和公钥基础架构证书 “Matter”使用的证书吊销列表 (CRL) 现为 RFC5280 指定。它 包含:

  • 公钥
  • 颁发者
  • 主题
  • 证书序列号
  • 有效期(失效时间不确定)
  • 签名

供应商 ID 和产品 ID 是 DAC 中 MatterDACName 的属性 主题。

DAC 因设备而异,并与产品中的唯一认证密钥对相关联。由与设备制造商关联的 CA 颁发。

DAC 的签名已根据产品认证中级标准进行验证 证书 (PAI),该证书也由 PAA 颁发。不过,供应商可能会 选择为每个产品(特定于 PID)、为产品组创建一个 PAI, 所有产品。

在信任链根部,产品认证机构 (PAA) 证书授权机构 (CA) 公钥可验证签名 模型。请注意,Matter 受信任证书存储区已联合 而该委员会信任的 PAA 证书集会保存在 中央可信数据库(分布式合规性分类账)。加入 PAA 需要符合由 Alliance

Matter 认证公钥基础架构
图 1:Matter 认证公钥基础架构

PAI 也是一个 X.509 v3 证书,其中包含:

  • 公钥
  • 颁发者
  • 主题
  • 证书序列号
  • 有效期(失效时间不确定)
  • 签名

供应商 ID 和产品 ID(可选)是以下列表中 MatterDACName 的属性: DAC 主题

最后,PAA 是链中的根证书,并且是自签名证书。其中包括:

  • 签名
  • 公钥
  • 颁发者
  • 主题
  • 证书序列号
  • 有效期

其他证明文档和私信数量

认证流程包含多个文档和消息。以下内容 简要概述了其功能和组成。以下图片有助于 对层次结构的理解

证明文档层次结构
图 2:认证文档层次结构
文档 说明
认证声明 (CD) CD 允许 Matter 部设备 以证明其符合 Matter 协议。 每当 Matter 认证流程完成时,Alliance 都会为设备类型创建一个 CD,以便供应商将其包含在固件中。该光盘包含以下信息及其他信息:
  • VID
  • 项目 ID (一个或多个)
  • 服务器类别 ID
  • 客户类别 ID
  • 安全级别
  • 安全信息
  • 认证 类型(开发、临时或 官方)
  • 签名
固件信息(可选) 固件信息包含 CD 版本号以及固件中一个或多个组件(例如操作系统、文件系统、引导加载程序)的摘要。这些摘要可以是 软件组件的哈希值或 签名清单的哈希值 软件组件。

供应商也可能会选择 仅包含在固件信息中 “hash-of-hashes”的 组件,而不是 单个哈希值。

固件 信息是 认证流程 如果供应商拥有安全的 负责处理 认证密钥对。
证明信息 由委托人发送给专员的邮件。认证信息结合了包含认证元素认证签名的 TLV。
证明元素 这是一个包含以下内容的 TLV:

  • 证书声明
  • 时间戳
  • 证明 Nonce
  • 固件信息 (选填)
  • 供应商专用信息(可选)
证明挑战 期间产生的带外验证 Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) 次 机构和 来进一步确保 并避免使用重复使用的签名。光临 来自CASE 会话,PASE 会话或已恢复的会话 CASE 个会话。
证明 TBS(待签名) 包含证明的消息 元素和证明挑战。
认证签名 使用设备认证私钥签名的认证 TBS 的签名。

认证过程

总监负责为委员会出证。它会执行 操作步骤:

  1. 调试器生成一个 32 字节的随机认证 Nonce。在加密中 术语:Nonce(使用一次的数字)是 而且只能使用一次。
  2. 调试器将 Nonce 发送到 DUT 并请求证明 信息。
  3. DUT 会生成证明信息,并使用该证明对其进行签名 私钥。
  4. 管理员从设备恢复 DAC 和 PAI 证书,并从其 Matter 信任存储区查找 PAA 证书。
  5. 专员验证认证信息。这些条件是 进行验证:
    • 必须验证 DAC 证书链,包括撤消检查 PAI 和 PAA。
    • DAC 上的 VID 与 PAI 上的 VID 匹配。
    • 认证签名有效。
    • 设备认证元素中的 Nonce 与 专员。
    • 证书声明签名可使用以下其中一种格式: Alliance广为人知的认证声明签名 键。
    • 固件信息(如果存在且受专员支持)与分布式合规性账本中的条目相符。
    • 此外,设备基础版 API 还会进行其他 VID/PID 验证 信息集群、认证声明和 DAC。