blockchain co to
W kilku minionych latach dużą popularność zyskały tzw. kryptowaluty, czyli opisując w bardzo dużym uproszczeniu cyfrowe pieniądze. Wszystkie transakcje wykonywane za pomocą kryptowalut wykorzystują technologię blockchain, a najbardziej znaną zarazem elektroniczną monetą wykorzystującą to rozwiązanie jest Bitcoin. Czym jest blockchain, do czego się go używa i dlaczego jest uznawany za technologię przyszłości?
Blockchain, z angielskiego „łańcuch bloków” to system służący do zapisywania danych. Dane zapisane w ten sposób tworzą tak zwany blok i zawierają znacznik czasowy, dane o samej transakcji oraz kryptograficzny hasz poprzedniego bloku, co pozwala na połączenie bloków ze sobą i utworzyć łańcuch. Aktualnie technologia blockchain jest wykorzystywana głównie przy kryptowalutach. Dla przykłądu łańcuch bloków rejestruje wszystkie transakcje wykonane za pomocą danej kryptowaluty, a każda cyfrowa waluta posiada własny blockchain. Można powiedzieć, że jest to rodzaj cyfrowej księgi transakcji, która wyróżnia się następującymi cechami:
Jednakże łańcuchy bloków nie są przypisane wyłącznie do obsługi cyfrowych walut. Za pomocą blockchaina można przesłać dowolne dane. Po prostu nie każdy zapis za pomocą tej technologii jest użyteczny i ma sens. Dla przykładu za pomocą łańcuchów bloków można zapisać dowolną książkę czy opowieść, jednak nie wnosi to nic pozytywnego dla samej książki.
Proces zapisywania danych w łańcuchu bloków można podzielić na kilka etapów. Pierwszym i najważniejszym z nich jest transakcja – czyli przekazanie pewnych cyfrowych danych (nie ma znaczenia co to za dane) z jednego adresu na drugi. Adres jest pewnego rodzaju „kontem użytkownika”, które pozwala zbierać na nim dane tak samo, jak konto bankowe pozwala przechowywać pieniądze. Adresy są publicznie znane, jednak nie można powiązać adresu z konkretną osobą, co zapewnia anonimowość. Przykładowo dla kryptowalut transakcją będzie czynność przesłania pewnej ilości waluty z jednego adresu na drugi.
Transakcje są zapisywane w blokach danych – analogicznie do procesu zapisywania treści jest zapisywanej na kartkach. Gdy cały blok (czyli cała kartka) zostanie zapisany, jest on szyfrowany funkcją hashującą i dołączany do całego ciągu poprzednich bloków połączonych w łańcuch – tak jak zapisane kartki wpina się do segregatora. I tak samo jak w segregatorze, by wyjąć i podmienić poprzednie kartki, należy wyjąć najnowsze kartki – tak samo należałoby edytować poprzednie bloki by móc zmodyfikować obecną transakcje, dlatego raz wprowadzone zmiany zostają na zawsze w systemie.
W dalszej kolejności odpowiadając na pytanie kto zatwierdza transakcje w blockchain - weryfikacja transakcji następuje przez wsyzstkich użytkowników, którzy posiadają bazę danych wszystkich transakcji, czyli cały blockchain. Zweryfikować transakcję można przy pomocy metod kryptograficznych określonych przez twórcę danego rozwiązania typu blockchain – te opierają się na operacjach matematycznych, które wymagają mocy obliczeniowej komputerów, żeby móc je rozwiązać. Z każdą wykonaną transakcją stopień skomplikowania operacji matematycznych rośnie, a co za tym idzie zwiększa się poziom zapotrzebowania na moc obliczeniową. To jest tak zwany proces kopania. Wyliczenie rozwiązania jest bardzo skomplikowane, jednak zweryfikowanie czy rozwiązanie jest pasujące to bardzo prosta czynność – tak jak ułożeniu puzzli z wielu elementów to czasochłonna czynność, ale po popatrzeniu na obrazek od razu można stwierdzić, czy zostały ułożone prawidłowo. Utworzone rozwiązanie jest przesyłane do sieci – jeżeli co najmniej 51% komputerów uczestników zaakceptuje rozwiązanie – wtedy blok jest dodawany do łańcucha, a proces zakończony.
Sieć komputerowa w architekturze blockchain opiera się na systemie peer-to-peer. W takim systemie nie można wyznaczyć żadnego komputera nadrzędnego, nie istnieje żaden serwer zarządzający ruchem. Każde urządzenie, które podłączy się do sieci, może brać udział w przesyłaniu danych.
Pierwsze koncepty tej technologii pojawiły się już w 1991 roku – opisali ją Stuart Haber i W. Scott Stornett i dotyczyły oznaczania dokumentów znacznikami czasowymi. Rok później zostało dodane tzw. „drzewo skrótów”, co pozwoliło zwiększyć wydajność systemu. Ta metoda nie została rozpowszechniona, a patent na nią wygasł 12 lat później.
Do pomysłu wrócono w roku 2000, kiedy to Stefan Konst opublikował koncepcję rozproszonej księgi transakcji. Głównym założeniem tego patentu był fakt, iż każdy powiernik księgi jest niezależny od innych. Pięć lat później pojawił się pierwszy projekt wirtualnej waluty – „Bit Gold”, opartej na technologii blockchain i opisanych wcześniej technologiach, a w 2008 roku pojawił się znany już Bitcoin, łączący w całość blockchain i poprzednie technologie.
Blockchain jako technologia jest bardzo młodym wynalazkiem, a jej nowe zastosowania pojawiają się z każdym dniem. Potencjał może być wykorzystany do: