[[alloc] init] publikuje propozycję Shielded Bitcoin dla prywatnych transakcji bitcoinowych
Najważniejsze informacje
- •Whitepaper Shielded Bitcoin autorów Clary Shikhelman, Mishi Komarova i Alekseia Moskvina [[alloc] init] opisuje metaprotokół prywatności niewymagający operatorów, soft forków ani zmian w konsensusie Bitcoina.
- •Zasady protokołu egzekwują indeksery Shielded Bitcoin, a dane transakcyjne są osadzane w Bitcoinie za pomocą OP_RETURN lub pola witness, więc łańcuch bazowy traktuje je jak zwykłe dane.
- •Dowody wiedzy zerowej i zbiór nullifierów zapobiegają podwójnemu wydawaniu i inflacji bez ujawniania, które notatki zostały wydane, co pozwala indekserom odrzucać powtarzające się nullifiery zamiast prowadzić zbiór wydanych.
- •Prywatność konstrukcji oceniana jest jako porównywalna z shielded pools w Zcash, a w przeciwieństwie do coinjoinów nie wymaga okresowego remixowania ani pomiaru prywatności.
- •Planowany most wykorzystuje szyfrowanie świadków PIPEs v2 do przenoszenia środków bez operatorów i federacji, a nadchodzące opracowania mają zdefiniować mechanizm mostu oraz prywatność wejścia i wyjścia.
![[[alloc] init] publikuje propozycję Shielded Bitcoin dla prywatnych transakcji bitcoinowych](https://edgex-public-news-generator-jp-prod.s3.ap-northeast-1.amazonaws.com/news/prod/29a2a382d68703844375d2233b7004348f8304eb9c945e5655c3a42a7306c36b.jpg)
Badacze z [[alloc] init] — Clara Shikhelman, Misha Komarov i Aleksei Moskvin — opublikowali Shielded Bitcoin, whitepaper opisujący nowatorski metaprotokół prywatności zbudowany w podstawowej warstwie Bitcoina. Konstrukcja umożliwia transakcje shielded w Bitcoinie bez operatorów, soft forków ani jakichkolwiek innych zmian w konsensusie Bitcoina. Whitepaper oraz towarzyszące ogłoszenie na blogu są dostępne, a zespół podał wiadomość na X.
Protokół definiuje strukturę transakcyjną i protokół indeksowania dla transakcji o silnej ochronie prywatności, opierając się jednocześnie na Bitcoin PIPEs przy przenoszeniu środków do systemu i z niego. Mechanizm PIPEs jest szczegółowo omówiony na końcu tego artykułu.
Cecha braku zmian w konsensusie ma znaczenie: księga Bitcoina rejestruje kwoty i adresy w sposób jawny, a zmiany jego zasad historycznie wymagały szerokiej koordynacji w całej sieci. Konstrukcja działająca w całości w ramach istniejącego zestawu zasad nie zależy od tego procesu, aby iść naprzód.
Konstrukcja podobna do Bitcoina, ale o zupełnie innych szczegółach
Architektura celowo naśladuje sam Bitcoin. Istnieje odpowiednik UTXO, zwany notatką. Transakcje zużywają notatki jako wejścia, tak jak zwykła transakcja bitcoinowa wydaje UTXO. Świadek dowodzi, że zużyte wejścia są właściwie autoryzowane, a węzły — w przypadku metaprotokołu indeksery — analizują historię transakcji i budują bieżący stan tego, które monety są wydane, a które niewydane.
Każdy szczegół leżący u podstaw jest jednak zupełnie inny.
Transakcje, które sam Bitcoin ignoruje
Transakcja Shielded Bitcoin to po prostu blob danych z prefiksem — coś w rodzaju „shbtc:” — osadzony w transakcji bitcoinowej za pomocą OP_RETURN, pola witness lub innej metody przenoszenia danych. To klasyczny wzorzec metaprotokołu: zasady protokołu egzekwują jego własne indeksery, a nie Bitcoin, więc łańcuch bazowy nie widzi niczego poza zwykłymi danymi. Blob nie ma żadnego znaczenia dla Bitcoina: sieć niczego nieeryfikuje i nie egzekwuje wobec niego żadnych reguł.
W rezultacie całkowicie możliwe jest, aby nieprawidłowe transakcje Shielded Bitcoin trafiły na łańcuch. Do indeksera Shielded Bitcoin, który biernie obserwuje blockchain, należy ignorowanie transakcji, które nie przechodzą walidacji, i odmowa uwzględniania ich przy aktualizacji stanu sald sieci.
Nullifiery zamiast zbioru wydanych
Indekser nie usuwa notatek ze zbioru niewydanych notatek tak, jak Bitcoin usuwa wydane UTXO. Zamiast tego prowadzi zbiór nullifierów. Ten mechanizm pozwala użytkownikowi publicznie opublikować zaszyfrowany dowód i nullifier wskazujący, że notatka została wydana, bez ujawniania, która notatka została wydana. Zamiast sprawdzać, czy notatka znajduje się w „zbiorze niewydanych notatek”, uczestnicy sprawdzają, czy dany nullifier został już użyty.
Indeksery budują drzewo Merkle, które rośnie w nieskończoność i może być wyłącznie rozszerzane, zawierające każde kiedykolwiek utworzone wyjście notatki, obok zbioru nullifierów.
Uruchomienie protokołu wymaga tylko węzła
Korzystanie z protokołu nie wymaga niczego poza węzłem Bitcoina i indekserem Shielded Bitcoin. Nie potrzeba żadnej usługi, koordynatora ani stanu poza łańcuchem, aby odzyskać środki. Działa to dokładnie jak on-chain Bitcoin: użytkownik potrzebuje jedynie swojego węzła/indeksara i swoich kluczy.
Każdy portfel użytkownika wyprowadza główny klucz tajny, z którego tworzone są wszystkie pozostałe zestawy kluczy — konstrukcja bardzo przypominająca portfel HD w Bitcoinie, z którego można generować wiele zestawów adresów. sk_spend służy jako prywatny klucz wydawania, sk_nf służy do nullifikowania wyjść notatek, vk_in odszyfrowuje i przegląda przychodzące notatki, vk_out przegląda transakcje wychodzące, a sk_view generuje adres odbiorczy.
Gdy użytkownik chce przekazać komuś adres do otrzymywania środków, generuje wartość dywersyfikatora d, podobną do wartości wyprowadzania, i mnoży ją przez swój klucz sk_view. Wynikowy klucz publiczny pk_d wraz z d stanowi adres użytkown.
Nadawca generuje następnie losową wartość, r_seed, która jest potrzebna zarówno do szyfrowania wyjścia notatki, jak i do nullifikacji. Wyjścia transakcji zawierają tylko trzy zaszyfrowane elementy: wartość wyjścia, wartość d przekazaną nadawcy przez odbiorcę oraz wartość r_seed nadawcy. Do szyfrowania nadawca używa tajnej efemerycznej pary kluczy i klucza publicznego odbiorcy, aby utworzyć wspólny sekret — obie strony mogą obliczyć ten sam sekret, mnożąc swój klucz prywatny przez klucz publiczny drugiej strony. Wyjście notatki jest szyfrowane tym wspólnym sekretem, a efemeryczny sk_eph jest dołączany w postaci niezaszyfrowanej, aby odbiorca mógł samodzielnie wygenerować wspólny sekret.
Dowody wiedzy zerowej gwarantują poprawność
Po stronie wejściowej do ważności transakcji wymagane są dwie rzeczy: publiczny nullifier dla każdego zużytego wyjścia notatki oraz dowód wiedzy zerowej wykazujący, że (1) wyjście notatki znajduje się w drzewie Merkle notatek, (2) transakcja jest autoryzowana przez właściwy klucz sk_spend, (3) nullifier został poprawnie wyprowadzony oraz (4) nie doszło do inflacji.
Nullifier obejmuje klucz sk_nf, wartość ρ wyprowadzoną z r_seed oraz pozycję notatki w drzewie Merkle wyjść notatek. Chociaż nikt nie może stwierdzić, któremu wyjściu notatki odpowiada nullifier, dowody wiedzy zerowej w każdej transakcji gwarantują, że każdy nullifier dodany do zbioru pochodził z ważnego wyjścia notatki. Indeksery mogą zatem po prostu odrzucać powtarzające się nullifiery zamiast usuwać wydane notatki, a dopóki nie ma powtórzeń, system zapewnia tę samą gwarancję przeciw podwójnemu wydawaniu.
Efekt netto polega na tym, że zaszyfrowane transakcje metaprotokołu można osadzać w blockchainie Bitcoina, zachowując jednocześnie gwarancję, że nic nie jest wydawane podwójnie, a monety nie są tworzone z niczego.
Właściwości prywatności
Według analizy system jest dobrze zaprojektowany pod względem właściwości prywatności i dorównuje rozwiązaniom takim jak shielded pools w Zcash. To porównanieicuje szerszy kontekst: Zcash zapewnia transakcje shielded za pomocą reguł wbudowanych we własny protokół, natomiast ta konstrukcja realizuje porównywalne właściwości w podstawowej warstwie Bitcoina bez ingerencji w konsensus. Kwestie prywatności pojawiające się w momencie wejścia do metaprotokołu i wyjścia z niego mają zostać szczegółowo opisane w nadchodzącym opracowaniu, przez co punkty wejścia i wyjścia systemu należą do szczegółów, które warto obserwować w miarę postępu prac. W przeciwieństwie do coinjoinów nie ma tu obaw o pomiar prywatności ani konieczności okresowego remixowania.
Przenoszenie środków za pomocą PIPEs v2
Planowany most opiera się na PIPEs v2, schemacie szyfrowania świadków. PIPEs pozwalają zaszyfrować klucz prywatny programem/mechanizmem, który nie ujawni klucza, chyba że zostanie dostarczony dowód ZK wykazujący spełnienie określonego warunku — na przykład stanu jakiegoś UTXO albo potwierdzenia transakcji. Pozwoliłoby to mostowi funkcjonować bez operatora, federacji ani jakiejkolwiek strony trzeciej powierzającej środki — to istotna cecha, ponieważ konstrukcje mostów rozszerzających Bitcoina zazwyczaj opierały się na takich powiernikach. Nie wymaga to soft forków ani zmian protokołu Bitcoina i odbywa się w całości poza łańcuchem.
Kolejnym etapem prac zespołu jest mechanizm mostu, który pozwoliłby użytkownikom wpłacać środki do Shielded Bitcoin za pomocą kryptograficznie kontrolowanych kluczy PIPEs, które następnie byłyby „odblokowywane” poprzez wygenerowanie dowodu ZK legalnych transakcji wyjścia z mostu potwierdzonych w łańcuchu. Prace nad opracowaniem definiującym ten aspekt systemu trwają i powinny zostać opublikowane w niedalekiej przyszłości; wraz z opracowaniem o prywatności wejścia/wyjścia uzupełnią one elementy pozostawione otwarte w whitepaperze.
Ten artykuł, którego autorem jest Shinobi, ukazał się pierwotnie w Bitcoin Magazine.