Geneza powstania kryptowalut

Geneza powstania kryptowalut

Najważniejszą rzeczą jaką trzeba wiedzieć ucząc się o kryptowalutach, jest ich pierwotny cel.

Cypherpunks

Od późnych lat 80', rosnąca grupa libertariańskich naukowców, inżynierów i filozofów, nazywających się "Cypherpunks", dyskutowała i debatowała na temat sposobów wykorzystania kryptografii w celu zwiększenia prywatności w świecie, który coraz bardziej dominowany był przez komputery i internet.

Cypherpunks założyli listę mailingową na początku lat 90', w której proponowali i argumentowali różne systemy, które można by wykorzystać do tych celów. Celem było stworzenie pewnego rodzaju bezpiecznego środowiska w cyberprzestrzeni, które byłoby chronione przed szpiegostwem rządowym i korporacyjnym, za pomocą kryptografii.

W miarę ewolucji dyskusji i propozycji rozwinęły się trzy główne wątki: pierwotny cel zachowania prywatności komunikacji, pieniądza w tej chronionej cyberprzestrzeni, oraz inteligentne kontrakty, umożliwiające egzekwowanie anonimowych transakcji bez konieczności korzystania z zaufanych stron trzecich.

U podstaw celu cypherpunkowego wysiłku leżała ta ostatnia koncepcja: zminimalizowanie potrzeby zaufania stronom trzecim.

Prekursorzy kryptowalut

W tym specyficznym poszukiwaniu formy waluty, która byłaby bezpieczna w środowisku internetowym, podjęto wiele prób.

DIGICASH

DigiCash był najwcześniejszą próbą scyfryzowania pieniędzy. Powstały w 1989 roku, skupiał się na prywatności transakcji.

Jego założyciel, David Chaum, był jednym z prekursorów ruchu Cypherpunkowego, dzięki swojej filozofii i pomysłom na wykorzystanie kryptografii w domenie publicznej w celu ochrony prywatności codziennych interakcji online.

DigiCash był wówczas sugerowany bankom, ale wysiłek zakończył się w 1998 roku wraz z zamknięciem projektu.

Doprowadził do tego opór ze strony instytucji finansowych, projekt zakładał pokrycie cyfrowym jednostkom w pieniądzu bankowym. Chociaż system gwarantował prywatność dzięki technologii "ślepych podpisów", nadal działał na centralnie kontrolowanym serwerze, przez co był zależny od stron trzecich, które nim zarządzały.

HASHCASH

HashCash został stworzony w 1997 roku przed Adama Back'a, aby zapobiegać spamowi emaliowemu. Nie jest walutą lub próbą stworzenia pieniędzy w świecie online.

Jednak leżąca u jej podstaw technologia zmuszania komputerów do wykonywania dużej ilości pracy, w postaci cykli obliczeniowych zwanych dowodem pracy (proof of work), w celu wykonania akcji, jest podstawą tego, co stanie się kryptowalutami, które znamy dzisiaj.

BIT GOLD

Bit Gold został wynaleziony i opisany przez Nicka Szabo, między 1988 a 2005 rokiem. Był pierwszym modelem całkowicie niezależnej kryptowaluty. System implementował koncepcje sieci węzłów peer-to-peer do zarządzania rozproszonym rejestrem, oraz dowód pracy (proof of work).

Dostarczał szczegółowych informacji o działaniu systemu, a konkretnie naśladował sposób, w jaki produkcja, niedobór i wartość złota funkcjonowały w prawdziwym świecie. Stąd jego nazwa.

Bit Gold uwzględniał protokół proof of work jako mechanizm umożliwiający uczestnikom pokazanie, że coś wartościowego, ze względu na koszt, zostało stworzone do użytku jako czysta waluta cyfrowa. Następnie, wymagał oznaczania czasu proof of work w sposób rozproszony i wykorzystywał sieć węzłów do zarządzania rejestrem z kontami i saldami Bit Gold, jako system tytułów własności, aby użytkownicy mogli przechowywać, śledzić, i przesyłać swoją walutę.

Innym innowacyjnym pomysłem Bit Gold było wykorzystanie stworzonego wcześniej protokołu proof of work jako elementu układanki do rozwiązania kolejnej jednostki Bit Gold. To ostatecznie utworzyłoby łańcuch rozwiązanych wcześniej zdań, bardzo podobny do tego, co dziś nazywa się blockchainem.

