이제 노드의 몇 가지 주요 개념을 이해했으므로 기기가 서로 통신할 수 있도록 하는 요소를 분석해 보겠습니다.
Matter 사양은 정보를 암호화 및 복호화하는 정교한 메서드와 노드의 ID를 보장하고 암호화 사용자 인증 정보를 공유하기 위한 안전한 메커니즘을 사용합니다.
네트워크의 기기 집합이 동일한 보안 도메인을 공유하여 노드 간에 안전한 통신을 허용하는 경우 이 집합을 패브릭이라고 합니다. Fabric은 동일한 인증 기관 (CA) 최상위 인증서 (신뢰할 수 있는 루트)를 공유하며 CA 컨텍스트 내에서 Fabric ID라는 고유한 64비트 식별자를 공유합니다.
따라서 커미셔닝 프로세스는 동일한 Fabric의 다른 노드와 통신할 수 있도록 새 노드에 Fabric 사용자 인증 정보를 할당하는 프로세스입니다.
운영 사용자 인증 정보
신뢰할 수 있는 루트는 신뢰할 수 있는 루트 인증 기관 (CA) 역할을 하는 생태계인 관리 도메인 관리자(ADM)로부터 수신한 후, 일반적으로 스마트폰, 허브, 컴퓨터와 같이 특정 유형의 GUI가 있는 기기인 커미셔너의 커미셔닝 대상 노드에 설정됩니다.
위원장은 CA에 액세스할 수 있습니다. 따라서 커미셔닝 대상 노드 또는 커미셔너를 대신하여 CA에 노드 운영 사용자 인증 정보를 요청합니다. 사용자 인증 정보는 다음 두 부분으로 구성됩니다.
노드 운영 식별자 (또는 운영 노드 ID)는 Fabric의 모든 노드를 고유하게 식별하는 64비트 숫자입니다.
노드 운영 인증서 (NOC)는 노드가 Fabric 내에서 통신하고 자신을 식별하는 데 사용하는 사용자 인증 정보 집합입니다. 노드 운영 인증서 서명 요청 (NOCSR) 프로세스에 의해 생성됩니다.
NOCSR은 커미셔닝 중인 노드에서 실행되는 절차입니다. 여러 암호화 요소를 결합한 후 이를 커미셔너에게 전송하고 커미셔너는 CA 생태계에서 해당 NOC를 요청합니다. 그림 1은 이 종속 항목 트리와 일부 작업이 발생하는 순서를 보여줍니다.
각 암호화 요소를 이해하는 것은 SDK 개발에 중요하지만, 역할과 의미를 완전히 분석하는 것은 이 프라이머의 범위에 해당하지 않습니다. 중요한 점은 다음과 같습니다.
- NOC는 실제 프로덕션 패브릭에서 CA 생태계에서 발급합니다.
- NOC는 고유한 노드 운영 키 쌍(NOKP)에 암호화로 연결됩니다.
- NOKP는 커미셔닝 프로세스 중에 커미셔닝되는 노드에서 생성됩니다.
- 생태계로 전송되는 NOCSR 정보에는 노드 운영 공개 키가 포함되지만 노드 운영 비공개 키는 커미셔너 또는 CA로 전송되지 않습니다.
- NOCSR 프로세스는 증명 절차의 입력을 사용하고 CSRSR 정보에 서명하여 CA가 신뢰할 수 있는 NOC를 생성하도록 요청을 확인합니다.
증명 절차는 다음 사항을 확인하기 위해 커미셔너가 사용하는 절차입니다.
- 기기가 Matter 인증을 통과했습니다.
- 기기가 실제로 주장하는 것과 일치합니다. 기기는 공급업체, 제품 ID, 기타 제조 정보를 암호화 방식으로 증명합니다.
멀티 관리자
노드는 두 개 이상의 Fabric에서 커미셔닝될 수도 있습니다. 이 속성을 멀티 관리자라고도 합니다. 예를 들어 제조업체의 Fabric과 클라우드 생태계의 Fabric 모두에 커미셔닝된 기기가 있을 수 있으며, 각 Fabric은 서로 다른 암호화된 통신을 처리하고 독립적으로 작동합니다.
여러 Fabric이 공존할 수 있으므로 기기에는 여러 노드 운영 사용자 인증 정보 세트가 있을 수 있습니다. 하지만 노드의 데이터 모델은 공유됩니다. 클러스터 속성, 이벤트, 작업은 Fabric 간에 공통적입니다. 따라서 Thread 또는 Wi-Fi 사용자 인증 정보는 커미셔닝 프로세스 중에 설정되지만 네트워킹 운영 클러스터의 일부이므로 모든 Fabric과 Fabric 사용자 인증 정보가 아닌 노드 DM의 일부 간에 공유됩니다.