Bitcoin – zasady działania

1154
Bitcoin - zasady działania

Każda osoba na świecie może założyć portfel bitcoina, otrzymując na start własną kopię rejestru wszystkich dokonanych kiedykolwiek transakcji. Przy każdej transakcji, użytkownik szyfruje transfer i przesyła bitcoiny do portfela odbiorcy. Jednostki pojawiają się na koncie adresata, gdy tylko transakcja zostanie zaakceptowana przez użytkowników społeczności. Wtedy wszystkie rejestry na świecie zostają zaktualizowane o kolejną transakcję (w tym również Twój). Tak najprościej można opisać, jak działa przesyłanie pieniędzy w bitcoinie.

Jednak pod tymi słowami kryje się skomplikowany system, który utrzymuje anonimowość jego użytkowników, szyfruje wszystkie transakcje czy umożliwia wprowadzanie nowych monet do obiegu. Opowiemy o tym wszystkim w szczegółach, próbując cały czas zachować prosty język.

Zacznijmy od opisywanego wcześniej rejestru. Mimo że niektórzy mogą tak pomyśleć, to nie zawiera on stanów kont wszystkich użytkowników sieci. W rejestrze znajdują się wszystkie wykonane kiedykolwiek transakcje, co oznacza, że każdy użytkownik (nazywany też „węzłem” sieci bitcoin) jest w stanie prześledzić przepływ monet w sieci. Jeśli transakcja ma zostać wykonana, wysyłający musi posiadać własną historię transakcji. To znaczy, że nie może wysłać funduszy, jeśli takich nie ma na koncie. Dodatkowo nie może wysłać więcej monet niż wskazuje na to stan jego portfela.

Żeby lepiej wytłumaczyć całe zagadnienie, posłużmy się prostą analogią. Jeśli chcesz udowodnić swojej żonie, że posiadasz pieniądze na wieczór w barze, pizzerii lub restauracji, możesz jej pokazać ostatni przelew od swojego pracodawcy. Twój pracodawca posiada środki, ponieważ otrzymał je od jednego z klientów, którzy skorzystali z jego usługi. Ten klient posiadał środki na swoim koncie, ponieważ otrzymał go od swojego pracodawcy. Tworzony jest cały łańcuch transakcji, aż do momentu, w którym pieniądze pojawiły się w obiegu po raz pierwszy. Stworzenie takiej historii jest niemożliwe w prawdziwym świecie, jednak działa w przypadku kryptowalut. Użytkownik sieci posiada środki na koncie, ponieważ zostały mu przelane przez kogoś innego. Bitcoin używa takiego rozwiązania, w którym jest w stanie sprawdzić cały obieg internetowej waluty, zamiast brać pod uwagę konta wszystkich swoich użytkowników.

Przy każdej udanej transakcji użytkownik (czyli wcześniej wspomniany „węzeł”) aktualizuje swój rejestr oraz przesyła informację o aktualizacji do kolejnego węzła. W taki sposób informacja o dokonanym transferze rozchodzi się po całej sieci i każdy jest w stanie określić, czy dany portfel posiada na swoim koncie pieniądze czy nie.

Transakcje są szyfrowane tak, żeby zapewnić jego użytkownikom anonimowość. Wraz z założeniem swojego portfela, otrzymujesz klucz prywatny (będący kombinacją potrzebną do wejścia do swojego portfela) oraz klucz publiczny (adres swojego portfela). Oto, w jaki sposób pieniądze są przesyłane w sieci bitcoin:

  1. Nadawca tworzy wiadomość, w której są zawarte jednostki bitcoina.
  2. Nadawca używa swojego klucza prywatnego, aby stworzyć podpis cyfrowy (szyfrujący wiadomość).
  3. Nadawca wysyła wiadomość do klucza publicznego adresata.
  4. Adresat używa klucza publicznego nadawcy i podpisu cyfrowego, aby odszyfrować wiadomość.

Należy pamiętać, że każda transakcja ma zupełnie inny podpis cyfrowy. Dzięki skomplikowanym algorytmom matematycznym odbiorca nie potrzebuje klucza prywatnego nadawcy, żeby potwierdzić od kogo otrzymał tę wiadomość; wystarczą mu do tego jedynie podpis cyfrowy i klucz publiczny nadawcy.

Jednym z największych problemów takich systemów było zagrożenie, że osoba wysyłająca transfery może wykorzystać chwilę na potwierdzenie transakcji i rozdysponować większe środki, niż posiada na koncie. Działoby się to wtedy, gdy nieuczciwy użytkownik wysłałby całą zawartość swojego portfela innej osobie i, nie czekając na aktualizację rejestru, wykonałby taki sam transfer do innej osoby.

To dobrze znany problem, który w społeczności posiada fachową nazwę „double-spending”. Jeśli nie ma centralnego zarządcy sieci, to co stoi na przeszkodzie, żeby po prostu wykonać kopię cyfrowej waluty i wysłać ją gdzieś indziej?

Dlatego też transakcje w bitcoinie są sprawdzane przez społeczność użytkowników i grupowane w bloki, które trafiają do tak zwanego łańcucha bloku („blockchain” w języku angielskim). Dopiero gdy transakcja zostaje potwierdzone przez grono osób, można śmiało potwierdzić, że adresat otrzymał swoje pieniądze.

Ale o całym blockchainie napiszemy w kolejnym artykule.

PODZIEL SIĘ
Poprzedni artykułCo to jest bitcoin?
Następny artykułCo to jest blockchain?