Czym jest Blockchain, czyli łancuch blokowy? Amerykański komik Stephen Colbert mówi, że „to złoto dla kujonów”. Cóż, kujony teraz dorosły i mają możliwości, a technologia Blockchain staje się jednym z najważniejszych trendów w finansach i innowacjach cyfrowych od czasu powstania Internetu.
Blockchainy to nic innego jak bazy danych. Zapisy blockchain nie są przechowywane na centralnym serwerze, do którego mają dostęp wszyscy użytkownicy, ale na komputerach użytkowników na całym świecie. To sprawia, że blockchain jest rozproszoną bazą danych o architekturze typu peer-to-peer. „Rozproszona” oznacza, że dane są przechowywane w wielu lokalizacjach, a „peer-to-peer” oznacza, że nie ma centralnego organu, który przechowuje główną kopię danych.
Blockchain Bitcoin Satoshiego Nakamoto nie jest ani pierwszą rozproszoną bazą danych, ani pierwszą bazą danych typu peer-to-peer – zwyczajnie nie jest pierwszym blockchainem. Jednak służy jako podstawa dla pierwszej nowoczesnej kryptowaluty i jest punktem odniesienia dla kolejnych blockchainów.
Jak działa blockchain?
Powiedzmy, że chcemy przechować dane o rozdaniu pokerowym w bazie danych. Zaczniemy od przypisania każdej z kart w talii numerami: 1 jako As Pik, 2 jako dwa Piki, 3 jako trzy Piki, aż do liczby 52, czyli Króla Kier. Rozdanie kart może wyglądać w następujący sposób:
Rekord | Wartość karty |
---|---|
1 | 12 |
2 | 44 |
3 | 4 |
4 | 31 |
5 | 27 |
Pomyśl o zapisanych numera jako numerach wierszy w arkuszu kalkulacyjnym. Programiści baz danych nazywają je rekordami, a programiści blockchaina nazywają je blokami. Wiersz, rekord, blok – wszystkie te nazwy odnoszą się do pojedynczego fragmentu danych.
Rozdanie kart Twojego przeciwnika zajmowałoby wiersz 6-10, kolejne rozdanie może znajdować się w wierszu 11-15, i tak dalej. Jeśli, natomiast chcesz sprecyzować, o jakie rozdanie chodzi, musisz tylko poinformować bazę danych, w którym wierszu znajduje się pierwsza karta.
Ogniwa w łańcuchu
Oczywiście, w rozproszonej bazie danych typu peer-to-peer inni użytkownicy mogą rozdawać karty w tym samym czasie co Ty. Jest mało prawdopodobne, że Twoje karty pojawią się a tych samych następujących po sobie wierszach. Możemy, zatem dodać wskaźniki do poprzedniej i następnej karty, aby połączyć dane w łańcuchu:
Rekord | Wartość karty | Poprzednia karta | Następna karta |
---|---|---|---|
15 | 12 | 0 | 37 |
37 | 44 | 15 | 118 |
118 | 4 | 37 | 121 |
121 | 31 | 118 | 199 |
199 | 27 | 121 | 999 |
Pierwsza karta w Twoim rozdaniu jest przechowywana w wierszu 15. Wartość karty to 12, co czyni ją Damą Pik. W Twoim rozdaniu nie ma poprzedniego wiersza, dlatego stawiamy 0 w kolumnie „poprzednia karta.” Następna karta znajduje się w wierszu 37.
Rzućmy okiem na wiersz 37. On również określa pojedynczą kartę, przedstawiając wiersz, w którym znajduje się poprzednia karta (15) i wskazuje na następną kartę, która jest przechowywana w wierszu 118.
W informatyce ta struktura jest znana jako podwójnie połączona lista, ponieważ łączy zarówno to, co znajduje się z przodu, jak i z tyłu. Wskaźniki są przechowywane w bazie danych jako dane wraz z wartościami kart.
Zabezpieczanie danych
Nie ma nic co może powstrzymać nas – lub hakerów – przed zmianą wartości kart. Ta baza danych sprawia, że oszukiwanie jest łatwe. Każdy, kto ma dostęp do bazy danych może zmienić wartości pierwszych czterech kart naszego rozdania na 1, 14, 27, 40 – to cztery Asy.
Możemy zabezpieczyć się przed błędami danych i hakerami, dodając kolumnę. Dla każdego wiersza dodamy kolumnę, która zawiera sumę wartości kart, na przykład:
Rekord | Wartość karty | Poprzednia karta | Następna karta | Suma kontrolna |
---|---|---|---|---|
15 | 12 | 0 | 37 | 12 |
37 | 44 | 15 | 118 | 56 |
118 | 4 | 37 | 121 | 48 |
121 | 31 | 118 | 199 | 35 |
199 | 27 | 121 | 999 | 58 |
Widzisz, jak to działa? Dla naszej drugiej karty wartość sumy kontrolnej wynosi 56, co jest sumą wartości dwóch pierwszych kart, 12 i 44. Suma kontrolna dla trzeciej karty jest sumą dwóch kolejnych kart. Za każdym razem, gdy odczytujemy wartość karty, możemy obliczyć sumę kontrolną i porównać ją z sumą kontrolną zapisaną w bazie danych. Jeśli nie są one takie same, wiemy, że dane zostały naruszone.
Układ pamięci w Twoim komputerze i smartfonie wykrywa błędy za pomocą tego systemu. Jest on również używany do wyszukiwania błędów na dysku twardym.
Ten prosty system sum kontrolnych jest istotną częścią technologii blockchain. Jest on również dobrze znany studentom pierwszego roku informatyki.
Ale jest bardzo podatny na ataki hakerów. Każdy, kto ma wystarczające prawa dostępu, aby zmienić wartości kart, może również zmienić sumy kontrolne w celu ukrycia swojego działania. Ponadto, haker może zmienić wskaźniki „poprzedniej karty” i „następnej karty,”, aby zastąpić kartę z Twojego rozdania z kartą przechowywaną w innym wierszu.
Nakamoto przewidział te luki w swojej architekturze blockchain. Zamiast wykorzystać prostą czynność dodawania, aby tworzyć sumy kontrolne i śledzenia ogniw w łańcuchu danych, użył procesu kryptograficznego nazywanego „funkcją skrótu.”
Funkcja skrótu i funkcja szyfrowania
Funkcja skrótu tworzy unikalny identyfikator, łącząc wartość poprzedniego rekordu z wartością bieżącego rekordu w jednokierunkowym procesie matematycznym, który daje w rezultacie wynik wartości skrótu, taki jak 06C4D99F32047. Jest nazywany „jednokierunkowym”, ponieważ nie istnieje żaden proces matematycznym, który może zmienić 06C4D99F32047 z powrotem w pierwotne dane.
W blockchainie wartość skrótu dla każdego bloku jest oparta na wartości skrótu poprzedniego bloku, który opiera się na wartości skrótu przed nim, aż do bloku Nakamoto – 0. Można obliczyć wartość skrótu dla dowolnego bloku i porównać go z wartością skrótu, która jest przechowywana w bloku. Jeśli wartości nie zgadzają się, to znak, że dane zostały naruszone.
W konwencjonalnej bazie danych można manipulować danymi, a następnie obliczyć nowe wartości skrótu i wstawić je do kolejnych bloków lub rekordów, aby ukryć efekty. Jednak warto jest wiedzieć, że ta funkcja nie działa w przypadku rozproszonej bazy danych blockchain typu peer-to-peer, ponieważ haker musiałby jednocześnie zmieniać kopie bazy danych, które są przechowywane na setkach lub tysiącach komputerów.
Jedną z ciekawostek jest to, że chociaż możliwe jest dodawanie nowych bloków danych do blockchaina, poprzednie bloki nie mogą zostać usunięte lub zmienione. To oznacza, że nie możesz wysłać sobie 100,000 dolarów w Bitcoinach, a następnie skasować transakcję.
Każda transakcja na blockchainie jest zatwierdzana przy użyciu mechanizmu skrótu.
Ponadto, Nakamoto wprowadził szyfrowanie, aby upewnić się, że dane przechowywane w blockchainie są widoczne dla każdego użytkownika, ale możliwe do rozszyfrowania tylko dla tych, którzy posiadają odpowiedni klucz umożliwiający deszyfrowanie. Bez takiego klucza wszystko, co możesz zobaczyć to strumień znaków, które wydają się nie mieć sensu.
Moc technologii blockchain
Technologia blockchain sprawia, że dane są prywatne, trwałe i wiarygodne. Rekord danych i transakcji jest publiczny, ale szyfrowanie chroni je przed wścibskimi spojrzeniami niewłaściwych osób oraz próbą ich zmiany. To, dlatego blockchain Bitcoin jest często określany jako „otwarta księga” Bitcoina.
Cała funkcja skrótu oraz funkcja szyfrowania zajmują dużo zasobów obliczeniowych. To wszystko sprawia, że system jest powolny. Na całym świecie, sieć blockchain Bitcoin jest ograniczona do przetwarzania 4,6 transakcji na sekundę. Firmy obsługujące karty kredytowe średnio przetwarzają 1,700 transakcji na sekundę, a twierdzą, że mogą przetworzyć ich nawet 56,000. Natomiast, limit 4,6 transakcji na sekundę jest głównym źródłem problemu ze skalowalnością Bitcoina. Informatycy ciągle nad tym pracują.
Mówi się, że sieć komputerów zatwierdzających transakcje Bitcoina zużywa więcej energii elektrycznej niż cała Szwajcaria.
Wiele węzłów zajmujących się walidacją transakcji Bitcoina przechowuje cały blockchain, który obecnie obejmuje około 250 GB danych – są to tak zwane węzły pełne. W sieci znajdują się również węzły SPV, które przeprowadzają uproszczoną weryfikację płatności. Nie ma łatwego sposobu na policzenie węzłów. Mimo, że strona internetowa o nazwie Bitnodes zapewnia zaktualizowaną liczbę węzłów aktualnie dostępnych online, to szybkie wyszukiwanie w Google pokazuje, że eksperci podają szacunkową liczbę węzłów w zakresie od 6,000 do 200,000. Nikt do końca nie wie ile jest ich naprawdę.
Wszystko o Ethereum
Najbardziej powszechnie używanym blockchainem jest Ethereum, zawierający modyfikacje, które czynią go bardziej elastycznym niż blockchain Bitcoin. Ponadto, Ethereum ma swoją własną kryptowalutę – Ether – ale deweloperzy stworzyli mnóstwo innych kryptowalut, które działają w blockchainie Ethereum. Poza obsługą wirtualnych pieniędzy platforma jest również wykorzystywana do różnego rodzaju aplikacji.
Jedną z głównych zalet Ethereum jest to, że oprócz danych można w nim przechowywać pliki wykonywalne. Te pliki są znane jako „kontrakty smart”. Na przykład, kontrakt smart na dziesięcinę może zsumować wszystkie Ether dodane do Twojego konta w tym miesiącu i wysłać 10% do kościoła jako darowiznę.
Podobnie jak blockchain Bitcoin, Ethereum jest zabezpieczony. Wybitny producent zegarków Breitling daje swoim klientom cyfrowe certyfikaty potwierdzające autentyczność. Natomiast, jeśli sprzedasz zegarek, to możesz przenieść certyfikat na innego właściciela, tworząc w ten sposób możliwy do zweryfikowania łańcuch własności. Ta technologia może być również wykorzystywana do ustalenia pochodzenia żywności w sklepie spożywczym, śledząc każdą dostawę. Coraz więcej osób dba o etyczne pozyskiwanie zasobów, a blockchain może być tego częścią.
W 2020 roku, Associated Press opublikowała wyniki amerykańskich wyborów prezydenckich minuta po minucie na blockchainie Ethereum, aby stworzyć niezmienny zapis zweryfikowanej oficjalnej liczby głosów.
Blockchain Ethereum obsługuje około 30 transakcji na sekundę. Deweloperzy ciężko pracują nad przyszłymi wersjami Ethereum, które będą wykorzystywać technikę zwaną shardingiem, aby uruchamiać wiele blockchainów jednocześnie, wraz ze skonsolidowanymi transakcjami przesyłanymi asynchronicznie do centralnego blockchainu. Deweloperzy szczerze wierzą w to, że nowe wersje blockchaina Ethereum będą w stanie wykonać nawet do 100,000 transakcji na sekundę.
Z racji tego, że Ethereum obsługuje smart kontrakty, służy jako platforma dla wieli aplikacji związanych z blockchainem. Większość zdecentralizowanych aplikacji opartych na blockchainie – zwłaszcza zdecentralizowane aplikacje finansowe – bazują na głównym łańcuchu Ethereum lub prywatnych blockchainach Ethereum.
Ethereum jest również najlepszym wyborem dla korporacji, które chcą wdrożyć gospodarkę opartą na tokenach. Na przykład, firma może wprowadzić program lojalnościowy, w którym klienci otrzymają Acme Coin przy każdym zakupie. Wtedy mógłby istnieć sklep z pamiątkami, w którym można by było wymieniać Acme Coin na upominki. Ponadto, firma mogłaby powołać do życia sieć firm, które również akceptują Acme Coin, nadając tokenom faktyczną wartość, mimo że nie mogą być one wymieniane na dolary lub euro.
Natomiast specyfikacja Ethereum ERC-721 definiuje protokół tworzenia niewymienialnych tokenów. Jest to podstawa rynku NFT.
Inne blockchainy
Bez wątpienia, Bitcoin i Ethereum to dwa najczęściej używane blockchainy, ale obecnie istnieją setki lub tysiące innych, a wszystkie z nich są oparte na oryginalnej koncepcji Nakamoto. Blockchainy mogą być publiczne (tak jak blockchain Bitcoin) lub prywatne, używane wewnętrznego zarządzania danymi.
Naukowcy stworzyli mnóstwo wariacji na temat podstawowej architektury blockchaina. Wiele z nich obejmuje innowacje mające na celu wspieranie szybszego przetwarzania, większej skalowalności, lub mniejszych opłat transakcyjnych. Mechanizmy konsensusu, koordynacja podrzędnych podłańcuchów, oraz inne kluczowe technologie są przedmiotem projektów w całym świecie kryptowalut.
Co to jest blockchain? Teraz już wiesz
Jaka jest definicja blockchaina? Jak działa technologia blockchain? Mamy nadzieję, że nasze wyjaśnienie dotyczące blockchaina sprawiło, że wzrosło Twoje rozumienie i uznanie dla tej niezwykłej, rewolucyjnej architektury baz danych typu peer-to-peer i jej zastosowań.
UWAGA
Tekst ma charakter informacyjny i nie stanowi rekomendacji inwestycyjnej. Nie wyraża on osobistej opinii autora ani serwisu. Każda inwestycja lub handel jest ryzykowny, przeszłe zyski nie są gwarancją przyszłych zysków – ryzykuj tylko te aktywa, które jesteś gotów stracić.