Atest

Certyfikowane urządzenia to urządzenia, które przeszły proces certyfikacji Connectivity Standards Alliance (Alliance) Matter.

Podczas procesu uruchamiania certyfikowane urządzenie musi potwierdzać swoją tożsamość. Inaczej mówiąc, musi udowodnić, że jest tym, za co się podaje, i że jest to oryginalny produkt. W związku z tym wszystkie urządzenia Matter mają poświadczenia, które obejmują parę kluczy atesta i powiązany łańcuch certyfikatów. Certyfikat atestacji urządzenia (DAC) jest częścią tego łańcucha. Gdy urządzenie będące w trakcie uruchamiania przedstawi DAC swojemu komisarzowi, ten:

  • została wyprodukowana przez certyfikowanego producenta;
  • oryginalne urządzenie.
  • przeszło testy zgodności Matter.

W trakcie fazy rozwoju producent może testować urządzenia bez przechodzenia pełnego procesu certyfikacji. Testerzy powinni zostać wyraźnie poinformowani, że urządzenie jest testowane i nie zostało jeszcze certyfikowane ani wprowadzone na rynek. Gdy producent wejdzie w fazę produkcji, ekosystem dostawcy powinien egzekwować wszystkie wymagania dotyczące atestacji.

Uwierzytelnianie korzysta z infrastruktury klucza publicznego (PKI), która wykorzystuje główne urzędy certyfikacji i certyfikaty pośrednie w podobny sposób jak powszechnie stosowane certyfikaty uwierzytelniania serwera używane do SSL/TLS. Ten proces nazywa się łańcuchem certyfikatów atestatorów urządzeń.

Infrastruktura klucza publicznego do weryfikacji urządzeń

DAC to certyfikat X.509 w wersji 3. Pierwsza wersja X.509 została opublikowana w 1988 r. przez ITU-T. Certyfikat X.509 w wersji 3 z certyfikatem infrastruktury klucza publicznego i listą odwołanych certyfikatów (CRL) używany przez Matter jest określony w RFC5280. Tabela zawiera:

  • Klucz publiczny
  • Wystawca
  • Temat
  • Numer seryjny certyfikatu
  • ważność, w przypadku której data ważności może być nieokreślona;
  • Podpis

Identyfikator dostawcy i identyfikator produktu to atrybuty MatterDACName w temacie DAC.

DAC jest unikalny dla każdego urządzenia i jest powiązany z niepowtarzalnym kluczem pary uwierzytelniania w ramach usługi. Jest on wydawany przez urząd certyfikacji powiązany z producentem urządzenia.

Podpis DAC jest weryfikowany na podstawie średniego certyfikatu weryfikacji produktu (PAI), który jest również wydawany przez PAA. Sprzedawca może jednak utworzyć jeden identyfikator PAI na produkt (dla konkretnego identyfikatora PID), grupę produktów lub dla wszystkich swoich produktów.

Na szczycie łańcucha zaufania urząd certyfikacji produktu (PAA) urzędu certyfikacji (CA) publiczny klucz weryfikuje podpisy z urzędu PAI. Pamiętaj, że magazyn zaufania Matter jest zaufany, a zbiór certyfikatów PAA zaufanych przez komisarzystów jest przechowywany w centralnej zaufanej bazie danych (rozproszonej księdze zgodności). Dodanie PAA do zaufanego zestawu wymaga spełnienia zasad certyfikatów zarządzanych przez Alliance.

Infrastruktura kluczy publicznych w ramach atestacji Matter
Rysunek 1. Infrastruktura kluczy publicznych w ramach atestacji Matter

PAI to także certyfikat X.509 w wersji 3, który zawiera:

  • Klucz publiczny
  • Wystawca
  • Temat
  • Numer seryjny certyfikatu
  • ważność, w przypadku której data ważności może być nieokreślona;
  • Podpis

Identyfikator dostawcy i identyfikator produktu (opcjonalnie) to atrybuty MatterDACName w temacie pliku DAC.

PAA to certyfikat główny w łańcuchu, który jest podpisany samodzielnie. Obejmuje:

  • Podpis
  • Klucz publiczny
  • Wystawca
  • Temat
  • Numer seryjny certyfikatu
  • Poprawność

Dodatkowe dokumenty i wiadomości dotyczące weryfikacji

Proces weryfikacji obejmuje kilka dokumentów i wiadomości. Poniżej znajdziesz krótkie omówienie ich funkcji i składu. Ilustracja poniżej pomoże Ci zrozumieć tę hierarchię.

