Czym jest Technologia Blockchain?
Strona Główna
Artykuły
Czym jest Technologia Blockchain?

Czym jest Technologia Blockchain?

Średnio zaawansowany
Opublikowane Dec 30, 2019Zaktualizowane May 15, 2023
33m

Rozdziały

  1. Podstawy Blockchain
  2. Jak działa blockchain?
  3. Do czego wykorzystuje się blockchain?


Rozdział 1 - Podstawy Blockchain

Zawartość


Czym jest blockchain?

Blockchain to specjalny typ bazy danych. Nazywany jest też często technologią rozdystrybuowanych rejestrów; w wielu przypadkach, obie te nazwy odnoszą się do tego samego.

Blockchain posiada parę konkretnych cech. Istnieją pewne zasady odnośnie dodawania danych. Kiedy już jakaś informacja zostanie do niego wpisana, jest praktycznie niemożliwe, aby ją zmodyfikować, lub usunąć.

Dane są dodawane okresowo w strukturach zwanych blokami. Każdy blok jest zbudowany na podstawie poprzedniego i zawiera kawałek informacji, który łączy go z poprzednim blokiem. Kiedy spojrzymy na najświeższy blok, możemy zobaczyć, iż został on stworzony po poprzednim. Więc jeżeli kontynuowalibyśmy naszą drogę po tym "łańcuchu" doszlibyśmy do pierwszego bloku zwanego genesis block.

Załóżmy, że masz arkusz zawierający dwie kolumny. W pierwszej komórce pierwszego wiersza wpisujesz informację, którą chcesz przetrzymywać.

Informacja z pierwszej komórki jest konwertowana na dwuliterowy identyfikator, który zostanie użyty jako część następnej informacji wejściowej. W tym przykładzie dwuliterowy identyfikator KP musi zostać użyty przy wypełnianiu następnej komórki w następnym wierszu (defKP). Oznacza to, że jeżeli zmieniłbyś pierwszą wprowadzoną przez siebie informację (abcAA), otrzymałbyś zupełnie inną kombinację liter w każdej komórce.


Baza danych, w której każdy wpis jest połączony z poprzednim.


Patrząc na wiersz czwarty, naszym najnowszym identyfikatorem jest TH. Pamiętasz, jak mówiliśmy, że nie da się cofnąć lub usunąć wpisów. Dzieje się tak, gdyż każdy zauważyłby taką zmianę i mógłby zwyczajnie ją zignorować.
Załóżmy, że zmieniłeś dane w pierwszej komórce – otrzymałbyś inny identyfikator, co oznaczałoby, że twój drugi blok zawierałby inne informacje, co doprowadziłoby do dwóch różnych bloków i tak dalej. To TH jest produktem wszystkich informacji zawartych w poprzednich blokach.


Jak łączą się bloki?

To, o czym rozmawialiśmy powyżej (dwuliterowe identyfikatory), jest bardzo uproszczoną analogią tego, jak blockchain używa funkcji hash. Hashing jest jak klej, który trzyma bloki razem. Pobiera on dane dowolnych rozmiarów i przepuszcza je przez matematyczne funkcje, które dają nam nasz efekt końcowy (hash), będący zawsze tej samej długości.

Hash stosowany w blockchainach jest bardzo interesujący, gdyż twoje szanse na znalezienie dwóch fragmentów danych, które dadzą ten sam hash, są niewyobrażalnie niskie. Tak, jak w przypadku naszych identyfikatorów, nawet mała zmiana w zestawie danych da nam zupełnie inny wynik.

Zilustrujmy to przy użyciu funkcji SHA256, którą stosuje system Bitcoina. Jak możecie zauważyć, nawet mała zmiana w wielkości liter jest wystarczająco duża, aby kompletnie zmienić wynik końcowy.


Wprowadzane daneDane wyjściowe SHA256

Binance Academy

886c5fd21b403a139d24f2ea1554ff5c0df42d5f873a56d04dc480808c155af3

Binance academy

4733a0602ade574551bf6d977d94e091d571dc2fcfd8e39767d38301d2c459a7

binance academy

a780cd8a625deb767e999c6bec34bc86e883acc3cf8b7971138f5b25682ab181


Ludzkości nie jest znana ani jedna możliwa kolizja SHA256 (dwa takie różne wejścia, które dadzą nam ten sam wynik), więc jest to niesamowicie ważne w kontekście blockchain. Oznacza to, że każdy blok może wskazywać na poprzedni poprzez zawarty w nim hash, a każda próba zmiany lub usunięcia innego bloku będzie odrazu widoczna dla wszystkich.


Każdy blok zawiera odcisk "linii papilarnych" poprzedniego.


Blockchain, a decentralizacja

Wyjaśniliśmy sobie podstawową strukturę blockchainu. Jednak jeżeli słyszysz ludzi rozmawiających o technologii blockchain, nie mówią oni tylko o samej bazie danych, ale o całym ekosystemie zbudowanym wokół blockchainu. 

Jako samodzielne struktury danych, blockchainy są tylko przydatne w bardzo małej ilości zastosowań. Sprawa staje się ciekawsza, gdy zastosujemy je jako narzędzie koordynacji, w warunkach, w których obce sobie osoby nie mogą ufać reszcie uczestników. W połączeniu z innymi technologiami oraz teorią gier blockchain może służyć jako rozdystrybuowany rejestr, który nie jest kontrolowany przez nikogo.
Oznacza to, ze nikt nie może go edytować informacji, w sposób, który byłby niezgodny z zasadami systemu (o nich już wkrótce). Ujmując to w prostsze ramy, można powiedzieć, że rejestr jest jednocześnie w posiadaniu wszystkich: dodatkowo uczestnicy umawiają się, jak powinien on wyglądać w każdym momencie.


Problem Bizantyjskich Generałów

Prawdziwym wyzwaniem, które stoi na drodze systemowi takiemu, jak ten opisany powyżej jest Problem Bizantyjskich Generałów. Opracowany w latach 80. mówi on o dylemacie, w którym to wyizolowani uczestnicy muszą komunikować się ze sobą, aby skoordynować swoje działania. Problem ten opisuje się za pomocą historii o grupie generałów bizantyjskich, którzy okrążyli przeciwne miasto i muszą zdecydować, czy przeprowadzić atak, czy może się wycofać. Dodatkowo, problem zakłada, że generałowie mogą komunikować się jedynie za pomocą gońców (wysłanników). 

