W tym artykule omówiono podstawowe koncepcje zdecentralizowanej tożsamości, ewolucję tożsamości w Internecie, przegląd warstwa po warstwie stosu infrastruktury tożsamości Web3 i powiązane zmiany w prymitywach prywatności. Potwierdzenie tożsamości, zgodność i warstwy aplikacji zostaną omówione w przyszłych artykułach.
Tożsamość to wyłaniający się atrybut składający się z danych powiązanych z osobą, podmiotem lub przedmiotem. W świecie fizycznym przechowujemy te dane w naszych mózgach w postaci abstrakcyjnych reputacji i skojarzeń psychologicznych. W świecie cyfrowym tożsamość jest sformalizowana w dwóch komponentach:
Identyfikator: unikalny zestaw znaków lub cyfr identyfikujący podmiot (np. numer paszportu, identyfikator Twittera, legitymacja studencka).
Dane związane z tematyką (np. historia podróży, tweety i obserwacje, osiągnięcia naukowe).
Stworzenie warstwy tożsamości dla Internetu jest trudne ze względu na brak konsensusu co do tego, czym ona powinna być i jak powinna funkcjonować. Tożsamość cyfrowa ma charakter kontekstowy, a Internetu doświadczamy poprzez różnorodne treści, które istnieją w co najmniej wielu różnych kontekstach. Obecnie znaczna część naszej tożsamości cyfrowej jest fragmentaryczna i znajduje się pod kontrolą garstki interesariuszy, których interesem jest zapobieganie przedostawaniu się nas z ich środowiska do gdziekolwiek indziej.
Firmy postrzegają relacje z klientami jako krytyczne aktywa i nie chcą zrzec się kontroli nad tymi relacjami. Jak dotąd nie ma metody, która mogłaby stanowić zachętę do takiego działania. Nawet jednorazowa tymczasowa tożsamość jest lepsza niż ramy, nad którymi nie mają kontroli.
Określone branże, takie jak finanse, mają wyjątkowe potrzeby (takie jak zgodność), jeśli chodzi o utrzymywanie cyfrowych relacji z klientami i dostawcami.
Rządy mają potrzeby odmienne od potrzeb innych typów organizacji. Na przykład jurysdykcja w zakresie praw jazdy i paszportów.
Model ten tworzy asymetrię władzy pomiędzy jednostkami a stronami zarządzającymi naszą tożsamością i danymi. Ogranicza naszą autonomię, uniemożliwiając nam wyrażenie zgody, selektywne ujawnianie informacji o sobie i przenoszenie naszej tożsamości w różnych kontekstach w celu zapewnienia spójnych doświadczeń online i offline.
Przed powstaniem Crypto i web3 zdecentralizowana tożsamość była wspólnym wysiłkiem. Ogólnym celem jest odzyskanie przez jednostki autonomii w zakresie swojej tożsamości bez polegania na scentralizowanym, pojedynczym strażniku. Niewłaściwe wykorzystanie danych klientów i erozja zaufania do dużych korporacji sprawiły, że decentralizacja stała się centralnym punktem nowej ery tożsamości internetowej.

1 Podstawowa koncepcja zdecentralizowanej tożsamości
Zdecentralizowane identyfikatory (DID) i dowody to główne elementy składowe zdecentralizowanej tożsamości. Identyfikatory DID są publikowane i przechowywane w weryfikowalnym rejestrze danych (VDR) jako autonomiczna „przestrzeń nazw”, która nie jest zarządzana centralnie. Oprócz blockchain, zdecentralizowana infrastruktura pamięci masowej i sieci P2P mogą również służyć jako VDR.
W tym przypadku podmioty (osoby fizyczne, społeczności, organizacje) mogą korzystać ze zdecentralizowanej infrastruktury klucza publicznego (PKI) do uwierzytelniania, potwierdzania własności i zarządzania swoimi DID. W przeciwieństwie do tradycyjnej sieciowej infrastruktury PKI, nie opiera się ona na scentralizowanym urzędzie certyfikacji (CA) jako źródle zaufanie.
Dane dotyczące tożsamości zapisywane są jako dowody, czyli „roszczenie” jednej tożsamości do drugiej (lub do siebie samej). Weryfikacja roszczeń odbywa się za pomocą podpisów kryptograficznych wdrażanych przez PKI.

Zdecentralizowane identyfikatory mają 4 główne właściwości:
Decentralizacja: Tworzenie bez polegania na scentralizowanych instytucjach. Jednostki można tworzyć dowolnie, zachowując ich pożądane tożsamości, role i interakcje oddzielnie w różnych kontekstach.
Trwałość: raz utworzony jest trwale przypisany do jednostki. (Chociaż niektóre identyfikatory DID są przeznaczone dla tożsamości efemerycznych).
Parsable: Można go użyć do ujawnienia dodatkowych informacji o encji.
Weryfikowalne: Podmioty mogą udowodnić własność DID lub roszczenia z nim związane (weryfikowalne dane uwierzytelniające) bez polegania na osobach trzecich, dzięki podpisom kryptograficznym i atestom.
Te właściwości odróżniają DID od innych identyfikatorów, takich jak nazwy użytkowników (nie podlegają weryfikacji), paszporty (nie podlegają decentralizacji) i adresy blockchain (nietrwałe, ograniczona rozpoznawalność).
Konsorcjum World Wide Web (W3C) to międzynarodowa społeczność organizacji, pracowników i społeczeństwa współpracująca w celu opracowania standardów sieciowych. Specyfikacja DID W3C definiuje 4 główne części:
Scenariusz: przedrostek „did” informuje inne systemy, że wchodzi w interakcję z DID, a nie z innym typem identyfikatora, takim jak adres URL, adres e-mail lub kod kreskowy produktu.
Metoda DID: Określa dla innych systemów sposób interpretacji identyfikatora. Na stronie internetowej W3 C znajduje się ponad 100 metod DID, często powiązanych z własnym VDR i różnymi mechanizmami tworzenia, analizowania, aktualizowania i dezaktywowania identyfikatorów.
Unikalny identyfikator: Unikalny identyfikator specyficzny dla metody DID. Na przykład adres w określonym łańcuchu bloków.
Plik DID: trzy sekcje powyżej przekształcają się w plik DID, który zawiera sposób, w jaki jednostka może się uwierzytelnić, wszelkie właściwości/oświadczenia dotyczące jednostki oraz wskaźniki do lokalizacji dodatkowych danych o jednostce („punkt końcowy usługi”).