Łańcuch ten służył również uczestnikom jako łatwiejszy sposób sprawdzenia, czy waluta, którą kupili, nie została sfałszowana.

Inną ważną cechą Bit Gold było nie tylko wykorzystywanie proof of work jako podstawowych składowych wartości, ale także wykorzystywanie rynku Bit Gold do kształtowania ceny takich wyników dowodu pracy, aby można je było pogrupować w ogólne pakiety, aby uzyskać towar cyfrowy bardziej znormalizowany i jednorodny.

Oprócz tych pakietów, które imitowały sztabki złota w prawdziwym świecie, miał zostać stworzony system tokenów, aby aktywa były podzielne i zbywalne, a tym samym bardziej dostosowane do wykorzystania w gospodarce cyfrowej.

Mechanizmy konsensusu sieci peer-to-peer chroniły w tym czasie przed atakami zmowy różnych interesariuszy i tzw. podwójnym wydawaniem o ile nie przekroczyłyby ponad 33% węzłów w systemie. W informatyce nazywa się to tolerancją na problem bizantyńskich generałów.

Problem bizantyńskich generałów oznacza, że jeśli 33% operatorów węzłów zgodzi się na uszkodzenie sieci, na przykład reorganizując historię transakcji, mogliby to zrobić, ponieważ inni nie mieliby możliwości powstrzymania takich działań w rozproszonym, całkowicie zdecentralizowanym systemie.

Nawet jeśli była to bardzo zaawansowana koncepcja na swoje czasy, Bit Gold również miał pewne problemy. Polegały one na tym, że rynek Bit Gold był bardzo trudny do wdrożenia bez zarządzających nim zaufanych stron trzecich, a sieć węzłów była podatna na atak tylko 33% mocy sieci.

B-MONEY

Propozycją równoległą do Bit Gold było B-money, stworzone przez kolejnego cypherpunka o imieniu Wei Dai. Oprócz kryptowaluty, B-money zawierało podstawową formę kontraktów programowalnych.

Model zintegrował również sieć węzłów, które utrzymywały rozproszony rejestr, z kontami i saldami, oraz uczestnikami, którzy wykonywali pracę na swoich komputerach, aby wykazać, że ponieśli znaczny koszt obliczeniowy w celu stworzenia waluty.

Waluta ta byłaby wyceniana według aktualnych cen na rynku mocy obliczeniowej, a sieć węzłów zasilałaby konto swojego twórcy swoim nowym saldem.

W drugiej części B-money dodano liczbę agentów depozytowych, aby zagwarantować transakcje między uczestnikami sieci, gdy chcieli korzystać z kontraktów programowalnych (smart contracts).

Możliwe jest, że pomysł B-money nie wypalił, ponieważ zabrakło w nim detali o tym jak zaimplementować niektóre ważne jego aspekty, oraz przez to, że sieć węzłów utrzymująca rejestr była podatna na problem bizantyńskich generałów.

RPOW

RPOW to skrót od Reusable Proofs of Work. Został stworzony w 2004 roku przez Hala Finneya, kolejnego cypherpunka. Model RPOW miał inne podejście jako próbę rozwiązania historycznego problemu bizantyńskich generałów: uczestnicy tworzyli własne dowody pracy, jak w Bit Gold, ale przesyłali je bezpośrednio do innych użytkowników za pomocą systemu przesyłania wiadomości, a nie przez sieć węzłów peer-to-peer do prowadzenia rejestru własności.

W centrum tego systemu znajdował się serwer weryfikacyjny, gdzie, w miarę jak uczestnicy przesyłali dowody pracy do siebie nawzajem, a nowe transakcje wymagały nowych dowodów, centralny serwer miał jedynie weryfikować ich autentyczność.

Chociaż system umożliwiał bezpośrednie przekazy wartości między użytkownikami, rozwiązując bizantyjski problem w tym formacie, miał jednak tę wadę, że scentralizowany serwer weryfikacji, nawet jeśli był zarządzany przez grupę oddzielnych weryfikatorów, nadal stanowił ryzyko centralizacji, jako że weryfikatorom należało zaufać w odniesieniu do tej funkcji.

Nadejście Bitcoina

Jak widać, każdy prekursor Bitcoina był w jakiś sposób niedoskonały. Niezależnie od tego, czy polegał na centralnych serwerach lub zaufanych stronach trzecich, czy też, że mechanizm konsensusu rejestru własności był podatny na zmowę podgrup uczestniczących węzłów.

