Fedimint to otwarte oprogramowanie i protokół, dzięki którym grupa opiekunów, zwana federacją, prowadzi wspólny system płatności. Emituje e-cash: cyfrowe tokeny przeznaczone do wymiany na bitcoiny z rezerwy. Użytkownik ma tokeny, a nie samodzielne uprawnienie do podpisania wypłaty z rezerwy.
Wyobraź sobie, że Anna używa portfela połączonego z lokalną federacją, a Piotr przyjmuje jej e-cash w kawiarni. Każda kawa nie musi tworzyć osobnej transakcji Bitcoin. Aplikacje posługują się tokenami wspólnej mennicy, nazywanej mintem. Same bitcoiny pozostają w rezerwie federacji; Anna i Piotr przekazują sobie tokeny. Fedimint dostarcza narzędzia, opiekunowie prowadzą konkretną federację, a portfel jest interfejsem Anny. To różne rzeczy. Standardowe moduły obsługują Bitcoin, Lightning Network i e-cash; kolejne mogą dodawać inne usługi. Każda federacja działa osobno i ma własne rezerwy. Jej tokeny nie są automatycznie przyjmowane przez wszystkie pozostałe. Nawet zgodna decyzja opiekunów nie zastępuje reguł sieci Bitcoin. [1] [2]
Federacja ma sprawić, że ważne operacje nie zależą od jednego operatora. Przy przykładowym progu 3-of-4 emisja tokena wymaga trzech prawidłowych udziałów w podpisie od czterech opiekunów. Jeden niedostępny opiekun pozostawia dość udziałów, dwóch już nie. Ale trzej współpracujący posiadacze udziałów mogą też podpisywać bez zgody czwartego. Podział uprawnień nie gwarantuje uczciwości ani rezerw. To Counterparty risk: zależność od ludzi lub organizacji, które mogą nie wypłacić środków. Progowe podpisy e-cash i Multisig, wspólne uprawnienie do rezerwy Bitcoin, służą przy tym różnym celom. Sprawdź faktyczne reguły wybranej federacji. [3] [4]
Gdy Anna wpłaca bitcoiny bezpośrednio przez blockchain, publiczną historię potwierdzonych transakcji, jej aplikacja przedstawia dowód odpowiedniego wyjścia. Każde takie wyjście zapisuje kwotę i warunki jej wydania. Federacja musi go przyjąć zgodnie ze swoimi regułami. Przy wypłacie to federacja buduje i podpisuje transakcję Bitcoin z rezerwy. Sam token nie daje Annie klucza do wypłaty bez pozostałych. To istotna różnica względem Self-Custody, samodzielnego zarządzania kluczami służącymi do podpisywania płatności Bitcoin. Nadal potrzeba dostępnych opiekunów, środków, opłat i wymaganych potwierdzeń. Szybka płatność wewnętrzna nie obiecuje równie szybkiej wypłaty dowolnej kwoty. [4] [7]
Prywatność e-cash opiera się na Blind Signature, ślepym podpisie. Klient matematycznie ukrywa konkretny token, prosi o podpis, a następnie usuwa zaślepienie. Wynik można sprawdzić, ale sam token nie pozwala mennicy powiązać późniejszego wykorzystania z konkretną prośbą o emisję. Dla zainteresowanych techniką: dokumentacja opisuje progowe podpisy BLS na BLS12-381, nie FROST jako podpis tokena. Klient łączy dość prawidłowych udziałów w jeden weryfikowalny podpis. Każdy nominał ma własny klucz, więc ukryta tożsamość tokena nie oznacza ukrycia emitowanych nominałów przed mennicą. [3]
Piotr może sprawdzić, czy token ma prawidłowy podpis federacji. Nie dowie się z tego, czy ktoś już go wykorzystał. Cyfrowe dane można kopiować, a Anna może zachować ten sam token. Federacja zapisuje więc zużyte identyfikatory, zwane nonce, i odrzuca próbę ponownego wydania tych samych tokenów. Odbiorca musi skutecznie wymienić tokeny na nowe, zamiast ufać obietnicy, że druga kopia nie zostanie użyta. Prawdziwy podpis, niewydany token i wystarczająca rezerwa to trzy osobne kwestie. Sprawdzenie jednej nie rozstrzyga wszystkich. [3]
Jeżeli kawiarnia przyjmuje zwykłą płatność Lightning Network, przekaz może obsłużyć gateway, czyli brama płatnicza. Łączy federację z Lightning i potrzebuje płynności, dostępnych środków, po obu stronach. Nie musi być opiekunem federacji. Dokumentacja modułu V2 opisuje kontrakty uzależniające wydanie środków od warunków płatności oraz preimage, tajną wartość ujawnianą po spełnieniu warunku. W razie niepowodzenia kontrakt przewiduje ścieżki zwrotu, ale nie gwarantuje stałej dostępności. Awaria bramy lub brak płynności może zatrzymać płatność mimo działającej mennicy. [5]
Ślepy podpis uniemożliwia mennicy powiązanie emisji tokena z jego późniejszym wykorzystaniem na podstawie samego tokena. Nie usuwa pozostałych śladów. Odbiorca może wiedzieć, że płaciła Anna; brama widzi informacje potrzebne do Lightning; obserwator może porównywać czas lub kwoty. Dane połączenia też bywają wskazówką. Pytaj więc, co ma pozostać ukryte i przed kim: opiekunem, kawiarnią, bramą czy obserwatorem sieci. Bardziej prywatny obieg tokenów nie anonimizuje automatycznie wszystkich wpłat, wypłat i kontaktów między ludźmi. [3] [5]
Utrata telefonu nie musi oznaczać utraty tokenów, jeżeli aplikacja wspiera poprawnie skonfigurowane odzyskiwanie. Opisany projekt wykorzystuje główną tajną wartość, z której aplikacja może ponownie obliczyć potrzebne dane, zaszyfrowane kopie stanu i dostępną historię federacji. Procedura zależy od aplikacji i wersji; nie wystarczy wpisać bitcoinowej Seed Phrase w dowolnym portfelu. Zanim zaczniesz polegać na usłudze, oddzielnie wypróbuj odtworzenie klienta i małą wypłatę bitcoinów. Kopia pomaga po utracie danych, lecz nie uzupełnia pustej rezerwy ani nie zmusza potrzebnych opiekunów do współpracy. [6] [4]
Pełniejszy obraz uzyskasz, czytając to hasło razem z Cashu, Chaumian eCash, Lightning Network, Multisig, Counterparty risk, Samodzielne przechowywanie bitcoinów. Do tego hasła prowadzą również odsyłacze z Chaumian eCash, Blind Signature, Cashu.