2 Wpływ kryptowalut
Chociaż infrastruktura klucza publicznego (PKI) istnieje już od dawna, Crypto przyspieszyło jej przyjęcie dzięki mechanizmowi motywacyjnemu sieci tokenów. To, co kiedyś było wykorzystywane głównie przez technologów zajmujących się prywatnością, obecnie jest warunkiem wstępnym uczestnictwa w nowej gospodarce. Użytkownicy muszą tworzyć portfele, aby samodzielnie zarządzać zasobami i korzystać z aplikacji web3. Kierowani boomem ICO, latem DeFi, manią NFT i społecznością zajmującą się tokenizacją, użytkownicy mają w rękach więcej kluczy niż kiedykolwiek wcześniej. Poniżej znajduje się tętniący życiem ekosystem produktów i usług, dzięki którym zarządzanie kluczami jest łatwiejsze i bezpieczniejsze. Crypto to idealny koń trojański do zdecentralizowanej infrastruktury tożsamości i adopcji.
Zacznijmy od portfeli. Chociaż o portfelach nadal myśli się przede wszystkim w kontekście zarządzania aktywami w sensie finansowym, tokenizacja i historia w łańcuchu pozwoliły nam reprezentować nasze interesy (zbiory NFT), pracę (Kudos, 101) i opinie (głosowanie dotyczące zarządzania). Utrata kluczy prywatnych coraz mniej przypomina utratę pieniędzy, a bardziej utratę paszportu lub konta w mediach społecznościowych. Krypto zaciera granice między tym, co posiadamy, a tym, kim jesteśmy.
Jednak nasza działalność i udziały w sieci dają ograniczony obraz tego, kim jesteśmy (i nie chronią prywatności). Blockchain to tylko jedna warstwa zdecentralizowanego stosu tożsamości. Inne stosy również pomagają rozwiązać ważne problemy, takie jak:
Jak identyfikujemy i uwierzytelniamy się w sieciach i ekosystemach?
Jak udowadniamy nasze rzeczy (reputację, wyjątkowość, zgodność), zachowując jednocześnie prywatność?
Jak udzielamy, zarządzamy i cofamy dostęp do naszych danych?
Jak w świecie, w którym kontrolujemy własną tożsamość i dane, wchodzimy w interakcję z aplikacjami?
Rozwiązania tych problemów będą miały ogromny wpływ na to, jak Internet będzie wyglądał dla przyszłych pokoleń.
W poniższych sekcjach omówiono stos tożsamości Web3 warstwa po warstwie. Czyli weryfikowalna rejestracja danych, zdecentralizowane przechowywanie, zmienność i możliwość kompozycji danych, portfele, uwierzytelnianie, autoryzacja i atestacja.

