Blockchain wyjaśniony: Jak działa Blockchain?

Dowiedz się, jak działają Blockchainy i dlaczego kryptowaluty opierają się na tych bazach danych.
blockchain svg

Co to jest Blockchain?

Blockchain to rozproszona baza danych, która przechowuje dane w wysoce bezpieczny i przejrzysty sposób, uniemożliwiając ich zmianę w przyszłości.

Blockchain został stworzony w celu całkowitego usunięcia zaufania do pojedynczych osób, firm lub rządów podczas przechowywania i przesyłania wszelkiego rodzaju danych.

Dzięki blockchainowi nawet obcy ludzie mogą anonimowo dokonywać transakcji pieniężnych lub innych aktywów z dużą pewnością, że wszystko przebiega zgodnie z wcześniej określonymi zasadami.

Jest to możliwe, ponieważ w przeciwieństwie do zwykłych baz danych, które są kontrolowane przez pojedyncze osoby, blockchainy są przechowywane, aktualizowane i strzeżone przez wiele różnych komputerów ochotników rozsianych po całym świecie.

Kto stworzył Blockchain?

Anonimowy wynalazca kryptowaluty Bitcoin o imieniu Satoshi Nakamoto jako pierwszy publicznie przedstawił moc blockchaina w 2009 roku, tworząc Bitcoina, kryptowalutę, która jest w pełni niezależna od pojedynczych firm lub rządów i niezwykle bezpieczna.

Chociaż technologia blockchain została spopularyzowana przez Bitcoina, koncepcja takiego zdecentralizowanego rejestru została po raz pierwszy wprowadzona przez naukowców Stuarta Habera i W. Scotta Stornetta w ich pracy z 1991 roku zatytułowanej "How to Time-Stamp a Digital Document".

Dziś blockchainy są podstawą wszystkich kryptowalut, które wykorzystują ten rodzaj bazy danych do bezpiecznego i przejrzystego przetwarzania i przechowywania transakcji użytkowników bez konieczności ufania sobie nawzajem lub martwienia się, że transakcja może zostać zmieniona lub cofnięta w przyszłości.

Zalety Blockchain

Blockchainy mają ponoć potencjał, by zrewolucjonizować sposób komunikacji i dzielenia się danymi przez ludzi wszędzie tam, gdzie występuje scentralizowana strona zaufania.

Poprzez usunięcie pośredników i przechowywanie danych w publiczny, weryfikowalny sposób, blockchainy są przejrzyste, bezpieczne przed włamaniami i niezwykle tanie w użyciu w porównaniu do wielu tradycyjnych scentralizowanych systemów.

Decentralizacja

W znanych dziś systemach scentralizowanych, uprzywilejowane jednostki lub grupy decydują o najważniejszych decyzjach mających duży wpływ na innych. Na przykład, właściciele platform społecznościowych mogą arbitralnie cenzurować użytkowników, a banki centralne samodzielnie decydują o wszystkich tradycyjnych walutach na ziemi.

Z drugiej strony blockchainy działają w zdecentralizowanych sieciach peer-to-peer z setkami lub tysiącami różnych uczestników, którzy wszyscy mają równe uprawnienia, co pozwala sieci rządzić się bez ingerencji rządów, firm lub pojedynczych programistów.

Zdecentralizowany a scentralizowany
Zdecentralizowany a Scentralizowany

Użytkownicy blockchainów bezpośrednio dokonują ze sobą transakcji, a opinie wszystkich uczestników dotyczące zasad panujących w sieci są równie ważne.

Dzięki temu blockchainy tworzą sprawiedliwe, bezpieczne i praktycznie nie do zatrzymania sieci, które są dostępne dla każdego, kto ma połączenie z internetem i w większości przypadków rządzone są tylko przez zwykłych ludzi: "Od ludzi, dla ludzi".

Wysokie bezpieczeństwo

Ponieważ blockchain nie jest przechowywany w jednym miejscu, ale rozproszony na wielu tzw. węzłach w różnych lokalizacjach na całym świecie, popularne blockchainy są wysoce bezpieczne przed atakami, które mogłyby sprawić, że użytkownicy stracą swoje aktywa.

Blockchain z wieloma uczestnikami jest prawie niemożliwy do zhakowania, podczas gdy tradycyjne scentralizowane aplikacje mają zwykle jeden pojedynczy serwer lub bazę danych, która może zostać naruszona.

