Samouczek dotyczący tkaniny Hyperledger dla początkujących: kompleksowy przewodnik

Opublikowany: 2021-02-24

Dostępnych jest wiele struktur i narzędzi Hyperledger . Jednym z najbardziej udanych jest Hyperledger Fabric. Od czasu wydania w 2016 r. Hyperledger Fabric stał się popularną platformą do tworzenia aplikacji dla przedsiębiorstw. W tym samouczku Hyperledger Fabric dla początkujących przeprowadzimy Cię przez wszystko, co musisz wiedzieć, począwszy od tego, co to jest, jaka jest struktura i jak uruchomić na niej pierwszą aplikację. Bez dalszej zwłoki zacznijmy od naszego samouczka Hyperledger Fabric .

Spis treści

Co to jest tkanina Hyperledger?

Hyperledger Fabric to platforma klasy korporacyjnej oparta na blockchain. Jest to platforma typu open source, która zapewnia uprawnienia DLT (Distributed Ledger Technology) do tworzenia aplikacji i rozwiązań biznesowych. Niektóre z podstawowych funkcji Hyperledger Fabric obejmują:

  • Wysoce modułowa architektura
  • Konsensus „plug-and-play”
  • Wsparcie dla Solidity i EVM
  • Obsługuje zapytania JSON, zapytania oparte na kluczach i inne dane, które można przeszukiwać
  • Obsługa wielojęzycznych inteligentnych umów

Mając podstawową wiedzę na temat Hyperledger Fabric i jej podstawowych funkcji, przejdźmy do następnej części tego samouczka Hyperledger Fabric dla początkujących .

Ucz się kursów oprogramowania online z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Czym jest architektura systemu Hyperledger Fabric?

Przed rozpoczęciem naszego podstawowego samouczka Hyperledger Fabric konieczne jest zapoznanie się z podstawową architekturą. Posiadanie solidnej wiedzy na temat struktury pomoże ci zrozumieć, jak działa framework.

  • Transakcje : istnieją dwa rodzaje transakcji: wdrażanie i wywoływanie. Transakcje wdrażania służą do tworzenia kodów łańcuchowych, które są programami uruchamianymi przez łańcuch bloków. Z drugiej strony transakcje wywołania służą do wykonywania transakcji w kontekście z wcześniej wdrożonymi kodami łańcuchowymi.
  • Struktury danych : jak każda struktura blockchain, struktury danych używane w Hyperledger Fabric są parami klucz-wartość. Kody łańcuchowe manipulują danymi za pomocą operacji put and get.
  • Ledger : Jest to sekwencja wszystkich udanych i nieudanych zmian w łańcuchu.
  • Węzły : są agentami komunikacyjnymi lub innymi słowy jednostkami sieci.
  • Klient : Użytkownicy końcowi lub osoba działająca w ich imieniu.
  • Peer : Zarządzają stanami łańcucha i zapewniają, że wszystko działa płynnie.

Samouczek Hyperledger Fabric dla początkujących, aby opracować swoją pierwszą aplikację

Teraz, gdy znamy podstawową architekturę, nadszedł czas na opracowanie naszej pierwszej aplikacji Hyperledger Fabric.

Budowanie i uruchamianie pierwszej sieci

Ten krok obejmuje instalację wymagań wstępnych i przykładowych komponentów, aby rozpocząć tworzenie naszej aplikacji.

Budowanie sieci

Pierwszą rzeczą, którą musisz zrobić, to zbudować i uruchomić sieć. Bez działającej sieci Twoja aplikacja będzie bezużyteczna. Zapoznaj się z przewodnikiem i plikami binarnymi dotyczącymi wymagań wstępnych Hyperledger Fabric, obrazami platformy Docker oraz przykładowym przewodnikiem instalacji .

Po zainstalowaniu wszystkiego użyj następującego polecenia, aby przejść do repozytorium z przykładową siecią.

próbki materiału cd/pierwsza sieć

Następnie użyj skryptu byfn.sh do uruchomienia sieci. Uruchomienie tej sieci ułatwi komunikację sieciową i uruchomi podstawowe elementy, takie jak kontenery, peery, kod łańcuchowy itp., które pomogą w innym procesie. Po uruchomieniu przykładowej sieci nadszedł czas na wygenerowanie artefaktów.

Generowanie artefaktów

Użyj następującego kodu, aby wygenerować artefakty, a następnie naciśnij „Y”, gdy zostaniesz poproszony o potwierdzenie, aby rozpocząć wypełnianie niezbędnych szczegółów.

.byfn.sh generuje

Zasilanie sieci

Po wygenerowaniu artefaktów musisz zasilić sieć. Uruchomi wszystkie komponenty, w tym kod łańcuchowy i kontenery, aby umożliwić nowym użytkownikom dołączenie do sieci. Użyj następującego kodu do zasilania sieci:

./byfn.sh do góry

Domyślnym językiem kodu łańcucha Hyperledger Fabric jest Go. Możesz jednak przełączyć się na używanie Node.js lub Java, używając odpowiednio następujących poleceń:

.byfn.sh up -l node

.byfn.sh up -l java

Możesz również zdecydować się na korzystanie z wielu języków programowania, używając jednego z następujących kodów:

./byfn.sh up -o etcdraft

