Blockchainy zabezpieczane są różnymi mechanizmami, w tym zaawansowanymi technikami kryptograficznymi oraz matematycznymi modelami zachowań i podejmowania decyzji. Technologia Blockchain jest podstawową strukturą większości systemów kryptowalut i zapobiega powielaniu lub zniszczeniu tego typu waluty cyfrowej.
Wykorzystanie technologii blockchain jest również badane w innych obszarach, w których niezmienność i bezpieczeństwo danych są niezwykle cenne. Niektóre przykłady obejmują rejestrowanie i śledzenie darowizn na cele charytatywne, medyczne bazy danych i zarządzanie łańcuchem dostaw (identyfikowalność).
Jednak bezpieczeństwo blockchain nie jest tematem prostym. Dlatego ważne jest zrozumienie podstawowych pojęć i mechanizmów zapewniających skuteczną ochronę tych innowacyjnych systemów.
Pojęcia niezmienności i konsensusu
Chociaż istnieje wiele funkcji wpływających 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. Generalnie proces osiągania konsensusu opiera się na tzw. algorytmach konsensusu.
Z drugiej strony niezmienność odnosi się do zdolności łańcuchów bloków do zapobiegania zmianom już potwierdzonych transakcji. Chociaż transakcje te często wiążą się z transferem kryptowalut, mogą również odnosić się do rejestrowania innych form niepieniężnych danych cyfrowych.
Połączenie konsensusu i niezmienności tworzy ramy bezpieczeństwa danych w sieciach blockchain. Chociaż algorytmy konsensusu zapewniają przestrzeganie reguł systemowych, a wszystkie zaangażowane strony zgadzają się co do aktualnego stanu sieci, niezmienność zapewnia 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 swoich danych, łańcuchy bloków opierają się w dużej mierze na kryptografii. Niezwykle ważną funkcją kryptograficzną w takim kontekście jest funkcja hashowania. Haszowanie to proces, podczas którego algorytm zwany funkcją skrótu otrzymuje dane wejściowe (dowolnego rozmiaru) i zwraca określone dane wyjściowe zawierające wartość o stałej długości.
Bez względu na to, jak duży jest plik wejściowy, wynik będzie zawsze tej samej długości. Jeśli zmieni się wejście, wyjście będzie zupełnie inne. Jeśli jednak dane wejściowe się nie zmienią, wynikowy skrót będzie zawsze taki sam, bez względu na to, ile razy uruchomisz funkcję skrótu.
W blockchainach te wartości wyjściowe, zwane skrótami, są używane jako unikalne identyfikatory bloków danych. Hash każdego bloku jest generowany w stosunku do hash poprzedniego bloku i to właśnie łączy bloki ze sobą, tworząc w ten sposób łańcuch bloków. Dodatkowo hash bloku zależy od danych zawartych w tym bloku, co oznacza, że jakakolwiek zmiana danych będzie wymagała także zmiany hasha bloku.
Dlatego skrót każdego bloku jest generowany na podstawie danych zawartych w tym bloku i skrótu poprzedniego bloku. Te identyfikatory skrótu odgrywają kluczową rolę w bezpieczeństwie i niezmienności łańcuchów bloków.
Hash jest również wykorzystywany przez algorytmy konsensusu używane do sprawdzania poprawności transakcji. Na przykład w łańcuchu bloków Bitcoin algorytm Proof of Work (PoW) używany do osiągnięcia konsensusu i wydobywania nowych monet wykorzystuje funkcję skrótu zwaną SHA-256. Jak sama nazwa wskazuje, SHA-256 pobiera dane wejściowe i zwraca 256-bitowy lub 64-znakowy skrót.
Oprócz zapewnienia ochrony zapisów transakcji w księgach, kryptografia odgrywa również rolę w bezpieczeństwie portfeli używanych do przechowywania jednostek kryptowaluty. Następnie tworzone są sparowane klucze publiczne i prywatne, które umożliwiają użytkownikom odbieranie i wysyłanie płatności za pomocą klucza publicznego lub kryptografii asymetrycznej. Klucze prywatne umożliwiają generowanie podpisów cyfrowych dla transakcji, co pomaga uwierzytelnić własność wysyłanych monet.
Chociaż szczegóły te wykraczają poza zakres tego artykułu, charakter kryptografii asymetrycznej uniemożliwia posiadaczowi innemu niż posiadacz klucza prywatnego dostęp do środków przechowywanych w portfelu kryptowalut, zapewniając w ten sposób bezpieczeństwo tych środków do czasu, gdy właściciel zdecyduje się je wydać (jak o ile klucz nie jest udostępniony ani naruszony).
Kryptoekonomia
Oprócz kryptografii w utrzymaniu bezpieczeństwa sieci blockchain rolę odgrywa również stosunkowo nowa koncepcja zwana kryptoekonomią. 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.
Podsumowując, kryptoekonomia to nauka o ekonomii protokołów blockchain i możliwych wynikach, jakie może przynieść ich model w oparciu o zachowanie jego 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, zamiast angażować się w złośliwe lub niewłaściwe zachowanie. Po raz kolejny algorytm konsensusu Proof of Work stosowany w wydobywaniu Bitcoinów stanowi dobry przykład tej struktury motywacyjnej.
Kiedy Satoshi Nakamoto tworzył platformę do wydobywania Bitcoinów, celowo zaprojektował ją tak, aby była to proces kosztowny i wymagający dużych zasobów. Wydobycie PoW ze względu na swoją złożoność i wymagania obliczeniowe wiąże się ze znaczną inwestycją pieniędzy i czasu, niezależnie od lokalizacji i lokalizacji węzła wydobywczego. Dlatego taka struktura silnie odstrasza szkodliwe działania i znacząco zachęca do uczciwych działań wydobywczych. Nieuczciwe lub nieefektywne węzły zostaną szybko wyrzucone z sieci blockchain, a uczciwi i wydajni górnicy będą mieli możliwość uzyskania dużych nagród za bloki.
Dodatkowo ta równowaga ryzyka i korzyści chroni również przed potencjalnymi atakami, które mogłyby zagrozić konsensusowi poprzez umieszczenie większościowej szybkości mieszania sieci blockchain w rękach pojedynczej grupy lub podmiotu. Takie ataki, zwane atakami 51%, mogą być niezwykle szkodliwe, jeśli zostaną przeprowadzone pomyślnie. Jednak ze względu na konkurencyjność wydobywania Proof of Work i skalę 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 wymaganej do uzyskania 51% kontroli nad tak dużą siecią blockchain byłby astronomiczny, co od razu zniechęca do podejmowania takiej inwestycji za stosunkowo niewielką potencjalną nagrodę. Ten aspekt podkreśla cechę łańcuchów bloków znaną jako „problem bizantyjskich generałów” lub bizantyjską tolerancję na błędy (BFT), która zasadniczo polega na zdolności systemu rozproszonego do kontynuowania normalnego funkcjonowania, nawet jeśli niektóre jego 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ń. Należy jednak zaznaczyć, że mniejsze sieci blockchain są z pewnością bardziej podatne na ataki większości, gdyż całkowity hashrate przeznaczony dla tych systemów jest znacznie niższy niż w przypadku Bitcoina.
Podsumowując
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, istotne jest, aby te dwa obszary specjalizacji były odpowiednio zintegrowane. Delikatna równowaga między decentralizacją a bezpieczeństwem jest rzeczywiście niezbędna do ustanowienia niezawodnej i wydajnej sieci kryptowalut.
W miarę ewolucji zastosowań technologii blockchain ich systemy bezpieczeństwa również dostosują się, aby sprostać potrzebom różnych zastosowań. Na przykład prywatne łańcuchy bloków opracowywane dla przedsiębiorstw w znacznie większym stopniu opierają się na bezpieczeństwie poprzez kontrolę dostępu niż na mechanizmach teorii gier (lub kryptoekonomii) niezbędnych dla bezpieczeństwa większości publicznych łańcuchów bloków.

