Kryptowaluty

Stefan Dziembowski: Niewiele osób na świecie wie, co dokładnie siedzi w kryptowalutach

WYWIAD | Stefan Dziembowski - z profesorem Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego, specjalizującym się w kryptografii, rozmawia Piotr Zając

Stefan Dziembowski

Foto: Fotorzepa/Robert Gardziński

Zainwestował pan w jakieś kryptowaluty?

Nie. W kwestiach finansowo-spekulacyjnych pozostaje sceptyczny i konsekwentnie trzymam się swojej pozycji. Poza tym, wychodzę z założenia, że każdy powinien zarabiać na tym na czym się zna, a ja nie aspiruję do bycia ekspertem od spekulacji finansowych. Także nie inwestuję aktywnie, choć czasem dostaję jakieś tokeny za konsultacje dla firm z branży kryptowalutowej.

Może pan zdradzić nazwy tych firm?

Jestem m. in. oficjalnym doradcą firmy Raiden Network. Rozwijają offchain na Ethereum.

Projektów cały czas przybywa, choć wielu wieściło kryptowalutom rychły koniec. Jak pan ocenia technologiczne zmiany w tej branży na przestrzeni ostatnich 12 miesięcy?

Pod względem technologii nie doszło do jakiegoś przełomu. Wszystko wciąż pozostaje w fazie testów, a pomysłów do testowania nie brakuje. W całym ekosystemie kryptowalut zachodzą niewątpliwie ciekawe zmiany. W szczególności te, które dotyczą Ethereum i smart kontraktów. Ostatnio byłem przez 1,5 miesiąca na Uniwersytecie Kalifornijskim w Berkeley, odbyłem sporo ciekawych dyskusji i jako kryptograf mam pewną refleksję. Otóż to, co 10 lat temu było naukową ciekawostką, teraz powoli wkracza do mainstreamu. Rozwiązania ze sfery teoretycznej coraz częściej trafiają w ręce praktyków.

Jakiś konkretny przykład?

Mam na myśli m. in. protokoły z wiedzą zerową (ZK, od ang. zero knowledge), a w szczególności ich nieinteraktywne wersje, rozwijane w wariantach ZK-SNARK i ZK-STARK. I choć te rozwiązania rozwijane były już od lat 80-tych, to wówczas praktycy uważali to raczej za filozofię, a nie informatykę.

Na czym one mniej więcej polegają?

Dowody z wiedzą zerową polegają na tym, że dowodzę zaistnienia pewnego faktu, nie podając dowodu. W matematyce dowód to ciąg wyrażeń logicznych, gdzie jedno wynika z drugiego. Protokoły ZK zmieniają to w taki sposób, że dodają pojęcie interakcji i dowodzenie jest rozmową między dwiema stronami, gdzie jedna jest dowodzącym, a druga weryfikującym. W teorii dowolny fakt, który jest prawdziwy, może być dowiedziony w taki sposób, że ja nie podam samego dowodu, ale przekonam pana, że fakt jest prawdziwy. Załóżmy przykładowo, że chce panu udowodnić, że jakieś twierdzenie matematyczne jest prawdziwe. Nie wysyłam panu jednak dowodu na papierze, tylko dyskutujemy drogą mailową. Po takiej interakcji pan jest przekonany, że twierdzenie jest prawdziwe, choć nie poznał pan formalnego dowodu.

A jak to się ma do praktyki?

Najprościej sobie to wyobrazić tak, że przychodzę do sklepu monopolowego i muszę udowodnić, że mam skończone 18 lat. Posiadam oficjalny dokument na którym moja data urodzenia jest elektronicznie podpisana przez odpowiedni urząd, ale nie chcę ujawnić tej daty. Przy pomocy protokołu ZK mogę przekonać sprzedawcę, że jestem pełnoletni, bez ujawniania mojego dokładnego wieku. Dzięki ZK można dokładnie kontrolować, co się ujawnia. W powyższym przypadku sprzedawca poznaje tylko jeden „bit" informacji: czy jestem pełnoletni czy nie. W wersji nieinteraktywnej nie ma żadnej rozmowy, interakcja jest zminimalizowana do wysłania tylko jednego dowodu.

