증명

인증된 기기Connectivity Standards Alliance (Alliance) Matter 인증 절차를 거친 기기입니다.

커미셔닝 절차 중에 인증된 기기는 자체 증명 을 해야 합니다. 다시 말해, 기기가 주장하는 바가 사실이고 정품 제품임을 증명해야 합니다. 따라서 모든 Matter 기기에는 증명 키 쌍과 연결된 인증서 체인을 포함하는 사용자 인증 정보가 있습니다. 기기 증명 인증서 (DAC)는 이 체인의 일부입니다. 커미셔닝 중인 기기가 DAC를 커미셔너에게 제공하면 커미셔너는 다음을 인증합니다.

  • 인증된 제조업체에서 제작했습니다.
  • 정품 기기입니다.
  • 규정 준수 테스트를 통과했습니다.Matter

개발 단계에서 제조업체는 전체 증명 절차 없이 기기를 테스트할 수 있습니다. 테스터는 기기가 테스트 중이며 아직 인증 및 출시되지 않았음을 명시적으로 알려야 합니다. 제조업체가 프로덕션 단계에 들어가면 프로비저닝 도구의 생태계에서 모든 증명 요구사항을 적용해야 합니다.

증명은 SSL/TLS에 사용되는 널리 채택된 서버 인증 인증서와 유사한 방식으로 루트 인증 기관 및 중간 인증서를 활용하는 공개 키 인프라 (PKI)를 사용합니다. 이 절차를 기기 증명 인증서 체인이라고 합니다.

기기 증명 PKI

DAC는 X.509 v3 인증서입니다. X.509의 첫 번째 버전은 1988년 ITU-T에서 게시했습니다. Matter에서 사용하는 공개 키 인프라 인증서 및 인증서 해지 목록 (CRL)이 포함된 X.509 v3은 RFC5280에 지정되어 있습니다. 다음이 포함됩니다.

  • 공개 키
  • 발급자
  • 제목
  • 인증서 일련번호
  • 만료가 불확실할 수 있는 유효성
  • 서명

공급업체 ID 및 제품 ID는 DAC 주체의 MatterDACName 속성입니다.

DAC는 기기별로 고유하며 제품 내의 고유한 증명 키 쌍과 연결됩니다. 기기 제조업체와 연결된 CA에서 발급합니다.

DAC의 서명은 PAA에서 발급한 제품 증명 중간 인증서 (PAI)에 대해 검사됩니다. 그러나 공급업체는 제품 (PID별), 제품 그룹 또는 모든 제품에 대해 하나의 PAI를 만들도록 선택할 수 있습니다.

신뢰 체인의 루트에서 제품 증명 기관(PAA) 인증 기관 (CA) 공개 키는 PAI의 서명을 검사합니다. Matter 트러스트 저장소는 제휴되어 있으며 커미셔너가 신뢰하는 PAA 인증서 집합은 중앙 신뢰할 수 있는 데이터베이스 (분산 규정 준수 원장)에서 유지관리됩니다. 신뢰할 수 있는 집합 내에서 PAA를 입력하려면 Alliance에서 관리하는 인증서 정책을 충족해야 합니다.

Matter 증명 공개 키 인프라
그림 1: Matter 증명 공개 키 인프라

PAI는 다음을 포함하는 X.509 v3 인증서이기도 합니다.

  • 공개 키
  • 발급자
  • 제목
  • 인증서 일련번호
  • 만료가 불확실할 수 있는 유효성
  • 서명

공급업체 ID 및 제품 ID (선택사항)는 DAC 주체의 MatterDACName 속성입니다.

마지막으로 PAA는 체인의 루트 인증서이며 자체 서명됩니다. 다음이 포함됩니다.

  • 서명
  • 공개 키
  • 발급자
  • 제목
  • 인증서 일련번호
  • 유효성

추가 증명 문서 및 메시지

증명 절차에는 여러 문서와 메시지가 있습니다. 다음 항목은 기능 및 구성에 대한 간략한 개요입니다. 아래 이미지는 계층 구조를 이해하는 데 도움이 됩니다.

