Bitcoin ma wady i grożą mu poważne ataki

WYWIAD | Z prof. Stefanem Dziembowskim z Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego, specjalizującym się w dziedzinie kryptografii i pracującym nad praktycznym zastosowaniem technologii blockchain, rozmawia Piotr Zając

Publikacja: 29.09.2018 15:26

Bitcoin ma wady i grożą mu poważne ataki

Foto: R. Gardziński

Kiedy po raz pierwszy zetknął się pan z bitcoinem?

Trudno powiedzieć, ale pierwszą pracę z nim związaną napisałem w 2014 r., a więc kilka lat po wynalezieniu bitcoina. Na początku niewiele na jego temat wiedziałem, bo przyzwyczajony jestem do tego, że zajmuje się rzeczami naukowymi, które w naukowy sposób są opisane. Bitcoin natomiast był opisany dość mało formalnie, więc trudno było z tego zrozumieć jak dokładnie działa, a mnie nie chciało się tego zgłębiać. Miałem wówczas młodych doktorantów, którzy się tym bardzo interesowali i dopiero od nich dowiedziałem się więcej.

Pytam o te pierwszą styczność z bitcoinem, bo zastanawiam się, czy już od pierwszego spotkania z nim wiedział pan, że „namiesza" w świecie finansów, tak jak „namieszał"?

Nie. Nie odniosłem takiego wrażenia. Gdybym odniósł, to bym te bitcoiny kupił.

A więc nie ma pan bitcoinów?

Nie mam, bo zawsze byłem przekonany, że kurs za chwilę zacznie spadać. Jak się okazuje, byłem w błędzie. Ale mogę na swoje usprawiedliwienie powiedzieć, że zajmuje się badaniem tej kryptowaluty, więc żeby pozostać neutralnym, nie powinienem jej posiadać. Ale to jest trochę dorabianie sobie usprawiedliwienia. Tak serio przecież, gdybym wiedział, że cena tak urośnie, to na pewno bym kupił. Ale nie ukrywam, że ja w tej części rynkowej ekspertem nie jestem i nie mam pojęcia, co na rynku się sprawdzi, a co nie. To zależy od rzeczy spoza informatyki, od socjologii, psychologii, itp.

Ten sceptycyzm oznacza, że rozwiązania technologiczne, które zastosowano w bitcoinie nie wydawały się panu rewolucyjne?

Nie. Dlatego, że pewne składniki tych technologii istniały już wcześniej. W kryptografii było bardzo dużo pomysłów naukowych na to, jak stosować rozwiązania rozproszone. W tym sensie, że nie ufamy jednemu, centralnemu serwerowi (np. Google Docs), tylko mamy n serwerów, z czego ufamy połowie, bo zakładamy, że te 50 proc. jest uczciwe. Tego typu rozwiązania były na stole od lat 80-tych. Na początku wprawdzie niezbyt wydajne, ale z czasem były coraz lepsze. Nikt jednak nie chciał tego stosować. Okazało się, że jeśli np. Google Docs da panu większą prywatność dzięki rozproszeniu, ale system ten działa 10 razy wolniej i kosztuje więcej niż scentralizowane rozwiązania, to przeciętny użytkownik po prostu za to podziękuje. A więc w kryptografii dostaliśmy pewną nauczkę, że większości ludzi nie interesuje to, czy coś jest scentralizowane czy zdecentralizowane. Te drugie rozwiązania okazywały się nie być dla użytkownika na tyle cenne, by był skłonny za nie dodatkowo płacić. I dlatego, gdy pojawił się bitcoin, to miałem wrażenie, że będzie podążał tą samą ścieżką, którą my już przeszliśmy dużo wcześniej.

W takim razie co było takiego w bitconie, co sprawiło, że stał się tak popularny i zyskał tak wielu zwolenników, i co tu ukrywać – otworzył drzwi technologii blockchain?

