31/08/2017

Sześć mitów na temat łańcucha bloków i Bitcoina: demaskowanie efektywności technologii

Technologie

Jeśli wierzysz w coraz powszechniejsze stwierdzenie, że wkrótce niemal wszystko będzie się opierać na łańcuchu bloków (ang. blockchain), muszę Cię rozczarować.

Dziś omówię odmianę technologii łańcucha bloków, która jest używana do kryptowaluty Bitcoin. Choć istnieją inne implementacje, które eliminują niektóre minusy „klasycznego łańcucha bloków”, przeważnie wszystko opiera się na takich samych zasadach.

Ogólne informacje o Bitcoinie

Według mnie technologa Bitcoin jest rewolucyjna. Niestety kryptowaluta ta jest zbyt często używana przez przestępców, a jako specjalista do spraw bezpieczeństwa informacji, jestem na tym punkcie wyczulony. Patrząc jednak z punktu widzenia technologii, Bitcoin jest bezsprzecznie ogromną rewolucją.

Komponenty protokołu Bitcoina oraz zastosowane w nim pomysły nie są nowe — znano je już w roku 2009, jednak tylko autorom tej kryptowaluty udało się połączyć je tak, aby zaczęły współgrać. Od tamtej pory, przez niemal 9 lat, w jego implementacji znaleziono dopiero jedną lukę krytyczną: ktoś ukradł wtedy 92 miliarda bitcoinów. Naprawa tego problemu wymagała cofnięcia całego rekordu finansowego z ostatnich 24 godzin. Niemniej jednak, wykrycie tylko jednej luki na dziewięć lat to sytuacja godna pochwały. Czapki z głów dla twórców.

Autorzy Bitcoina musieli pokonać nie lada wyzwanie, a mianowicie musieli sprawić, aby wszystko zaczęło działać bez systemu centralnego i bez wzajemnego zaufania uczestników. Podjęli wyzwanie i uczynili z elektronicznych pieniędzy walutę operacyjną. Jednak nie wszystkie decyzje były trafne.

Nie chcę ujmować zalet łańcuchowi bloków, gdyż jest to przydatna technologia, która już wykazała wiele wspaniałych zastosowań. Mimo swoich wad, ma ona także wiele zalet. Jednak w pogoni za sensacją wielu ludzi koncentruje się wyłącznie na zaletach tej technologii, odrzucając jej wady. Dlatego uważam, że warto poświęcić nieco czasu na przyjrzenie się minusom tej technologii.

Książka, która wyraża duże nadzieje związane z łańcuchem bloków. W tym artykule zacytowałem jej fragmenty

Mit 1: Łańcuch bloków to ogromny, rozproszony komputer

Cytat 1: „Łańcuch bloków mógłby być brzytwą Ockhama, najskuteczniejszymi, bezpośrednimi i naturalnymi metodami koordynowania wszystkich działań ludzi i maszyn. To proces efektywności naturalnej”.

Jeśli nie wiesz, jak działa łańcuch bloków, a jedynie znasz czyjeś opinie o tej technologii, możesz być pod wrażeniem, że istnieje taki rozproszony komputer, który wykonuje rozproszone obliczenia. Pewnie uważasz, że rozlokowane na całym świecie węzły gromadzą mnóstwo bitów.

Jednak to nie jest prawdą. Wszystkie węzły, który utrzymują łańcuch bloków, robią dokładnie to samo. Oto, co robią miliony komputerów:

  1. Weryfikują te same transakcje zgodnie z tymi samymi zasadami i wykonują takie same działania.
  2. Rejestrują w łańcuchu bloków dokładnie to samo (jeśli mają na tyle szczęścia, że mają na to pozwolenie).
  3. Przez cały czas przechowują całą historię, która jest taka sama dla nich wszystkich.

Nie istnieją żadne działania równoległe, nie ma synergii ani wspólnej pomocy. Jest tylko natychmiastowa, milionowa duplikacja. To przeciwieństwo efektywności, a wrócimy do tego później.

Mit 2: Łańcuch bloków jest wieczny. Wszystko, co zostaje w nim zarejestrowane, pozostanie tam na zawsze

Cytat 2: „Dzięki aplikacjom Dapps, DAO, DAC i DAS mogłoby powstać wiele interesujących nowych tworów oraz działanie podobne do skomplikowanej sztucznej inteligencji”.