Jakie to ma zastosowanie w kryptowalutach?

Z takich protokołów korzysta m.in. Zcash, którego twórcom zależy na tym, by osoby postronne wiedziały o transakcji jak najmniej. Chodzi po prostu o zachowanie anonimowości. Gdy 10 lat temu przychodziliśmy do bankierów z propozycją wykorzystania ZK, to oni nie widzieli w tym praktycznych zastosowań. Dlaczego? Bo bank i tak wie wszystko o swoim kliencie, a klient bezwzględnie ufa bankowi. W związku z tym nie było potrzeby stosowania tak zaawansowanych protokołów. Natomiast w kryptowalutach zaufania jest znacznie mniej, bo nie ma centralnego zarządcy i ludzie zupełnie się nie znający zawierają ze sobą transakcje. Dlatego pojawiła się tutaj nisza, w której ZK można wykorzystywać. To protokół dość zaawansowany i cieszy mnie to, że znalazł praktyczne zastosowanie.

Zcash jest dopiero 33 w rankingu kapitalizacji na stronie coinpaprika.com. Czy ten technologiczny postęp, który się w nim odbywa skazuje go na przesuwanie się w tym rankingu wyżej?

Nie jestem dobrym prognostą, więc trudno mi powiedzieć. Muszę jednak przyznać szczerze, że cała branża kryptowalut cały czas jest, nazwijmy to – w wersji beta. Dobrze pokazała to historia związana z Zcash. Choć za projektem tym stoją bardzo dobrzy naukowcy, to w 2018 r. okazało się, że w protokole jest poważny błąd, wynikający z tego, że w pewnym dowodzie bezpieczeństwa jego autor się pomylił. Odkrył to Ariel Gabizon pracujący dla Zcasha. Błąd był na tyle poważny, że pozwalał ukraść pieniądze z tego projektu. To wszystko było naprawiane w tajemnicy i w parę miesięcy udało się błąd zlikwidować. Nie chciano tego ujawniać, więc oficjalnie była to tylko aktualizacja systemu. Poinformowano tylko tych, którzy z tego protokołu korzystali w swoich projektach. To było bardzo problematyczne, bo przecież w modelach open source wszystko musi być jawne. Paradoksalnie zadziałało tutaj coś, co się uważane jest za bardzo złą praktykę w kryptografii, czy tzw. security by obscurity (bezpieczeństwo przez niejawność): okazuje się, że kryptografia zastosowana w Zcashu jest tak trudna, że niewiele osób na świecie ją rozumie. Więc mówiąc wprost – system był bezpieczny mimo błędu, bo i tak nikt nie wiedział o co dokładnie chodzi. Oczywiście po załataniu błędu to wszystko zostało ujawnione, ale dopiero na początku 2019 r. Ciekawostką jest to, że nie ma 100-proc. pewności, że żadne środki nie zostały wyprowadzone, bo tak duży jest poziom anonimowości w tej kryptowalucie...

Wygląda na to, że kryptowaluty to w wielu aspektach wciąż „Dziki zachód".

Historia tego błędu jest bardzo pouczająca. Bo skoro Zcasha opracowują naprawdę świetni ludzie i oni robią tak poważne błędy, to co dopiero z innymi altcoinami, za którymi często stoją amatorzy... Niestety zdarzają się przypadki w tej branży, że ludzie biorą kody opracowane przez akademików, ale nie sprawdzone dokładnie pod względem bezpieczeństwa, i implementują to w praktyce, często pozyskując na to środki w ramach ICO. Dlatego wydaje mi się, że będziemy świadkami wielu takich subtelnych błędów, które w tej chwili są niewykrywane, bo zbyt mało ludzi to dokładnie rozumie. Ponadto tych projektów jest masa, więc gdybyśmy chcieli je wszystkie dokładnie sprawdzić, to zajęłoby to mnóstwo czasu.