Tam było jedno, podstawowe nowatorstwo. Blockchain zastosowany w bitcoinie jest oparty na dowodach pracy (ang. proof of work). To rozwiązanie sprawia, że każdy może się przyłączyć do sieci. Nie ma n-instytucji, z których połowa jest uczciwa, tylko każdy może dołączyć, a to połowa mocy obliczeniowej jest uczciwa (praca wykonana przez górników, red.). Chociaż, jak się z tym zetknąłem po raz pierwszy, to raczej uznałem, to za ciekawostkę, a nie za coś, co zyska globalną popularność.

Załóżmy hipotetycznie, że daje panu wybór: trzymanie oszczędności na koncie bankowym albo w rozproszonej sieci, skonstruowanej jak bitcoin. Który model, by pan wybrał?

Konto bankowe. Chociażby dlatego, że istnieje coś takiego, jak Bankowy Fundusz Gwarancyjny. A więc nawet w razie kradzieży środków, do jakiejś kwoty jestem zabezpieczony. Państwo daje więc pewność, że bank z naszymi pieniędzmi nie zniknie. Natomiast portfele kryptowalutowe znikać potrafią bezpowrotnie i to z różnych przyczyn. Kryptowaluty można trzymać na giełdach albo na cyfrowych portfelach. Pierwsze rozwiązanie jest średnio bezpieczne, bo giełda może zniknąć z pieniędzmi, przykładem chociażby MtGox. Oczywiście bezpieczniejsze są portfele, ale też mają wady. Przykładem hasło. Jak go zapomnę, to do środków się nie dostanę i nie ma instytucji, do której mógłbym się zgłosić o odzyskanie hasła. Poza tym portfele to aplikacje i mogą mieć jakieś luki programistyczne. Najbezpieczniejsze są porfele sprzętowe, choć zawsze istnieje jakieś ryzyko. Można też np. zapomnieć hasła.

A jak z bezpieczeństwem samego bitcoina? Czy jest tak niezawodny, jak to deklarują jego zwolennicy?

Ogólnie rzecz ujmując - protokół bitcoina ma swoje wady. Przede wszystkim bazuje na założeniu, że większość uczestników jest uczciwa. Tę większość mierzymy przez moc obliczeniową. I teraz, jeżeli ktoś dysponuje więcej niż połową owej mocy, to może to wszystko zniszczyć. Może bowiem przejąć cały blockchain i wprowadzić np. cenzurę transakcyjną, czyli trzeba będzie mu płacić, żeby transakcja w ogóle mogła się odbyć. A wtedy wracamy do rozwiązania scentralizowanego.

Pytanie brzmi więc, jak trudno jest przejąć połowę mocy obliczeniowej?

Nie jest to łatwe, ale całkiem realne. Ogólnie jest tak, że sieć tworzą górnicy, którzy zainwestowali mnóstwo pieniędzy w koparki, więc nie będą chcieli niszczyć sieci, bo wtedy ich koparki będą bezużyteczne. To stwarza pozór bezpieczeństwa. Wydaje się bowiem, że większość jest zainteresowana tym, by sieć nie upadła, więc większość działa uczciwie. Ale jak wiemy z teorii gier, taka argumentacja nie zawsze jest poprawna. Są przykłady pokazujące, że zespół ludzi kierujących się swoim konkretnym interesem, czyli optymalizując swój największy dochód, doprowadza do tego, że całość upada. Przykładem w ekonomii jest tzw. tragedia wspólnego, pokazująca to na przykładzie pastwiska użytkowanego przez wielu gospodarzy. Oczywiście do tego dochodzą też kwestie psychologiczne, bo to nie jest tak, że świat zawsze zachowuje się tak, jak mówi teoria gier. Niewykluczone, że przywiązanie do idei Satoshi Nakamoto byłoby silniejsze dla górników, niż chęć wyższego zysku.

