Przedwczoraj Nocturne właśnie ogłosił, że zebrał 6 milionów dolarów i otrzymał inwestycję od Vitalika. Dlaczego nazywam to startupem dla Vitalika, skoro główną technologią tego projektu są adresy prywatne. 20 stycznia tego roku Vitalik napisał specjalny post na swoim blogu Aby zbadać wykonalność adresów prywatnych, przeprowadziłem również demontaż i analizę tego artykułu następnego dnia. Możesz go przeczytać do recenzji.

Po raz pierwszy konto Nocturne na Twitterze pojawiło się w maju tego roku, pięć miesięcy po tym, jak Vitalik omawiał adresy prywatne, a następnie kolejne pięć miesięcy po otrzymaniu inwestycji od Vitalika, więc był to dla Vitalika całkiem udany przypadek rozpoczęcia działalności gospodarczej.

Porozmawiajmy osobno o adresach prywatnych, o tym, co dokładnie robi, jak to wdrożyć i jaki jest efekt.

Istotą adresu prywatności jest osiągnięcie anonimowości w procesie transferu tokenów, co jest efektem osiągniętym przed gotówką tornado. Anonimowy transfer jest odwiecznym tematem w Crypto i jest również bardzo sztywnym wymogiem. Wyjaśnię prywatność w sposób prosty i szczegółowy W jaki sposób adres jest zaimplementowany i czym różni się od gotówki tornado.

Ale przede wszystkim musi być jasne, że adresy prywatności zdecydowanie nie są nową koncepcją. Istnieją one od dawna i powstało wiele projektów i protokołów pochodnych. W rzeczywistości Monero opiera się na tej samej zasadzie, ale Vitalik jest ważnym promotorem jego teoria w ekosystemie Ethereum. 22 sierpnia na forum badaczy Ethereum Nerolation zapytał, czy można połączyć ZK i ERC721, aby wysyłać i odbierać NFT anonimowo. Vitalik odpowiedział, że to, co uważasz za zbyt kłopotliwe, i może można to zaimplementować w prostszy sposób i tymczasowo nazwać to ERC721S

Następnie Nerolation i Vitalik zaproponowali EIP5564, całkowicie promując standaryzację.

Ale tak naprawdę projekt mający na celu produkcję adresów prywatnych był już wcześniej, przynajmniej jeśli chodzi o dojrzałość, osiągnął stan użyteczny, ale nie wiem, dlaczego nie zyskał przychylności Vitalika… Zamiast tego zajęło to rok, Nocturne, który przyszedł późno, był faworyzowany

Mówiąc najprościej, zasada adresu prywatnego polega na generowaniu jednorazowego nowego adresu dla każdej transakcji Płatnik przelewa pieniądze na nowy adres, a nowy adres może być kontrolowany jedynie przez odbiorcę. Jest on wyrzucany po wykorzystaniu i wymagana jest operacja ręczna. Jest to równoznaczne z wygenerowaniem przez A nowego adresu, a następnie przekazaniem B klucza prywatnego tego adresu, a następnie A przekazuje mu 10U. Ponieważ tylko B zna klucz prywatny tego adresu, B może kontrolować ten adres i włóż 10U do centrali, więc z łańcucha publicznego widzimy tylko, że A przesłał 10U na pusty adres, a następnie ten adres przekazał 10U do centrali, ale nikt nie wie, kto konkretnie przekazał 10U do centrali.

Jednakże powyższy proces opiera się na wielu ręcznych operacjach i wiąże się z transferem kluczy prywatnych. Jest to nie tylko kłopotliwe, ale i ryzykowne. Czy istnieje sposób na komercjalizację tego procesu? Pomysł jest taki, jak automatycznie zrealizować „A generuje adres „proces, który może kontrolować tylko B.

To zadanie mają do spełnienia adresy prywatności i tutaj także wykorzystano pomysły ZK.

Wracając do poprzedniego przykładu, na przykład A chce przenieść 10U do B. A zna już adres publiczny B, ale A nie chce, aby inni znali łącze transakcyjne pomiędzy A i B, więc A generuje parę tymczasowych kluczy prywatnych i klucz publiczny i łączy tymczasowy klucz prywatny z adresem publicznym B, aby wygenerować adres prywatny, a następnie A przesyła 10U na adres prywatny.

Sądząc po łańcuchu, A przeniósł w tym momencie 10U na nowy adres. W tym momencie pojawiają się dwa pytania. Po pierwsze, skąd B wie, że ten nowy adres prywatny został utworzony przez A dla B? Może A wysłał także 10U do innych osób, takich jak C, D, E itd. Po drugie, nawet jeśli B wie, że adres prywatny został stworzony dla niego przez A, to w jaki sposób B może uzyskać 10U tego nowego adresu lub jak kontrolować nowy adres?

Właśnie wspomniałem, że gdy A użyje go do wygenerowania adresu prywatnego, najpierw wygeneruje parę tymczasowego klucza prywatnego i klucza publicznego. Tymczasowy klucz prywatny + adres publiczny B = adres prywatny, a klucz prywatny B + tymczasowy klucz publiczny również równy adresowi prywatnemu, więc A jest obecny. Kiedy wysyłasz 10U na adres prywatny, tymczasowy klucz publiczny również zostanie opublikowany w łańcuchu. B przeskanuje rejestr kluczy publicznych dla każdego nowo odkrytego tymczasowego klucza publicznego, B połączy swój klucz prywatny do wygenerowania adresu prywatnego. Jeśli tak się składa, że ​​są w nim pieniądze, oznacza to, że A mu je dał.

Następnie własny klucz prywatny B może zostać użyty do obliczenia klucza prywatnego adresu prywatnego, a klucz prywatny adresu prywatnego może zostać użyty do kontrolowania adresu prywatnego dla następnej transakcji transferu.

Efekt z punktu widzenia łańcucha jest taki, że A przeniósł 10U na nowy adres, a następnie 10U zostało przeniesione na centralę. Jednak to, kto manipulował nowym adresem w celu przeniesienia, nie jest odzwierciedlone w łańcuchu. Nowy adres jest jak marionetka na sznurkach. Sterowanie odbywa się za pomocą pary rąk od tyłu.

Powyższa zasada dotyczy adresów prywatnych. Póki co sieć testowa i sieć główna Nocturne nie są dostępne online i nie ma planu działania, więc okaże się, czy Nocturne będzie w stanie osiągnąć efekt tornada pieniężnego.