Wraz z uruchomieniem Bitcoina w 2009 roku, genialny wynalazek Satoshiego Nakamoto, który uczynił Bitcoina rewolucyjnym, nazywamy dziś "Konsensusem Nakamoto". Konsensus Nakamoto rozwiązał te problemy, poprzez integrację wszystkich aspektów procesu w sposób, w którym każdy z nich wspiera się na innym.

W Konsensusie Nakamoto wszystkie węzły w sieci peer-to-peer wysyłają wszystkie nowe transakcje do wszystkich innych węzłów; następnie wszyscy używają tych transakcji, a także informacji z poprzedniego bloku i znacznika czasu, jako układanki dla następnego dowodu pracy, opierając się na minimalnym progu trudności; gdy którykolwiek z węzłów osiąga określony wynik w oparciu o próg, rozgłasza wynik do wszystkich innych węzłów; kiedy wszystkie inne węzły otrzymają kryptograficzny dowód, weryfikują go zgodnie z algorytmem systemu i danymi w łańcuchu bloków poprzednich dowodów pracy, które przechowują w swoich kopiach rejestru. Kiedy dowód pracy zostanie zweryfikowany, wszystkie węzły nagradzają konto tego, który jako pierwszy rozwiązał zagadkę, określoną liczbą tokenów, zgodnie z polityką pieniężną protokołu Bitcoina.

W ten sposób Bitcoin gwarantuje wartość tokenu, nie tylko ze względu na niedobór narzucony przez politykę pieniężną, ale także dlatego, że do stworzenia nowych tokenów potrzebna jest duża ilość mocy obliczeniowej.

Wielkość pracy jest również kluczem do rozwiązania wspomnianej wcześniej podatności 33% sieci peer to peer. Ponieważ minimalny próg trudności nałożony przez algorytm Bitcoin oznacza, że wszystkie uczestniczące węzły muszą spędzić średnio dziesięć minut na rozwiązywaniu zagadki, co gwarantuje członkom sieci, że wszyscy pozostali uczestnicy również pracowali nad rozwiązaniem.

Jeśli jednak ktokolwiek osiągnie ponad 50% mocy obliczeniowej w sieci, nadal może prześcignąć inne węzły w tworzeniu bloków, potencjalnie ingerując w rejestr własności (potocznie blockchain). Powszechnie nazywane jest to atakiem 51%.

W związku z tym, ulepszenie Konsensusu Nakamoto polega na podniesieniu poprzedniego 33% konsensusowego progu bezpieczeństwa do 50%, co oznacza, że każda grupa zmawiających się węzłów, aby manipulować historią nowych transakcji potrzebuje więcej niż 50% mocy obliczeniowej systemu.

W ten sposób Bitcoin stał się pierwszą, szeroko stosowaną formą cyfrowych pieniędzy, przypominając tym samym cyfrowe złoto. Jednak następny krok, czyli inteligentne kontrakty, jest czymś czego Bitcoin nie mógł osiągnąć ze względu na ograniczenia związane z jego wewnętrznym projektem.

Programowalne kontrakty Ethereum

Kiedy Bitcoin nazywany jest kieszonkowym kalkulatorem, to Ethereum nazywane jest komputerem. Stworzone przez Vitalika Buterina w 2015 roku, korzysta z tej samej podstawy co Bitcoin, czyli Konsensusu Nakamoto, rozproszonego rejestru własności, oraz tokenu jako jednostki monetarnej. To co go odróżnia, to wirtualna maszyna, oraz język programowania który umożliwia programowalność waluty.

Innymi słowy, umożliwił on powstanie kontraktów programowalnych.

Sposób w jaki działają polega na wykorzystaniu dowodu pracy do tworzenia bloków z transakcjami, które weryfikują wszystkie węzły w sieci, ale rejestr nie tylko zapisuje konta i salda, ale także przechowuje programy, które są wykonywane w zdecentralizowanej sieci.

Programy te, jak każde oprogramowanie, mogą ustalać zasady i warunki wykonywania transakcji, które przenoszą wartość w sieci na całym świecie.

Dla przykładu, prosty program w Ethereum mógłby wyglądać tak:

  • Jeżeli konto X ma saldo o wysokości $Y
  • I jeżeli dzisiaj jest 31 grudnia 2021
  • Wtedy prześlij 5 monet na konto Z
  • Jeżeli warunki nie są spełnione, nie rób nic.

Możliwość integracji zdecentralizowanych programów umożliwiła powstanie zdecentralizowanych aplikacji, tzw "DAPPS", mogących działać w tych systemach i mających takie same funkcje bezpieczeństwa jak blockchain.

