Blockchainy są zabezpieczane za pomocą różnorodnych mechanizmów, które obejmują zaawansowane techniki kryptograficzne oraz matematyczne modele zachowań i podejmowania decyzji. Technologia Blockchain stanowi podstawową strukturę większości systemów kryptowalut i zapobiega duplikowaniu lub zniszczeniu tego rodzaju cyfrowych pieniędzy.
Zastosowanie technologii blockchain jest również badane w innych kontekstach, w których niezmienność i bezpieczeństwo danych są bardzo cenne. Kilka przykładów obejmuje rejestrowanie i śledzenie darowizn na cele charytatywne, medyczne bazy danych i zarządzanie łańcuchem dostaw.
Jednak bezpieczeństwo blockchain nie jest prostym tematem. Dlatego ważne jest zrozumienie podstawowych koncepcji i mechanizmów zapewniających solidną ochronę tych innowacyjnych systemów.
Pojęcia niezmienności i konsensusu
Chociaż wiele funkcji wpływa na bezpieczeństwo związane z blockchainem, dwie z najważniejszych to koncepcje konsensusu i niezmienności. Konsensus odnosi się do zdolności węzłów w rozproszonej sieci blockchain do uzgodnienia prawdziwego stanu sieci i ważności transakcji. Zazwyczaj proces osiągania konsensusu zależny jest od tzw. algorytmów konsensusu.
Z drugiej strony niezmienność odnosi się do zdolności łańcuchów bloków do zapobiegania zmianom w transakcjach, które zostały już potwierdzone. Choć transakcje te często dotyczą transferu kryptowalut, mogą dotyczyć także zapisu innych niepieniężnych form danych cyfrowych.
W połączeniu konsensus i niezmienność zapewniają ramy bezpieczeństwa danych w sieciach blockchain. O ile algorytmy konsensusu zapewniają przestrzeganie zasad systemu i zgodność wszystkich zaangażowanych stron co do aktualnego stanu sieci, o tyle niezmienność gwarantuje integralność danych i zapisów transakcji po potwierdzeniu ważności każdego nowego bloku danych.
Rola kryptografii w bezpieczeństwie blockchain
Aby zapewnić bezpieczeństwo danych, łańcuchy bloków w dużym stopniu opierają się na kryptografii. W tym kontekście fundamentalne znaczenie mają tzw. kryptograficzne funkcje mieszające. Haszowanie to proces, w wyniku którego algorytm (funkcja mieszająca) otrzymuje dane wejściowe o dowolnym rozmiarze i zwraca dane wyjściowe (hasz), które zawierają przewidywalny i stały rozmiar (lub długość).
Niezależnie od rozmiaru wejściowego, wynik będzie zawsze miał tę samą długość. Ale jeśli zmieni się wejście, wynik będzie zupełnie inny. Jeśli jednak dane wejściowe się nie zmienią, wynikowy skrót będzie zawsze taki sam – niezależnie od tego, ile razy uruchomisz funkcję skrótu.
W łańcuchach bloków te wartości wyjściowe, zwane skrótami, są używane jako unikalne identyfikatory bloków danych. Hash każdego bloku jest generowany w odniesieniu do hasha poprzedniego bloku i to właśnie tworzy łańcuch połączonych bloków. Skrót bloku jest zależny od danych zawartych w tym bloku, co oznacza, że jakakolwiek zmiana dokonana w danych wymagałaby zmiany skrótu bloku.
Dlatego skrót każdego bloku jest generowany na podstawie zarówno danych zawartych w tym bloku, jak i skrótu poprzedniego bloku. Te identyfikatory skrótu odgrywają główną rolę w zapewnianiu bezpieczeństwa i niezmienności łańcucha bloków.
Haszowanie jest również wykorzystywane w algorytmach konsensusu używanych do sprawdzania poprawności transakcji. Na przykład w łańcuchu bloków Bitcoin algorytm Proof of Work (PoW) wykorzystuje funkcję skrótu zwaną SHA-256. Jak sama nazwa wskazuje, SHA-256 pobiera dane wejściowe i zwraca skrót o długości 256 bitów lub 64 znaków.
Oprócz zapewnienia ochrony zapisów transakcji w księgach, kryptografia odgrywa również rolę w zapewnieniu bezpieczeństwa portfeli używanych do przechowywania jednostek kryptowaluty. Sparowane klucze publiczny i prywatny, które odpowiednio umożliwiają użytkownikom odbieranie i wysyłanie płatności, są tworzone przy użyciu kryptografii asymetrycznej lub kryptografii klucza publicznego. Klucze prywatne służą do generowania podpisów cyfrowych transakcji, umożliwiając uwierzytelnienie własności wysyłanych monet.
Chociaż szczegóły wykraczają poza zakres tego artykułu, charakter kryptografii asymetrycznej uniemożliwia komukolwiek poza posiadaczem klucza prywatnego dostęp do środków przechowywanych w portfelu kryptowalut, zapewniając w ten sposób bezpieczeństwo tych środków do czasu, aż właściciel zdecyduje się je wydać (o ile prywatny klucz nie jest udostępniony ani naruszony).
Kryptoekonomia
Oprócz kryptografii w utrzymaniu bezpieczeństwa sieci blockchain rolę odgrywa również stosunkowo nowa koncepcja znana jako kryptoekonomia. Jest to powiązane z dziedziną nauki zwaną teorią gier, która matematycznie modeluje podejmowanie decyzji przez racjonalnych aktorów w sytuacjach z wcześniej określonymi zasadami i nagrodami. Podczas gdy tradycyjną teorię gier można szeroko zastosować w wielu przypadkach, kryptoekonomia w szczególności modeluje i opisuje zachowanie węzłów w rozproszonych systemach blockchain.
Krótko mówiąc, kryptoekonomia to nauka o ekonomii protokołów blockchain i możliwych wynikach, jakie może przynieść ich projekt w oparciu o zachowanie uczestników. Bezpieczeństwo poprzez kryptoekonomię opiera się na założeniu, że systemy blockchain zapewniają węzłom większą zachętę do uczciwego działania niż do przyjmowania złośliwych lub błędnych zachowań. Po raz kolejny algorytm konsensusu Proof of Work stosowany w wydobywaniu Bitcoinów stanowi dobry przykład tej struktury motywacyjnej.
Kiedy Satoshi Nakamoto stworzył platformę do wydobywania Bitcoinów, celowo zaprojektowano ją jako proces kosztowny i wymagający dużych zasobów. Ze względu na swoją złożoność i wymagania obliczeniowe wydobycie PoW wiąże się ze znaczną inwestycją pieniędzy i czasu – niezależnie od tego, gdzie i kto znajduje się węzeł wydobywczy. Dlatego taka struktura stanowi silny czynnik zniechęcający do szkodliwej działalności i stanowi znaczącą zachętę do uczciwej działalności wydobywczej. Nieuczciwe lub nieefektywne węzły zostaną szybko wydalone z sieci blockchain, podczas gdy uczciwi i wydajni górnicy mają potencjał uzyskania znacznych nagród za bloki.
Podobnie ta równowaga ryzyka i korzyści zapewnia również ochronę przed potencjalnymi atakami, które mogłyby podważyć konsensus poprzez umieszczenie większości współczynnika mieszania sieci blockchain w rękach pojedynczej grupy lub podmiotu. Takie ataki, zwane atakami 51 procent, mogą być niezwykle szkodliwe, jeśli zostaną pomyślnie przeprowadzone. Ze względu na konkurencyjność wydobywania typu Proof of Work i wielkość sieci Bitcoin, prawdopodobieństwo, że złośliwy aktor przejmie kontrolę nad większością węzłów, jest niezwykle minimalne.
Co więcej, koszt mocy obliczeniowej potrzebnej do osiągnięcia 51% kontroli nad ogromną siecią blockchain byłby astronomiczny, co natychmiast zniechęcałoby do dokonywania tak dużych inwestycji za stosunkowo niewielką potencjalną nagrodę. Fakt ten przyczynia się do powstania cechy łańcuchów bloków znanej jako bizantyjska tolerancja błędów (BFT), która zasadniczo oznacza zdolność rozproszonego systemu do kontynuowania normalnej pracy, nawet jeśli niektóre węzły zostaną naruszone lub działają złośliwie.
Dopóki koszt utworzenia większości złośliwych węzłów pozostanie wygórowany i będą istniały lepsze zachęty do uczciwego działania, system będzie mógł prosperować bez znaczących zakłóceń. Warto jednak zauważyć, że małe sieci blockchain są z pewnością podatne na atak większości, ponieważ całkowity hashrate przeznaczony dla tych systemów jest znacznie niższy niż w przypadku Bitcoina.
Zamykanie myśli
Dzięki połączeniu teorii gier i kryptografii łańcuchy bloków są w stanie osiągnąć wysoki poziom bezpieczeństwa jako systemy rozproszone. Jednakże, jak w przypadku prawie wszystkich systemów, niezwykle ważne jest, aby te dwie dziedziny wiedzy były właściwie stosowane. Staranna równowaga między decentralizacją a bezpieczeństwem jest niezbędna do zbudowania niezawodnej i skutecznej sieci kryptowalut.
W miarę ewolucji zastosowań technologii blockchain, stosowane w nich systemy bezpieczeństwa również ulegną zmianie, aby sprostać potrzebom różnych aplikacji. Na przykład prywatne łańcuchy bloków opracowywane obecnie dla przedsiębiorstw biznesowych w znacznie większym stopniu opierają się na bezpieczeństwie poprzez kontrolę dostępu niż na mechanizmach teorii gier (lub kryptoekonomii), które są niezbędne dla bezpieczeństwa większości publicznych łańcuchów bloków.