3 Stos tożsamości Web3
Blockchain jako weryfikowalny rejestr danych
Rozproszony i niezmienny charakter blockchainu sprawia, że nadaje się on jako weryfikowalny rejestr danych, na którym można wystawiać identyfikatory DID. W rzeczywistości różne publiczne łańcuchy bloków mają metody DID W3 C, takie jak:
W Ethereum did:ethr:public key reprezentuje tożsamość konta Ethereum.
Cosmos, did:cosmos:chainspace:namespace:unique-id reprezentuje zasoby, które są zgodne między łańcuchami Cosmos.
Bitcoin, gdzie did:btcr: btcr-identifier reprezentuje identyfikator transakcji zakodowany w TxRef, odnoszący się do lokalizacji transakcji w łańcuchu bloków Bitcoin opartym na UTXO.
Godne uwagi jest did:pkh:address – niezależne od księgi generatywne podejście DID, zaprojektowane w celu umożliwienia interoperacyjności w sieciach blockchain. Zgodnie ze standardem CAIP-10 jest to identyfikator konta, używany do wyrażania par kluczy między łańcuchami.
Fractal to protokół zapewniania i weryfikacji tożsamości przeznaczony dla aplikacji wymagających unikalnych i różnych poziomów KYC dla użytkowników. Po zakończeniu weryfikacji ważności i/lub kontroli KYC, Fractal DID jest publikowany pod odpowiednim adresem Ethereum i dodawany do odpowiedniej listy. Rejestracja DID Fractal to inteligentny kontrakt na Ethereum, zgodnie z którym strony transakcji mogą odpytywać o Fractal DID i jego poziom weryfikacji.
Kilt, Dock i Sovrin to specyficzne dla aplikacji łańcuchy bloków zapewniające suwerenną tożsamość. W chwili pisania tego tekstu są one używane głównie przez przedsiębiorstwa do wydawania tożsamości i danych uwierzytelniających użytkownikom końcowym. Aby uczestniczyć w sieci, węzły muszą stawiać tokeny natywne w celu przetwarzania transakcji, takich jak wydawanie DID/poświadczeń, definiowanie schematów poświadczeń i przeprowadzanie aktualizacji unieważnień.
Zdecentralizowane przechowywanie danych
Chociaż łańcuchy bloków ogólnego przeznaczenia mogą również służyć jako źródło niezmiennych danych użytkownika, takich jak własność aktywów i historia transakcji (takie jak narzędzia do śledzenia portfela i aplikacje „wynik DeFi”), mogą nie nadawać się do przechowywania większości danych o użytkownikach, ponieważ pisanie i regularne aktualizowanie dużych ilości informacji jest kosztowne operacyjnie i zagraża prywatności, ponieważ dane są domyślnie widoczne.
To powiedziawszy, istnieją pewne łańcuchy bloków specyficzne dla aplikacji, takie jak Arweave*, które są przeznaczone do trwałego przechowywania. Arweave płaci górnikom nagrody blokowe i opłaty transakcyjne w zamian za kopie informacji przechowywanych w sieci. Górnicy muszą przedstawić „dowód dostępu”, aby dodać nowe bloki. Część opłat wpłacana jest także na fundusz dożywiania stałego, który będzie wypłacany górnikom w przyszłości, gdy kosztów składowania nie będzie można pokryć inflacją i opłatami.
Ethereum i Arweave to przykłady podejścia opartego na blockchainie do trwałości danych. W Ethereum każdy pełny węzeł musi przechowywać cały łańcuch. W Arweave wszystkie dane potrzebne do przetwarzania nowych bloków i nowych transakcji są rejestrowane w stanie każdego pojedynczego bloku, dzięki czemu nowi uczestnicy mogą dołączyć do sieci po prostu pobierając bieżący blok od swoich zaufanych partnerów.
Trwałość oparta na kontraktach oznacza, że żaden węzeł nie może kopiować ani trwale przechowywać danych. Zamiast tego dane są utrwalane na podstawie umów z wieloma węzłami, które zgadzają się na przechowywanie bloku danych przez określony czas i muszą je odnawiać za każdym razem, gdy się wyczerpią, aby zachować trwałość danych.
IPFS umożliwia użytkownikom przechowywanie i przesyłanie weryfikowalnych danych adresowanych do treści w sieci peer-to-peer. Użytkownicy mogą zapisywać potrzebne dane we własnych węzłach IPFS, wykorzystywać dedykowane grupy węzłów lub korzystać z usług „pinnin” innych firm, takich jak Pinata, Infura lub web3.storage. Dopóki istnieje węzeł przechowujący dane, dane istnieją w sieci i są dostępne dla innych węzłów, gdy o to poproszą. Oprócz IPFS znajdują się warstwy kryptoekonomiczne, takie jak Filecoin i Crust Network, zaprojektowane w celu zachęcania do przechowywania danych w sieci poprzez utworzenie rozproszonego rynku długoterminowego przechowywania danych.
W przypadku informacji umożliwiających identyfikację (PII) można zastosować licencjonowany system IPFS w celu zapewnienia zgodności z prawem do bycia zapomnianym określonym w RODO/CCPA, ponieważ umożliwia on użytkownikom usunięcie ich danych przechowywanych w sieci. Portfel tożsamości Nuggets przyjmuje to podejście i jeszcze bardziej je decentralizuje, umożliwiając sprzedawcom i partnerom prowadzenie dedykowanych węzłów.
Inne zdecentralizowane rozwiązania pamięci masowej oparte na umowach obejmują Sia i Storj, które szyfrują i dzielą pojedyncze pliki na wiele węzłów w sieci. Obydwa korzystają z kodowania kasującego (wymagającego jedynie podzbioru węzłów magazynowania do obsługi plików), aby zapewnić dostępność danych nawet w przypadku, gdy niektóre węzły przejdą w tryb offline. Mają także wbudowaną strukturę motywacyjną i wykorzystują natywne tokeny do przechowywania.

Zmiany danych i możliwość ich kompozycji
Universal Blockchain, Arweave i IPFS gwarantują niezmienność, użyteczną właściwość danych, takich jak statyczna grafika NFT i trwałe zapisy. Jednak nasze dzisiejsze interakcje z większością aplikacji stale aktualizują nasze dane. Robi to protokół Web3 przeznaczony do obsługi niestabilnych danych, wykorzystując zdecentralizowaną warstwę przechowywania pod spodem.
Ceramic to protokół zdecentralizowanej zmienności i komponowania danych, który działa poprzez przekształcanie niezmiennych plików w sieciach trwałego przechowywania danych, takich jak IPFS lub Arweave, w dynamiczne struktury danych. W Ceramic te „strumienie danych” przypominają własną, zmienną księgę. Prywatne dane mogą być przechowywane poza łańcuchem, a ich schemat jest indeksowany w Ceramic, podłączony do magazynu danych DID prowadzącego do zewnętrznej pamięci prywatnej.
Gdy użytkownicy aktualizują swój profil w aplikacji opartej na technologii Ceramic, protokół sprawdza te aktualizacje jako strumień, przekształcając go w nowy stan, jednocześnie śledząc poprzednie zmiany stanu. Każda aktualizacja Ceramic jest uwierzytelniana za pomocą identyfikatora DID, który można przypisać do wielu adresów, co umożliwia użytkownikom aktualizację swoich danych bez serwera.
Obecnie podmioty Web2 są właścicielami interfejsu użytkownika i zaplecza, w których przechowują i kontrolują dane użytkowników. Google i Facebook wykorzystują te dane do algorytmicznego personalizowania naszych usług na swoich platformach, co pozwala na dalsze udoskonalanie gromadzonych danych. Nowe aplikacje muszą być budowane od podstaw i nie mogą od samego początku zapewniać spersonalizowanych doświadczeń, przez co rynek staje się mniej konkurencyjny.
Web3 demokratyzuje dane, wyrównuje szanse dla nowych produktów i usług oraz tworzy otwarte środowisko dla eksperymentów i konkurencyjnych rynków aplikacji. W świecie, w którym użytkownicy mogą przenosić dane z jednej platformy na drugą, twórcy aplikacji nie muszą zaczynać od zera; mogą natychmiast personalizować swoje doświadczenia. Użytkownicy mogą logować się za pomocą swojego portfela i autoryzować aplikację do odczytu/zapisu w „bazie danych”, nad którą mają pełną kontrolę.
ComposeDB on Ceramic to zdecentralizowana baza danych grafów, która umożliwia twórcom aplikacji odkrywanie, tworzenie i ponowne wykorzystywanie komponowalnych modeli danych przy użyciu GraphQL. Węzły na diagramie to konta (DID) lub pliki (przepływy danych). Krawędzie na wykresie reprezentują relacje pomiędzy węzłami.
DID reprezentuje dowolną jednostkę, która może zapisywać dane na wykresie, taką jak użytkownik końcowy, organizacja, aplikacja lub dowolny rodzaj usługi uwierzytelniania.

Modele to strumienie ceramiczne przechowujące metadane dotyczące struktury danych dokumentu, reguł sprawdzania poprawności, relacji i informacji o wykrywaniu. Programiści mogą tworzyć, łączyć i remiksować modele w kombinacje danych, które służą jako baza danych dla ich aplikacji. Zastępuje to tradycyjną tabelę użytkowników scentralizowanym identyfikatorem UID i powiązanymi danymi. Aplikacje można budować w oparciu o wspólny zbiór danych kontrolowany przez użytkowników, zamiast zarządzać własnymi, niezależnymi tabelami.
Ponieważ aplikacje mogą swobodnie definiować modele, z których będą korzystać w określonych kontekstach, rynek kuratorski staje się ważny, ponieważ dostarcza sygnał dla najbardziej przydatnych modeli danych (schematy zdefiniowane dla wykresów społecznościowych, wpisów na blogach itp.). Dzięki platformie handlowej dla tych modeli danych aplikacje mogą sygnalizować te modele, aby ułatwić ich wykorzystanie. Zachęci to publiczne zbiory danych do tworzenia lepszych analiz i infografik, dzięki czemu produkty będą mogły na tej podstawie wprowadzać dalsze innowacje.
Tableland to infrastruktura dla zmiennych, ustrukturyzowanych danych relacyjnych, w której każda tabela jest tworzona jako NFT w łańcuchu kompatybilnym z EVM. Właściciel NFT może skonfigurować logikę kontroli dostępu do tabeli, umożliwiając stronom trzecim przeprowadzanie aktualizacji bazy danych, jeśli ta strona ma odpowiednie uprawnienia do zapisu. Tableland obsługuje sieć walidatorów poza łańcuchem, które zarządzają tworzeniem tabel i późniejszymi zmianami.
Aktualizacje w łańcuchu i poza łańcuchem są obsługiwane przez inteligentne kontrakty, które wskazują sieć Tableland przy użyciu baseURI i tokenURI. W Tableland metadane NFT można mutować (przy użyciu kontroli dostępu), odpytywać (przy użyciu SQL) i łączyć (z innymi tabelami w Tableland).
Standardy inteligentnych kontraktów, takie jak ERC-20 i ERC-721, zapewniają dappom wspólny język dotyczący sposobu tworzenia i przesyłania tokenów, a standardy modeli danych zapewniają dappom wspólne zrozumienie profili, reputacji, propozycji DAO i wykresów społecznościowych. Dane te mogą być ponownie wykorzystywane w wielu aplikacjach w ramach otwartej rejestracji, którą może przesłać każdy.
Oddzielenie aplikacji od warstwy danych umożliwia użytkownikom przenoszenie treści, wykresów społecznościowych i reputacji między platformami. Aplikacje mogą uzyskiwać dostęp do tej samej bazy danych i być używane w swoim kontekście, umożliwiając użytkownikom uzyskanie reputacji, którą można komponować w różnych kontekstach.
portfel
Ogólnie rzecz biorąc, portfel obejmuje interfejsy i podstawową infrastrukturę do zarządzania kluczami, komunikacji (wymiany danych pomiędzy posiadaczami, emitentami i walidatorami) oraz prezentacji i weryfikacji roszczeń.
Warto rozróżnić portfele kryptowalutowe (MetaMask, Ledger, Coinbase Wallet itp.) oraz portfele tożsamościowe. Portfele kryptograficzne przechowują klucze kryptograficzne unikalne dla sieci blockchain i są przeznaczone do wysyłania/odbierania monet i podpisywania transakcji. Portfele tożsamości przechowują tożsamości i umożliwiają użytkownikom tworzenie i dostarczanie oświadczeń, dzięki czemu mogą udostępniać dane tożsamości w aplikacjach i usługach.
Przykłady portfeli tożsamości obejmują ONTO, Nuggets i Polygon ID Wallet. Niektóre portfele tożsamości, takie jak Fractal, obejmują weryfikację ważności i KYC w ramach procesu wdrażania, dzięki czemu użytkownicy mogą ubiegać się o złożenie wniosku o takie wymagania. Jest to znacznie mniej powszechne w portfelach kryptowalutowych. Ponadto portfele tożsamości częściej obsługują DID objęte sankcjami W3C, weryfikowalne dane uwierzytelniające i implementacje DIDComm, a także przypadki użycia poza web3.

WalletConnect to protokół komunikacyjny, który łączy portfele z portfelami i dappami. Jako minimalistyczny, bezstronny protokół, który już obsługuje miliony użytkowników kryptowalut, WalletConnect może okazać się potężną alternatywą dla DIDComm w przyspieszaniu wdrażania suwerennej infrastruktury tożsamości. W przeciwieństwie do DIDComm, który wymaga od usługodawcy zapewnienia hostowanej infrastruktury mediatora, WalletConnect przechowuje informacje w „skrzynce pocztowej w chmurze” w sieci przekaźnikowej, która jest przekazywana do portfela, gdy portfel wraca do trybu online.
Orzecznictwo
Uwierzytelnianie to potwierdzenie tożsamości użytkownika w oparciu o jeden lub więcej czynników uwierzytelniających. Czynnikami uwierzytelniającymi może być coś, co użytkownik posiada (podpis cyfrowy, dowód osobisty, token bezpieczeństwa), coś, co zna (hasło, PIN, tajna odpowiedź) lub dane biometryczne (odcisk palca, głos, skan siatkówki).