Każdy z nich musi zadecydować, czy zaatakować, czy się wycofać. Finalnie nie ma oczywiście znaczenia, czy generałowie zaatakują, czy się wycofają - kluczem do sukcesu jest podjęcie jednogłośnej, wspólnej decyzji. Jeżeli zaatakują, ich działania się powiodą, pod warunkiem, że atak zostanie przeprowadzony w tym samym czasie. Jak w takim razie możemy zapewnić, że na pewno informacje rozesłane między generałami przez gońców będą prawdziwe i działania wojenne się powiodą? 

Pewnie, mogą się oni komunikować poprzez wysłanników. Jednak co stanie się, jeżeli któryś wysłannik zostanie przejęty po drodze, a informacja, którą niósł – "atakujemy o świcie" – zostanie zamieniona na zupełnie inną informację np. "atakujemy w nocy"? Co jeśli jeden z generałów wcale nie chce wygrać i pragnie, aby bitwa została przegrana, więc zdecyduje się na wysłanie fałszywych informacji?


Wszyscy generałowie wygrywają, jeśli zaatakują (lewa). Jeżeli jednak ktoś się wycofa, atak się nie powiedzie (prawa).


Potrzebujemy strategii, w której może zostać osiągnięty konsensus, nawet jeżeli nie wszyscy uczestnicy chcą wygrać i gdy treść wiadomości zostanie zmieniona. Brak możliwości utrzymania integralności bazy danych to może nie sytuacja wagi życia i śmierci, tak jak atak na miasto bez wsparcia, jednak idea pozostaje ta sama. Jeżeli nie ma nikogo, kto nadzorowałby blockchain i przekazywałby użytkownikom "poprawną" wiadomość, musi istnieć droga dla uczestników do wzajemnej komunikacji.

By nie doszło do potencjalnej porażki jednego (lub wielu) użytkowników, mechanizm blockchainu musiał zostać bardzo ostrożnie zaprojektowany, aby był odporny na tego typu problemy. System, który radzi sobie z tego typu dylematem, jest nazywany Byzantine fault-tolerant. Jak się niedługo przekonacie, algorytm konsensusu jest używany do wymuszania zasad kooperacji w obrębie sieci.


Dlaczego sieci blockchain muszą być zdecentralizowane?

Oczywiście mógłbyś operować blockchainem samemu. Jednakże na większą skalę otrzymałbyś bazę danych, która jest o wiele wolniejsza i słabsza niż inne alternatywy. Prawdziwy potencjał tej technologii może zostać odkryty dopiero w zdecentralizowanym środowisku, w którym wszyscy użytkownicy są równi. Dzięki temu blockchain nie może zostać usunięty, lub przejęty przez innych. Jest to pojedyncze źródło prawdy, do którego każdy ma dostęp.


Czym jest sieć peer-to-peer?

Sieć peer-to-peer (P2P) to warstwa użytkowników (lub generałów tak jak w poprzednim przykładzie). Nie posiada administratorów, więc zamiast wysyłania informacji do centralnego serwera za każdym razem, gdy chcą się ze sobą skontaktować, użytkownicy wysyłają je bezpośrednio do siebie.  

Spójrz na grafikę poniżej. Po lewej, A potrzebuje przesłać swoją wiadomość poprzez serwer, by dostała się ona do F. Po prawej stronie są oni ze sobą połączeni bezpośrednio.


Sieć scentralizowana (po lewej) vs. sieć zdecentralizowana (po prawej).


Zazwyczaj to serwer przechowuje wszystkie informacje potrzebne użytkownikowi. Kiedy wejdziesz na Binance Academy, wysyłasz zapytanie do serwera, aby ten wysłał ci artykuły. Jeżeli strona przestanie działać, nie będziesz miał możliwości ich otwarcia. Jednakże, jeżeli pobrałbyś całą zawartość Binance Academy, mógłbyś wczytywać artykuły bez potrzeby wysyłania zapytań do serwerów. 

Właśnie to każdy z peerów (uczestników takiej sieci) robi z blockchainem: cała baza danych jest przechowywana na ich komputerach. Jeżeli ktoś opuści sieć, pozostali użytkownicy dalej będą mogli połączyć się z blockchain i dzielić się informacjami między sobą. Kiedy nowy blok zostaje dodany do łańcucha, informacja ta jest propagowana przez całą sieć tak, aby każdy mógł ją skopiować i uaktualnić swój rejestr.

Sprawdź nasz poradnik Sieci Peer-to-Peer, aby dowiedzieć się więcej na temat tych sieci.


Czym są węzły blockchain?

Węzły to nazwa, jaką przypisujemy maszynom połączonym z siecią – to one przetrzymują kopie blockchainu i dzielą się informacjami z innymi maszynami. Użytkownicy nie muszą wykonywać tego procesu manualnie. Generalnie jedyne, co muszą zrobić, to pobrać i włączyć oprogramowanie obsługujące blockchain, a resztę wykonają malutkie robociki mające swój drobniutki domek w twoim komputerze.

Powyżej opisaliśmy, czym jest węzeł w najprostszym znaczeniu tego słowa, lecz ta definicja obejmuje także innych użytkowników, którzy wchodzą w interakcję z siecią (w dowolny sposób). W kryptowalutach na przykład prosty portfel na twoim telefonie jest czymś, co uznajemy za lekki węzeł.  


Publiczne i prywatne sieci blockchain