Jak już wiemy, każdy posiadający wyższą ocenę klient sieci Bitcoin przechowuje historię całej transakcji, a rekord ten osiągnął już rozmiar 100 GB. To pojemność taniego laptopa lub najbardziej zaawansowanego smartfona. Im więcej transakcji jest przetwarzane w sieci Bitcoin, tym szybciej rośnie rozmiar. A najbardziej było to widoczne w ciągu ostatnich kilku lat.

Wzrost łańcucha bloków. Źródło

Łańcuch bloków Bitcoina nie rośnie najszybciej — konkurencyjna sieć Ethereum zgromadziła już 200 GB danych historycznych, w ciągu zaledwie dwóch lat od jej uruchomienia i sześciu miesięcy aktywnego użytkowania. Dlatego w bieżących okolicznościach czas życia łańcucha bloku jest ograniczony do dekady. Co więcej, pojemność dysków twardych nie rośnie tak szybko.

Oprócz tego, że ta ogromna baza danych musi być przechowywana, musi ona także być możliwa do pobrania. Każda osoba, która kiedykolwiek próbowała użyć lokalnie przechowywanego portfela dla kryptowaluty, już wie, że nie może wykonywać ani otrzymywać płatności, aż nie zostanie zakończony cały proces pobierania i weryfikacji — przy odrobinie szczęścia zajmuje to kilka dni.

Możesz zapytać: jeśli to wszystko to jedna ta sama rzecz, być może nie powinniśmy przechowywać jej na każdym węźle sieciowym? Oczywiście byłoby to wydajniejsze. Ale po pierwsze: wtedy nie byłby to łańcuch bloków peer-to-peer, lecz tradycyjna architektura klient-serwer. Po drugie: klienci musieliby wtedy ufać serwerom. A przecież jedna z podstawowych zasad łańcucha bloków brzmi: „nie ufać nikomu”.

Przez długi czas użytkownicy Bitcoina dzielili się na entuzjastów, którzy „cierpieli”, pobierając wszystko i przechowując cały łańcuch bloków na swoim komputerze, i na zwykłych ludzi, którzy używali portfeli elektronicznych, ufali serwerowi i nie interesowali się zbytnio, jak to wszystko działa.

Mit 3: Łańcuch bloków jest wydajny i skalowalny. Tradycyjnie pieniądze wkrótce znikną

Cytat 3: „Zadaniem technologii łańcucha bloków + osobistego konektomu in vivo jest kodowanie myślenia człowieka i uczynienie go użytecznym w postaci ujednoliconego formatu danych skompresowanych. Dane te można uchwycić poprzez nagrania wewnątrz kory mózgowej, EEG, interfejs komputera/mózg, nanoroboty poznawcze i inne sposoby. A zatem, w łańcuchu bloków mogłoby powstawać myślenie, a także wszystkie subiektywne doznania danej osoby, w tym (prawdopodobnie) świadomość, zwłaszcza jeśli zostanie precyzyjniej zdefiniowana. Po uwzględnieniu ich w łańcuchu bloków można by zarządzać różnymi komponentami. Na przykład byłoby to przydatne podczas przywracania pamięci po udarze mózgu”.

Jeśli każdy węzeł sieciowy robi to samo, oczywistym jest, że przepustowość łącza całej sieci jest taka sama jak przepustowość jednego węzła tej sieci. Ale czy ją dokładnie znamy? Sieć Bitcoin może przetwarzać maksymalnie siedem transakcji na sekundę — dla milionów użytkowników na całym świecie.

Poza tym transakcje łańcucha bloków Bitcoin są rejestrowane tylko raz na 10 minut. Aby zwiększyć bezpieczeństwo płatności, po pojawieniu się każdego nowego rekordu standardowo trzeba poczekać jeszcze 50 minut, ponieważ regularnie one się cofają. Teraz sobie wyobraźmy kupowanie batonika przy użyciu bitcoinów. To żaden problem stać w kolejce w sklepie godzinę, prawda?