Odnosząc to jednak bezpośrednio do bitcoina. Jeśli mielibyśmy sytuację, w której jakiś silny gracz, np. rząd Chin, stwierdza, że zaczyna robić atak na bitcoina, to może zacząć skupować koparki w celu przejęcia ponad połowy mocy. Jak to może wyglądać z perspektywy pojedynczego górnika? Jeśli zobaczy on, że rząd skupuje koparki i jest zdeterminowany, no to może spodziewać się, że sieć upadnie. Rząd chiński oferuje dziś bardzo dobrą cenę za koparkę, ale za tydzień ta cena już taka dobra może nie być. Co się zatem opłaca górnikowi? Sprzedać te koparkę i odzyskać przynajmniej część zaangażowanego kapitału. Dochodzi do paniki na rynku, wszyscy sprzedają koparki i rząd chiński przejmuje bitcoina.

Ale ta teoria też ma lukę, bo górnicy mogliby się umówić w ramach sieci, że koparek nie sprzedają.

Pytanie tylko, w jaki sposób mieliby się umówić? Przecież to nie jest jedna organizacja, to nie jest związek zawodowy. Ponadto istnieje kilka wariantów ataków. Istnieje na przykład coś takiego jak „mining pools", czyli wspólnoty górnicze. Rząd chiński mógłby więc postąpić nieco inaczej, a mianowicie – założyć 10 własnych mining pools, każdy z inną nazwą i oficjalnie ze sobą nie powiązanych. Te wspólnoty działają tak, że ludzie się pod nie podłączają i dla nich kopią, i generalnie wybierają te wspólnoty, które dają jak największy zysk. Tak więc wystarczyłoby, by te chińskie poole płaciły odrobinę więcej niż pozostałe. Wtedy też ściągają do siebie większość mocy i przejmują sieć w nieco bardziej sprytny sposób.

Kolejny wariant to, tzw. bribery attacks. To polega na tym, że ja wynajmuje on-line pana koparkę i mogę robić z nią co chcę i płacę za to więcej, niż pan zarabia na kopaniu. Wówczas górnicy mogą zdecydować, że bardziej opłaca im się wynająć sprzęt, bo zarobią na tym więcej.

Nie da się przed tymi atakami obronić?

Moi koledzy entuzjaści mówią, że w takich sytuacjach społeczność bitcoina podjęłaby decyzję o forku (rozgałęzieniu, red.), czyli stworzeniu zupełnie nowego blockchaina. Niby realne, ale problem w tym, że system przestaje być wtedy zdecentralizowany. Bo żeby ktoś zdecydował o forku, to musimy mieć jakąś centralną organizację, która taką decyzję podejmie. Upada więc idea rozproszenia i braku konieczności posiadania jakiejś instytucji nadzorcy, czy pośrednika.

Fani bitcoina często ripostują takie zarzuty tym, że kryptowaluta działa już dekadę i nic się takiego nie stało.

W temacie bezpieczeństwa, argument, że coś nie zawaliło przez 10 lat to żaden argument. Mosty i budynki się zawalają, choć wcześniej spokojnie stały przez dekady. Ponadto atak rządowy wcale nie jest potrzebny do zniszczenia sieci, bo politycy mają inne narzędzia do takich celów. Mają do dyspozycji prawo. Mogą przecież zarządzić, że ktoś złapany na użytkowaniu bitcoina idzie do więzienia. Taki ruch wydaje się w sumie bardziej pasować do polityków niż jakiś wyrafinowany atak.

Skoro bitcoin ma luki, które sprawiają, że grozi mu atak, to może ma też luki, które można wykorzystać, by przed takimi atakami się zabezpieczyć?

Nie bardzo widzę, jakby to można zrobić. Niektórzy chwalą rozwiązanie proof of stake, gdzie siła zależy od posiadanych pieniędzy. Ale na to rozwiązanie też istnieją ataki.

A czy to nie będzie tak, że górnicy będą tracić motywację wraz ze zmniejszaniem się zasobów bitcoina i staną się mniej lojalni wobec idei Nakamoto? Bo w sumie co miałoby ich motywować, gdy ostatni bitcoin zostanie wydobyty?

