调试

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

从宏观层面来看,调试流程可分为多个阶段:

调试流程
图 1:调试流程 - 高级

设备发现

在启动委托流程之前,受委托方必须开始自行宣传。委托方可以使用以下任一可赚取佣金的发现方法来宣传自己。受委托方还必须提供初始配置载荷。

连接到设备 (PASE)

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

获取委托人信息

专员从受托方读取所有描述符。DescriptorCluster 位于设备的端点 0 上,用于描述所有其他端点。专员还会读取基本信息集群,其中包括供应商 ID、产品 ID、产品名称和序列号等信息。在此步骤中,委托方还会读取受托方的设备类型,这有助于在委托方一侧实现良好的用户体验。

监管配置

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

受托人证明

受委托方认证程序的目的是确定设备是否已通过认证,以及是否为正品 Matter 设备。专员从受委托方提取设备证明证书 (DAC)产品证明中间 (PAI) 证书。这些证书包含供应商 ID、产品 ID 和证明公钥。收到证书后,专员会发出质询请求,该请求应由证明私钥签名,并使用该签名来确定受托人的真实性。

证书签名请求 (CSR)

委托人向受托人发送证书签名请求 (CSR)。 委托方创建了一对独特的运行密钥,该密钥对将在稍后的 Certificate Authenticated Session Establishment (CASE) 中使用。受托人将生成的 CSR 信息返回给委托人。

添加节点运行证书 (NOC)

委托方使用从受托方收到的 CSR 信息,并将其传递给管理网域管理器 (ADM) 以生成可信的节点运行证书 (NOC)。专员使用 AddTrustedRootCertReq 命令在受托方上安装根证书,然后使用 AddNOC 命令安装节点运行证书。

网络配置

委托方在受托方上配置运营网络。此步骤适用于 Thread 设备或 Wi-Fi 设备。如果以太网设备已连接到网络,则无需执行此步骤。它使用 ScanNetworksAddOrUpdateWifiNetworkConnectNetwork 命令。

运营发现

新委托的节点连接到网络后,委托方会使用运行发现在运行网络上查找该节点。运行发现是指使用 DNS-SD 在运行网络上查找已委托节点的流程。如果被委托方是 Wi-Fi 设备,它将使用 mDNS 来发现设备。

操作发现有助于网络中的委托方和其他节点了解受委托方正在使用的 IP 地址和端口。

CASE 会话建立

发现新调试的节点后,调试器与设备之间会建立 CASE 会话。此会话由委托方发起,并由设备响应。在此步骤中,系统会交换操作证书,并通过验证它们是否位于同一逻辑结构中来建立共享信任。

调试完成

专员使用 CASE 向新调试的设备发送 CommissioningComplete 命令。这是调试流程的最后一步。CommissioningComplete 还会自动解除安全计时器的武装。成功完成调试后,设备会像运行网络上的任何其他节点一样运行。