./byfn.sh up -o kafka

Uruchamianie sieci

Teraz będziemy uruchamiać sieć. Ale wcześniej musimy:

  • pobierz podkatalog naszej aplikacji
  • utwórz lokalny klon repozytorium próbek tkanin

Użyj następującego skryptu poleceń, aby uruchomić sieć:

./startFabric.sh javascript

Po uruchomieniu sieci będziesz mieć wszystko, od zleceniodawców, przez partnerów, po urzędy certyfikacji do tworzenia aplikacji. Ponieważ korzystamy z podkatalogu aplikacji, inteligentna umowa zostanie uruchomiona automatycznie.

Instalowanie pierwszej aplikacji

Użyj poniższego kodu, aby zainstalować zależności wymagane do zainstalowania i zainicjowania aplikacji.

instalacja npm

Łączenie z urzędami certyfikacji

Po uruchomieniu sieci zacznijmy od komunikacji z władzami, które mogą nam pozwolić na dodawanie użytkowników do łańcucha. Aby to zrobić, musimy przejść żądanie podpisania certyfikatu (CSR). Użyj poniższego polecenia, aby skontaktować się z urzędem certyfikacji i utworzyć certyfikat publiczny, prywatny i x.509.

węzeł enrollAdmin.js

Twoje informacje będą teraz przechowywane w portfelu. Podobnie, aby dodać nowego użytkownika, musisz przejść przez ten sam proces i użyć następującego kodu:

węzeł reisterUser.js

Ten kod doda użytkownika, a szczegóły będą przechowywane w portfelu.

Zapytania w księdze

Możesz użyć zapytań odczytu, aby wysłać zapytanie do księgi za pośrednictwem sieci blockchain i uzyskać wyniki. Aplikacja nie wykona żadnych zapytań zapisu, ponieważ księgi są tylko do odczytu.

Użyj poniższego kodu, aby pobrać wszystkie dane z księgi:

zapytanie node.js

Następnie musimy nawiązać połączenie, aby przekazać dane. Po nawiązaniu połączenia utwórz bramę, aby umożliwić aplikacji połączenie z siecią. Poniższa linia kodów pomoże ci to wszystko zrobić.

const { FileSystemWallet, Gateway } = require('fabric-network');

const brama = nowa brama();

await gateway.connect(ccp, { portfel, identity: 'user1' });

const const = network.getContract('nazwa_katalogu');

Kod CPP w powyższym kodzie służy do uzyskiwania dostępu i weryfikacji informacji o użytkowniku. Ostatnia linia kodu to połączenie z konkretnym kanałem. Jest to niezbędne, ponieważ cała sieć blockchain działa na wielu kanałach.

Zrozumienie umowy

Przejdź do podkatalogu chaincode/subdirecory_name/javascript/lib, aby uzyskać dostęp do inteligentnego kontraktu aplikacji. W powyższym katalogu nazwa_katalogu_podkatalogu będzie nazwą podkatalogu aplikacji. Otwórz plik nazwa_aplikacji.js, który otrzymasz w edytorze. W tym pliku otrzymasz inteligentną umowę i wszystkie transakcje zdefiniowane w klasie Contract. Załóżmy, że Twoja aplikacja dotyczy samochodów, szczegóły transakcji będą wyglądać następująco:

Zapytanie asynchroniczneCar(ctx, carNumber) {…}

Przeczytaj: Dlaczego Blockchain to przyszłość

Aktualizacja księgi

Ostatnią częścią tego samouczka Hyperledger Fabric dla początkujących jest aktualizacja księgi. Rozważając ten sam przykład samochodu, spójrzmy, jak dodać nowy samochód do dziennika. Użyj poniższego wiersza kodu, aby dodać nowy pojazd do księgi.

await contract.submitTransaction('createCar', 'CAR15', 'Właściciel', 'Marka', 'CarModel', 'Color');

Użycie powyższej komendy utworzy nowy samochód wraz z wymienionymi wartościami atrybutów. Aby wysłać tę nową transakcję do księgi, wpisz poniższy kod:

wywołanie węzła.js

To pomyślnie zaktualizuje księgę.

Wniosek

To prowadzi nas do końca naszego samouczka Hyperledger Fabric . Technologia Blockchain i struktura Hyperledger Fabric mogą zrewolucjonizować wiele branż na całym świecie. Ten samouczek dał krótkie pojęcie o tym, jak działa framework Hyperledger Fabric i jak uruchomić na nim pierwszą transakcję i aplikację. Jeśli chcesz poznać szczegóły i dowiedzieć się, jak tworzyć rzeczywiste aplikacje biznesowe za pomocą frameworka, możesz zgłosić się do programu certyfikacji upGrad i IIIT Bangalore Advanced w ramach kursu technologii blockchain .

Kurs ponad 250 godzin materiałów do nauki w technologii blockchain i frameworkach, takich jak Ethereum, Hyperledger Fabric, Distributed Application Development (rozwój inteligentnych kontraktów, rozwój backendu, API). Jeśli chcesz rozpocząć karierę w programowaniu blockchain, zgłoś się już dziś.

Opanuj technologię przyszłości - Blockchain

Złóż wniosek teraz o certyfikację wykonawczą w Blockchain z IIITB