Ponadto, dzięki zastosowaniu kryptografii asymetrycznej, blockchainy określają ścisłe zasady wysyłania i odbierania transakcji, które uniemożliwiają złośliwym użytkownikom wysyłanie większej ilości pieniędzy niż posiadają, lub dostęp do cudzych aktywów. Stąd możesz być pewien, że tylko ty jesteś prawdziwym właścicielem swoich aktywów na blockchainie i że nikt nie może ci ich odebrać.

To sprawia, że wiele blockchainów takich jak Bitcoin jest niezwykle bezpiecznych - być może nawet bardziej bezpiecznych niż scentralizowane serwery i bazy danych firm takich jak banki.

Przejrzystość

Ponieważ blockchainy publicznie przechowują każdą pojedynczą transakcję, każdy może sprawdzić, czy każda transakcja w całej historii blockchaina jest zgodna z zasadami sieci.

Z drugiej strony scentralizowane jednostki, takie jak firmy lub banki centralne, mogą zachować lub fałszywie zgłosić wewnętrzne informacje, które pozostawiają społeczeństwo nieświadome swoich wewnętrznych procesów.

Na blockchainach uczestnicy decydują i aktywnie egzekwują zasady i zawsze wiedzą dokładnie, co dzieje się w sieci, bez konieczności ufania pewnym jednostkom lub grupom osób, że sprawdzą i zgłoszą się do nich.

Niski koszt transakcji

Ponieważ blockchainy w pełni rozwiązuje problem zaufania w komunikacji cyfrowej poprzez usunięcie stron trzecich, użytkownicy mogą bezpośrednio wysyłać i otrzymywać dowolne aktywa, takie jak pieniądze, bez potrzeby kosztownych powierników, takich jak PayPal, Visa, Western Union i co.

Dzięki temu blockchainy są niezwykle opłacalne, pozwalając użytkownikom na wysyłanie aktywów takich jak pieniądze na całym świecie w niemal natychmiastowym czasie za ledwie żadne opłaty.

Z kolei w scentralizowanych systemach bankowych wysłanie pieniędzy na całym świecie nie tylko wymaga bardzo wysokich opłat za usługi, ale także zajmuje co najmniej kilka dni roboczych.

Jak działa blockchain?

Blockchainy działają na zdecentralizowanych sieciach peer-to-peer, co oznacza, że użytkownicy bezpośrednio dokonują ze sobą transakcji na ściśle określonych zasadach, nie polegając na żadnych stronach trzecich.

Klucz publiczny i prywatny

Podczas korzystania z blockchaina użytkownicy nie rejestrują żadnego konta ani nie udostępniają nikomu żadnych prywatnych informacji.

Zamiast tego wszyscy użytkownicy blockchaina generują parę kluczy kryptograficznych, która składa się z klucza publicznego i prywatnego, co reprezentuje ich tożsamość.

📫 Klucz publiczny w blockchainie działa jak adres odbiorczy, podobny do adresu e-mail. W przykładzie Bitcoina, możesz podzielić się swoim kluczem publicznym z innymi, aby otrzymać od nich bitcoiny.

🔐 Klucz prywatny w blockchainie jest jak hasło do odpowiadającego mu klucza publicznego, podobnie jak hasło do poczty elektronicznej daje ci dostęp do wszystkich wiadomości wysłanych na odpowiadający mu adres e-mail. Możesz użyć tego klucza prywatnego do stworzenia tzw. cyfrowych sygnatur, udowadniając sieci blockchain, że rzeczywiście jesteś właścicielem aktywów wysłanych do klucza publicznego, co pozwala na dostęp do tych aktywów.

Dzięki zastosowaniu tej tak zwanej kryptografii asymetrycznej zamiast zarządzanych kont, blockchainy polegają wyłącznie na matematyce do wysyłania i odbierania aktywów, co usuwa konieczność scentralizowanych dostawców płatności.

Na przykład: Jeśli Alice chce wysłać Bobowi aktywa na blockchainie, Alice odblokowuje swoje aktywa za pomocą swojego klucza prywatnego i blokuje je za pomocą klucza publicznego, który Bob z nią udostępnił. Wewnętrzna kryptografia gwarantuje, że tylko Bob będzie miał dostęp do tych środków za pomocą swojego klucza prywatnego.

Taki transfer aktywów na blockchainie nazywany jest transakcją, a wszystkie transakcje są na zawsze przechowywane na blockchainie.

Jak blockchain przechowuje transakcje?

