Bitcoin.com News
Obsługiwane przez

Porzucony pokerowy eksperyment Satoshiego wraca z akcentem bitcoina

Prawie 18 lat po tym, jak Satoshi Nakamoto pozostawił niedokończony interfejs do pokera ukryty w oryginalnym oprogramowaniu Bitcoina, badacz Robin Linus opracował protokół kryptograficzny, który umożliwia rozgrywkę. Jego projekt „Bitcoin Poker” pozwala dwóm osobom grać w Texas Hold’em bez krupiera, prywatnie generować karty oraz realizować wypłaty zgodnie z obowiązującymi zasadami Bitcoina. Haczyk polega na tym, że przygotowanie jednej gry wymaga ponad 56 000 węzłów drzewa transakcji, około 8,4 MB danych konfiguracyjnych oraz sporej akrobatyki kryptograficznej.

NAPISAŁ
UDOSTĘPNIJ
Porzucony pokerowy eksperyment Satoshiego wraca z akcentem bitcoina

Najważniejsze wnioski

  • 6 września Robin Linus opublikował Bitcoin Poker, przekształcając koncepcję pokera Satoshiego z 2008 roku w protokół.
  • Bitcoin Poker wykorzystuje 56 132 węzły drzewa transakcji do obsługi gry w Texas Hold’em dla dwóch graczy.
  • Projekt Linusa nie wymaga zmian w konsensusie Bitcoina, ale jego bezpieczeństwo nadal wymaga niezależnej weryfikacji w 2026 roku.

W 2008 roku, kiedy Satoshi Nakamoto przygotowywał się do opublikowania białej księgi, tajemniczy wynalazca najwyraźniej znalazł czas, by naszkicować pokój pokerowy w kodzie źródłowym Bitcoina. W najwcześniejszym kodzie źródłowym Bitcoina ukryte były przyciski do rozdawania kart, pasowania, sprawdzania i podbijania stawek. Był tylko jeden problem. Żadna z tych funkcji nie pozwalała faktycznie grać w pokera.

Oprogramowanie miało cechy stołu do gry, ale nie zawierało działającej gry. Po upływie 18 lat Robin Linus, badacz ze Stanford, zajął się problemem pozostawionym przez Satoshiego. W czwartek Linus zaprezentował Bitcoin Poker – protokół, który pozwala dwóm osobom rozegrać prawdziwą partię Texas Hold’em, wykorzystując Bitcoin do egzekwowania zasad, rozliczania zakładów i radzenia sobie z graczami odmawiającymi współpracy.

„Drogi Satoshi, pierwszy spór dotyczący BitVM, wielojęzyczny SHA2-ECDSA, szaleństwo związane z Binohash – to wszystko to tylko listy od fanów napisane w Bitcoin Script. Nic z tego nie ma znaczenia, dopóki nie zrealizuję twojej pierwotnej wizji” – napisał Linus na X. „W końcu ukończyłem więc klienta do pokera, którego pozostawiłeś niedokończonego w Bitcoin v0.1. Daj mi znać, żeby rozegrać kilka rozdań”.

Zapomniany pokój pokerowy Satoshiego zyskuje drugie życie

Oryginalny kod źródłowy Bitcoina zawierał plik o nazwie uibase.cpp, który zawierał elementy graficzne lobby i stołu pokerowego. Interfejs nosił datę wygenerowania z 16 kwietnia 2008 r., czyli mniej więcej sześć miesięcy przed opublikowaniem przez Satoshiego białej księgi Bitcoina. Przyciski oznaczone jako „Deal Hand”, „Fold”, „Call” i „Raise” sugerowały coś bardziej ambitnego niż prosta aplikacja płatnicza, chociaż Satoshi nigdy publicznie nie wyjaśnił, co zamierzał z nimi zrobić.

Bitcoin Poker screenshot.
Strona internetowa Bitcoin Poker. Zrzut ekranu z ładowaniem portfela.

Te wczesne fragmenty nie stanowiły działającego klienta pokerowego, a tym bardziej systemu hazardowego opartego na łańcuchu bloków. Nie istniał żaden mechanizm rozdawania kart własnych, śledzenia zakładów ani ustalania, kto powinien odebrać wygrane. Linus jasno podkreśla tę różnicę w swojej białej księdze dotyczącej Bitcoin Poker, pisząc: „Te fragmenty interfejsu nie stanowiły kompletnego protokołu pokerowego”. Zamiast wskrzeszać porzucone oprogramowanie Satoshiego, Linus postanowił zbudować brakujące elementy od podstaw.

Bitcoin Poker screenshot.
Źródło zdjęcia: Robin Linus na X.