Niestety doszło do tego, że ludzie których cała wiedza z kryptografii oparata jest na lekturze jednej książki Bruce'a Schneiera zabierają się za tworzenie protokołów i wprowadzenie własnych projektów. Tymczasem, żeby się za to poważnie zabrać to potrzebny jest zespół kryptografów i przede wszystkim cierpliwość. To jest praca która nie znosi pośpiechu, tymczasem w tej branży co chwilę słyszymy o jakichś nowościach i rewolucyjnych rozwiązaniach.

Jakiś przykład?

Chociażby algorytm konsensusu Proof of Stake. Naukowcy piszą na ten temat długie prace i analizują jego wykorzystanie w różnych wariantach. I okazuje się, że wcale nie jest to recepta na wszystkie bolączki. Tymczasem co jakiś czas pojawiają się informacje, że ktoś gdzieś wprowadza POS i ma to być istotna zmiana na lepsze.

Przecież przymierza się do tego Ethereum.

No właśnie, ale mimo zapowiedzi cały czas nie przeszli na POS. Wygląda na to, że wiedzą, że takich zmian nie można robić na „łapu capu". Zwłaszcza, gdy mowa jest o zastosowania finansowych.

Vitalik Buterin wyrasta na kryptowalutowego menedżera, który zyskał spory autorytet. Dlatego wiele osób wiąże z Ethereum duże nadzieje. Niektórzy uważają wręcz, że przejmie rolę lidera, która wciąż należy do bitcoina.

Buterin stał się swoistym celebrytą. Wystarczy, że napisze czy powie coś pozytywnego o jakimś projekcie i nagle jego wycena wyraźnie wzrasta. Co ciekawe, gdy ogłosiliśmy nasz projekt offchainowy – Perun, to Vitalik napisał o nas ciepłe słowo na jednym z forów. Natychmiast mnóstwo ludzi założyło, że będziemy robić ICO, choć tego nie było w planach. Najlepsze było to, że ktoś ukradł nasz projekt – tzn. wziął nasze twarze i nazwiska, opracował white paper i zaczął zbierać pieniądze. Oczywiście poinformowaliśmy o tym społeczność, ale to pokazuje, jak niewiele trzeba, by takie ICO uruchomić. Ja przyznam szczerze, że źle się czuje z tym, gdy mam zbierać od ludzi pieniądze na coś, co do czego nie jestem pewien, że przyniesie oczekiwany zwrot. Zwłaszcza, że w przypadku Peruna nie mieliśmy wówczas modelu biznesowego, a tylko pomysł na protokół.

Czy poza Zcash zna pan inne projekty, w których również mocno zaangażowanie są naukowcy?

Takim znanym przykładem jest Cardano. Co ciekawe zdarza się, że najpierw praktycy coś wymyślą, a potem naukowcy piszą o tym prace, formalizują i sprawdzają, czy to jest dobrze zrobione. Tak było z protokołem Mimble Wimble. Zdarzają się też sytuacje, że naukowcy publikują jakieś swoje odkrycie, a okazuje się, że jakiś czas temu ktoś pisał już o tym na forum typu bitcointalk. Niestety praktycy często publikują coś w formie tzw. white paper i na zasadzie „rzucam pomysł, a wy go łapcie". To jest nierzadko tak słabo przygotowane, że trudno zrozumieć, co autor miał na myśli. Jest to zbyt ogólne i niedokładne. Tymczasem w protokołach kryptograficznych istotne są właśnie szczegóły i subtelności. Proszę sobie wyobrazić, że dowód bezpieczeństwa jakiegoś protokołu potrafi mieć 50 stron i jest to raczej nudna lektura. Dochodzi więc do tego, że nikt poza autorem pracy tego nie czyta. Efekt jest taki, że łatwiej tutaj o błąd. Dlatego część zespołów (w tym mój) bada obecnie możliwość wykorzystania automatycznych narzędzu do formalnej weryfikacji bezpieczeństwa.