W kontekście całego świata sytuacja taka jest śmieszna, nawet jeśli Bitcoina używa tylko jedna osoba na tysiąc. A biorąc pod uwagę szybkość przetwarzania transakcji, znaczne zwiększenie liczby aktywnych użytkowników zwyczajnie jest niemożliwe. Dla porównania podam, że Visa przetwarza tysiące transakcji na sekundę i, w razie potrzeby, może z łatwością zwiększyć przepustowość łącza. Klasyczne technologie bankowe są dosyć skalowalne.

Jeśli tradycyjne pieniądze znikną, nie będzie to spowodowane rozwiązaniami łańcucha bloków.

Mit 4: Bezpieczeństwo sieci zapewniają kopacze

Cytat 4: „Wykorzystujący chmurę i łańcuch bloków autonomiczny podmiot biznesowy podpisujący inteligentny kontrakt mógłby zawrzeć elektroniczną umowę z instytucjami takimi jak rządy o zarejestrowaniu się w dowolnym państwie, w którym chce działać”.

Z pewnością słyszałeś o kopaczach i gigantycznych farmach kopalni, zbudowanych w pobliżu elektrowni. Co oni właściwie tam robią? Przez 10 minut zużywają wiele prądu, „trzęsąc” blokami, aż staną się „ładne”, aby można je było dodać do łańcucha bloków (więcej na ten temat znajduje się w naszym poście). Zasadniczo cel jest jeden: upewnić się, że przepisanie historii transakcji będzie wymagać tyle samo czasu, ile zabrało napisanie oryginalnej historii (przy takiej samej mocy obliczeniowej).

Do tego celu wykorzystuje się tyle energii, ile zużyłoby miasto zamieszkałe przez 100 000 ludzi. Trzeba pamiętać również o drogim niestandardowym wyposażeniu, które w zasadzie przydaje się wyłącznie do wykopywania bitcoinów.

Optymiści technologii łańcucha bloków mówią, że kopacze nie tylko wykonują bezużyteczne działania, ale także utrzymują stabilność i bezpieczeństwo sieci Bitcoin. To prawda, lecz problem w tym, że kopacze chronią sieć Bitcoin przed innymi kopaczami.

Gdyby istniała zaledwie jedna tysięczna aktualnej liczby kopaczy, czyli wykorzystywana byłaby tylko jedna tysięczna tej energii, Bitcoin byłby równie dobry jak teraz. Wciąż produkowałby 1 blok na każde 10 minut, przetwarzałby tę samą liczbę transakcji i działałby z dokładnie tą samą szybkością.

Ryzyko ataku na rozwiązania łańcucha bloków kształtuje się na poziomie 51%. Jeśli ktoś kontroluje ponad połowę mocy obliczeniowej używanej obecnie do kopania, może potajemnie napisać alternatywną historię finansową. Wersja ta staje się wówczas rzeczywista, więc te same pieniądze można wydać więcej niż raz. Tradycyjne systemy płatności są odporne na takie ataki.

Jak się okazało, Bitcoin stał się zakładnikiem swojej własnej ideologii. „Przesadni” kopacze nie mogą przestać kopać; spowodowałoby to ogromny wzrost prawdopodobieństwa, że jedna osoba będzie kontrolować ponad połowę pozostałej mocy obliczeniowej. Kopanie to wciąż lukratywne zajęcie, a sieć nadal jest stabilna. Jednak jeśli sytuacja ulegnie zmianie (np. gdy wzrośnie cena prądu), w sieci może wydarzyć się mnóstwo incydentów „podwójnego wydawania”.

Mit 5: Łańcuch bloków jest zdecentralizowany, przez co jest niezniszczalny

Cytat 5: „Aby bardziej formalnie stać ię organizacją, Dapp może zaadoptować bardziej skomplikowaną funkcjonalność, taką jak konstytucja…”

Może się wydawać, że jeśli łańcuch bloków jest przechowywany na każdym węźle sieciowym, służby specjalne lub władze nie mogą zamknąć Bitcoina bez powodu, ponieważ nie ma chociażby scentralizowanego serwera. Jednak to tylko iluzja.

Wszyscy „niezależni” kopacze łączą się w grupy (a technicznie rzecz biorąc — w kartele). wspólnie się zgadzają, że lepiej jest mieć mały, lecz stabilny przychód niż ogromne wypłaty co tysiąc lat (a nawet i to nie jest gwarantowane).

