Certyfikowane urządzenia to urządzenia, które przeszły Connectivity Standards Alliance (Alliance) Matter proces certyfikacji.
Podczas procesu uruchamiania certyfikowane urządzenie musi potwierdzić swoją tożsamość. Inaczej mówiąc, musi udowodnić, że jest tym, za co się podaje, i że jest oryginalnym produktem. Dlatego wszystkie Matter urządzenia mają dane logowania, które obejmują parę kluczy atestu i powiązany łańcuch certyfikatów. Certyfikat atestu urządzenia (DAC) jest częścią tego łańcucha. Gdy urządzenie w trakcie uruchamiania przedstawi DAC osobie uruchamiającej, ta osoba potwierdzi, że:
- został wyprodukowany przez certyfikowanego producenta;
- jest oryginalnym urządzeniem,
- przeszło Matter testów zgodności.
W fazie rozwoju producent może testować urządzenia bez pełnego procesu atestowania. Testerzy powinni być wyraźnie poinformowani, że urządzenie jest w trakcie testów i nie zostało jeszcze certyfikowane ani wprowadzone na rynek. Gdy producent przejdzie do etapu produkcji, ekosystem dostawcy powinien egzekwować wszystkie wymagania dotyczące atestu.
Atestowanie 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 w przypadku SSL/TLS. Ten proces jest nazywany łańcuchem certyfikatów atestowania urządzenia.
Infrastruktura klucza publicznego atestu urządzenia
Dokument tożsamości to certyfikat X.509 w wersji 3. Pierwsza wersja standardu X.509 została opublikowana w 1988 roku przez ITU-T. Standard X.509 w wersji 3 z certyfikatem infrastruktury kluczy publicznych i listą odwołanych certyfikatów (CRL) używany przez Matter jest określony w dokumencie RFC5280. Zawiera on:
- Klucz publiczny
- Wystawca
- Temat
- Numer seryjny certyfikatu
- Ważność, w przypadku której data wygaśnięcia 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 powiązany z unikalną parą kluczy atestacyjnych w ramach produktu. Jest on wydawany przez urząd certyfikacji powiązany z producentem urządzenia.
Podpis DAC jest weryfikowany na podstawie certyfikatu pośredniego atestu produktu (PAI), który jest również wydawany przez PAA. Sprzedawca może jednak utworzyć jeden identyfikator PAI na produkt (identyfikator PID), grupę produktów lub wszystkie produkty.
U podstaw łańcucha zaufania znajduje się klucz publiczny urzędu certyfikacji (CA) urzędu atestacji produktu (PAA), który weryfikuje podpisy z PAI. Pamiętaj, że Matter magazyn zaufania jest federacyjny, a zestaw certyfikatów PAA zaufanych przez komisarzy jest przechowywany w centralnej bazie danych zaufania (rozproszonej księdze zgodności). Wprowadzenie PAA do zaufanego zbioru wymaga spełnienia warunków zasad certyfikatów zarządzanych przez Alliance.
PAI to również certyfikat X.509 w wersji 3, który zawiera:
- Klucz publiczny
- Wystawca
- Temat
- Numer seryjny certyfikatu
- Ważność, w przypadku której data wygaśnięcia może być nieokreślona.
- Podpis
Identyfikator dostawcy i Identyfikator produktu (opcjonalnie) to atrybuty MatterDACName w temacie DAC.
PAA jest certyfikatem głównym w łańcuchu i jest podpisany samodzielnie. Obejmuje:
- Podpis
- Klucz publiczny
- Wystawca
- Temat
- Numer seryjny certyfikatu
- Ważność
Dodatkowe dokumenty i wiadomości potwierdzające
Proces atestowania 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ć ich hierarchię.
| Dokument | Opis |
|---|---|
| Deklaracja certyfikacji (CD) <0x | CD umożliwia MatterurządzeniuMatter potwierdzenie zgodności z protokołem.MatterPo zakończeniu procesów certyfikacji Alliance tworzy CD dla typu urządzenia, aby dostawca mógł go uwzględnić w oprogramowaniu sprzętowym. CD zawiera m.in. te informacje:
|
| Informacje o oprogramowaniu układowym (opcjonalnie) <0x0 | Informacje o oprogramowaniu zawierają numer wersji CD oraz co najmniej jeden skrót komponentów oprogramowania, takich jak system operacyjny, system plików czy program rozruchowy. Skróty mogą być haszami komponentów oprogramowania lub haszami podpisanych manifestów komponentów oprogramowania. Dostawca może też zdecydować się na umieszczenie w informacjach o oprogramowaniu tylko „haszu haszów” swoich komponentów zamiast tablicy poszczególnych haszów. Informacje o oprogramowaniu są elementem opcjonalnym w procesie atestowania i mają zastosowanie, gdy dostawca ma bezpieczne środowisko rozruchowe, które obsługuje parę kluczy atestowania. |
| Informacje o atestach | Wiadomość wysłana od podmiotu upoważnionego do podmiotu upoważniającego. Informacje o atestowaniu łączą TLV zawierający elementy atestowania i podpis atestu. |
| Elementy atestu | Jest to TLV zawierający:
|
| Wyzwanie związane z atestem <0x0A | Wyzwanie poza pasmem uzyskane podczas nawiązywania sesji Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE) i używane do dalszego zabezpieczania procedury oraz unikania powtórzonych podpisów. Pochodzi z sesji CASE, sesji PASE lub wznowionej sesji CASE. |
| Zaświadczenie TBS (do podpisania) | Wiadomość zawierająca elementy atestu i test atestu. |
| Podpis zaświadczający | Podpis TBS zaświadczenia, podpisany przy użyciu klucza prywatnego zaświadczenia o urządzeniu. |
Procedura atestu
Komisarz jest odpowiedzialny za poświadczenie komisarza. Wykonuje te czynności:
- Komisarz generuje losowy 32-bajtowy nonce zaświadczenia. W żargonie kryptograficznym nonce (liczba używana raz) to losowa liczba generowana w procedurze kryptograficznej i przeznaczona do jednorazowego użycia.
- Komisarz wysyła do DUT wartość nonce i żąda informacji o atestowaniu.
- Urządzenie DUT generuje informacje o atestacji i podpisuje je za pomocą klucza prywatnego atestacji.
- Komisarz odzyskuje certyfikat DAC i PAI z urządzenia i wyszukuje certyfikat PAA w swoim Matterzaufanym sklepie.
- Komisarz weryfikuje informacje w zaświadczeniu. Warunki weryfikacji:
- Łańcuch certyfikatów DAC musi zostać zweryfikowany, w tym sprawdzenie odwołania w przypadku PAI i PAA.
- Identyfikator VID w przypadku dostawcy danych jest zgodny z identyfikatorem VID w przypadku dostawcy informacji o atrybutach.
- Podpis atestu jest prawidłowy.
- Wartość nonce w elementach atestu urządzenia jest zgodna z wartością nonce podaną przez Komisarza.
- Podpis deklaracji certyfikatu jest ważny, jeśli użyto jednego z dobrze znanych kluczy podpisywania deklaracji certyfikatu Alliance.
- Informacje o oprogramowaniu sprzętowym (jeśli są dostępne i obsługiwane przez urządzenie) są zgodne z wpisem w rozproszonej księdze zgodności.
- Dodatkowe weryfikacje VID/PID odbywają się również między klastrem podstawowych informacji o urządzeniu, deklaracją certyfikacji i DAC.