W zdecentralizowanym paradygmacie tożsamości użytkownicy mogą uwierzytelniać się za pomocą swoich portfeli. Za kulisami portfel wykorzystuje przechowywane klucze do tworzenia podpisów cyfrowych, które służą jako „dowód”, że posiadacz jest właścicielem kluczy prywatnych powiązanych z kontem. Ponieważ portfele kryptograficzne mogą generować podpisy, aplikacje oferujące logowanie web3 mogą umożliwić użytkownikom uwierzytelnianie za pomocą metamaski lub WalletConnect.
Od lat użytkownicy kryptowalut wchodzą w interakcje z dappami za pośrednictwem połączonych portfeli. Dapp nie pamięta podłączonych użytkowników i traktuje ich jako czystą kartę za każdym razem, gdy odwiedzają stronę internetową.
Obecnie użytkownicy mają głębsze wzorce interakcji z dappami. Zdecentralizowana tożsamość staje się tutaj przydatna, ponieważ pozwala aplikacjom zyskać większy kontekst wokół użytkownika, umożliwiając jednostkom zachowanie kontroli nad swoimi danymi, zapewniając jednocześnie spersonalizowane doświadczenia.
W przypadku bogatszych interakcji kontekstowych, takich jak ładowanie preferencji użytkownika, profili lub prywatnych wiadomości na czacie, aplikacja musi najpierw upewnić się, że rozmawia z rzeczywistym posiadaczem kluczy stojącym za kontem. Chociaż portfele Connected Wallets nie oferują tej gwarancji, zapewniają ją standardy certyfikacji. Uwierzytelnianie ustanawia sesję z użytkownikiem i umożliwia aplikacjom bezpieczny odczyt i zapis jego danych.
Sign-In with Ethereum (SIWE) to standard uwierzytelniania opracowany przez Spruce, ENS i Fundację Ethereum. SIWE standaryzuje format wiadomości (podobny do jwt), aby użytkownicy mogli korzystać z usługi logowania do konta opartej na blockchain. Logowanie za pomocą X (CAIP-122) opiera się na tym fundamencie, czyniąc SIWE skoncentrowaną na Ethereum implementacją SIWx, uogólniającą standard do działania w obrębie łańcuchów bloków.
Dla osób fizycznych oznacza to możliwość zarejestrowania się lub zalogowania za pomocą portfela web3 bez konieczności tworzenia nazwy użytkownika i hasła, za pomocą „zaledwie kilku kliknięć”, co naśladuje logowanie w mediach społecznościowych, zachowując jednocześnie kontrolę nad swoją suwerennością w Internecie. Aplikacje mogą wykorzystać to jako strategię marketingową w celu dotarcia do natywnych odbiorców web3 i zaspokojenia potrzeb użytkowników.
W perspektywie średnioterminowej możliwość logowania się do dapps i innych usług web2 za pomocą portfela kryptograficznego stanie się usprawnieniem doświadczenia użytkownika natywnym dla web3. Naraża to jednak użytkowników na problemy z korelacją i śledzeniem, które stają się bardzo szkodliwe w web2. Uwierzytelnianie za pomocą równorzędnych identyfikatorów DID lub identyfikatorów samocertyfikowanych może służyć jako rozwiązanie alternatywne.
W przeciwieństwie do opisanych powyżej „normalnych” identyfikatorów DID, identyfikatory Peer DID są przeznaczone do użytku pomiędzy 2 lub N znanymi stronami. Można ich używać jako unikalnego identyfikatora każdej usługi i/lub interakcji. Zaszyfrowany adres portfela w tej tożsamości cyfrowej może być przechowywany w VC jako dowód weryfikacji dla każdej interakcji ze sprzedawcą lub usługą.
Autoryzacja i kontrola dostępu
Uwierzytelnianie potwierdza tożsamość użytkownika, natomiast autoryzacja określa, do jakich zasobów podmiot powinien mieć dostęp i co może z tymi zasobami zrobić. Te dwa procesy są niezależne, ale często idą w parze w procesie doświadczenia użytkownika. Po zalogowaniu się do usługi strony trzeciej za pomocą logowania społecznościowego, użytkownik może zostać poproszony o wykonanie niektórych żądań autoryzacyjnych, jak pokazano na poniższym rysunku:

