Matter에서 커미셔닝이란 새 기기에 패브릭 사용자 인증 정보를 할당하는 프로세스를 의미합니다. 커미셔너는 커미셔닝 프로세스를 실행하는 기기입니다. 커미셔너는 패브릭에 프로비저닝해야 하는 새 기기입니다.
대략적으로 커미셔닝 흐름은 여러 단계로 나눌 수 있습니다.

기기 검색
커미셔닝 흐름이 시작되기 전에 커미셔닝 대상은 자체 광고를 시작해야 합니다. 커미셔너는 세 가지 수수료 지급 대상 디스커버리 방법 중 하나를 사용하여 자체적으로 광고할 수 있습니다. 커미셔너는 온보딩 페이로드도 제공해야 합니다.
기기에 연결 (PASE)
커미셔너가 광고를 보고 식별자를 일치시키면 커미셔너는 온보딩 페이로드의 비밀번호를 사용하여 Passcode Authenticated Session Establishment (PASE)를 실행하여 기기에 연결합니다. 이는 두 기기 모두 통신을 설정하는 데 사용할 수 있는 키를 안전하게 설정하는 방법입니다. 이 단계에서 커미셔너는 페일세이프도 설정합니다. 안전 장치는 커미셔닝이 성공적으로 완료되지 않는 경우 기기를 원래 상태로 롤백하는 방법을 제공합니다.
커미셔너 정보 가져오기
커미셔너는 커미셔니로부터 모든 설명자를 읽습니다. DescriptorCluster
는 기기의 엔드포인트 0에 있으며 다른 모든 엔드포인트를 설명합니다. 커미셔너는 공급업체 ID, 제품 ID, 제품 이름, 일련번호와 같은 정보가 포함된 기본 정보 클러스터도 읽습니다.
이 단계에서 커미셔너는 커미셔니의 기기 유형도 읽어 커미셔너 측의 UX를 유도하는 데 도움이 됩니다.
규제 구성
커미셔너는 SetRegulatoryConfig
명령어를 사용하여 커미셔니의 규제 정보를 구성합니다. 규제 정보에는 기기의 위치 (실내/실외/둘 다)를 구성하거나 국가 코드를 설정하는 등의 정보가 포함됩니다.
커미셔닝 연결 기기 증명
수탁자 증명 절차의 목표는 기기가 인증을 받았고 정품 Matter 기기인지 확인하는 것입니다. 커미셔너는 커미셔니로부터 기기 증명 인증서 (DAC)와 제품 증명 중간 (PAI) 인증서를 추출합니다. 이러한 인증서에는 공급업체 ID, 제품 ID, 증명 공개 키가 포함됩니다. 인증서를 수신하면 커미셔너는 증명 비공개 키로 서명해야 하는 챌린지 요청을 실행하고 이를 사용하여 커미셔니의 진위성을 확인합니다.
인증서 서명 요청 (CSR)
커미셔너가 커미셔니에게 인증서 서명 요청 (CSR)을 보냅니다. 위임자는 나중에 Certificate Authenticated Session Establishment (CASE)에서 사용할 고유한 운영 키 쌍을 만듭니다. 커미셔너는 결과 CSR 정보를 커미셔너에게 다시 반환합니다.
노드 운영 인증서 (NOC) 추가
커미셔너는 커미셔니로부터 수신한 CSR 정보를 사용하여 신뢰할 수 있는 노드 운영 인증서 (NOC)를 생성하기 위해 관리 도메인 관리자 (ADM)에 전달합니다. 커미셔너는 AddTrustedRootCertReq
명령어를 사용하여 커미셔니에 루트 인증서를 설치한 다음 AddNOC
명령어를 사용하여 노드 작동 인증서를 설치합니다.
네트워크 프로비저닝
커미셔너는 커미셔니에서 운영 네트워크를 구성합니다. 이 단계는 Thread 또는 Wi-Fi 기기에 필요합니다. 이 단계는 기기가 이미 네트워크에 연결된 이더넷 기기에는 필요하지 않습니다. ScanNetworks
, AddOrUpdateWifiNetwork
, ConnectNetwork
명령어를 사용합니다.
운영 검색
새로 커미셔닝된 노드가 네트워크에 연결되면 커미셔너는 운영 검색을 사용하여 운영 네트워크에서 노드를 찾습니다. 운영 검색은 DNS-SD를 사용하여 운영 네트워크에서 커미셔닝된 노드를 찾는 프로세스입니다. 커미셔너가 Wi-Fi 기기인 경우 mDNS를 사용하여 기기를 검색합니다.
운영 검색을 통해 커미셔너와 네트워크의 다른 노드는 커미셔니가 사용하는 IP 주소와 포트를 알 수 있습니다.
CASE 세션 설정
새로 커미셔닝된 노드가 검색되면 커미셔너와 기기 간에 CASE 세션이 설정됩니다. 이 세션은 커미셔너에 의해 시작되고 기기에서 응답합니다. 이 단계에서는 운영 인증서가 교환되고 동일한 논리적 패브릭에 있는지 확인하여 공유 신뢰가 설정됩니다.
커미셔닝 완료
커미셔너는 CASE를 사용하여 새로 커미셔닝된 기기에 CommissioningComplete
명령어를 전송합니다. 이는 초기화 프로세스의 마지막 단계입니다. CommissioningComplete
는 페일세이프 타이머도 자동으로 해제합니다. 커미셔닝이 성공적으로 완료되면 기기는 운영 네트워크의 다른 노드처럼 작동합니다.