Szacowany rozkład mocy obliczeniowej wśród największych grup kopaczy. Źródło

Powyższy wykres pokazuje około 20 z największych grup kopaczy. 4 największe grupy kontrolują ponad 50% całej mocy obliczeniowej. Uzyskanie dostępu tylko do czterech komputerów sterujących może dać komuś możliwość podwójnego wydania bitcoinów. W pewien sposób spowodowałoby to dewaluację tej kryptowaluty — i jest to całkiem możliwe do zrobienia.

Ale zagrożenie jest jeszcze bardziej poważne, ponieważ większość grup, wraz ze swoimi mocami obliczeniowymi, znajduje się w jednym kraju, co znacznie ułatwia ich przechwycenie i uzyskanie kontroli nad Bitcoinem.

Rozkład kopaczy wg kraju. Źródło

Mit 6: Anonimowość i otwarty charakter łańcucha bloków są dobre

Cytat 6: „W obliczu łańcucha bloków tradycyjny rząd 1.0 staje się przestarzały jako model zarządzania, zwłaszcza gdy dostrzeżemy możliwość przejścia od paternalistycznych struktur, z uniwersalną strategią, do bardziej granularnych, spersonalizowanych form rządu”.

Łańcuch bloków jest otwarty i każdy widzi wszystko. Przez to nie jest on tak naprawdę anonimowy, lecz oferuje pseudonimowość. Dlaczego pseudonimowość nie jest dobra dla szczerych użytkowników? Podam prosty przykład: załóżmy, że przesyłam trochę bitcoinów swojej mamie. Może się ona dowiedzieć:

  1. Ile pieniędzy mam w dowolnym czasie.
  2. Ile wydałem i, co ważniejsze, na co to wydałem. Może także poznać moje zakupy, w co grałem i jakiego polityka wsparłem „anonimowo”.

Albo inny przykład: chcę oddać znajomemu pieniądze za lemoniadę. Wtedy będzie on mógł poznać wszystkie szczegóły dotyczące moich finansów. To nie jest jakiś drobiazg: nikt przecież nie ujawnia historii finansowej swojej karty kredytowej każdemu znajomemu. Tym bardziej, że chodzi nie tylko transakcje zrealizowane, ale także przyszłe.

Dla niektórych taka sytuacja może nie być przerażająca, jednak w przypadku firm jest ona nie do przyjęcia. Wszystko, co ma związek z finansami, stałoby się publiczne: dla kontrahentów czy klientów widoczny byłby każdy drobny szczegół. Transparentność finansowa jest prawdopodobnie jedną z największych wad korzystania z Bitcoina.

Wniosek

Cytat 7: „Świat połączony z internetem mógłby z pożytkiem wdrożyć technologię łańcucha bloków jako warstwę ekonomiczną do coraz bardziej połączonego świata obliczeń zawierającego wiele urządzeń, takich jak urządzenia noszone, czujniki Internetu Rzeczy (IoT)…”

Wymieniłem sześć największych wad Bitcoina i wykorzystywanej przez nie wersji łańcucha bloków. Ktoś może zapytać: „Dlaczego dowiaduję się tego od ciebie, a nikt wcześniej mi tego nie powiedział? Czy to możliwe, że nikt nie widzi tych problemów?”.

Niektórzy ludzie może faktycznie ich nie widzą, a niektórzy mogą zwyczajnie nie rozumieć, jak działa ta technologia, inni z kolei mogą rozumieć i zdawać sobie sprawę z tych minusów. Warto pamiętać, że wielu z tych, którzy zakupili bitcoiny, zaczynają je reklamować i ich bronić — dzieje się to jak w schemacie piramidy. Po co ujawniać, że technologia ma wady, jeśli liczysz na wzrost kursu walut?

Tak, Bitcoin ma rywali, którzy podjęli próby rozwiązania niektórych problemów. Choć część pomysłów jest całkiem dobra, wciąż opierają się one na łańcuchu bloków. Oczywiście są również inne, niemonetarne zastosowania technologii łańcucha bloków, ale w nich także znaleziono spore wady.

Zatem, jeśli ktoś powie ci, że wymyślenie łańcucha bloków można porównać do wynalezienia internetu pod względem znaczenia, nie daj się nabrać.