Opis sposobu działania weryfikowalnych poświadczeń
Identyfikatory zdecentralizowane są kluczowym składnikiem procesu używanego do wystawiania, prezentowania i weryfikowania weryfikowalnego poświadczenia oraz są powodem, dla którego użytkownicy mogą kontrolować, jak i kiedy są prezentowane i udostępniane. Innymi słowy, diD umożliwiają weryfikowanie poświadczeń.
Jednostki zaangażowane w weryfikowalny ekosystem poświadczeń
Ważne jest, aby najpierw opisać niektóre strony biorące udział w ekosystemie weryfikowalnych poświadczeń zgodnie z definicją w rekomendacji W3C w sprawie weryfikowalnego modelu danych poświadczeń w wersji 1.1.
- Wystawca — wystawca tworzy poświadczenia weryfikowalne. Przykłady wystawców to korporacje, jednostki rządowe, organizacje handlowe i inne. Wystawca potwierdza oświadczenia o Tobie, jako podmiot poświadczeń.
- Subject — podmiot jest jednostką, o której składają się oświadczenia w poświadczeniu. Temat weryfikowalnego poświadczenia jest często osobą, ale może być rzeczą lub zwierzęciem. Przykładem, w którym temat może być rzeczą, jest weryfikowalne poświadczenie, które potwierdza, że pojazd jest zarejestrowany w twoim stanie. Podobnie zwierzę może być przedmiotem, tak jak w przypadku poświadczenia, które twierdzi, że zwierzę jest licencjonowane i szczepione przeciwko wściekli. W naszym scenariuszu przyjmiemy, że temat jest osobą i możemy odwoływać się do tematu jako użytkownika w naszym scenariuszu.
- Holder — posiadacz to jednostka, która posiada co najmniej jedno weryfikowalne poświadczenia. Przykłady posiadaczy to uczniowie, pracownicy, klienci itp. Posiadacz może być inny niż podmiot, podobnie jak w przypadku właściciela zwierząt domowych, który posiada poświadczenie, które twierdzi, że ich zwierzę (podmiot) jest licencjonowane i szczepione. W naszym przykładzie i dla uproszczenia posiadacz i podmiot będą takie same i będą określane jako użytkownik lub posiadacz w naszym scenariuszu.
- Weryfikator — weryfikator jest jednostką, która odbiera weryfikowalne poświadczenia do przetwarzania. Przykłady jednostek, które mogą służyć jako weryfikatory, to pracodawcy, pracownicy zabezpieczeń, witryny internetowe, uniwersytety itp.
- Weryfikowalny rejestr danych — weryfikowalne rejestry danych to systemy związane z tworzeniem i rejestrowaniem identyfikatorów DID, kluczy publicznych i innych danych używanych z poświadczeniami weryfikowalnymi. Te systemy są zwykle sieciami rozproszonymi, takimi jak rozproszone rejestry, łańcuchy bloków, rozproszone systemy plików lub inny zaufany magazyn danych. Typ używanego rejestru jest zależny od metody DID. W ekosystemie weryfikowalnych poświadczeń może istnieć wiele rejestrów. Kolekcję tych rejestrów można traktować jako podstawową sieć reprezentującą system zaufania.
Wszystkie strony zaangażowane w transakcję weryfikowalnych poświadczeń (wystawca, użytkownik, weryfikator) mają swój własny unikatowy did, który jest rozpoznawalny dla skojarzonego dokumentu DID.
Portfel cyfrowy
Innym ważnym składnikiem w ekosystemie weryfikowalnych poświadczeń jest portfel cyfrowy. Mówiąc po prostu, cyfrowy portfel jest reprezentacją naszego portfela fizycznego, jako aplikacji programowej. Podobnie jak nasze portfele fizyczne, używamy go do przechowywania poświadczeń, takich jak kartę pokładową, kartę biblioteki, pieniądze, przekazywanie i wiele innych typów poświadczeń i prywatnych danych.
W rzeczywistości portfel cyfrowy jest więcej niż to. Portfel cyfrowy ma do niego dwie części, portfel i agent cyfrowy. Portfel służy jako kontener dla wszystkich rzeczy, które umieścisz w nim - wszystkie poświadczenia, przekazuje, dane prywatne itp. Agent cyfrowy to oprogramowanie, które zarządza interakcjami z portfelem. Agent jest nieco podobny do użytkownika, który umieszcza poświadczenia w portfelu fizycznym i zabiera je, aby przedstawić je komuś, kto musi zweryfikować twoją tożsamość. W kontekście weryfikowalnego ekosystemu poświadczeń agent robi więcej. Agent, w imieniu użytkownika końcowego (posiadacz portfela cyfrowego), generuje pary kluczy publicznych/prywatnych i DID, wysyła żądania i prezentuje poświadczenia (zazwyczaj za pośrednictwem użytkownika kodów QR), cyfrowo podpisuje komunikację z wystawcami i weryfikatorami poświadczeń i nie tylko. Niektóre z tych rzeczy, takie jak tworzenie kluczy kryptograficznych, DID, podpisów cyfrowych itp., są niewidoczne dla użytkownika, ale są ważnymi składnikami używanymi w procesie wystawiania i weryfikowania poświadczeń weryfikowalnych.
Z punktu widzenia użytkownika końcowego funkcja agenta cyfrowego jest nie do odróżnienia od samego portfela, ponieważ agent jest zazwyczaj wbudowany w portfel. W tym dokumencie traktujemy portfel i agent cyfrowy jako jeden i nazywamy go portfelem cyfrowym.
Scenariusz i weryfikowalny przepływ poświadczeń
Alice (użytkownik) jest pracownikiem Woodgrove, Inc. (wystawcą) poszukującym rabatu pracownika od organizacji partnerskiej Proseware (weryfikatora).
- Jak wspomniano wcześniej, wszystkie strony mają swoje klucze publiczne i DID, które są rejestrowane w weryfikowalnym rejestrze danych, takim jak zdecentralizowany rejestr. Aby zminimalizować bałagan, pokazany obraz przedstawia nagranie tych informacji w rejestrze tylko dla Woodgrove.
- Alicja loguje się do portalu pracowników w woodgrove i żąda potwierdzenia poświadczenia zatrudnienia. W tym momencie woodgrove może wyświetlić kod QR w witrynie portalu pracownika. Alicja skanuje kod QR za pomocą aplikacji cyfrowego portfela na swoim urządzeniu przenośnym (może to być aplikacja Microsoft Authenticator), która inicjuje model zaświadczania Woodgrove w celu zweryfikowania, czy Alice jest rzeczywistym pracownikiem. Zaświadczenie może mieć różne formy. Na przykład Firma Woodgrove może wymagać od Alice uwierzytelnienia się we własnym katalogu, może wymagać, aby Alice przeszła przez podróż sprawdzającą tożsamość, która obejmuje inną firmę, która przeprowadza weryfikację tożsamości i weryfikację lub może wymagać od Alicji wprowadzenia numeru PIN. W tym scenariuszu załóżmy, że Alicja musi wprowadzić numer PIN przy użyciu cyfrowego portfela na swoim urządzeniu przenośnym.
- Gdy Woodgrove potwierdzi, że Alicja jest pracownikiem, Woodgrove odpowiada przy użyciu poświadczeń. Gdy narzędzie Woodgrove wystawia poświadczenie, obejmuje następujące elementy:
- Woodgrove's DID (DID wystawcy)
- Did tematu (Alicja jest tematem).
- Twierdzenia, że Woodgrove zaświadcza. W tym przypadku Woodgrove potwierdza, że Alice posiada tytuł menedżera programu od 2011 roku.
- Podpis Woodgrove'a (podpis wystawcy). Woodgrove podpisuje poświadczenie przy użyciu klucza prywatnego.
- Alicja akceptuje to poświadczenie, które następnie zostaje dodane do swojego cyfrowego portfela. Teraz, gdy Alice ma swoje poświadczenia, idzie na stronę internetową Proseware, aby kupić komputer.
- Zanim będzie mogła otrzymać zniżkę, Proseware wymaga, aby Alice przedstawiła dowód jej zatrudnienia.
- Alicja może teraz spojrzeć w jej cyfrowy portfel i autoryzować portfel, w jej imieniu, aby przedstawić to poświadczenie Proseware. Prezentacja obejmuje:
- Poświadczenie wystawione przez woodgrove
- Woodgrove's DID (DID wystawcy)
- DID Alicji (DID tematu).
- Twierdzenia, że Woodgrove zaświadcza. W tym przypadku Woodgrove potwierdza, że Alice posiada tytuł menedżera programu od 2011 roku.
- Podpis Woodgrove'a (podpis wystawcy). Woodgrove podpisuje poświadczenie przy użyciu klucza prywatnego.
- Podpis Alicji (podpis podmiotu). Alicja podpisuje poświadczenie przy użyciu jej klucza prywatnego.
- Poświadczenie wystawione przez woodgrove
- Proseware otrzymał dowód zatrudnienia, a teraz wykonuje kilka odnośników w celu sprawdzenia, czy poświadczenie zostało wystawione przez Woodgrove i czy przedmiotem poświadczenia jest Alice.
- Sprawdź temat:
- Ponieważ poświadczenie zawiera identyfikator DID Alicji, proseware może rozpoznać did i uzyskać dokument DID, który zawiera klucz publiczny.
- Ponieważ poświadczenie zostało podpisane przez Alice, proseware może użyć klucza publicznego, aby sprawdzić, czy podpis poświadczeń naprawdę pochodzi z Alice, jako temat.
- Sprawdź wystawcę:
- Ponieważ poświadczenie zawiera did Woodgrove' 's, Proseware może rozpoznać DID, aby uzyskać dokument DID Woodgrove, który zawiera klucz publiczny.
- Ponieważ poświadczenie zawiera również podpis Woodgrove, proseware może użyć klucza publicznego, aby sprawdzić, czy podpis poświadczeń naprawdę pochodzi z Woodgrove, jako wystawca.
- W procesie weryfikacji wystawcy proseware nigdy nie musiał łączyć się bezpośrednio z Woodgrove. Oprogramowanie Proseware musi łączyć się tylko z rozproszonym rejestrem danych
- Teraz, gdy oprogramowanie Proseware otrzymało i zweryfikowało poświadczenia Alicji, a następnie logika biznesowa Proseware kicks-in, aby umożliwić Alicji zakup komputera w obniżonej cenie.
- Sprawdź temat:
W transakcji wystawiania, prezentowania i weryfikowania transakcji istnieje kilka punktów, które warto zwrócić uwagę, aby podkreślić wartość weryfikowalnych poświadczeń:
- Podczas wystawiania poświadczeń przedstawione oświadczenia są minimalnym zestawem oświadczeń potrzebnych do osiągnięcia celu. W takim przypadku poświadczenie musi zawierać tylko wniosek o tytuł pracownika i rok rozpoczęcia zatrudnienia. Ogranicza to ilość udostępnianych danych osobowych.
- Użytkownik jest pod kontrolą poświadczeń i określa, z kim będą udostępniać poświadczenia. Ponadto portfel użytkownika przechowuje dziennik jednostek, którym udostępniono poświadczenia, wraz z innymi informacjami.
- Gdy weryfikator weryfikuje poświadczenia, robią to bez konieczności nawiązywania połączenia z wystawcą. Weryfikator rozpoznaje identyfikator DID wystawcy, aby uzyskać klucze publiczne i za pomocą klucza publicznego, jest w stanie zweryfikować podpis wystawcy, który pojawia się na poświadczeniu.
Typowym scenariuszem z każdym poświadczeniem jest to, że poświadczenie może wygasnąć lub wystawca może wymagać odwołania tego poświadczenia. Zalecenie W3C dotyczące weryfikowalnego modelu danych poświadczeń w wersji 1.1 zawiera pola właściwości w poświadczeniach do uwzględnienia w tych scenariuszach.
W cyfrowym portfelu Alice poświadczenie jest przedstawiane jako karta podobna do typu poświadczeń, które mielibyśmy w naszym portfelu fizycznym. W rzeczywistości jednak weryfikowalne poświadczenie jest strukturą danych JSON z możliwością odczytu maszynowego składającą się z serii par klucz/wartość i obejmowałaby did wystawcy, oświadczenia są potwierdzane w poświadczeniach, podpisach cyfrowych i nie tylko.
Odwiedź stronę https://aka.ms/vcdemo , aby zapoznać się z bardziej kompletnym pokazem scenariusza dołączania weryfikowalnych poświadczeń.