Gdzie jest mój klucz?

Reklamy portfeli MPC (Multi-Party Computation) brzmią jak marzenie początkującego: proszę zapomnieć o dwudziestu czterech słowach na karteczce, żadnych fraz seed, które można zgubić albo ujawnić. Klucz prywatny w całości rzekomo w ogóle nie istnieje — matematyka podzieliła go na zaszyfrowane udziały. Portfel ogłasza się jako niepowierniczy (non-custodial): Państwa pieniądze należą wyłącznie do Państwa, nawet twórcy usługi nie mają do nich dostępu.

Brzmi pięknie. A teraz zdejmijmy opakowanie i zobaczmy, jak ten mechanizm działa w rzeczywistości — bez abstrakcyjnych wzorów i marketingowych bajek.

Mechanika pułapki: pół klucza to nie klucz

Czym w praktyce jest detaliczny portfel MPC? Państwa klucz prywatny nie jest przechowywany na urządzeniu w całości — pocięto go na kawałki. Najczęściej w schemacie „2 z 2” (jak w Zengo) albo „2 z 3” (jak w Bron). Jedna część leży w aplikacji na Państwa telefonie, druga na serwerze firmy, która stworzyła portfel. Czasem istnieje trzeci udział — rzekomo u „niezależnego partnera” albo w chmurze, ale zasady dostępu do niego i tak kontroluje usługodawca.

Żeby wysłać choćby jednego satoshi, Państwa telefon musi połączyć się z serwerem firmy i przeprowadzić z nim wspólne obliczenie kryptograficzne. Dopiero wtedy blockchain otrzymuje ważny podpis cyfrowy.

A teraz najważniejszy fakt techniczny, o którym milczą broszury reklamowe: bez drugiego udziału Państwa część na telefonie to bezużyteczny kawałek cyfrowego śmiecia. Nie da się jej wyeksportować do innego portfela. Nie da się jej wpisać do Electrum, Bitcoin Core ani Mitilena. Nie da się z nią zrobić absolutnie nic. Jeśli zdalny serwer odmówi udziału we wspólnym obliczeniu, Państwa bitcoiny zostają na adresie zamurowane na amen.

„Wynocha”: czytamy drobny druk

Twórcy takich usług uwielbiają powtarzać: „Ale my przecież jesteśmy niepowierniczy! Technicznie nie możemy ukraść Państwa pieniędzy!”

Wcale nie muszą niczego kraść. Wystarczy zamknąć Państwu drzwi przed nosem. Nie trzeba wierzyć nam na słowo — otwórzmy regulaminy tych, którzy najgłośniej sprzedają tę technologię.

Bron. Umowa portfela (Wallet Terms), wersja z 18 maja 2026 r.:

  • Punkt 9.4. Usługodawca może w każdej chwili przestać Państwa obsługiwać bez podania przyczyny — wystarczy uprzedzić 14 dni wcześniej. Opcja „nie chcemy mieć z Państwem nic wspólnego” jest wpisana w regulamin od samego początku.
  • Punkt 2.1. Jeśli firma według własnego wyłącznego uznania stwierdzi, że Państwa operacje niosą ryzyko naruszenia sankcji, przepisów AML lub jakichkolwiek innych wymogów regulacyjnych, blokuje konto natychmiast i bez ostrzeżenia. I tam też jest napisane to najważniejsze: firma odmawia udziału w podpisie MPC Państwa transakcji.
  • Tamże, czarno na białym: usługodawca uczciwie uprzedza, że to może doprowadzić do całkowitej utraty dostępu do Państwa kryptoaktywów, a firma nie ponosi za tę utratę żadnej odpowiedzialności.
  • Eksport klucza. Myśleli Państwo, że w razie problemów po prostu zabiorą swój klucz? Umowa opisuje eksport jako funkcję, którą firma może udostępnić w wyjątkowych przypadkach według własnego uznania. Obowiązku wydania Państwu pełnego klucza przy blokadzie nie ma.