Dlaczego naukowcy tak mocno angażują się w te kryptowalutowe projekty? Czy ambicją takiego zespołu Zcasha jest wyparcie walut fiducjarnych? Czy chodzi tylko o pewne pole doświadczalne, na którym opracuje się rozwiązania dla wielkich koncernów?

Myślę, że przede wszystkim napędza ich to, że nagle świat zainteresował się tym, co oni w tych swoich laboratoriach robią. Ponadto część ludzi sporo na tym zarabia. Są dwa skrajne obrazy – w pierwszym naukowcy robią coś tylko po to, by bezinteresownie ulepszać świat, w drugim chodzi im tylko o pieniądze. Ale jest jeszcze coś, czego wiele osób nie rozumie. Mianowicie – naukowców bardzo interesuje sława. I nie chodzi tu o rozpoznawalność w całym społeczeństwie, ale o rozpoznawalność w konkretnej społeczności naukowej. Taką sławę zapewniają rozwiązania naukowe, które weszły do powszechnego użytku. Przykładem jest algorytm Rivesta-Shamira-Adlemana, czyli RSA. Z tego typu szyfrowaniem spotyka się pan niemal na każdym kroku. To jest coś czego nie da się porównać do, dajmy na to 20 publikacji w topowych czasopismach naukowych. Tak naprawdę każdy naukowiec gdzieś w głębi duszy ma nadzieję, że zrobi coś, co będzie miało ogromy wpływ na daną dziedzinę.

A więc pomimo forumowej amatorszczyzny, błędów w protokołach, czy fałszywych ICO, świat nauki konsekwentnie dba o to, by postęp technologiczny w tej branży trwał i przynosił realne efekty?

Tak. I to bardzo napędza rozwój kryptografii. Doszło do tego, że Vitalik Buterin chwali na swoim blogu protokół ZK i nagle znajduje się ktoś, kto chce to implementować. Dekadę temu to było nie do pomyślenia. Przeskok od „to jest filozofia nie informatyka" do „zastosujmy to w produktach" trwa raptem kilka lat. To ma też niestety swoją złą stronę, bo dzieje się za szybko. Dlatego wspomniałem o tym, że usłyszymy jeszcze o wielu błędach w protokołach.

Błędy pojawiają się w scentralizowanych rozwiązaniach, choć te istnieją od dawna. To chyba całkiem normalne zjawisko.

Zgadza się, ale jest ta centralna instytucja, która nad tym czuwa. Dzięki niej finalny klient rzadko odczuwa silne konsekwencje występujących błędów. A gdy je odczuje, to przynajmniej wie do kogo się zwrócić z pytaniem. W kryptowalutach tego nie ma. Ponadto protokoły stosowane w scentralizowanych rozwiązaniach są o wiele prostsze. Tak na prawdę cała bankowość elektroniczna opiera się na dość elementarnej kryptografii w rodzaju szyfrowania czy podpisu elektronicznego (a i tak zdarzają się w niej błędy!). To co się dzieje w projektach blockchainowych jest o rząd wielkości bardziej skomplikowane.

To właśnie blockchain ma ponoć rozwiązać problem tego, że sobie nie ufamy. Myśli pan, że moda na te technologię już minęła?