W modelu tożsamości stowarzyszonej autoryzujesz aplikacje innych firm do przeglądania i aktualizowania danych przechowywanych u dostawcy tożsamości (takiego jak Google), a one utrzymują listę i powiązane uprawnienia, które autoryzowałeś dla tych aplikacji. Infrastruktura i standardy autoryzacji Web3 również pomagają osiągnąć ten cel, z tą różnicą, że masz suwerenne dane i możesz przyznać każdej stronie trzeciej prawo do odszyfrowania/odczytu/aktualizacji danych bez potrzeby korzystania ze scentralizowanego pośrednika.
Wraz z rozwojem społeczności zajmującej się tokenizacją rozwijają się także produkty web3 do bramkowania tokenów, takie jak Collab.Land, Guild i Tokenproof. Głównym zastosowaniem tych narzędzi jest kontrola dostępu do kanałów Discord przeznaczonych wyłącznie dla członków, z bardziej szczegółowym dostępem opartym na roli i reputacji. Zamiast ręcznie przypisywać dostęp, społeczności mogą programowo przyznawać dostęp na podstawie posiadanych tokenów, aktywności w łańcuchu lub weryfikacji społecznościowej.
Lit to zdecentralizowany protokół zarządzania kluczami i kontroli dostępu, który wykorzystuje technologię MPC do dystrybucji „udziałów” kluczy prywatnych pomiędzy węzłami sieci Lit. Para kluczy publiczny/prywatny jest reprezentowana przez PKP (programowalna para kluczy) NFT, której właściciel jest jedynym kontrolerem pary kluczy. Po spełnieniu arbitralnie zdefiniowanych warunków właściciele PKP mogą uruchomić sieć w celu agregacji udziałów kluczy w celu odszyfrowania plików lub podpisywania wiadomości w ich imieniu.
W kontekście kontroli dostępu Lit umożliwia użytkownikom definiowanie warunków w łańcuchu, które zapewniają dostęp do zasobów poza łańcuchem. Na przykład DAO może przesłać plik do Arweave lub AWS, zaszyfrować go za pomocą Lit i zdefiniować zestaw warunków (takich jak własność NFT). Kwalifikujące się portfele podpisują i emitują wiadomość do węzłów protokołu, które sprawdzają łańcuch bloków, aby upewnić się, że osoba podpisująca jest uprawniona, a jeśli tak, agregują udziały kluczy dla osoby podpisującej w celu odszyfrowania pliku. Tę samą infrastrukturę można również wykorzystać do odblokowania funkcjonalności web2, takich jak rabaty Shopify, zamknięte pokoje Zoom i przestrzenie Gathertown, transmisje na żywo i dostęp do Dysku Google.
Kepler organizuje dane w oparciu o kontrolowane przez użytkownika bazy danych („Orbity”), które reprezentują wyznaczoną listę hostów dla danych i, w ramach inteligentnego kontraktu, tylko ich klucze mogą je kontrolować. Tymi bazami danych mogą zarządzać zaufane strony, mechanizmy konsensusu między hostami, właściciele zasobów i ważność uprawnień. Każdy, kto korzysta z SIWE, może od razu skorzystać z prywatnej bazy danych, w której przechowuje swoje preferencje, certyfikaty cyfrowe i prywatne pliki. Dzięki obsłudze opcji „przynieś własną pamięć masową” dla wielu zapleczy pamięci masowej użytkownicy mogą samodzielnie hostować lub korzystać z wersji zarządzanej.
Oto kilka przykładów tego, jak aplikacje mogą wykorzystywać kombinacje wcześniej wspomnianych elementów:
Orbis to aplikacja sieci społecznościowej („web3 Twitter/Discord”), która wykorzystuje technologię Ceramic do przechowywania danych i aktualizacji. Prywatne wiadomości są najpierw szyfrowane za pomocą narzędzia Lit, a następnie przechowywane.
Użyj Lit jako zdecentralizowanego systemu szyfrowania, aby delegować osoby, które mogą odszyfrować Twoje dane z Tableland.
Kepler może używać dokumentów ceramicznych jako drogowskazu prowadzącego do prywatnych sklepów.
Utwórz Lit PKP, które pozwolą aplikacjom „posiadać” strumień Ceramic i przyznają Lit Actions (kod w IPFS) możliwość podpisywania i aktualizowania bazy danych, jeśli zostaną spełnione dowolne warunki.
CACAO to standard wyrażania możliwości obiektów niezależnych od łańcucha (OCAP), utworzony przy użyciu protokołu Sign-in-With X. Definiuje metodę rejestrowania wyników operacji podpisu SIWx jako możliwości obiektów opartych na IPLD (OCAP), tworząc nie tylko uwierzytelnione akceptacje zdarzeń, ale także możliwe do komponowania i odtwarzalne potwierdzenia autoryzacji dla weryfikowalnych autoryzacji.
Metody autoryzacji pozwalają użytkownikom przyznawać aplikacjom szczegółową, dobrze zakrojoną i możliwą do sprawdzenia możliwość przeglądania/aktualizowania swoich danych. Dodatkowo może opierać się na sesji, dzięki czemu nie muszą podpisywać wiadomości przy każdej aktualizacji, ale zamiast tego mają bogate interakcje w aplikacji i podpisują się raz na koniec sesji.
Certyfikaty i referencje
Tutaj dochodzimy do szczytu stosu zdecentralizowanej infrastruktury tożsamości, jak pokazano na rysunku.