Tło historyczne sprawia, że odkrycie to jest jeszcze bardziej interesujące. W październiku 2006 roku Kongres uchwalił ustawę o zwalczaniu nielegalnego hazardu internetowego (Unlawful Internet Gambling Enforcement Act), wymierzoną w transakcje finansowe związane z nielegalnym hazardem internetowym. Wiele lat później, podczas akcji z kwietnia 2011 r. znanej jako „Czarny piątek”, władze federalne dokonały głośnego przejęcia domen należących do głównych operatorów pokera online. Nie wiadomo, czy ograniczenia dotyczące hazardu internetowego wpłynęły na sposób myślenia Satoshiego, ale pomysł gry w pokera bez polegania na scentralizowanym podmiocie obsługującym płatności z pewnością wpisuje się w pierwotny cel Bitcoina.

Dziewięć kart, dwóch graczy i brak krupiera dyktującego warunki

Linus, doktorant Uniwersytetu Stanforda, znany jest przede wszystkim z opracowania BitVM – propozycji z 2023 r. dotyczącej weryfikacji złożonych obliczeń za pośrednictwem Bitcoina bez zmiany zasad konsensusu. Jego późniejsze badania obejmują BitVM2, BitVM3, Zerosync oraz inne systemy kryptograficzne. Bitcoin Poker stosuje to samo nowatorskie podejście do czegoś znacznie bardziej znanego niż obliczenia w łańcuchu bloków.

„Opisujemy protokół dla dwóch graczy do gry w limit Texas Hold’em opartej na Bitcoinie” – wyjaśnia Linus w swojej pracy. W grze biorą udział dwaj uczestnicy, z których każdy otrzymuje dwie karty własne, a pięć kart wspólnych pojawia się w miarę postępu licytacji. W przeciwieństwie do tradycyjnego pokera online żaden serwer kasyna ani zaufany krupier nie decyduje o tym, jakie karty otrzymają gracze.

Zamiast tego obaj gracze przekazują tajne informacje, które służą do wygenerowania kart. Jak wyjaśnia Linus: „Potrzebnych jest tylko dziewięć różnych kart”. Zamiast tasować całą talię składającą się z 52 kart, system generuje dokładnie dziewięć kart wymaganych do jednego rozdania, wykorzystując zobowiązania kryptograficzne i dowody zerowej wiedzy, aby zapewnić uczciwość rozdania.

Takie rozwiązanie gwarantuje, że żaden z uczestników nie może potajemnie wpływać na wynik. „Żaden z graczy nie jest w stanie samodzielnie odszyfrować danych” – stwierdza artykuł, opisując wspólnie zaszyfrowane informacje wykorzystywane podczas przygotowań. Przed rozpoczęciem gry protokół sprawdza również, czy nie ma zduplikowanych kart, nie ujawniając przy tym ich tożsamości. Jeśli dwie karty są identyczne, cała próba zostaje odrzucona i rozpoczyna się nowe rozdanie.

Występuje tu pewna osobliwa matematyczna komplikacja. Losowo wygenerowany układ dziewięciu kart ma jedynie około 48% szans na przejście testu na obecność zduplikowanych kart. Oznacza to, że system potrzebuje średnio 2,08 prób, aby wygenerować akceptowalny układ. To kosztowny sposób tasowania kart, ale rezultatem jest dyskretny rozdanie, które nie wymaga ufania osobie siedzącej po drugiej stronie stołu.

Bitcoin staje się sędzią, gdy ktoś odmawia współpracy

Rozdanie kart to jedno. Zapewnienie, że zwycięzca otrzyma wypłatę, to zupełnie inna sprawa, zwłaszcza gdy żaden z uczestników nie ma powodu, by ufać drugiemu. Linus rozwiązuje ten problem, przygotowując przed postawieniem pierwszego zakładu zbiór transakcji Bitcoin reprezentujących możliwe wyniki gry.

„Zasady definiują drzewo skończone” – wyjaśnia biała księga. Każda gałąź reprezentuje dozwolone działanie, w tym spasowanie, czek, sprawdzanie, podbicie, odkrycie kart lub rozstrzygnięcie puli. Gracze autoryzują te możliwości z wyprzedzeniem, a istniejące zasady transakcji Bitcoin uniemożliwiają im improwizowanie nieautoryzowanych ruchów.

„Działania nieprawidłowe nie mają wstępnie autoryzowanej transakcji” – pisze Linus. Protokół wykorzystuje również podpisy adaptacyjne, które umożliwiają odzyskanie wymaganych informacji o kartach podczas podpisywania określonych transakcji. Zapobiega to wykorzystywaniu przez graczy pewnych wymogów dotyczących ujawniania informacji w celu uzyskania nieuczciwej przewagi.