Nie. Ten temat też ewoluował. Pojawiły się wersje konsorcyjne i rozwiązania skalujące funkcjonowanie tego typu baz. Podejmowane są też próby wdrożeń i testy. Sam zaangażowałem się w kilka projektów. M. in. z branży energetycznej. Chodzi o rozproszony system do handlu energią, w którym uczestniczą konsumenci, prosumenci i producenci. By nie obciążać głównego blockchaina testujemy kanały płatności. Poza tym próbujemy implementować blockchaina do Internetu Rzeczy (IOT), czyli umożliwić komunikację wielu urządzeń działających na danym obszarze.

Dostrzega pan jeszcze jakieś branże, w których blockchain może znaleźć zastosowanie?

Oczywiście finanse. Poza tym cały rynek gier i hazardu.

Ma pan na myśli mikropłatności?

Nie. Chodzi przykładowo o tworzenie loterii, czy internetowego pokera na bazie smart kontraktów. W takich rozwiązaniach nie logujemy się do centralnego serwera, któremu wierzymy, że losowo rozda nam karty, tylko zastępują to metody kryptograficzne, a konkretnie technika obliczeń wielopodmiotowych. Wracamy więc do tego, że możemy zawierać jakieś transakcje, w tym przypadku zakłady, bez konieczności ufania komukolwiek. Problem tutaj jest taki, że w wielu krajach na tego typu biznes potrzeba mieć koncesję lub w ogóle prowadzić go nie można. Tak więc istnieje w tym obszarze spore ryzyko regulacyjne.

Nie brakuje komentarzy, że mimo wielu pomysłów wciąż jedynym, działającym na szeroką skalę wdrożeniem tej technologii jest bitcoin...

Nie do końca. Bo bitcoin nie jest przecież używany do płacenia, a jeśli już to raczej jest to jakaś zagrywka marketingowa typu „U nas zapłacisz bitcoinem...", z której mało kto korzysta. Tak na dobrą sprawę to nie słyszałem o sprawdzonym i działającym na szeroką skalę wdrożeniu tej technologii poza spekulacjami finansowymi. Ale to nie jest nic złego, bo jesteśmy dopiero we wczesnej fazie rozwoju. Więc pytanie nie brzmi czy do takiego wdrożenia dojdzie, tylko kiedy?

Sukcesy, chociażby w branży energetycznej, ogłaszało już wielu i okazywało się, że owe wdrożenia to zwykłe platformy do handlu tokenami...

Zgadza się. Często pod płaszczykiem blockchaina ktoś po protu chce sprzedawać udziały w spółkach z pominięciem regulatorów. Pojawiają się też pomysły polegające na połączeniu blockchaina z jakimś innym popularnym hasłem z dziedziny nowych technologii. To nie zawsze ma sens.

A co pan sądzi o Librze? Niektórzy uważają, że to tutaj łańcuch bloków pokaże swoje prawdziwe możliwości...

Facebook chce mieć własną kryptowalutę, ale ma świadomość, że nie budzi teraz sympatii regulatorów. Dlatego wymyślił, że to będzie konsorcyjne rozwiązanie, do którego zaprosił kilka dużych firm, m.in. PayPala. Potem część z nich się wycofała, a Zuckerberga „zgrillowali" w Kongresie. Pod tym względem projekt ma mocno pod górę. Natomiast od strony informatycznej stoi za tym zaplecze bardzo dobrych ekspertów, którzy zajmują się blockchainem od 30 lat, a więc od czasów, gdy to się jeszcze blockchainem nie nazywało. Libra pokazuje jednak, jak istotna wciąż jest rola państwa. Bo wydaje mi się, że jeśli Kongres definitywnie Libry zakaże, to Zuckerberg z tego zrezygnuje i już. Wbrew temu, co sądzi wielu ludzi, internet nie może się rozwijać bez zgody państw.

Myśli pan, że kryptowaluty mogą stać się pełnoprawnym aktywem? Jeszcze kilka lat temu nikt o nich nie wiedział, a teraz do obrotu wprowadzają je giełdy, powstają dla nich instrumenty pochodne, a także usługi depozytowe...