Jak możesz już wiedzieć Bitcoin położył fundamenty pod branże blockchain, aby ta mogła wyrosnąć na to, czym jest dzisiaj. Od tamtego czasu Bitcoin jest uznawany za realne aktywo finansowe, a innowatorzy myślą nad potencjałem, jaki technologia ta kryje w sobie i możliwościami jej zastosowań w innych dziedzinach. Rezultatem tych rozważań są próby zastosowania blockchainu w wielu sektorach gospodarczych. Nie tylko finansach.
Bitcoin jest nazywany publicznym blockchainem. Oznacza to, że każdy może wyświetlić przeprowadzane na nim transakcje, a żeby to zrobić, wymagane jest jedynie połączenie z internetem i odpowiednie oprogramowanie. Z racji, iż nie ma żadnych innych wymagań, aby uczestniczyć w tym procesie, nazywamy taką sytuację środowiskiem niewymagającym pozwolenia (z ang. permissionless).
Istnieją też inne typy blockchainów nazywane prywatnymi blockchainami. Systemy te ustalają zasady odnośnie tego, kto może widzieć i wchodzić w interakcje z blockchainem. Te środowiska nazywamy wymagającymi pozwolenia (z ang. permissioned). Mimo że prywatne blockchainy mogą wydawać się zbędne na pierwszy rzut oka, mają one swoje zastosowania – np. w sieciach przedsiębiorstw (konsorcjach).
Jeżeli chcesz dowiedzieć się więcej na ten temat, zobacz Blokchainy Publiczne, Prywatne i Federacyjne - Co je różni?



Szukasz sposobu na rozpoczęcie swojej przygody z kryptowalutami? Dzięki Binance kupisz pierwsze bitcoiny w prosty i bezpieczny sposób!



Jak działają transakcje?

Jeżeli Alice chce zapłacić Bobowi za pomocą transferu bankowego, musi o tym powiadomić bank. Załóżmy, że obydwie strony posiadają konta w tym samym banku, aby przykład był prostszy do zrozumienia. Bank sprawdza, czy Alice posiada odpowiednie fundusze na przeprowadzenie transakcji, zanim wpisze daną informację do swojej wewnętrznej bazy danych. (np. -50 $ dla Alice, +50 $ dla Boba).

Jest to w miarę podobne do tego, co dzieje się na blockchain. Koniec końców, to też baza danych. Kluczową różnicą jest to, że nie ma tutaj pojedynczej strony, która sprawdza i uaktualnia saldo Alice. Wszystkie węzły będą musiały to zrobić same. 

Jeżeli Alice chce wysłać pięć bitcoinów do Boba, rozsyła ona taką wiadomość do sieci. Nie zostanie ona jednak natychmiastowo dodana do blockchaina – węzły ją zobaczą, lecz wpierw będą musiały zostać podjęte inne akcje, aby taka transakcja została ukończona. Zobacz W jaki sposób bloki są dodawane do blockchain?
Kiedy już transakcja zostanie dodana do blockchainu, wszystkie węzły widzą, że tak się stało. Zaktualizują one swoją kopię rejestru. Alice nie może już wysłać tych samych pięciu jednostek (bitcoinów) do Carol (double spending), ponieważ sieć już wie, że wydała je ona w poprzedniej transakcji.
Nie używa się tutaj założenia loginu i hasła – kryptografia klucza publicznego stosowana jest w formie dowodu własności funduszy. Aby otrzymać fundusze, Bob musi wygenerować klucz prywatny. Jest to poprostu bardzo długa liczba, która jest niemożliwa do odgadnięcia przez kogokolwiek, nawet gdyby mieli oni setki lat na jej odgadnięcie. Jednak jeżeli Bob przekazałby komuś swój prywatny klucz, osoba ta mogłaby rościć sobie prawa do jego funduszy. Dlatego bardzo ważne jest, aby utrzymywał go w sekrecie.
Co powinien zrobić Bob, to otrzymać publiczny klucz na podstawie prywatnego. Może on rozdawać swój publiczny klucz komu tylko zechce, gdyż niemożliwym byłoby otrzymanie z powrotem jego prywatnego klucza za pomocą mechanizmów inżynierii wstecznej. W większości przypadków będzie on wykonywał inne operacje (takie jak hashing) na swoim publicznym kluczu, by otrzymać publiczny adres.



Poda on więc Alice swój publiczny adres, aby ta wiedziała, gdzie przesłać fundusze. Konstruuje więc ona transakcję, która prześle aktywa na dany adres. Potem, aby udowodnić sieci, że nie próbuje ona wydać funduszy, które nie należą do niej, generuje cyfrowy podpis przy użyciu swojego klucza prywatnego. Każdy może wziąć podpisaną przez Alice wiadomość i porównać ją z jej prywatnym kluczem i z pewnością móc stwierdzić, iż jest ona prawowitą właścicielką funduszy, które chce przesłać Bobowi.


Jak wykonać transakcje Bitcoin

Chcąc pomóc wam wyobrazić sobie, jak wykonywać transakcję w sieci Bitcoin, rozpatrzmy dwa scenariusze. W pierwszym będziemy wypłacali bitcoiny z Binance, w drugim przesyłali pieniądze z Trust Wallet do portfela Electrum.


Jak wypłacać bitcoiny z Binance

1. Zaloguj się do swojego konta Binance. Jeżeli nie masz na nim jeszcze żadnych bitcoinów, sprawdź nasz poradnik Bitcoin o tym, jak je kupić.
2. Najedź na Portfel, a potem na Portfel Spot.



3. Wciśnij Wypłać na pasku po lewej stronie.
4. Wybierz, którą monetę chciałbyś wypłacić – w tym wypadku będzie to BTC.
5. Skopiuj adres, na który chciałbyś wypłacić swoje bitcoiny, i wklej adres odbiorcy



6. Wybierz ilość, jaką chcesz wypłacić.
7. Wciśnij Kontynuuj.
8. Otrzymasz e-mail z potwierdzeniem. Dokładnie sprawdź, czy podany adres jest poprawny. Jeśli tak, potwierdź swoją transakcję w e-mailu.
9. Zaczekaj, aż twoja transakcja przejdzie przez blockchain. Możesz śledzić jej status na Historii Wypłat, lub też na eksplorerze blockchain.


Jak wysłać bitcoiny z Portfela Trust do Electrum

W tym przykładzie prześlemy trochę bitcoinów z Trust Wallet do Electrum.


1. Otwórz aplikację Trust Wallet.
2. Wciśnij na swoje konto Bitcoin.
3. Wciśnij Wyślij.
4. Otwórz swój portfel Electrum.
5. Wciśnij zakładkę Otrzymuj na Electrum i skopiuj adres.



Alternatywnie, możesz aplikacji Trust Wallet wcisnąć na ikonę [–] i zeskanować kod QR przesyłający się na twój adres Electrum.



