Dlaczego to się nazywa Blockchain ? - Cóż, to dlatego, że przechowuje dane transakcji w blokach, które są ze sobą połączone w łańcuch. Wraz ze wzrostem liczby transakcji rośnie rozmiar łańcucha bloków. Aby lepiej zrozumieć ten wspaniały wynalazek, omówmy jego architekturę. TKomponenty architektoniczne zostały uogólnione, a następnie zmodyfikowane przez różne firmy, prowadząc do różnych projektów blockchain, takich jak Bitcoin, Ethereum , Hyperledger itp.Na tym blogu, aby wszystko było prostsze, omówimy architekturę łańcucha bloków bitcoin.
Poniżej znajduje się lista elementów architektonicznych:
Zanim omówimy architekturę, wyjaśnijmy sobie kilka rzeczy:
- Blockchain to nie Bitcoin Blockchain to technologia, która stoi za nią Bitcoin .
- Bitcoin to cyfrowy token lub mając na uwadze, że blockchain jest rejestrem, który śledzi transakcje tych cyfrowych tokenów.
- Bitcoin bez łańcucha bloków nie jest możliwy, ale możesz mieć blockchain bez Bitcoina.
Transakcja
Transakcjeto najmniejsze elementy składowe systemu blockchain.Zwykle składają się z adresu odbiorcy, adresu nadawcy i wartości. Jest podobny do standardowego wyciągu z karty kredytowej.Właściciel przekazuje wartość, podpisując cyfrowo hash utworzony przez dodanie poprzedniej transakcji i klucza publicznego odbiorcy.
Transakcja jest następnie ogłaszana publicznie w sieci i wszystkimwęzłyniezależnie posiadają własną kopię łańcucha bloków, a bieżący znany „stan” jest obliczany przez przetwarzanie każdej transakcji w kolejności, w jakiej pojawia się wblockchain.Transakcje są grupowane i dostarczane do każdego węzła w postaci bloku. Ponieważ nowe transakcje są dystrybuowane w całej sieci, tak właśnie się dziejeniezależnie zweryfikowane i „przetworzone”przez każdy węzeł.Każda transakcja jest oznaczana czasem i gromadzona w bloku.
Blok
Blokzawiera informacje w postaci nagłówka bloku i transakcji. Bloki to struktury danych, które służą do łączenia zestawów transakcji i są replikowane do wszystkich węzłów w sieci. Bloki w blockchain są tworzone przezgórniczy.Górnictwoto proces tworzenia prawidłowego bloku, który zostanie zaakceptowany przez resztę sieci. Węzły przyjmują oczekujące transakcje, sprawdzają, czy są one dokładne kryptograficznie i pakują je w bloki, które mają być przechowywane w łańcuchu bloków.Zablokuj nagłówekto metadane, które pomagają w weryfikacjiważność bloku. Zawartość metadanych bloku pokazano na poniższej ilustracji
Reszta bloku zawiera transakcje. Może to być dowolna liczba transakcji w jednym bloku w zależności od wyboru górnika.
Rodzaje bloków
- Większość bloków po prostu rozszerza obecny główny łańcuch bloków, który jest jednocześnie najdłuższym łańcuchem w sieci. Te bloki nazywane są „Główne bloki gałęzi” .
- Niektóre bloki odnoszą się do bloku nadrzędnego, który nie jest najdłuższym łańcuchem bloków. Te bloki nazywane są „Bloki odgałęzień bocznych” .
- Niektóre bloki odnoszą się do bloku nadrzędnego, który nie jest znany węzłowi przetwarzającemu blok. Te są nazywane „Osierocone bloki” .
jak dynamicznie alokować tablicę w java
Bloki bocznej gałęzi mogą obecnie nie być częścią głównej gałęzi, ale jeśli wydobywanych jest więcej bloków odnoszących się do nich jako nadrzędnych, istnieje możliwość, że konkretna gałąź boczna będziezrestrukturyzowanydo głównej gałęzi. Wprowadza to pojęcierozwidlenie.
Sieć P2P
Blockchain topeer to peer(P2P) sieć działająca na protokole IP. Sieć P2P to płaska topologia bez scentralizowanego węzła. Wszystkie węzły w równym stopniu zapewniają i mogą korzystać z usług, współpracując przy użyciu algorytmu konsensusu.Partnerzy mają wpływ na moc obliczeniową i pamięć, która jest wymagana do utrzymania sieci. Sieci P2P są generalnie bezpieczniejsze, ponieważ nie mają pojedynczego punktu ataku lub awarii, jak w przypadku sieci scentralizowanej.Sieć blockchain może być siecią opartą na pozwoleniach, jak również siecią bez uprawnień. ZAbez pozwoleniaSieć jest również znana jako publiczny blockchain, ponieważ każdy może dołączyć do sieci, podczas gdy oparty na pozwoleniach blockchain jest nazywany konsorcjum. ZAna podstawie zgodyblockchain lub prywatny blockchain wymaga wstępnej weryfikacji uczestników w sieci, a strony te są zwykle sobie znane.W typowej architekturze blockchain każdy węzeł w sieci utrzymuje lokalną kopię łańcucha bloków. Decentralizacja architektury blockchain jest jedyną zasługą sieci P2P, na której jest zbudowana.
Algorytm konsensusu
Synchronizacja wszystkich kopii pojedynczej księgi wynika z algorytmu konsensusu. Mechanizm konsensusu zapewnia, że niezależnie od kopii lokalnej, jaką posiada każda ze stron, są one ze sobą spójne i są najbardziej aktualne. Kopie, które mają poszczególne węzły, są identyczne lub podobne do siebie. Można z pewnością stwierdzić, że algorytm konsensusu stanowi rdzeń każdej architektury blockchain.Niektóre z algorytmów konsensusu omówiono poniżej:
Dowód pracy (POW)
Obejmuje rozwiązanie wymagającej obliczeniowej łamigłówki w celu stworzenia nowych bloków w sieci blockchain. Zasadniczo polega na zgadywaniu ciągu, który tworzy 256-bitowy skrót, generowany przez popularny algorytm mieszający SHA256. Fakt, że algorytmy haszujące są nieodwracalne, stanowi fundamentalny filar takiego podejścia do osiągnięcia konsensusu. Ponieważ ktoś musi przejść przez milion domysłów, aby zweryfikować hash, proces otrzymuje swoją nazwę „dowód pracy”.
Dowód stawki (POS)
W tym przypadku węzły nazywane są walidatorami. Sprawdzają transakcje, aby uzyskać opłaty transakcyjne. Węzły są wybierane losowo w celu sprawdzenia poprawności bloków, a prawdopodobieństwo tego losowego wyboru zależy od wysokości stawki, jaką ma dany węzeł.
Uproszczona tolerancja błędów bizantyjskich (SBFT)
Tutaj podstawowa idea dotyczy pojedynczego walidatora, który łączy proponowane transakcje i tworzy nowy blok. W tym przypadku walidator jest stroną znaną, biorąc pod uwagę charakter rejestru oparty na pozwoleniach. Konsensus jest osiągany w wyniku minimalnej liczby innych węzłów w sieci prostujących nowy blok.
To prowadzi nas do końca tego bloga „Architektura Blockchain”. Jeśli chcesz nauczyć się Blockchain i zbudować karierę w technologiach Blockchain, sprawdź nasze i który obejmuje szkolenie na żywo prowadzone przez instruktora i rzeczywiste doświadczenie projektowe. To szkolenie pomoże ci dogłębnie zrozumieć Blockchain i osiągnąć mistrzostwo w tym temacie.
Masz do nas pytanie lub wątpliwości? Wspomnij o tym w sekcji komentarzy na blogu „Architektura Blockchain” a my odpowiemy tak szybko, jak to możliwe.