증명 문서 계층 구조
그림 2: 증명 문서 계층 구조
문서 설명
인증 선언 (CD) CD 를 사용하면 Matter 기기가 프로토콜을 Matter 준수함을 증명할 수 있습니다. Matter 인증 절차가 완료될 때마다 Alliance는 기기 유형의 CD 를 생성하므로 공급업체는 이를 펌웨어에 포함할 수 있습니다. CD에는 다음과 같은 정보가 포함됩니다.
  • VID
  • PID(1개 이상)
  • 서버 카테고리 ID
  • 클라이언트 카테고리 ID
  • 보안 수준
  • 보안 정보
  • 인증 유형 (개발, 임시 또는 공식)
  • 서명
펌웨어 정보 (선택사항) 펌웨어 정보 에는 CD 버전 번호와 OS, 파일 시스템, 부트로더와 같은 펌웨어의 구성요소 다이제스트가 하나 이상 포함되어 있습니다. 다이제스트는 소프트웨어 구성요소의 해시 또는 소프트웨어 구성요소의 서명된 매니페스트의 해시일 수 있습니다.

공급업체는 개별 해시 배열 대신 구성요소의 '해시 해시'만 펌웨어 정보에 포함하도록 선택할 수도 있습니다.

펌웨어 정보는 증명 절차의 선택적 요소이며 공급업체에 증명 키 쌍을 처리하는 보안 부팅 환경이 있는 경우에 적용됩니다.
증명 정보 커미셔니에서 커미셔너에게 전송된 메시지입니다. 증명 정보는 증명 요소증명 서명 이 포함된 TLV를 결합합니다.
증명 요소 다음이 포함된 TLV입니다.

  • 인증 선언
  • 타임스탬프
  • 증명 논스
  • 펌웨어 정보(선택사항)
  • 공급업체별 정보 (선택사항)
증명 챌린지 비대역 내 챌린지는 Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) 세션 설정 중에 파생되며 절차를 더욱 안전하게 보호하고 재생된 서명을 방지하는 데 사용됩니다. 세션, PASE 세션 또는 재개된 CASE 세션에서 가져옵니다.CASE
증명 TBS (서명 대상) 증명 요소 및 증명 챌린지가 포함된 메시지입니다.
증명 서명 기기 증명 비공개 키를 사용하여 서명된 증명 TBS의 서명입니다.

증명 절차

커미셔너는 커미셔니를 증명할 책임이 있습니다. 다음 단계를 실행합니다.

  1. 커미셔너는 무작위 32바이트 증명 논스를 생성합니다. 암호화 전문 용어에서 논스 (한 번 사용되는 숫자)는 암호화 절차에서 생성되고 한 번 사용되도록 설계된 무작위 숫자입니다.
  2. 커미셔너는 논스를 DUT에 전송하고 증명 정보를 요청합니다.
  3. DUT는 증명 정보를 생성하고 증명 비공개 키로 서명합니다.
  4. 커미셔너는 기기에서 DAC 및 PAI 인증서를 복구하고 Matter 트러스트 저장소에서 PAA 인증서를 조회합니다.Matter
  5. 커미셔너는 증명 정보를 검사합니다. 검사 조건은 다음과 같습니다.
    • PAI 및 PAA에 대한 해지 검사를 포함하여 DAC 인증서 체인을 검사해야 합니다.
    • DAC의 VID가 PAI의 VID와 일치합니다.
    • 증명 서명이 유효합니다.
    • 기기 증명 요소의 논스가 커미셔너가 제공한 논스와 일치합니다.
    • 인증 선언 서명이 Alliance's의 잘 알려진 인증 선언 서명 키 중 하나를 사용하여 유효합니다.
    • 펌웨어 정보 (커미셔너가 제공하고 지원하는 경우)가 분산 규정 준수 원장의 항목과 일치합니다.
    • 추가 VID/PID 검사도 기기 기본 정보 클러스터, 인증 선언, DAC 간에 이루어집니다.