6. Skopiuj swój adres Bitcoin do Adres Odbiorcy na Trust Wallet.
7. Określ ilość.
8. Jeżeli wszystko się zgadza, potwierdź swoją transakcję.
9. Gotowe! Poczekaj na swoją transakcję, aż zostanie zatwierdzona na blockchain. Możesz ją śledzić poprzez skopiowanie swojego adresu do eksploratora blockchain.



Szukasz sposobu na rozpoczęcie swojej przygody z kryptowalutami? Dzięki Binance kupisz pierwsze bitcoiny w prosty i bezpieczny sposób!



Kto wymyślił technologię blockchain?

Technologia blockchain została sformalizowana w 2009 roku wraz z premierą Bitcoina – pierwszego popularnego blockchaina. Jednakże autor tej technologii, działający pod pseudonimem Satoshi Nakamoto, inspirował się wcześniejszymi technologiami i propozycjami.


Zalety i wady technologii blockchain

Poprawnie zaprojektowany blockchain może rozwiązywać problemy, które dręczą interesariuszy w wielu branżach, od finansowych, aż po agrokulturę. Rozdystrybuowana sieć prezentuje sobą wiele zalet w porównaniu z tradycyjnym modelem, lecz nie jest wolna od ustępstw, na które musimy się zgodzić.


Zalety

Jedną z największych zalet Bitcoina, która została zauważona już w whitepaper, była możliwość wykonywania transakcji bez potrzeby korzystania z usług pośredników i stron trzecich. Następne blockchainy wykorzystały tę opcję jeszcze sprawniej, zezwalając użytkownikom na przesyłanie między sobą dowolnej informacji. Eliminowanie zbędnych partii całego łańcucha transmisji informacji pozwala na zdecydowane zmniejszenie ryzyka oraz na niższe opłaty, które normalnie pobieraliby pośrednicy.

Tak jak wspomnieliśmy wcześniej, publiczne sieci blockchain nie wymagają pozwolenia – nie istnieje bariera wejścia, gdyż niepobierana jest żadna opłata. Jeżeli dany użytkownik jest w stanie połączyć się z internetem, może on wchodzi w interakcję z innymi węzłami danej sieci.

Wielu może się spierać, że najważniejszą cechą blockchaina jest to, iż jest on wysoce odporny na cenzurę. Jeżeli osoby ze złymi zamiarami chciałyby uszkodzić scentralizowaną usługę, jedyne co musieliby zrobić, to uderzyć bezpośrednio w serwer. Jednakże w sieci peer-to-peer każdy łańcuch działa samodzielnie jako serwer, więc taki atak nie jest możliwy. 

System taki jak Bitcoin posiada ponad 10 000 widocznych węzłów rozsianych na całym świecie, więc nawet najbardziej skomplikowany atak na taką sieć byłby praktycznie niemożliwy. Warto dodać, że istnieje też wiele ukrytych węzłów, które nie są widoczne dla całej sieci.

Takie są generalne zalety tej technologii. Istnieje też wiele bardziej wyspecjalizowanych  możliwości jej zastosowania, w których blockchain sprawdza się świetnie, o czym przekonacie sie w Do czego używany jest blockchian?


Wady

Blockchain niestety nie rozwiąże każdego problemu. Dzięki radzeniu sobie bardzo dobrze w wyżej wymienionych zastosowaniach nie radzi sobie on najlepiej w innych sferach. Najbardziej oczywistą przeszkodą przed masową adopcją blockchain, jest fakt, iż ta technologia nie skaluję się najlepiej.

Dotyczy to każdej sieci. Z racji tego, że wszyscy uczestnicy muszą być ze sobą ciągle zsynchronizowani, nowe informacje mogą być dodawane do łańcucha z maksymalną prędkością, na jaką pozwalają jego węzły. Dlatego też deweloperzy zazwyczaj ustanawiają ograniczenia odnośnie prędkości dodawania nowych bloków i aktualizacji blockchainów, żeby węzły mogły nadążać za zmianami i nie zostały przeciążone, a cały system mógł pozostać zdecentralizowany.

Dla użytkowników sieci może się to objawić podczas długich czasów oczekiwania, gdy zbyt wiele osób próbuje dokonać transakcji. Bloki mogą przetrzymywać tylko określoną ilość danych i nie są dodawane do łańcucha natychmiastowo. Jeżeli pojawia się więcej informacji, niż blok może przetrzymywać naraz, muszą one poczekać na następny blok.

Kolejną możliwą wadą zdecentralizowanego systemu blockchain jest to, iż wprowadzenie jakichkolwiek aktualizacji takiej sieci jest potwornie trudne. Jeżeli tworzysz swoje własne oprogramowanie, możesz je zmieniać i dodawać nowe funkcje wedle własnej woli. Nie musisz pracować z innymi, ani prosić o pozwolenie na jego zmianę.

W środowisku z milionami potencjalnych użytkowników, wprowadzenie zmiany jest znacząco trudniejsze. Możesz zmienić niektóre z parametrów swojego programu węzłowego, gdyż okazać się może, że system wykluczył cię z sieci. Jeżeli nowe oprogramowanie będzie niekompatybilne z resztą węzłów, nie rozpoznają go one i odmówią wchodzenia w interakcje z twoimi węzłami.

Załóżmy, że chcesz zmienić zasadę odnoszącą się do maksymalnej wielkości bloków (zwiększyć pojemność z 1 Mb do 2 Mb). Możesz spróbować wysłać nowe bloki do węzłów, z którymi jesteś połączony, jednakże te operują na podstawie zasady "Nie przyjmować bloków większych niż 1 Mb". Jeżeli otrzymają coś, co przekracza ten limit, nie wpiszą tej zmiany w swoją kopię blockchainu.

Jedyną możliwością wprowadzenia zmiany jest zgoda od większości ekosystemu na nią. W przypadku dużych blockchainów, taki proces może zając miesiące, a nawet lata, podczas których będą trwały gorliwe dyskusje na forach, zanim zmiana zostanie zaakceptowana. Jeśli pragnąłbyś dowiedzieć się więcej na ten temat, koniecznie zobacz Hard Forki oraz Soft Forki.





Rozdział 2 - Jak działa blockchain?

Spis treści


W jaki sposób bloki są dodawane do blockchainu?