Opłaty transakcyjne, które powinny wtedy wzrosnąć. Chociaż mówimy o takiej perspektywie czasowej, że zupełnie nie wiadomo, co się po drodze wydarzy. Możliwe, że powstanie komputer kwantowy, który złamie część kryptografii tej sieci.

A więc to nie jest mit powtarzany w mediach, ale realne zagrożenie?

W perspektywie kilku lat to raczej nierealne, ale w perspektywie lat 50... całkiem prawdopodobne. Byłby to jednak atak nie na mechanizm otrzymywania konsensusu, ale na podpis, czyli na transakcję.

Bitcoin nie jest na to gotowy?

Ma on mechanizm zmiany standardu, więc można go przerzucić na blockchain odporny na taki kwantowy atak. Tylko, że trzeba to będzie zrobić zanim kwantowy komputer się pojawi. A więc trzeba się będzie umówić, od którego bloku zmieniamy standard podpisu na ten kwantowoodporny. W praktyce będzie to oznaczać, że każdy kto ma bitcoiny będzie musiał je przerzucić na nowe konto, to zabezpieczone.

Nie wróży pan bitcoinowi przyszłości, w której wyprze waluty fiducjarne?

Jestem słabym predyktorem, jak się okazuje, więc trudno mi cokolwiek przewidywać. Uważam po prostu, że od strony technologicznej ma on trochę słabych punktów. To, że atak może nastąpić nie znaczy, że nastąpi. Co gorsza, wszystkie kryptowaluty mają te same technologiczne problemy. Są pewne różnice technologiczne, np. cardano nie jest oparte na proof of work, tylko na proof of stake, ale to nie uodparnia go na ataki, o których mówiłem.

Entuzjaści kryptowalut ripostowaliby, że w scentralizowanych rozwiązaniach też jest sporo technologicznych wad. I trudno się nie zgodzić...

Zgadza się. Ale wybór rozwiązania jest już kwestią indywidualną i trzeba liczyć się z ryzykami, które się z tymi wyborami wiążą.

Muszę przyznać, że trochę zmalał mój bitcoinowy entuzjazm. Czy dostrzega pan w tej kryptowalucie jakieś pozytywy?

Najważniejszy jest ten, o którym już było wspomniane – bitcoin wyważył technologiom rozproszonym wiele drzwi, które wcześniej były zamknięte. Teraz na gwałt wszystkie firmy chcą mieć blockchain. Tymczasem 10 lat temu w ogóle nie chcieli o tym słyszeć. Technologia zaczęła się dzięki temu bardzo rozwijać. Mnie na przykład najbardziej w tym momencie interesują tzw. blockchainy konsorcyjne. Nie ma tam żadnych dowodów pracy, tylko jest po prostu n stron, które wspólnie uzgadniają jaki jest blockchain. Do tego używa się protokołów istniejących już od dwóch dekad, które czuwają nad tym, by w systemie nie było chaosu. W przypadku np. giełdy byłoby to tak, że pewna liczba uczestników parkietu utrzymuje taki blockchain, a za zachowania nieuczciwe są kary. Przykładem takiego projektu jest HyperLedger Fabric. Więc takich blockchainów konsorcyjnych mogą używać firmy po to, by istniało jedno miejsce, na którym można przechowywać dane i na różne rzeczy się umawiać. Jest to rozproszone rozwiązanie, więc znika zagrożenie, że jeden podmiot będzie dokonywał jakichś manipulacji.

Dlaczego jest na to taki popyt teraz?

Myślę, że firmy obawiają się uzależnienia od takich gigantów jak Google, czy Amazon, które stają się monopolistami na rynku takich usług. Tymczasem lepiej pozostać niezależnym i mieć otwarty i bezpieczny system.

Co dla biznesu jest takie atrakcyjne w blockchainie konsorcyjnym?