Ale co się dzieje, gdy ktoś uzna, że ma już dość i odmówi kontynuowania gry? Linus ma odpowiedź również na to pytanie. „Każdy stan, w którym gracz czeka na ruch przeciwnika, przewiduje również opcję wykorzystania limitu czasu przeciwnika” – stwierdza artykuł. Po upływie określonego czasu pozostały uczestnik może odebrać zgromadzoną pulę, a niewykorzystane środki odchodzącego gracza są mu zwracane.

Badacz zwraca uwagę na istotną różnicę. „Protokół może wymusić rozstrzygnięcie, ale nie może zmusić nikogo do ujawnienia karty”. Innymi słowy, Bitcoin nie może zmusić nikogo do dokończenia gry, ale może wyegzekwować finansowe konsekwencje odejścia od stołu.

Gra w pokera z 56 132 węzłami ma jednak pewien haczyk

Projekt jest sprytny, ale nikt nie powinien mylić go z lekką mobilną aplikacją do pokera. Konfiguracja referencyjna Linusa, zakładająca 100 dużych ciemnych na gracza i cztery zakłady w każdej rundzie licytacji, zawiera 56 132 węzły logiczne, a także 54 855 zwykłych podpisów i 1 306 pakietów ujawniania kart. Każdy pakiet zawiera kolejne 52 podpisy adaptera.

Kompletna migawka przygotowawcza waży 8 416 186 bajtów, czyli około 8,4 MB. W trzech testach przeprowadzonych w przeglądarkach stacjonarnych przygotowanie i zapisanie drzewa transakcji zajęło od 26,39 do 27,26 sekundy. Linus ostrzega, że „są to pomiary w warunkach testowych, a nie gwarancje dotyczące uruchamiania”. Dane te opisują implementację referencyjną, a nie wydajność, jakiej użytkownicy powinni oczekiwać od gotowego produktu.

Na szczęście zwykła rozgrywka nie wymaga nadawania tak ogromnego zbioru transakcji. „Przewidywany tryb rozgrywki odbywa się poza łańcuchem bloków” – wyjaśnia artykuł. Gracze wymieniają się wiadomościami prywatnie, zachowując transakcje Bitcoin w rezerwie na wypadek zerwania współpracy. Łańcuch bloków skutecznie pełni rolę sędziego czekającego na uboczu, gotowego do rozstrzygania sporów w razie potrzeby.

Prawie osiemnaście lat później pomysł Satoshiego na pokera ma już konkretne zasady

Nadal istnieją pewne ograniczenia. Bitcoin Poker obsługuje tylko dwóch uczestników, ponieważ dodatkowi gracze mogliby potajemnie dzielić się informacjami o swoich kartach. Publiczne rozstrzygnięcia mogą ujawnić oba układy kart, a konstrukcja kryptograficzna nadal wymaga niezależnej analizy bezpieczeństwa, zanim ktokolwiek uzna ją za gotową do wdrożenia.

Linus nie próbuje ukrywać tych niedociągnięć. „Nie jest to formalny dowód kompletności protokołu zabezpieczającego przed złośliwymi podmiotami” – przyznano w artykule. Istniejące testy wykorzystujące Bitcoin Core sprawdzają ważne elementy, w tym wypłaty i ścieżki przekroczenia limitu czasu, ale „zakres testów nie stanowi dowodu bezpieczeństwa”.

Niemniej jednak osiągnięcie to wykracza poza sam poker. Linus wykazał, w jaki sposób istniejące możliwości skryptowe i związane z podpisami w Bitcoinie mogą umożliwić realizację gry obejmującej ukryte informacje, skomplikowane decyzje i wypłaty finansowe bez zmiany podstawowych zasad sieci.

Tajemniczy wynalazca Bitcoina pozostawił po sobie stół do pokera z przyciskami, które niewiele robiły. Osiemnaście lat później Linus opracował reguły kryptograficzne niezbędne do rozdania kart, rozegrania ręki i rozliczenia puli. Pozostaje pytanie, czy ta skomplikowana konstrukcja może stać się na tyle praktyczna, by zwykli gracze mieli ochotę ją wypróbować.

Zgodnie z wynikami najnowszego badania szacuje się, że około 33 miliony Amerykanów, którzy obecnie nie posiadają kryptowalut, prawdopodobnie zdecyduje się na ich zakup w tym roku.

Czytaj teraz: 33 mln Amerykanów interesuje się kryptowalutami, wyniki ankiety

Ten artykuł został przetłumaczony z języka angielskiego przy użyciu sztucznej inteligencji. Oryginalna wersja angielska jest źródłem autorytatywnym; tłumaczenia automatyczne mogą zawierać nieścisłości, zwłaszcza w terminologii prawnej i regulacyjnej.