Omówiliśmy już wiele tematów. Wiemy, że węzły są ze sobą połączone oraz że przetrzymują kopię blockchainu. Komunikują się między sobą i dodają nowe bloki. Wiemy też, czym jest węzeł, ale możecie się zastanawiać: w jaki sposób nowe bloki są dodawane do łańcucha?

Nie ma pojedynczego źródła, które mówiłoby użytkownikowi, co powinien zrobić. Ponieważ wszystkie węzły są sobie równe, potrzebny jest mechanizm, który w uczciwy sposób będzie decydował, kto może dodawać bloki do blockchainu. Potrzebujemy systemu, który utrudniałby oszukiwanie wśród użytkowników, a nagradzał tych, którzy działają zgodnie z zasadami. Każdy racjonalny użytkownik będzie działał sposób, który jest opłacalny dla niego ekonomicznie.

Ponieważ sieć nie wymaga pozwolenia, każdy może kreować nowe bloki. Protokoły często wymagają, by użytkownik musiał zaryzykować, by wziąć udział w tej grze – musi on położyć na szali swoje pieniądze. Jeżeli tak uczyni, będzie mógł on brać udział w kreacji bloków, a jeżeli wygeneruje blok, otrzyma on nagrodę.

Jednakże, gdy spróbuje się on dopuścić oszustwa, sieć się o tym dowie. Wyłożone przez niego pieniądze zostaną utracone. Ten mechanizm nazywa się algorytmem konsensusu, ponieważ pozwala on uczestnikom sieci na osiągnięcie konsensusu w kwestii tego, który blok powinien być dodany jako następny.


Mining (Proof of Work)


Mining jest aktualnie najpopularniejszym algorytmem konsensusu. W miningu wykorzystywany jest algorytm Proof of Work (PoW). Zobowiązuje on użytkownika do poświecenia mocy obliczeniowej, aby spróbować rozwiązać zagadkę daną przez protokół.

Zagadka wymaga od użytkownika, by ten hashował transakcję i inne informacje zawarte na bloku. Jesli hash ma zostać uznany za prawidłowy, musi on być poniżej konkretnej liczby. Z racji, że nie istnieje konkretna metoda przewidywania wyniku tej procedury, minerzy muszą hashować lekko zmodyfikowane dane, aż znajdą poprawne rozwiązanie.

Ciągłe hashowanie jest kosztowne, jeżeli chodzi o moc obliczeniową. W blockchainach Proof of Work, użytkownicy "stawiają na szale" swoje pieniądze, które zainwestowali w komputery do kopania oraz prąd. Robią to w nadziei na otrzymanie nagród blokowych

Pamiętasz, jak mówiliśmy wcześniej, że praktycznie niemożliwe jest odwrócenie hashu, ale bardzo łatwym jest jego sprawdzenie? Kiedy miner rozgłasza nowy blok do reszty sieci, wszystkie inne węzły używają go jako informacji wejściowej do funkcji hash. Wystarczy, że obliczą ją wtedy raz i mogą sprawdzić, czy dany blok jest zgodny z zasadami konsensusu. Jeżeli nie, miner nie otrzymuje nagrody, w wyniku czego zmarnował zużyty prąd.

Pierwszym blockchainem Proof of Work był Bitcoin. Od momentu jego powstania wiele innych blockchainów zaczęło korzystać z mechanizmu PoW.


Zalety Proof of Work

  • Przetestowany przez wielu – na stan dzisiejszy, Proof of Work jest najbardziej dojrzałym algorytmem konsensusu i dzięki niemu udało się zabezpieczyć równowartość miliardów dolarów.
  • Nie wymaga pozwolenia – każdy może dołączyć do konkurencji miningowej, lub po prostu działać jako sprawdzający węzeł.
  • Zdecentralizowany – minerzy konkurują ze sobą, by produkować nowe bloki, co oznacza, że moc hash nigdy nie jest kontrolowana przez jedną stronę.


Wady Proof of Work

  • Marnuje zasoby – minerzy muszą poświęcać gigantyczne ilości energii elektrycznej.
  • Rosnące bariery wejścia – im więcej górników dołącza do sieci, protokół zwiększa poziom trudności zagadek. By dalej być konkurencyjnym, użytkownicy muszą inwestować w coraz to lepszy ekwipunek. Ceny mogą osiągnąć taki poziom, że coraz więcej potencjalnych minerów odpuści branie udziału.
  • Atak 51% – mimo, iż mining promuje decentralizację, istnieje prawdopodobieństwo, że jeden miner osiągnie większość mocy hashującej. W takim wypadku teoretycznie mógłby on cofnąć wszystkie transakcje i obalić wszelkie zabezpieczenia blockchaina.


Staking (Proof of Stake)

W systemie Proof of Work tym, co zachęca cię do działania zgodnie z zasadami gry, są pieniądze, które wydałeś na maszyny górnicze oraz prąd. Nie wygenerujesz zwrotu na inwestycji, jeżeli nie będziesz poprawnie kopał bloków.
Dzięki Proof of Stake (PoS) nie ma żadnego kosztu zewnętrznego. Zamiast minerów, mamy walidatorów, którzy proponują (lub "wykuwają") bloki. Mogą oni do tego używać zwykłych komputerów, by generować nowe bloki, jednakże muszą oni zaoferować dużą część swoich funduszy jako kartę przetargową za taki przywilej. Staking jest wykonywany z predefiniowaną ilością natywnych kryptowalut blockchain, zgodnie z zasadami każdego protokołu. 

Różne implementacje podchodzą do tematu na różne sposoby, jednakże gdy walidator postawi już swoje pieniądze, może zostać on losowy wybrany przez protokół, by wybrał następny blok. Jeżeli zrobi to poprawnie, zostanie on nagrodzony. Alternatywnie może być wielu walidatorów, którzy muszą się zgodzić na następny blok, a nagroda zostanie rozdzielona między nimi proporcjonalnie do włożonych pieniędzy.

"Czyste" blockchainy PoS są rzadsze niż DPoS (Delegowane Proof of Stake), które wymagają głosowania od użytkowników, by ci wybrali węzeł, który wybierze następny blok dla całej sieci.
Ethereum, przodujący blockchain z inteligentnymi kontraktami, będzie nie długo przechodził na Proof of Stake podczas swojej migracji do ETH 2.0. 