Niektóre terminy:
Zaświadczenie oznacza stwierdzenie ważności oświadczenia i podpisu i wynika z konieczności niezależnej weryfikacji zarejestrowanych zdarzeń.
Voucher to dokument zawierający szczegółowe informacje na temat jednego podmiotu, napisany i podpisany przez inny podmiot lub przez niego samego. Dane uwierzytelniające są odporne na manipulacje i weryfikowalne kryptograficznie oraz mogą być przechowywane w portfelu.
Weryfikowalne poświadczenia (VC) to standardowy model danych i format reprezentacji szyfrowanych poświadczeń cyfrowych zgodnie ze specyfikacją W3C Verible Credentials:
Wystawcą jest strona, która wydała dokument uwierzytelniający (np. uniwersytet)
Posiadacz jest właścicielem referencji (np. student)
Weryfikator weryfikujący certyfikat (np. potencjalny pracodawca)
Weryfikowalna prezentacja ma miejsce wtedy, gdy użytkownicy udostępniają swoje dane stronie trzeciej, która może zweryfikować, czy dane uwierzytelniające rzeczywiście zostały podpisane przez wystawcę
Należy pamiętać, że „emitent”, „posiadacz” i „weryfikator” są tu pojęciami względnymi. Każdy ma swój własny DID i zebrane dane uwierzytelniające.
Referencje są kamieniem węgielnym reputacji, a reputacja jest zjawiskiem społecznym, które zmienia się wraz ze zmieniającymi się okolicznościami. Jedno lub więcej poświadczeń może służyć jako zastępcze określenie kwalifikacji, możliwości lub uprawnień jednostki. Każdy może sobie powiedzieć, że ukończył z wyróżnieniem prestiżową uczelnię, ale dla nikogo innego to nie ma znaczenia. Certyfikaty posiadane przez uniwersytety są uważane za legalne i prestiżowe.
Chociaż nie wszystkie odznaki i projekty certyfikacji X natywne dla Web3 są zgodne ze standardami VC W3C, możemy wyciągnąć podobieństwa z systemów opisanych powyżej.
Najbardziej bezpośrednim przykładem są niezbywalne odznaki NFT, które mogą być wybijane wyłącznie przez portfele, które wykonały jakąś aktywność w łańcuchu. Ponieważ cała historia transakcji znajduje się w łańcuchu, od samego początku można ją zweryfikować i zabezpieczyć przed manipulacją. DegenScore określa ilościowo atrybuty małpy, agregując twoje interakcje z protokołami DeFi i generuje wynik na podstawie reguł inteligentnego kontraktu. Możesz bić monety i przechowywać je jako „poświadczenie DeFi” w swoim portfelu kryptowalutowym. Jeśli istniało Degen DAO, które było ograniczone do tych z określonym wynikiem, wówczas można było przedstawić ten NFT DAO, a następnie protokół bramkowania tokenów mógłby zweryfikować, czy go trzymasz, i mógłbyś dostać się do tego DAO – Dowód Degen .
POAP * Dowód, że uczestniczyłeś w wydarzeniu lub spotkałeś kogoś w IRL – Dowód uczestnictwa/Dowód spotkania.
Tam, gdzie Otterspace pozwala DAO decydować, co stanowi znaczącą pracę i wydawać swoim członkom odznaki ntNFT, Proved wymaga od DAO „podpisania” roszczenia – dowodu wniesienia wkładu – zanim jego członkowie wybiją dla niego odznaki NFT specyficzne dla DAO.
101 Pod koniec kursów online, po zdaniu testu, studenci wydają ntNFT – Certyfikat uczenia się.
Kleoverse wydaje użytkownikom odznaki kompetencji Typescript, Rust lub Solidity – dowód umiejętności – na podstawie danych GitHub.
Oprócz opisanych powyżej przypadków użycia kontroli dostępu, Lit PKP może również pełnić funkcję notariusza kryptograficznego, który Lit Actions sprawdza przed podpisaniem certyfikatu. Na przykład zdecentralizowana platforma edukacyjna mogłaby umożliwić twórcom kursów zdefiniowanie, co liczy się jako zdanie testu, i wdrożenie tych warunków w ramach akcji Lit w celu programowego wydawania VC przy użyciu ich PKP w oparciu o te warunki.
Pojawiają się tutaj 2 pytania: Które z tych punktów danych certyfikacyjnych są znaczące i jak je agregujemy, aby zyskać reputację?
Protokół Orange zapewnia rozwiązanie tego problemu: integrację tych punktów danych w dobrze zdefiniowane modele za pośrednictwem dostawców modeli. W przypadku Orange parlamentarzyści zazwyczaj odnoszą się do platform, które w swoich systemach posiadają środki oceny reputacji. „Dostawcy danych” pozwalają na wykorzystywanie swoich danych jako danych wejściowych do modeli projektowanych przez dostawców modeli. Następnie parlamentarzyści dodają metody obliczeniowe i przypisują znaczniki reputacji różnym podmiotom, a następnie udostępniają te modele innym osobom. Dapps mogą wybierać i łączyć się z tymi modelami reputacji pod kątem ich zastosowań.
Do tej pory Aave, Gitcoin, Snapshot, DAOHaus itp. udostępniały swoje dane Orange. Dane te są modelowane przez nich i inne projekty, takie jak Dework, talentDAO i Crypto Sapiens, aby zapewnić członkom ntNFT, co odblokowuje szeroki zakres możliwości, od ulepszania uprawnień Discord przy użyciu CollabLand i Guild, po zarządzanie oparte na reputacji Snapshot.
Prywatność
Żadna dyskusja na temat infrastruktury tożsamości nie jest kompletna bez uwzględnienia kwestii związanych z prywatnością i prymitywów technicznych, które umożliwiają prywatność. Prywatność jest czynnikiem na wszystkich poziomach stosu. W ciągu ostatniej dekady przyjęcie blockchainu przyspieszyło rozwój silnych prymitywów kryptograficznych, takich jak zabezpieczenia ZK, oprócz jego zastosowania w technologiach skalowania, takich jak pakiety zbiorcze, które umożliwiają tożsamości wprowadzanie subtelnych zmian w publicznie weryfikowalnych informacjach, oświadczenie o ochronie prywatności.
Gwarancje prywatności pomagają nam uniknąć negatywnych skutków zewnętrznych związanych z wykorzystaniem w pełni przejrzystych danych do przedstawiania wiarygodnych twierdzeń. Bez tych gwarancji osoby trzecie mogą inicjować interakcje wykraczające poza zakres (np. reklama, nękanie), które nie są związane z pierwotną transakcją. Wykorzystując technologie kryptograficzne i ZK, możemy budować systemy tożsamości, w których interakcje i udostępnianie danych są „w piaskownicy” w jasno określonych, kontekstowych granicach.
„Normalne” weryfikowalne dane uwierzytelniające są zwykle dostępne w formacie JSON-JWT lub JSON-LD, a każde dane uwierzytelniające mają zewnętrzne lub wbudowane poświadczenie (podpis cyfrowy), dzięki czemu są odporne na manipulacje i możliwe do sprawdzenia, a ich autorem jest wystawca.
Zabezpieczenia Zk i nowe schematy podpisów ulepszają funkcje ochrony prywatności W3 C VC, takie jak:
Odporność na korelację: za każdym razem, gdy posiadacz udostępnia dane uwierzytelniające, identyfikator ten jest udostępniany, więc za każdym razem, gdy przedstawiane jest dane uwierzytelniające, oznacza to, że walidatorzy mogą zmówić się i sprawdzić, gdzie posiadacz przedstawił swoje dane uwierzytelniające i wolę. Jest to triangulowane do zidentyfikowanego osoba. Dzięki podpisowi Braille'a możesz za każdym razem udostępnić unikalny dowód swojego podpisu, bez konieczności udostępniania samego podpisu.
Ujawnianie selektywne: udostępniaj tylko niezbędne atrybuty VC i ukrywaj resztę. Zarówno poświadczenia JSON-JWT, jak i poświadczenia podpisane JSON-LD LD wymagają od posiadacza udostępnienia weryfikatorowi całego poświadczenia – nie ma żadnego „częściowego” udostępniania.
Dowód złożony: Połącz właściwości wielu VC w jeden dowód bez konieczności udawania się do wystawcy lub generowania nowego VC.
Predykcja: Umożliwia użycie w operacjach wartości ukrytych, których wartość jest podana przez walidator. Na przykład saldo konta posiadacza kuponu przekracza pewien próg bez ujawniania salda lub, jak to często cytowane, udowadniania, że jesteś w wieku pozwalającym na legalne spożywanie alkoholu, bez ujawniania daty urodzenia.