Tu dochodzimy do tematu smart kontraktów. To są umowy prawne, ale pisane językiem programowania. Można żartobliwie powiedzieć, że jest to taki sen informatyków i matematyków. Oni bowiem zawsze zastanawiali się po co nam prawo, które jest zawsze dwuznaczne, skoro możemy wszystko klarownie zapisać w postaci formuł logiczno-matematycznych. Dla prawników to oczywiście mrzonka i z wielu powodów prawo często jest pisane takim miękkim językiem, pozostawiając trochę miejsca na interpretację. Nie wszystko bowiem można w życiu całkowicie sformalizować i zredukować do prostych reguł. Dlatego zgadzam się z prawnikami, ale mimo to uważam, że smart kontrakty mogą się do wielu rzeczy przydać. Przykładowo w internecie rzeczy. Jeżeli czyjaś pralka będzie się komunikowała z ogniwem fotowoltaicznym sąsiada w sprawie ceny prądu na najbliższą noc, to można takie umowy zapisać przy pomocy smart kontraktów. A więc dochodzimy do momentu, w którym maszyny mogą zawierać ze sobą umowy, bez udziału człowieka. Umowy te są bowiem jednoznaczne i zostały zaprogramowane przez człowieka. I blockchain jest takim miejscem, gdzie takie umowy będzie się zapisywać. I takie rozwiązania już działają. Umożliwia to m. in. blockchain ethereum. I to daje szerokie pole manewry, dla wielu branż, nie tylko energetycznej i internetu rzeczy.

Pan pracuje nad takimi rozwiązaniami?

Ja zajmuje się wykorzystaniem smart kontraktów do technologii offchain. To jest pójście poziom wyżej. Zobrazuje to przykładem. Mamy blockchain bitcoina, na którym zawarcie transakcji trwa powiedzmy 10 min, a więc dość długo i do tego jest kosztowne. Gdybym więc na przykład chciał zawierać jakieś transakcje na bieżąco, np. płacić za każdą sekundę transmisji na YouTubie zamiast oglądania reklam, to na blockchainach bitcoina czy ethereum to będzie niemożliwe – zbyt długotrwałe i kosztowne. W związku z tym robimy to tak, że transakcje są poza blockchainem, a uczciwości pilnuje smart kontrakt, który jest na blockchainie. Czyli trochę jak w życiu – smart kontrakt jest odpowiednikiem sędziego, który gwarantuje nam uczciwy osąd w razie problemu, ale nie muszę za każdym razem do tego sędziego chodzić. Czyli smart kontrakt wystarczy, że tam jest, a jak problem się pojawi, to możemy się do niego w każdej chwili zwrócić w celu rozsądzenia sporu. Przykładem może być np. podpis elektroniczny. Umieszczam go na blockchainie i już się pan nie wyprze, że się pan pod czymś podpisał.

A te smart kontrakty chyba też nie są pozbawione błędów?

Prawo, jak wspominałem, jest miękkie i zna pojęcie oczywistej pomyłki i można odwołać się do doświadczenia sędziego, który stwierdzi ostatecznie czy to błąd czy nie błąd. W smart kontrakcie takiego mechanizmu nie ma. Błąd w postaci braku średnika w kodzie może być przyczyną wielomilionowych strat i takie sytuacje były (np. DAO). Więc dużym tematem i wydaje mi się prespektywicznym jest sprawdzanie poprawności smart kontraktów. Czyli taki audyt.

A więc znów dochodzimy do tego, że bitcoin dał początek wielu zmianom. Pojawiają sie nowe profesje – audytorzy smart kontraktów.

Zgadza się. Podejrzewam, że jest nawet jakieś generalne zjawisko w rozwoju technologii, że na początku nikt nic nie rozumie, nagle poziom wiedzy rośnie, co prowadzi do jakiegoś skokowego wzrostu zainteresowania, wręcz euforii, po czym następuje załamanie i stabilizacja na poziomie, na którym zostają te projekty, których stosowanie faktycznie ma sens. A nie tak, że firma chce mieć blockchain, bo teraz jest na to moda.