Zalety Proof of Stake

  • Przyjazny środowisku – produkcja Co2 jest znacznie niższa przy użyciu PoS, niż przy kopaniu PoW. Staking usuwa potrzebę na przeprowadzanie kosztowny operacji hash.
  • Szybsze transakcje – z racji, iż nie ma potrzeby na wydawanie większej ilości pieniędzy na moc obliczeniową, by rozwiązywać zagadki zadane przez protokół, niektórzy zwolennicy PoS spierają się, że może ono zwiększyć przepływ transakcji.
  • Odsetki i nagrody ze stakingu – zamiast trafiać do minerów, nagrody za utrzymywanie sieci w bezpiecznym stanie trafiają bezpośrednio do posiadaczy tokenów. W niektórych przypadkach PoS pozwala użytkownikom na tworzenie pasywnego dochodu w formie airdropów lub odsetek, przez proste postawienie swoich funduszy.


Wady Proof of Stake

  • Relatywnie nieprzetestowany – Protokoły PoS nie zostały jeszcze przetestowane na dużą skalę. Mogą w przyszłości ujawnić się dotąd nieodkryte słabości tego systemu podczas jego implementacji do kryptoekonomii.
  • Plutokracja – niektórzy obawiają się, że PoS wspiera ekosystem, w którym tylko bogatsi się dalej wzbogacają, gdyż walidatorzy, którzy postawili więcej pieniędzy, otrzymują większe nagrody.
  • Problem braku ryzyka – w PoW użytkownicy mogą tylko "postawić" na jeden łańcuch – mogą wybrać tylko ten łańcuch, w który wierzą, że osiągnie największy sukces. Podczas hard forka, nie mogą pracować na wielu łańcuchach z tą samą mocą hash. Walidatorzy PoS mogą pracować na wielu łańcuchach bez zwiększania swoich kosztów, co może wytworzyć ekonomiczne problemy.


Inne algorytmy konsensusu

Proof of Work oraz Proof of Stake są najpopularniejszymi algorytmami konsensusu, ale istnieje wiele innych tego typu rozwiązań. Niektóre są hybrydowe i łączą elementy z obu systemów, a inne są zupełnie innymi metodami. 

Nie będziemy się w nie zagłębiać, ale jeżeli interesują was one, sprawdźcie poniższe artykuły:


Czy mogę cofnąć transakcje blockchain?

Blockchainy są bardzo odpornymi bazami danych. Ich wrodzone cechy czynią usuwanie lub modyfikowanie zarejestrowanych informacji ekstremalnie trudnym. Jeżeli chodzi o Bitcoin i inne duże sieci, jest to praktycznie niemożliwe. Więc jeżeli chcesz wykonać transakcję na blockchain, lepiej założyć, że ten proces jest nieodwracalny.

Istnieje jednak wiele różnych implementacji blockchain i najbardziej fundamentalną różnicą między nimi jest to, jak dochodzą one do konsensusu w sieci. Oznacza to, że w niektórych małych implementacjach, nawet mała grupa uczestników może wygenerować wystarczającą ilość mocy w sieci, by efektywnie odwrócić transakcje. Jest to wyjątkowo martwiące dla altcoinów, które działają na małych sieciach (z niskimi stopami hash z racji małej konkurencji miningowej).


Czym jest skalowalność blockchain?

Skalowalność blockchain jest zazwyczaj używana, aby opisać możliwość systemu blockchain do zapewniania usług coraz większej bazie użytkowników. Pożądane cechy blockchain, takie jak decentralizacja, odporność na cenzurę, niezmienność, mają swój koszt.
W przeciwieństwie do zdecentralizowanych systemów, scentralizowana baza danych może działać ze znacząco większą prędkością i większym przepływem informacji. Ma to sens, gdyż nie ma w takim systemie potrzeby posiadania tysięcy węzłów rozsianych po całym globie, które muszą się zsynchronizować za każdym razem, gdy przetrzymywana przez nie informacja jest zmodyfikowana. Dlatego też skalowalność jest często omawianym tematem przez deweloperów blockchain od lat.

Wiele różnych rozwiązań zostało zaproponowanych lub zaimplementowanych, by zapobiec niektórym z tym wad blockchian. W tym momencie, niestety nie istnieje najlepsze podejście. Musimy jako społeczność przetestować wiele różnych rozwiązań, zanim dojdziemy do jakiś konkretnych odpowiedzi na problem skalowalności.

Na szerszą skalę, istnieje jedno, fundamentalne pytanie odnośnie skalowalności: Czy powinniśmy poprawić prędkość działania samego blockchain (skalowanie on-chain), czy powinniśmy pozwolić na przeprowadzanie transakcji bez obciążania głównego blockchain (skalowanie off-chain)? 
Obydwa rozwiązania mają swoje zalety. Skalowanie on-chain może zmniejszać rozmiar transakcji, a nawet zoptymalizować sposób, w jaki przetrzymywane są informacje na blokach. Z drugiej strony skalowanie off-chain proponuje zdjęcie przeprowadzania transakcji z głównego blockchain i dodawanie ich nań później. Jedne z najważniejszych rozwiązań off-chain to sidechains oraz kanały płatności.
Jeżeli chciałbyś zagłębić się dalej w ten temat, przeczytaj Skalowalność Blockchain - Sidechains oraz Kanały Płatności.


Dlaczego Bitcoin musi być skalowalny?

Jeżeli systemy blockchain chcą konkurować ze scentralizowanymi odpowiednikami, muszą być przynajmniej tak wydajne jak one. Patrząc realistycznie, pewnie będą musiały być nawet szybsze, by zachęcić deweloperów i użytkowników do zmiany na platformy i aplikacje bazujące na blockchain

Oznacza to, że w porównaniu do scentralizowanych systemów, używanie blockchian musi być szybsze, tańsze i łatwiejsze dla deweloperów i użytkowników. Nie jest to łatwe do osiągnięcia, jeżeli jednocześnie chcemy utrzymać charakterystykę blockchain omawianą przez nas wcześniej


Czy jest fork blockchainu?

Tak jak każde oprogramowanie, blockchain wymaga aktualizacji i napraw, dodawania nowych zasad i usuwania starych. Z racji, iż większość blockchainów jest oprogramowaniem typu open-source<0>, w teorii każdy może zaproponować nową aktualizację oprogramowanie, które nadzoruje siecią. 