Przetłumaczmy to z prawniczego żargonu na ludzki język. Wpłacili Państwo pieniądze do portfela. Jutro automatyczny scoring AML albo zapytanie jakiegoś urzędnika przykleja do Państwa przelewu flagę „podejrzane”. Serwer Bron pociąga za wajchę i wyłącza Państwu podpis. Idą Państwo do supportu: „Oddajcie moje pieniądze, przecież jesteście usługą niepowierniczą!” A tam ktoś stuka palcem w ekran: „Widzisz punkt 2.1? Przeczytałeś? Zgodziłeś się? Wynocha”.

I nic Państwo nie zrobią. Bitcoiny leżą w blockchainie, saldo widać, ale środków nie da się przesunąć ani o milimetr.

Zengo. Umowa użytkownika, wersja z czerwca 2026 r.:

  • Schemat „2 z 2”. Żadnych stron trzecich: jeden udział u Państwa, drugi na serwerze. Serwer zerwał połączenie — i transakcji nie da się podpisać.
  • Blokada. Konto zostaje zamrożone czasowo lub na zawsze, jeśli firma „uzna”, że naruszyli Państwo warunki albo Państwa zachowanie „budzi podejrzenie działalności przestępczej”. Nie wyrok sądu, tylko podejrzenie.

„Niezależny escrow”: gwarancja warta półtora tysiąca dolarów

Marketingowcy Zengo odpowiadają na to: „Mamy system Guaranteed Recovery! Jeśli Zengo jako firma zostanie zamknięte, niezależny powiernik i agent escrow opublikują klucze do odszyfrowania udziałów serwerowych i każdy użytkownik odzyska swoje środki!”

Brzmi poważnie. Zdejmijmy ładne opakowanie i zobaczmy, kim są ci ludzie i za co odpowiadają przed Państwem.

Klucz, którym odszyfrowuje się udziały serwerowe, Zengo przekazało na przechowanie firmie EscrowTech. A prawo do wydania polecenia publikacji otrzymał powiernik.

  • Powiernik to izraelskie biuro doradztwa podatkowego Joulus Gazit & Co. W umowie Zengo czarno na białym napisano, że „nie gwarantuje ono kompletności ani dokładności informacji i nie ponosi odpowiedzialności za błędy, pominięcia ani działania związane z wydaniem środków”. Najnowszy audyt biura z 6 października 2026 r. głosi: pieniędzy Zengo wystarczy „co najmniej do 1 stycznia 2027 r.”. Na czym opiera się ten wniosek? Cytat dosłowny: „na podstawie zapytania skierowanego do kierownictwa spółki i jej doradców prawnych”. Biuro po prostu zapytało Zengo, czy ma pieniądze, usłyszało „tak” i przybiło pieczątkę.
  • Depozytariusz escrow to EscrowTech, prywatna firma ze stanu Utah zatrudniająca około 14 osób. Konkretna umowa z Zengo jest tajna. Ale zgodnie z typową umową EscrowTech firma występuje wyłącznie jako „techniczny przechowawca depozytu”. W sytuacji spornej musi trzymać depozyt zamrożony do rozstrzygnięcia przez sąd w USA, a jej odpowiedzialność finansowa jest ograniczona do wysokości otrzymanych honorariów. Według jej publicznego cennika usługa kosztuje od 1595 $ rocznie.

Czyli „gwarancja” dla miliardów dolarów depozytów użytkowników opiera się na firemce z Utah z limitem odpowiedzialności półtora tysiąca dolców i na biurze podatkowym, które z góry uprzedziło, że za nic nie odpowiada.

Ale nawet nie to jest najważniejsze: cały ten mechanizm ratunkowy uruchamia się WYŁĄCZNIE w razie całkowitej likwidacji samej firmy Zengo. Jeśli firma ma się świetnie, ale postanowiła zablokować akurat Państwa — powiernik nawet palcem nie kiwnie. Dla systemu wszystko działa w trybie normalnym. A Państwa klucz jest zablokowany na zawsze.

A ile Państwo dostaną, jeśli klucz zostanie zgubiony?

Załóżmy najgorsze: serwer spłonął, kopie zapasowe są uszkodzone albo firma po prostu zgubiła udziały serwerowe. Ile Państwu zrekompensują? Otwieramy sekcję o ograniczeniu odpowiedzialności (Limitation of Liability) w umowie Zengo: ich maksymalna odpowiedzialność jest ograniczona do połowy opłat, które zapłacili Państwo usłudze w ciągu poprzednich 12 miesięcy („half the fees you paid us in the twelve months preceding”).