Mam co do tego pewne wątpliwości, ale przypominam, że nie jestem ekonomistą. Proszę jednak zwrócić uwagę na to, co się stało z Ethereum. W rozproszonej kryptowalucie doszło do forka i podziału na Ethereum i Ethereum Classic. I teoretycznie to to drugie jest tym właściwym, a w praktyce jest inaczej. I teraz pytanie co by się działo, gdyby Ethereum było walutą fiducjarną i doszłoby do takiego forka? Która część łańcucha zostałaby uznana za tę oficjalną? W czym należałoby płacić podatki od zysków w roku w którym taki fork nastąpił? Dla mnie to są poważne znaki zapytania.

Wracając jeszcze do bitcoina...Czy w kontekście skomplikowanych protokołów stosowanych w niektórych kryptowalutach, jego siłą nie jest to, że jest na tym tle bardzo prostą konstrukcją?

Zdecydowanie tak. W porównaniu do POS, Proof Of Work (POW) użyty w bitcoinie jest bardzo prosty. Z tego zresztą wynika to, że bitcoin nie miał poważniejszych luk, więc nikt go nie złamał. Choć oczywiście bitcoin nie jest wolny od wad, świadczących o tym, że Satoshi Nakamoto nie do końca to wszystko przemyślał. Chodzi mi m.in. o takie zjawisko jak „selfish mining", które w skrócie polega na tym, że dysponując przynajmniej 1/3 mocy sieci nieujawnianie kolejnego, wykopanego bloku może leżeć w interesie górnika. Może on bowiem sprawić, że inni górnicy będą marnować swoją moc na tworzenie łańcucha, który i tak nie wjedzie do głównego blockchaina. To jest możliwe do zrobienia, ale nikt tego nie dokonał, bo na ten moment jest to biznesowo nieopłacalne. Niemniej taka luka istnieje. Gdyby Nakamoto był naukowcem i sprawdzał by swój protokół formalnie, to zapewne taki błąd by wykrył.

Jak rozmawialiśmy rok temu, to mocno akcentował pan ryzyka związane z atakiem 51 proc. Okazuje się, że struktura właścicielska mocy obliczeniowej w sieci bitcoina staje się coraz bardziej oligopolem. Czy to może mu zagrażać?

Podtrzymuje swoją opinię i uważam, że bezpieczeństwo bitcoina jest na znacznie niższym poziomie niż wielu ludzi uważa. Stwierdzenia typu „moc obliczeniowa w sieci bitcoina jest większa niż łączna moc 500 najszybszych komputerów na świecie" nie mają nic do rzeczy. Atak na bitcoina można przeprowadzić chociażby przekupując poszczególnych górników. Stawka będzie wyższa niż nagroda za blok, dzięki czemu górnicy będą się chętnie przyłączyć do takiego mining poola. W taki sposób można przejąć 51 proc. mocy i decydować o sieci...

Na koniec zapytam o prognozy technologiczne na 2020 r. Co się pana zdaniem będzie rozwijać?

Myślę, że rozwiązania drugiej warstwy, czyli kanały, Plasma, albo taka nowinka jak ZK Rollups. Vitalik Buterin powiedział, że Plasma już jest passe, a teraz czas na to ostatnie. Zobaczymy, czy ma rację. Widać, że w całej tej społeczności jest masa inteligentnych osób, pełnych entuzjazmu i to może napawać optymizmem.

CV

Stefan Dziembowski. Profesor Instytutu Informatyki Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego. Studia informatyczne ukończył na UW w 1996 r. Stopień doktorski uzyskał na duńskim Uniwersytecie Aarhus w 2001 r. W roku 2010 wrócił na UW, gdzie objął kierownictwo nad grupą badawczą zajmującą się kryptografią i bezpieczeństwem danych. W roku 2019 otrzymał tytuł profesora.

Powiązane artykuły


REKLAMA: automatycznie wyświetlimy artykuł za 15 sekund.