Pamiętajcie, że blockchainy są sieciami rozdystrybuowanymi. Kiedy dany program zostanie zaktualizowany, tysiące węzłów rozsianych po całym świecie musi się ze sobą skomunikować i zaimplementować nową wersję. Jednak co się dzieje, gdy użytkownicy nie mogą podjąć jednogłośnej decyzji na temat tego, co zaimplementować? Zazwyczaj nie ma żadnej organizacji, która narzuciłaby na wszystkich jednogłośną decyzję. To prowadzi nas do soft i hard forków.


Soft forki

Jeżeli większość osób zgadza się na temat tego, jak powinna wyglądać aktualizacja, proces jest w miarę prosty. W takim scenariuszu oprogramowanie jest aktualizowane z kompatybilnością wsteczną, co oznacza, że węzły, które są zaktualizowane, dalej mogą współpracować z tymi, które nie są. W rzeczywistości zakłada się, że prawie wszystkie węzły zostaną zaktualizowane z biegiem czasu. Taką sytuację nazywamy soft forkiem


Hard forki

Hard fork jest zdecydowanie bardziej skomplikowany. Kiedy zostanie zaimplementowany, nowe zasady nie będą kompatybilne ze starymi. Więc jeżeli węzeł działający na nowych zasadach napotka taki, który działa na starych, nie będą one w stanie się porozumieć. W takim wypadku blockchain dzieli się na dwa – na jeden działający na starym oprogramowanie i na drugi, działający na nowej implementacji.

Po hard forku działają tak naprawdę dwie różne, równoległe sieci z dwoma różnymi protokołami. Warto dodać, ze podczas wykonywania forka, salda natywnych blockchainowi jednostek są klonowane ze starej sieci. Więc jeśli miałeś saldo na starym chainie podczas forka, dalej będziesz miał taki balans na nowym






Do czego wykorzystuje się blockchain?


Spis treści


Technologia blockchain może być używana w szerokim zakresie zastosowań. Omówmy kilka z nich. 


Blockchain w łańcuchach dostaw

Efektywne łańcuchy dostaw to podstawa wielu biznesów zajmujących się dostarczaniem towarów od wytwórcy do konsumenta. Koordynacja wielu interesariuszy w danej branży jest zazwyczaj bardzo trudna. Jednakże technologia blockchain może pozwolić na nam na zupełnie nowy poziom przejrzystości w wielu branżach. Interoperacyjny ekosystem łańcuchów dostaw, który działa wokół niezmiennej bazy danych jest dokładnie tym, co potrzebuje wiele branży, by stać się jeszcze silniejszymi i bardziej zaufanymi.

Jeżeli chciałbyś dowiedzieć się więcej, przeczytaj Zastosowania Blockchain: Łańcuchy Dostaw.


Blockchain, a branża gier

Branża gier stała się jedną z największych branż rozrywkowych na świecie, a blockchain może okazać się dla niej świetną okazją do rozwoju. Zazwyczaj gracze są skazani na łaskę deweloperów. W większości gier online gracze muszą polegać na deweloperach, którzy ustalają rozmiary serwerów oraz aktualne zasady gry. W tym kontekście blockchain może pomóc ze zdecentralizowaną własnością, zarządzanie i utrzymywaniem gier online.

Co jest jednak największym problemem, to brak możliwości istnienia przedmiotów z gier poza danym tytułem, co uniemożliwia jakiekolwiek szanse na faktyczne prawo własności do nich oraz rynki wymian nimi. Wykorzystując podejście bazujące na blockchain, gry mogłyby przedłużyć swój żywot, a zdobywane w nich przedmioty mogłyby być wydawane jako krypto-kolekcjonerskie i mogłyby nabyć rzeczywistą wartość w prawdziwym świecie.
Jeżeli chcesz przeczytać więcej na ten temat, zobacz Zastosowania Blockchain: Gry Komputerowe.



Blockchain dla opieki zdrowotnej

Przetrzymywanie danych medycznych w bezpieczny sposób jest kluczowe dla każdego systemu opieki zdrowotnej, a poleganie na scentralizowanych serwerach pozostawia wrażliwe informacje we niebezpiecznej pozycji. Przejrzystość i bezpieczeństwo, jakie niesie ze sobą technologia blockchain, czyni ją idealną platformą dla tego typu zastosowania.

Zabezpieczając kryptograficznie swoje dane za pomocą blockchain, pacjenci mogą utrzymywać swoją prywatność, jednocześnie mając opcje, by dzielić się swoimi informacjami medycznymi z dowolną instytucją opieki zdrowotnej. Jeżeli wszyscy uczestnicy aktualnie sfragmentaryzowanego systemu opieki zdrowotnej przenieśliby się na bezpieczniejszą, globalną bazę danych, przepływ informacji byłby znacząco szybszy.

Jeżeli zainteresował cię ten temat, sprawdź Zastosowania Blockchain: Opieka Zdrowotna.


Przelewy Blockchain

Przesyłanie pieniędzy międzykrajowo jest twardym orzechem do zgryzienia dla tradycyjnych banków. Wynika to głównie z poplątanej sieci pośredników, opłat oraz czasów oczekiwania, co czyni tradycyjną bankowość zarówno drogą, jak i nieodpowiednią dla ważnych transakcji.

Kryptowaluty i blockchain eliminują potrzebę ekosystemu pośredników i pozwalają na tańsze, szybkie transfery na całym świecie. Mimo że blockchainy bezwątpienia muszą poświęcić trochę możliwości działania na rzecz ich pożądanych cech, wiele projektów już teraz próbuje tej technologii, by osiągnąć tanie, prawie natychmiastowe transakcje.

Jeżeli zainteresował cię ten temat, sprawdź Zastosowania Blockchain: Przelewy.



Szukasz sposobu na rozpoczęcie swojej przygody z kryptowalutami? Dzięki Binance możesz dokonywać bezpiecznych zakupów bitcoinów!



Blockchain i tożsamość cyfrowa

Bezpieczne zarządzanie swoją tożsamością w internecie jest wyjątkowo poszukiwanym rozwiązaniem. Ogromne ilości danych na twój temat jest przechowywanych na scentralizowanym serwerze i i analizowanych przez uczące się algorytmy bez twojej wiedzy lub zgody. 