Hierarchia dokumentów poświadczenia
Rysunek 2. Hierarchia dokumentów dotyczących certyfikatów
Dokument Opis
Deklaracja certyfikacyjna (CD) Płyta CD umożliwia urządzeniu Matter udowodnienie zgodności z protokołem Matter. Po zakończeniu procesu certyfikacji Matter Alliance tworzy płytę CD dla danego typu urządzenia, aby sprzedawca mógł uwzględnić ją w oprogramowaniu układowym. Płyta CD zawiera między innymi te informacje:
  • VID
  • PID (co najmniej 1)
  • Identyfikator kategorii serwera
  • Identyfikator kategorii klienta
  • Poziom zabezpieczeń
  • Informacje o bezpieczeństwie
  • Typ certyfikatu (rozwijany, tymczasowy lub oficjalny)
  • Podpis
Informacje o oprogramowaniu układowym (opcjonalnie) Informacje o oprogramowaniu firmwarowym zawierają numer wersji CD oraz co najmniej jeden ciąg znaków kontrolnych komponentów oprogramowania firmowego, takich jak system operacyjny, system plików czy bootloader. Digest może być haszem komponentów oprogramowania lub haszem podpisanych manifestów komponentów oprogramowania.

Dostawca może też zdecydować się na uwzględnienie w informacjach o oprogramowaniu tylko „hasz-haszy” komponentów zamiast tablicy pojedynczych haszy.

Informacje o oprogramowaniu są opcjonalnym elementem procesu uwierzytelniania i są stosowane, gdy dostawca ma bezpieczne środowisko uruchamiania, które obsługuje parę kluczy uwierzytelniania.
Informacje dotyczące atestacji Wiadomość wysłana z Komisji do komisarza. Informacje dotyczące weryfikacji to połączenie TLV zawierające elementy weryfikacji i podpis weryfikacyjny.
Elementy atestacji To jest TLV zawierający:

  • Oświadczenie dotyczące certyfikatu
  • Sygnatura czasowa
  • Atestat Nonce
  • Informacje o oprogramowaniu układowym (opcjonalnie)
  • Informacje o dostawcy (opcjonalne)
Attestation Challenge Wyzwanie poza pasmem uzyskane podczas tworzenia sesji Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE), które służy do zwiększenia bezpieczeństwa procedury i zapobiegania powtórzeniu podpisu. Pochodzi z sesji CASE, PASE lub wznowionej sesji CASE.
Zaświadczenie TBS (do podpisania) Wiadomość zawierająca elementy atesta i wyzwanie dotyczące atesta.
Podpis na zaświadczeniu podpis TBS uwierzytelniający, podpisany przy użyciu klucza prywatnego urządzenia;

Procedura atestacji

Komisarz jest odpowiedzialny za weryfikację komisji. Wykonuje te czynności:

  1. Komisarz generuje losowy 32-bajtowy identyfikator sesji. W żargonie kryptograficznym nonce (number used once) to losowa liczba wygenerowana w procedurze kryptograficznej i przeznaczona do jednorazowego użycia.
  2. Komisarz wysyła losowy ciąg znaków do DUT i prosi o informacje dotyczące certyfikacji.
  3. DUT generuje informacje dotyczące certyfikatu i podpisuje je kluczem prywatnym certyfikatu.
  4. Komisarz pobiera z urządzenia certyfikat DAC i PAI oraz sprawdza certyfikat PAA w sklepie z zaufanymi sklepami Matter.
  5. Komisarz weryfikuje informacje dotyczące certyfikatu. Warunki weryfikacji:
    • Łańcuch certyfikatów DAC musi zostać zweryfikowany, w tym sprawdzony pod kątem odwołania w przypadku certyfikatów PAI i PAA.
    • VID na DAC jest zgodny z VID na PAI.
    • Podpis atestacji jest prawidłowy.
    • Wartość nonce w elementach atestacyjnym urządzeniu jest zgodna z wartością nonce podaną przez komisarza.
    • Podpis deklaracji certyfikatu jest ważny, ponieważ został utworzony przy użyciu jednego z dobrze znanych kluczy podpisujących deklaracji certyfikatu Alliance.
    • Informacje o oprogramowaniu sprzętowym (jeśli są obecne i obsługiwane przez Komisarza) są zgodne z zapisyem w rozproszonej księdze zgodności.
    • Dodatkowe weryfikacje VID/PID są też przeprowadzane między klastrem podstawowych informacji o urządzeniu, deklaracją certyfikacyjną a DAC.