Jak Dzia艂a Blockchain?
Strona G艂贸wna
Artyku艂y
Jak Dzia艂a Blockchain?

Jak Dzia艂a Blockchain?

艢rednio zaawansowany
Opublikowane Dec 9, 2018Zaktualizowane Dec 12, 2022
5m

Czym jest blockchain?

Kr贸tko m贸wi膮c, blockchain to lista zapis贸w danych, kt贸ra dzia艂a jako zdecentralizowana ksi臋ga cyfrowa. Dane s膮 organizowane w bloki, kt贸re s膮 uporz膮dkowane chronologicznie i zabezpieczone za pomoc膮 kryptografii.聽
Najwcze艣niejszy model blockchainu powsta艂 na pocz膮tku lat 90. XX wieku, kiedy informatyk Stuart Haber i fizyk W. Scott Stornetta zastosowali techniki kryptograficzne w 艂a艅cuchu blok贸w jako spos贸b na zabezpieczenie dokument贸w cyfrowych przed manipulacj膮 danymi.聽
Praca Habera i Stornetty z pewno艣ci膮 zainspirowa艂a prac臋 wielu innych informatyk贸w i entuzjast贸w kryptografii - co ostatecznie doprowadzi艂o do powstania Bitcoina, jako pierwszego zdecentralizowanego systemu got贸wki elektronicznej (lub po prostu pierwszej kryptowaluty).

Chocia偶 technologia blockchain jest starsza ni偶 kryptowaluty, dopiero po powstaniu Bitcoina w 2008 zacz臋to dostrzega膰 jej potencja艂. Od tego czasu zainteresowanie technologi膮 blockchain stopniowo ro艣nie, a kryptowaluty s膮 obecnie uznawane na szersz膮 skal臋.

Technologia blockchain jest wykorzystywana g艂贸wnie do rejestrowania transakcji kryptowalutowych, ale pasuje do wielu innych rodzaj贸w danych cyfrowych i mo偶e by膰 stosowana w wielu r贸偶nych przypadkach. Najstarsz膮, najbezpieczniejsz膮 i najwi臋ksz膮 sieci膮 blockchain jest sie膰 Bitcoin, kt贸ra zosta艂a zaprojektowana dzi臋ki starannemu i wywa偶onemu po艂膮czeniu kryptografii i teorii gier.


Jak dzia艂a blockchain?

W kontek艣cie kryptowalut blockchain sk艂ada si臋 ze stabilnego 艂a艅cucha blok贸w, z kt贸rych ka偶dy przechowuje list臋 wcze艣niej potwierdzonych transakcji.聽Poniewa偶 sie膰 blockchain jest obs艂ugiwana przez niezliczon膮 liczb臋 komputer贸w rozsianych po ca艂ym 艣wiecie, funkcjonuje ona jako zdecentralizowana baza danych (lub ksi臋ga). Oznacza to, 偶e ka偶dy uczestnik (w臋ze艂) utrzymuje kopi臋 danych blockchaina i komunikuje si臋 mi臋dzy sob膮, aby zapewni膰, 偶e wszyscy s膮 na tej samej stronie (lub w tym samym bloku).
Dlatego transakcje na blockchainie odbywaj膮 si臋 w globalnej sieci peer-to-peer i to w艂a艣nie czyni Bitcoina zdecentralizowan膮 walut膮 cyfrow膮, kt贸ra nie zna granic i jest odporna na cenzur臋. Ponadto wi臋kszo艣膰 system贸w blockchain uwa偶a si臋 za niewymagaj膮ce zaufania, poniewa偶 nie przewiduj膮 one powierzenia 偶adnego rodzaju zaufania. Bitcoin nie jest kontrolowany przez jeden organ.
Centraln膮 cz臋艣ci膮 niemal ka偶dego blockchaina jest proces wydobywania, kt贸ry opiera si臋 na algorytmach hashuj膮cych. Bitcoin wykorzystuje algorytm SHA-256 (Bezpieczny algorytm haszuj膮cy 256 bit贸w). Pobiera dane wej艣ciowe o dowolnej d艂ugo艣ci i generuje dane wyj艣ciowe, kt贸re zawsze b臋d膮 mia艂y t臋 sam膮 d艂ugo艣膰. Uzyskany wynik nazywany jest "hashem" i w tym przypadku sk艂ada si臋 zawsze z 64 znak贸w (256 bit贸w).

Zatem to samo wej艣cie da taki sam wynik, niezale偶nie od tego, ile razy proces zostanie powt贸rzony. Je艣li jednak na wej艣ciu zostanie wprowadzona niewielka zmiana, wyj艣cie zmieni si臋 ca艂kowicie. Funkcje hashuj膮ce s膮 deterministyczne, a w 艣wiecie kryptowalut wi臋kszo艣膰 z nich jest zaprojektowana jako jednokierunkowe funkcje hashuj膮ce.