Proof of Stake

Ponieważ kryptowaluty są publicznymi systemami typu open source, można je kopiować i wdrażać ze zmianami jako całkowicie oddzielne systemy. Jedną ze zmian, które wielu przedsiębiorców i informatyków chciało wprowadzić, było odejście od dowodu pracy jako podstawy bezpieczeństwa systemu.

Krytyka proof of work polega na tym, że wiąże się on z użyciem dużych ilości energii, co teoretycznie nie jest dobre dla środowiska. Jednak Bitcoin osiągnął ogromną skalę na poziomie globalnym i mniej więcej 77% systemu działa na energii odnawialnej. W rzeczywistości, ponieważ odnawialne źródła energii są tańsze, Bitcoin faktycznie przyspieszył migrację do nich w wielu regionach.

Niemniej jednak, uruchomiono wiele nowych sieci wykorzystujących modele Bitcoin i Ethereum jako punkty początkowe, ale z kilkoma nowymi funkcjami i modyfikacjami, takimi jak dowód posiadania udziałów (proof of stake) jako mechanizm konsensusu. Inne nowo dodane funkcje, to systemy głosowania do podejmowania decyzji, specjalne pule środków jako źródła finansowania oraz fragmentacja rejestru, zwana shardingiem, w celu zwiększenia wydajności i konieczności przechowywania ogromnych ilości danych łańcucha bloków.

Przykładami takich sieci są Polkadot, Cardano, EOS, TRON i Tezos.

Aktualnie Ethereum przechodzi na system Proof of Stake.

Proof of Stake zastępuje potrzebę mocy obliczeniowej depozytami zabezpieczającymi operatorów węzłów, zmniejszając tym samym wydatki energetyczne. Depozyt zabezpieczający jest składany w walucie systemu i nazywany udziałem (stake).

Wszystkie węzły, które zdeponowały udziały, mają prawo do gromadzenia transakcji i księgowania ich w rozproszonym rejestrze. Po zaksięgowaniu transakcji, które przypominają bloki w systemach proof of work, walidatorzy biorą udział w loterii, w której mogą zdobyć wynagrodzenie za bieżący blok transakcyjny. To sprawia, że model monetarny jest również bardzo podobny do systemu proof of work.

Pomimo tego, że system Proof of Stake został opisany przez niektórych jako mniej bezpieczny, stanowi on kompromis w postaci skalowalności. Systemy proof of work są bezpieczniejsze, ale mniej skalowalne pod względem wolumenu transakcji, a systemy typu proof of stake są mniej bezpieczne, ale znacznie bardziej skalowalne.

Ta pozorna komplementarność sprawia, że istnieje realna możliwość, że ostatecznie technologie te zostaną w przyszłości faktycznie zintegrowane w większe, bardziej skalowalne i bezpieczne systemy.

Czym nie są kryptowaluty?

Drugą najważniejszą rzeczą, którą trzeba wiedzieć, ucząc się o kryptowalutach, to czym one nie są.

Systemy Proof of Work i Proof of Stake kwalifikują kryptowaluty, ponieważ ich ostatecznym celem, niezależnie od tego, jak różne mogą być ich podejścia, jest zminimalizowanie zaufania potrzebnego do stron trzecich.

Zaufane strony trzecie to luki bezpieczeństwa, ponieważ przechowują pieniądze i majątek ludzi, ich dane osobowe, zarządzają wszystkim na scentralizowanych serwerach i mogą dokonać defraudacji, blokady lub zostać zhakowane. Innymi słowy, nie gwarantują niezmienności rejestru własności, sald, transakcji i inteligentnych kontraktów.

Biorąc pod uwagę powyższe, waluty tworzone i zarządzane przez banki centralne, czyli tak zwane waluty cyfrowe banku centralnego (CBDC), z definicji nie są kryptowalutami, nawet jeśli naśladują wszystkie ich ruchy.

Prywatne systemy pieniężne również nie są kryptowalutami. Należą do nich systemy takie jak Facebookowy "Diem" (wcześniej znane jako Libra) oraz tak zwane stablecoiny; takie jak między innymi Tether, USD Coin i DAI, ponieważ importują do systemu tylko wady i zagrożenia związane z instytucjami finansowymi, bankowością centralną i pieniądzem fiducjarnym sponsorowanym przez rząd, którego cypherpunkowie starali się uniknąć w pierwszej kolejności.