Blockchainy przechowują wszystkie kiedykolwiek przeprowadzone transakcje użytkowników w postaci bloków, które są dodawane do blockchaina jeden po drugim w regularnych odstępach czasu.

Szczególną cechą blockchainów jest to, że każdy blok przechowuje nie tylko swoje własne transakcje, ale także unikalny identyfikator - hash bloku - swojego poprzedniego bloku.

Hash bloku to cyfrowy odcisk palca, który jednoznacznie identyfikuje każdy pojedynczy blok w blockchainie. Jeśli blok lub którakolwiek z jego wewnętrznych transakcji zmieniłaby się nawet tylko nieznacznie, jego wynikowy hash bloku zmieniłby się całkowicie.

Blockchain - łańcuch bloków połączonych hasłami
Blockchain - Łańcuch Bloków połączonych Hasłami

Ponieważ każdy blok w blockchainie przechowuje wartość hasha swojego poprzedniego bloku, jego własny hash bloku jest częściowo generowany z hasha poprzedniego bloku, co - mówiąc obrazowo - tworzy łańcuch bloków. Stąd też angielska nazwa "Blockchain".

Dlaczego Blockchain jest bezpieczny?

Ponieważ każdy blok przechowuje unikalny identyfikator - hash - swojego poprzedniego bloku, bloki w blockchainie są tak ściśle ze sobą powiązane, że zmiana pojedynczej transakcji wewnątrz dowolnego bloku nie tylko zmieniłaby jego własny hash bloku, ale także wywołała reakcję łańcuchową zmienionych hashy bloków całego dalszego blockchaina.

Ponieważ taka zmiana w hasłach bloków mogłaby zostać łatwo wykryta, wszyscy uczestnicy aktywnie strzegący blockchaina natychmiast odrzuciliby taką manipulację i nigdy nie odzwierciedliliby jej w swojej lokalnej kopii blockchaina, co czyni blockchain wysoce bezpiecznym.

zmiana jednego bloku powoduje reakcję łańcuchową nieważnych skrótów bloków
Zmiana Bloku powoduje Reakcję Łańcuchową nieważnych Hashów

W praktyce oznacza to, że transakcje w blockchainach są "wykute w kamieniu" i nieodwracalne, ponieważ jakakolwiek manipulacja natychmiast skutkowałaby nieważnymi hasłami bloków, które zostałyby wykryte i odrzucone przez wszystkie węzły blockchaina.

Distributed Ledger: Rozproszona księga

Poprzez bezpieczne przechowywanie wszystkich transakcji, blockchain działa jako rozproszona księga (ang. Distributed Ledger), która jest używana jako pojedyncze źródło prawdy przy określaniu, którzy użytkownicy są właścicielami jakich aktywów w jakim czasie.

Kiedykolwiek użytkownicy wykonują transakcje na blockchainie, stare transakcje nigdy nie są usuwane. Zamiast tego nowa transakcja zostaje dodana do blockchaina wewnątrz nowego bloku.

Na przykład: jeśli Alice posiada 1 bitcoin, i wysyła swój 1 bitcoin do Boba, który w zamian wysyła go z powrotem do Alice, będą dwie transakcje dodane do blockchain, mimo że wynik końcowy byłby taki sam, gdyby te dwie transakcje nigdy nie miały miejsca.

Rola blockchaina jako rozproszonej księgi zapewnia, że żadna transakcja nigdy nie zostanie stracona lub przepisana, co sprawia, że blockchainy doskonale nadają się do śledzenia przeniesienia własności.

Dlatego zawsze, gdy użytkownik próbuje wysłać aktywa na blockchainie, wszyscy uczestnicy mogą szybko udowodnić, czy użytkownik naprawdę jest właścicielem tych aktywów, czy nie, skanując blockchain od pierwszej transakcji do najnowszej.

Węzły Blockchain

Węzły blockchaina to komputery, które przechowują i aktywnie aktualizują całą historię blockchaina, co sprawia, że blockchain jest wysoce replikowaną i zdecentralizowaną bazą danych.

W większości przypadków użycia blockchain, takich jak kryptowaluty, istnieją tysiące globalnie rozproszonych węzłów blockchain prowadzonych przez wolontariuszy.

Dystrybucja węzłów sieci Blockchain Bitcoin
Dystrybucja węzłów sieci Blockchain Bitcoin - Źródło: bitnodes.io