Tak, jak kiedyś, wszyscy chcieli mieć w nazwie ".com".

I przetrwała tylko część tych projektów. Tak samo jest z ICO. Ludzie powinni sobie zdawać sprawę, z jakim ryzykiem wiążą się takie zbiórki pieniędzy.

Pan pracuje nad własnymi rozwiązaniami z tej dziedziny, więc ICO byłoby jak znalazł. Nie myślał pan o tym?

Mamy projekt, który nazywa sie Perun. Jest strona: perun.network, a na niej kilka prac. Jest to właśnie system wspomnianego offchaina. Trochę nawiązuje do Lightning, czyli systemu offchainowego na bitcoinie. Perun to bowiem słowiański bóg piorunów. Robimy to wspólnie z kolegami z politechniki w Darmstadt. Dostaliśmy na to kilka grantów, m. in. z Ethereum Foundation. Nie robimy żadnego ICO, choć w kilku miejscach wpisano nas na tego typu listy, informujące, że niby zbiórka pieniędzy ma ruszyć. Jest bowiem takie domniemanie, że jak cokolwiek w tej branży robisz, to będziesz przeprowadzał ICO.

Chyba profesorom łatwiej zaufać, niż anonimowym twórcom.

W tym środowisku akurat tytuł profesora raczej na nikim wielkiego wrażenia nie robi.

No ale w projektach ICO jest tam mnóstwo przekrętów i fraudów.

Poza tym też istnieją niejasności prawne, głównie w świetle prawa amerykańskiego. Pytanie bowiem czy tokeny nie są akcjami, a emitowane są z pominięciem reguł, które akcje obowiązują. Także ja jednak wolę standardowe źródła finansowania.

Na koniec dwie kwestie jeszcze w temacie bitcoina, takie dość kontrowersyjne. Co pana zdaniem stanowi o jego wartości? Jak rozmawiam z analitykami finansowymi, to oni mają problem z identyfikacją fundamentów bitcoina, czyli czymś namacalnym, co dałoby się realnie wycenić.

Jedyną namacalną, finansową wartością, która stoi za bitcoinem są koparki. Są serwisy, które podają, jaka jest aktualna wartość wszystkich tych urządzeń, które tworzą sieć. Był taki moment, że ich wartość wynosiła w pewnym momencie 2 proc. kapitalizacji bitcoina. Teraz ta relacja wynosi jakieś 8 do 115 mld dol.

Gdyby pan był przestępcą, to użyłby pan bitcoina do prania pieniędzy lub zakupów w dark necie?

Hipotetycznie tak, ale żeby to robić umiejętnie to trzeba dobrze rozumieć te technologię. Bitcoin wcale bowiem anonimowy nie jest, jest pseudoanonimowy . Nikt się wprawdzie nie przedstawia, ale transakcje można prześledzić. Są jednak techniki matematyczne, dzięki którym można z dość dużym prawdopodobieństwem określić, kto jest kim w tej sieci. Poza tym są serwery, które oferują miksowanie walut, no i są kryptowaluty, jak monero czy zcash, które oferują pełną anonimowość. A więc czytelnikom, którzy są przestępcami, radziłbym używać tych dwóch ostatnich (śmiech).

Kryptowaluty
Poziom 100 tys. dolarów za bitcoina nie wydaje się już być szalony
Kryptowaluty
Bitcoin przymierza się do ataku na szczyty
Kryptowaluty
Kiedy na rynek trafi ostatni bitcoin?
Kryptowaluty
Halving zakończony. Kopacze będą cierpieć, a bitcoin prawie nie drgnął
Kryptowaluty
Halving bitcoina - już w nocy z piątku na sobotę
Kryptowaluty
Bankomaty bitcoinowe żerują na klientach?