Mieli Państwo w portfelu 100 000 $, a za płatną subskrypcję Zengo Pro zapłacili 100 $? Pułap odpowiedzialności firmy wynosi równo 50 $. Korzystali Państwo z podstawowego darmowego planu? Pułap rekompensaty to okrągłe zero. Stracili Państwo wszystko — dostają figę z makiem. I to nie są domysły: tak brzmi oficjalna umowa, którą akceptują Państwo przy zakładaniu portfela.

Kto naprawdę stworzył Państwa klucz?

I ostatnia iluzja: „Ale mój osobisty udział jest generowany na moim telefonie! Serwer go nie zna!”

Włączmy logikę. Aplikację mobilną napisała ta sama firma, pobiera się ją ze sklepu, a ona stale utrzymuje połączenie z backendem firmy. Kto kontroluje generator liczb losowych wewnątrz tej aplikacji? Kod firmy. Kto zbudował plik binarny? Ta sama firma.

Co więcej, zgodnie z oficjalną architekturą Zengo zaszyfrowana kopia Państwa „osobistego” udziału i tak jest przechowywana na ich serwerach — nazywają to kopią zapasową. Twórcy twierdzą, że klucz deszyfrujący leży osobno, w Państwa prywatnej chmurze. Ale czy aplikacja z App Store faktycznie dotrzymuje tych obietnic? Zwykły użytkownik przez ekran smartfona nigdy się nie dowie, czy oprogramowanie nie wysyła tych 32 bajtów prywatnego sekretu prosto do swoich twórców — otwarcie albo pod przykrywką zwykłej telemetrii.

A jeśli udział klienta trafi do firmy, podział klucza traci wszelki sens: część serwerową już mają, kliencką dostali — i wychodzi pełny klucz prywatny. W tym momencie cała matematyka MPC przestaje chronić Państwa przed samym usługodawcą: firma może podpisać dowolną transakcję za Państwa plecami. A gdy saldo spadnie do zera albo konto zostanie zablokowane, usłyszą Państwo po prostu: „Zostali Państwo zbanowani za naruszenie zasad, do widzenia”.

Obie części klucza rodzą się w oprogramowaniu jednej i tej samej komercyjnej usługi. Twierdzenie „klucz mają tylko Państwo” opiera się wyłącznie na ślepej wierze w słowo honoru twórców.

Idealne alibi powiernika

Technologię MPC przedstawia się jako szczyt niepowierniczego bezpieczeństwa. W praktyce użytkownik dostaje najgorsze z obu światów:

  • Od portfela niepowierniczego dostają Państwo całkowity brak gwarancji: jeśli zgubią Państwo telefon albo dostęp do chmury, firma rozłoży ręce: „Jesteśmy niepowierniczy, nie mamy Państwa klucza, niczego nie odzyskamy”.
  • Od giełdy powierniczej dostają Państwo stuprocentową kontrolę z zewnątrz: zdalny serwer może w każdej sekundzie odmówić Państwu podpisu.

Tyle że na zwykłej scentralizowanej giełdzie mają Państwo przynajmniej status prawny klienta: giełda musi przestrzegać regulacji finansowych, zwrócić saldo przy zamknięciu rachunku albo odpowiadać przed sądem. A w detalicznym portfelu MPC biznes zbudował sobie idealne alibi:

„Nie ruszaliśmy Państwa pieniędzy — leżą w blockchainie, proszę podziwiać do woli. My po prostu odmówiliśmy wspólnego obliczenia podpisu. A to, że bez naszego podpisu nie mogą Państwo wysłać ani centa — cóż, sami Państwo podpisali regulamin. Przeczytali Państwo? Zgodzili się Państwo? No to wynocha”.

Nikt nie twierdzi, że jutro rano na pewno zostaną Państwo okradzeni. Ale cała infrastruktura, całe oprogramowanie i wszystkie umowy są od początku skonstruowane tak, by można było odciąć Państwa od pieniędzy w dowolnym dniu. I nikt Państwu nie gwarantuje, że będzie inaczej.