Oprócz przechowywania całego blockchaina, węzły decydują również o tym, które nowe transakcje są ważne i ostatecznie zostaną dodane do blockchaina, a które nie, co czyni je strażnikami blockchaina.

Węzły odgrywają kluczową rolę w bezpieczeństwie blockchaina, ponieważ określają zasady funkcjonowania blockchaina i aktywnie monitorują aktywność na blockchainie, aby zapewnić, że wszystko przebiega zgodnie z tymi zasadami.

Na przykład: Jeśli użytkownik próbuje wysłać więcej pieniędzy niż posiada lub kradnie aktywa innego użytkownika, węzły blockchain wykrywają to oszustwo i odrzucają transakcję, ponieważ złamałaby ona zasady blockchain, które wszystkie węzły wcześniej uzgodniły. Taka złośliwa transakcja nigdy nie zostałaby dodana do blockchaina.

Mechanizm konsensusu blockchaina

Mechanizm konsensusu blockchaina definiuje ścisłe warunki, które musi spełnić każdy blok transakcji, aby został dodany do blockchaina.

Istnieją dwa popularne mechanizmy konsensusu, które są najczęściej spotykane w blockchainach:

Proof of Work: Mechanizm konsensusu w blockchainie Bitcoin wymaga od tzw. minerów Bitcoinów poświęcenia ogromnej ilości energii aby dodać swoje nowe bloki do blockchaina Bitcoin.

💰 Proof of Stake: Mechanizm konsensusu w blockchainie Ethereum wymaga od twórców bloków zamknięcia wysokiej kwoty pieniędzy, aby dodać nowe bloki do blockchaina Ethereum.

Ponieważ mechanizmy konsensusu wymagają kosztów tworzenia nowych bloków dla blockchaina, zapewniają one, że zdecydowana większość twórców bloków będzie przestrzegać zasad blockchaina, ponieważ łamanie zasad poprzez tworzenie złośliwych bloków spowodowałoby odrzucenie bloku i zmarnowanie kosztów związanych z mechanizmem konsensusu.

Gdyby nie było mechanizmów konsensusu, każdy użytkownik mógłby bez żadnych kosztów dodać tak wiele losowych bloków tak szybko do blockchaina, że blockchain mógłby być łatwo manipulowany i węzły nie byłyby już w stanie nadążyć z aktualizacją swoich lokalnych kopii, powodując całkowite załamanie się blockchaina.

Ponieważ mechanizmy konsensusu wymagają od użytkowników blockchainów zaangażowania kosztów - w przypadku Bitcoina: energii elektrycznej - aby dodać bloki do blockchaina, blockchain może rosnąć stabilnie i być bezpieczny przed spamem i tzw. atakami 51%.

Jeśli atakujący próbowałby zmienić blockchain i np. cofnąć bloki, musiałby ponownie stworzyć część blockchaina z nowymi ważnymi blokami, a ponieważ wszystkie bloki muszą spełniać kosztowne wymagania mechanizmu konsensusu blockchaina, atakujący musiałby zaangażować bardzo dużą kwotę pieniędzy, aby skutecznie zaatakować duży blockchain.

Dlatego mechanizmy konsensusu sprawiają, że blockchainy są bezpieczne poprzez uczynienie go niezwykle kosztownym dla jednej złośliwej osoby lub małej grupy osób, aby spamować blockchain nowymi blokami lub zmieniać/odwracać przeszłe bloki.

Przykłady użycia blockchaina

Ponieważ blockchainy doskonale nadają się do bezpiecznego i przejrzystego śledzenia własności i transferu aktywów, blockchainy są często wykorzystywane jako księgi publiczne do transferu kryptowalut (patrz Bitcoin, Ethereum), w tym tokenów, które reprezentują własność aktywów świata rzeczywistego, takich jak metale, akcje, a nawet nieruchomości (patrz NFT lub tokeny takie jak PAX Gold).

Mimo to, blockchainy nie ograniczają się do kryptowalut - mają nieskończoną liczbę przypadków użycia, takich jak bezpieczne przechowywanie cyfrowych tożsamości (patrz dock.io) lub dokumentowanie łańcuchów dostaw (patrz Vechain) bez możliwości przyszłej manipulacji.

Ponadto, ponieważ blockchainy są niezmienne, co oznacza, że ich dane nie mogą być nigdy zmienione, blockchainy są również bardzo praktycznymi bazami danych do przechowywania ważnych danych rozproszonych po całym świecie (patrz Filecoin).