设备认证

设备认证是用于验证入网节点(Commissionee)是否是真实已认证的产品的过程。

在配网过程中,设备通过加密方式向配网节点(Commissioner)证明:

  • 这是一款通过安全认证的产品

  • 这是一款通过 Matter 合规性测试的产品

为了实现这些目标,该设备应有:

  • DAC(设备认证证书)

  • 跟 DAC 匹配的私钥

  • PAI 证书(产品认证中间证书)

  • 验证器

  • CD(认证声明)

在开发阶段,制造商无需经过完整的认证流程即可测试其设备。应明确告知测试人员设备仍处于测试阶段,尚未经过认证和发布。一旦制造商进入生产阶段,供应商的生态系统应强制执行所有认证要求。

认证使用 PKI(公钥基础设施),PKI 利用根证书颁发机构和中间证书,这与广泛采用的用于 SSL/TLS 的服务器认证证书类似。这个过程被称为设备认证证书链。

设备认证 PKI

Matter 的设备认证 PKI 由多个根 CA(根证书颁发机构)颁发根证书。根 CA 即产品认证中心,它们受到 Matter 和 CSA 的严格审查。 这类似于浏览器使用的 Web PKI,但在这种情况下,浏览器和操作系统可能会在其默认的受信任根存储中包含来自数十个认证中心的数百个根证书,而设备认证 PKI 在这两个方面的数字都要低得多。

PKI 证书链的每一项内容都以 PAA(产品认证颁发机构)开始,以 DAC 结束。完整的设备认证 PKI 证书链始终包含三个证书:PAA、PAI、DAC,如下图所示。

../../../../_images/Device_Attestation_PKI.jpg

设备认证 PIK

PAA:PAA 是链中的根证书,它是自签名的。它包含以下信息:

  • 版本

  • 序列号

  • 签名

  • 颁发者

  • 有效期

  • 使用者

  • 公钥

PAI:PAI 本身由 PAA 签署。它包含以下信息:

  • 版本

  • 序列号

  • 签名

  • 颁发者(PAA)

  • 有效期

  • 使用者(MatterDACName 中包含 VID)

  • 公钥

DAC:DAC 由 PAI 签署,PAA 不直接签署任何 DAC。每个 Matter 设备的 DAC 都是唯一的,并与产品内唯一的认证密钥对相关联。它包含以下信息:

  • 版本

  • 序列号

  • 签名

  • 颁发者(PAI)

  • 有效期

  • 使用者(MatterDACName 中包含 VID 和 PID)

  • 公钥

设备认证声明

认证声明(CD)是 Matter 设备声明其协议符合性的数据,由 CSA 联盟签署和颁发。当成功完成该设备类型的产品认证后,CSA 联盟产生该设备类型的 CD,并可由制造商写入设备的固件。

CD 中包含以下信息:

  • VID

  • PID:该字段包含同一认证涵盖的多个产品的 PID 的数组

  • 设备类型:例如 0x000a,表示该设备具有门锁设备类型的主要功能

  • 认证 ID:包含 CSA 为该 CD 分配的一个全局唯一序列号

  • 安全级别:保留字段

  • 安全信息:保留字段

  • 版本号:CSA 分配的版本号

  • 认证类型:包含该 CD 的认证类型

    • 0:开发-用于开发和测试

    • 1:临时-用于进行认证测试时的设备,或允许生产和分发与认证并行进行

    • 2:官方-通过认证后分配

设备认证过程

设备认证过程由下面的步骤组成:

  1. 配网节点使用 CertificateChain Request 命令读取入网节点的设备认证证书链,由于入网节点证书链包含两个证书(PAI 和 DAC),因此通常需要两个命令才能获得这两个证书。

  2. 入网节点使用 CertificateChain Response 命令回复配网节点所请求的证书。

  3. 在获取到证书链后,配网节点生成一个 32 字节的认证随机数。

  4. 配网节点向入网节点发送认证随机数,并用 Attestation Request 命令请求认证信息。

  5. 入网节点生成认证信息。

  6. 入网节点使用 Attestation Response 命令将签名的认证信息返回给配网节点。

  7. 配网节点对拿到的认证信息进行验证。

整个认证过程如下图所示:

../../../../_images/Device_Attestation_Procedure.jpg

设备认证过程

在步骤 7 中,配网节点会通过以下方法验证认证信息:

  1. PAA 是否存在于配网节点的可信根存储中,该存储至少应包含分布式合规数据库(Distributed Compliance Ledger)中存在的全球信任 PAA 证书集合。关于分布式合规数据库的更多信息,可参考 分布式合规数据库

  2. DAC 证书链是有效的,包括对 PAI 和 DAC 的吊销检查。

  3. PAI、DAC 和 CD 的 VID 相匹配。如果 PAA 中包含 VID,应与其他证书相匹配。

  4. 验证认证响应中的设备认证签名。

  5. 设备认证要素中的认证随机数与配网节点提供的认证随机数相匹配。

  6. 认证声明的签名需要使用从 CSA 的证书颁发机构证书中获得的公钥进行验证。

  7. 对认证声明进行一系列验证。