To, 偶e jest to funkcja jednokierunkowa, oznacza, 偶e prawie niemo偶liwe jest obliczenie, co by艂o na wej艣ciu, a co na wyj艣ciu. Mo偶na si臋 tylko domy艣la膰, jakie by艂y dane wej艣ciowe, ale prawdopodobie艅stwo, 偶e nasza predykcja okaza艂aby si臋 prawdziwa, jest bardzo ma艂e. Jest to jeden z powod贸w, dla kt贸rych blockchain Bitcoina jest bezpieczny.

Teraz gdy wiemy ju偶, co robi algorytm, zademonstrujmy dzia艂anie blockchainu na prostym przyk艂adzie transakcji.

Wyobra藕my sobie, 偶e mamy Alice i Boba wraz z ich saldem Bitcoin. Za艂贸偶my, 偶e Alice jest winna Bobowi 2聽Bitcoiny.

Aby Alice mog艂a wys艂a膰 Bobowi te 2 bitcoiny, Alicja nadaje wiadomo艣膰 z transakcj膮, kt贸rej chce dokona膰, do wszystkich g贸rnik贸w w sieci.
W tej transakcji Alicja podaje g贸rnikom adres Boba i liczb臋 Bitcoin贸w, kt贸re chcia艂aby wys艂a膰, wraz z podpisem cyfrowym i swoim kluczem publicznym. Podpis jest sk艂adany przy u偶yciu klucza prywatnego Alice, a g贸rnicy mog膮 potwierdzi膰, 偶e Alice faktycznie jest w艂a艣cicielkom tych monet.

Gdy g贸rnicy s膮 pewni, 偶e transakcja jest wa偶na, mog膮 umie艣ci膰 j膮 w bloku wraz z wieloma innymi transakcjami i podj膮膰 pr贸b臋 wydobycia bloku. Odbywa si臋 to poprzez przepuszczenie bloku przez algorytm SHA-256. Aby dane wyj艣ciowe mog艂y zosta膰 uznane za wa偶ne, musz膮 zaczyna膰 si臋 od pewnej liczby zer. Ilo艣膰 potrzebnych 0 zale偶y od tak zwanej "trudno艣ci", kt贸ra zmienia si臋 w zale偶no艣ci od tego, jak du偶a jest moc obliczeniowa sieci.

Aby uzyska膰 wyj艣ciowy hash z po偶膮dan膮 liczb膮 zer na pocz膮tku, g贸rnicy dodaj膮 do bloku tak zwany 鈥nonce鈥 przed przepuszczeniem go przez algorytm. Poniewa偶 niewielka zmiana danych wej艣ciowych ca艂kowicie zmienia dane wyj艣ciowe, g贸rnicy pr贸buj膮 losowych nonce, a偶 znajd膮 poprawny hash wyj艣ciowy.

Po wydobyciu bloku g贸rnik rozsy艂a ten nowo wydobyty blok do wszystkich pozosta艂ych g贸rnik贸w. Nast臋pnie sprawdzaj膮, czy blok jest wa偶ny, dzi臋ki czemu mog膮 go doda膰 do swojej kopii blockchaina, co ko艅czy transakcje. W bloku g贸rnicy musz膮 jednak zawrze膰 r贸wnie偶 wyj艣ciowy skr贸t z poprzedniego bloku, tak aby wszystkie bloki by艂y ze sob膮 powi膮zane, st膮d nazwa blockchain. Jest to wa偶ny element ze wzgl臋du na spos贸b funkcjonowania zaufania w systemie.

Ka偶dy g贸rnik ma na swoim komputerze w艂asn膮 kopi臋 blockchaina i wszyscy ufaj膮 temu blockchainowi, w kt贸ry w艂o偶ono najwi臋cej pracy obliczeniowej - najd艂u偶szemu blockchainowi. Je艣li g贸rnik zmieni transakcj臋 w poprzednim bloku, wyj艣ciowy hash tego bloku ulegnie zmianie, co spowoduje, 偶e wszystkie nast臋pne hashe r贸wnie偶 si臋 zmieni膮, poniewa偶 bloki s膮 powi膮zane z hashami. G贸rnik musia艂by powt贸rzy膰 ca艂膮 prac臋, aby ktokolwiek zaakceptowa艂 jego blockchain jako w艂a艣ciwy. Je艣li wi臋c g贸rnik chcia艂by oszukiwa膰, potrzebowa艂by ponad 50% mocy obliczeniowej sieci, co jest bardzo ma艂o prawdopodobne. Tego typu ataki sieciowe s膮 nazywane atakami 51%.
Model polegaj膮cy na zmuszaniu komputer贸w do pracy w celu wytworzenia blok贸w nosi nazw臋 Proof-of-Work (PoW). Istniej膮 r贸wnie偶 inne modele, takie jak Proof-of-Stake (PoS), kt贸re nie wymagaj膮 tak du偶ej mocy obliczeniowej i maj膮 zu偶ywa膰 mniej energii elektrycznej, a jednocze艣nie mog膮 by膰 stosowane przez wi臋ksz膮 liczb臋 u偶ytkownik贸w.
Udost臋pnij Posty
Zarejestruj konto
Wykorzystaj swoj膮 wiedz臋 w praktyce, otwieraj膮c konto Binance ju偶 dzi艣.