调试

Matter 中的调试是指为新设备分配 Fabric 凭据的过程。调试器是执行调试流程的设备。被调试端是需要配置到结构中的新设备。

概括来讲,调试流程可以分为多个阶段:

调试流程
图 1:调试流程 - 简要说明

设备发现

在开始调试流程之前,被调试端必须开始通告自身。被委托人可以使用三种可委托发现方法中的任何一种来通告自身。被委托人还必须提供初始配置载荷。

连接到设备 (PASE)

调试器看到通告并匹配鉴别器后,会使用初始配置载荷中的密码执行 Passcode Authenticated Session Establishment (PASE) 以连接到设备。这是一种安全建立密钥的方法,两台设备都能够使用这些密钥来建立通信。在此步骤中,Commissioner 还会启用故障安全机制。如果调试未成功完成,故障安全机制可提供一种将设备回滚到原始状态的方法。

获取受托人信息

Commissioner 会从 Commissionee 读取所有描述符。DescriptorCluster 位于设备的端点 0 上,并描述所有其他端点。Commissioner 还会读取基本信息集群,其中包含供应商 ID、产品 ID、产品名称和序列号等信息。 在此步骤中,Commissioner 还会读取 Commissionee 的设备类型,这有助于在 Commissioner 端提升用户体验。

监管配置

配网器使用 SetRegulatoryConfig 命令在被配网器上配置监管信息。监管信息包括配置设备位置(室内/室外/两者)或设置国家/地区代码等信息。

受托人证明

Commissionee 认证过程的目标是确定设备是否已通过认证,以及是否为正版 Matter 设备。Commissioner 从 Commissionee 中提取设备认证证书 (DAC) 和产品认证中间 (PAI) 证书。这些证书包含供应商 ID、产品 ID 和认证公钥。收到证书后,配网器会发出质询请求,该请求应由认证私钥签名,并用于确定被配网器的真实性。

证书签名请求 (CSR)

Commissioner 向 Commissionee 发送证书签名请求 (CSR)。 被委托人会创建一个唯一的运行密钥对,该密钥对稍后将在 Certificate Authenticated Session Establishment (CASE) 中使用。被配网设备将生成的 CSR 信息返回给配网设备。

添加节点操作证书 (NOC)

Commissioner 使用从 Commissionee 收到的 CSR 信息,并将其传递给管理网域管理器 (ADM),以生成可信的节点操作证书 (NOC)。配网器使用 AddTrustedRootCertReq 命令在被配网设备上安装根证书,然后使用 AddNOC 命令安装节点操作证书。

网络预配

配网器在被配网设备上配置操作网络。Thread 或 Wi-Fi 设备需要执行此步骤。对于已连接到网络的以太网设备,不需要执行此步骤。它使用 ScanNetworks、AddOrUpdateWifiNetwork 和 ConnectNetwork 命令。

运营发现

新配置的节点连接到网络后,配置器会使用操作发现在操作网络上查找该节点。操作发现是指使用 DNS-SD 在操作网络上查找已调试节点的过程。如果被配网设备是 Wi-Fi 设备,它将使用 mDNS 来发现设备。

操作发现可帮助配网器和网络中的其他节点了解配网对象使用的 IP 地址和端口。

CASE 会话建立

发现新配置的节点后,系统会在配置器和设备之间建立 CASE 会话。此会话由 Commissioner 发起,并由设备响应。在此步骤中,系统会交换操作证书,并通过验证这些证书是否位于同一逻辑结构中来建立共享信任。

调试完成

配网器使用 CASE 向新配网的设备发送 CommissioningComplete 命令。这是调试流程中的最后一步。CommissioningComplete 还会自动解除故障安全计时器。成功完成调试后,该设备的操作方式与操作网络上的任何其他节点一样。