Obiecującym podejściem jest schemat podpisu BBS, pierwotnie zaproponowany przez MATTR w 2020 r. Propozycja umożliwia używanie podpisów BBS w formacie JSON-LD powszechnie używanym przez VC. Posiadacze mogą opcjonalnie ujawnić oświadczenia zawarte w oryginalnie podpisanym certyfikacie. Dowód wygenerowany w ramach tego schematu jest dowodem podpisu o wiedzy zerowej, co oznacza, że weryfikator nie może ustalić, który podpis został użyty do sporządzenia dowodu, eliminując w ten sposób wspólne źródło korelacji.
Iden3 to natywny protokół tożsamości ZK, który zapewnia programowalną platformę ZK i biblioteki open source dla prymitywów tożsamości ZK, uwierzytelniania i generowanych zaświadczeń. Protokół generuje pary kluczy dla każdej tożsamości przy użyciu krzywych eliptycznych Baby Jubjub, które są zaprojektowane do efektywnej współpracy z kluczami ZK-SNARK używanymi do potwierdzania własności tożsamości i roszczeń w sposób chroniący prywatność. PolygonID obecnie używa tego protokołu w swoim portfelu tożsamości.
Stosowanie zkp to aktywny obszar badań i eksperymentów, który w ciągu ostatnich kilku lat wzbudził wiele emocji wśród społeczności kryptograficznej. W web3 widzieliśmy go używanego w następujących aplikacjach:
Prywatny zrzut: Stealthdrop
Chroniące prywatność, a jednocześnie godne zaufania dowody: Sismo (własność), Semaphore (członkostwo)
Wiadomość anonimowa: heyanon
Anonimowe głosowanie/głosowanie: Melo
4. Wniosek
Niektóre ogólne implikacje tego badania:
Podobnie jak Crypto katalizowało rozwój i przyjęcie DPKI, komponowalna reputacja zapewniająca dostęp online/IRL będzie katalizatorem zdecentralizowanej infrastruktury tożsamości. Obecnie protokoły wydawania poświadczeń (x-proof) są podzielone na różne przypadki użycia i sieci blockchain. W 2023 r. warstwa agregacyjna tych (podobnie jak profile) dojrzeje i zostanie przyjęta jako ujednolicony interfejs, zwłaszcza jeśli będzie można go wykorzystać do odblokowania doświadczeń poza kryptowalutami, takich jak dostęp do wydarzeń lub rabatów w handlu elektronicznym.
Zarządzanie kluczami pozostaje punktem spornym i podatnym na pojedyncze punkty awarii. Jest to niezgrabne doświadczenie dla większości użytkowników zajmujących się kryptowalutami i całkowicie niedostępne dla większości konsumentów. Federacja to ulepszenie środowiska użytkownika w stosunku do modelu web 1.0, które umożliwia jednokrotne logowanie przy użyciu nazwy użytkownika i hasła dla poszczególnych aplikacji. Chociaż doświadczenie użytkownika w przypadku uwierzytelniania Web3 poprawia się, nadal zapewnia ono słabe doświadczenie użytkownika, wymaga frazy początkowej i zapewnia ograniczone możliwości działania w przypadku zgubienia klucza. Poprawę w tym obszarze zaobserwujemy w miarę dojrzewania technologii MPC i jej upowszechniania wśród osób i instytucji.
Infrastruktura kryptograficzna spełnia potrzeby użytkowników w web2. Prymitywne rozwiązania Web3 zaczynają integrować się z aplikacjami i usługami Web2, udostępniając masom zdecentralizowaną tożsamość, jak na przykład Collab.Land integrujący się z Nuggets, pozwalający użytkownikom Reddita na wykorzystanie swojej reputacji jako VC w celu odblokowania dostępu. Oprogramowanie pośredniczące do uwierzytelniania i autoryzacji Auth0 integruje SIWE jako dostawcę tożsamości, a klienci korporacyjni mogą teraz zapewniać logowanie do portfela poza logowaniem jednokrotnym.
W miarę demokratyzacji danych należy zweryfikować mechanizmy oczyszczania. Podobnie jak protokół indeksowania, Graph wykorzystuje sieć kuratorów i delegatorów do sygnalizowania najbardziej przydatnych podgrafów (API dla danych w łańcuchu), modeli danych wokół użytkowników i reputacji w przypadku protokołów takich jak Ceramic i Orange wymaga czasu i zaangażowania społeczności. Aby wyjść poza DAO i przypadki użycia kryptowalut.
Względy prywatności. Projekty powinny dokładnie rozważyć wpływ pamięci publicznej lub trwałej przy wyborze stosu. W odniesieniu do kombinacji chroniących prywatność VC, efemerycznych i P&DID, a także ZKP do działań w łańcuchu/poza łańcuchem, „czyste” NFT danych publicznych mogą być odpowiednie w ograniczonych przypadkach użycia (np. pewna abstrakcja danych w łańcuchu działania), które zapewniają Funkcje takie jak selektywne ujawnianie, rotacja kluczy, antykorelacja i możliwość odwołania.
Nowe narzędzia kryptograficzne, takie jak zkSNARK, będą ważną częścią infrastruktury tożsamości nowej generacji. Chociaż zkp jest obecnie wdrażany w izolowanych przypadkach użycia, będzie wymagał oddolnego zbiorowego wysiłku badawczo-rozwojowego, aby skoncentrować się na wzorcach projektowania aplikacji, implementacjach obwodów ZK dla prymitywów kryptograficznych, narzędziach bezpieczeństwa obwodów i narzędziach programistycznych. Jest to coś, na co warto zwrócić uwagę.
Zdecentralizowana tożsamość to duży projekt i wymaga wysiłków całego ekosystemu w celu osiągnięcia zbieżności w zakresie standardów, iteracji na elementach pierwotnych i wzajemnego sprawdzania wpływu decyzji projektowych.