Blockchain i Internet Rzeczy (IoT)

Duża ilość fizycznych urządzeń jest podłączana z każdym dniem do internetu, a ta liczba będzie tylko rosnąć. Niektórzy spekulują, iż komunikacja i kooperacja pomiędzy tymi urządzeniami może zostać znacząco poprawiona, dzięki użyciu technologii blockchain. Zautomatyzowane mikropłatności machine-to-machine (M2M) mogą stworzyć nową ekonomię bazującą na bezpiecznej i wysokoprzepływowej bazie danych.
Jeżeli chcesz przeczytać więcej na ten temat, zobacz Zastosowania Blockchain: Internet Rzeczy (IoT).


Blockchain dla rządów

Rozdystrybuowane sieci mogą definiować i wymuszać nowe formy regulacji za pomocą kodu komputerowego. Nie jest zaskoczeniem w takim razie, że blockchain ma szansę wspomóc różne rządy na poziomach zarówno lokalnych, jak i narodowych i międzynarodowych

Co więcej, mogłyby one rozwiązać jeden z największych problemów, z jakimi rozwój środowisk open-source aktualnie musi się mierzyć; brak zaufanego mechanizmu do dystrybucji funduszy. Zarządzanie za pomocą blockchain zapewnia, iż wszyscy uczestnicy mogą być częścią procesu podejmowania decyzji i w ten sposób dostarczyć przejrzystą metodę wprowadzania nowych ustaw.
Jeżeli zainteresował cię ten temat, sprawdź Zastosowania Blockchain: Zarządzanie.


Blockchain dla organizacji charytatywnych

Organizacje charytatywne są często ograniczane przez swoje możliwości przyjmowania funduszy. Co więcej, finalne miejsce, do którego docierają fundusze, jest ciężkie do wyśledzenia, co może odpychać wielu od korzystania z tego typu organizacji.

"Kryptofilantropia" zajmuje się wykorzystaniem technologii blockchain, by przezwyciężyć te ograniczenia. Jednymi z jej głównych cech są przejrzystość, globalny zasięg, mniejsze koszta, a tego bardzo poszukują sfery charytatywne. Jedną z takich organizacji jest Blockchain Chairty Foundation.
Jeżeli chcesz przeczytać więcej na ten temat, zobacz Zastosowania Blockchain: Organizacje Charytatywne.


Blockchain na potrzeby spekulacji

Bezwątpienia jednym z najpopularniejszych zastosowań technologii blockchain jest spekulacja. Płynne transakcje pomiędzy giełdami, rozwiązania handlu bez przetrzymań i rosnąc ekosystem pochodnych produktów stwarza idealne pole do zabawy dla wszystkich rodzajów spekulatorów.

Dzięki swoim wrodzonym cechom blockchain jest idealnym narzędziem dla tych, którzy chcą podjąć ryzyko wzięcia udziału w tak świeżej klasie aktywów. Niektórzy nawet uważają, ze gdy ta technologia i otaczające ją regulacje staną się bardziej dojrzałe, globalny rynek spekulacji może w pełni przenieść się na blockchain.

Jeżeli zainteresował cię ten temat, sprawdź Zastosowania Blockchain: Rynek Spekulacyjny.



Crowdfunding poprzez blockchain

Platformy crowdfundingowe online kładły fundament pod ekonomię peer-to-peer już od prawie dekady. Sukces tych stron pokazuje, jak wielkie jest zainteresowanie tego typu projektami. Jednakże pomimo dobrych intencji tych stron, mogą one pobierać znaczne opłaty od wystawiających się na nich deweloperów. Dodatkowo każda z nich ma zupełnie inny zestaw zasad odnośnie działania na nich.
Technologia blockchain, a dokładniej inteligentne kontrakty, mogą pozwolić na bezpieczniejszy i bardziej automatyczny crowdfunding, którego warunki użytkowania definiuje program komputerowy. 
Inne przykłady zastosowania blockchain w crowdfundingu to Initial Coin Offerings (ICOs) i Initial Exchange Offerings (IEOs). W tego typu sprzedażach tokenów inwestorzy zbierają fundusze w nadziei, że sieć odniesie sukces w przyszłości, oraz że dostaną zwrot ze swojej inwestycji.


Blockchain i rozproszone systemy plików

Rozproszone przetrzymywanie plików w internecie ma wiele zalet w porównaniu do tradycyjnych scentralizowanych alternatyw. Wiele z przechowywanych danych w chmurze polega na centralnych serwerach i dostawcach usług, a są oni przecież wrażliwi na ataki i utratę tych danych. W niektórych przypadkach użytkownicy mogą też doświadczyć problemów z dostępem z racji cenzury ze strony serwera.

Z perspektywy użytkownika przetrzymywanie plików na blockchain działa tak samo, jak trzymanie ich na chmurze – może on przegrywać nań pliki, przetrzymywać je tam oraz mieć do nich dostęp. Jednak to, co dzieje się poza jego wizją, jest zupełnie inne.

Kiedy przegrywasz plik do pamięci blockchain, jest on rozpraszany do wielu różnych węzłów. W niektórych przypadkach każdy z nich będzie przetrzymywał inną część twojego pliku. Nie mogą one zrobić wiele z częścią twoich danych, a ty możesz później wysłać zapytanie do wszystkich węzłów, żeby te z powrotem wysłały ci cały plik.

Wielkość pamięci jest pochodną tego, ilu uczestników należy do sieci i ile udostępnią własnej pamięci i przepływu internetu. Zazwyczaj ci uczestnicy są zachęcani ekonomicznie do oferowania tych zasobów i karani, za nie przestrzeganie zasad.

Możesz traktować takie sieci w podobny sposób jak Bitcoin. W tym przypadku jednak głównym celem sieci nie jest wspieranie transferów pieniężnych, ale danie tobie możliwości na odporną na cenzurę, zdecentralizowaną pamięć.

Inne protokoły open-source takie jak InterPlanetary File System (IPFS) już teraz oferują nowe, trwałe i rozproszone Sieci. Mimo że IPFS jest protokołem oraz siecią peer-to-peer, nie jest ono dokładnie blockchainem. Jednak korzysta z założeń technologii blockchain, by zwiększyć swoje bezpieczeństwo i efektywność.