Hyperledger Besu – javni blokchain Hyperledger otvorenog koda

Želite li saznati više o Hyperledger Besu? Ako to učinite, onda ste došli na pravo mjesto.

Svijet blockchaina cvate uzbudljivim projektima. Sve je u tome da se donese najbolje rješenje za tvrtke koje žele iskoristiti blockchain.

Hyperledger je jedan od najvećih DLT projekata vani. Riječ je o suradnji otvorenog koda koja donosi najbolje napore za unapređenje blockchain tehnologije. Globalnim naporima Linux Foundation želi izgraditi okvir koji tvrtke mogu slijediti u cijelom svijetu. Čelnici iz različitih vertikala sudjeluju u projektu, uključujući bankarstvo, opskrbne lance, proizvodnju, financije i tehnologiju.

Hyperledger se sastoji od nekoliko projekata, uključujući najpopularniju tkaninu Hyperledger.

Upoznajte Hyperledger Besu, novi projekt otvorenog koda koji je nedavno dodan na popis projekata Hyperledger. 

Što je Hyperledger Besu?

Hyperledger Besu prvi je javni blockchain projekt koji se službeno pridružio Hyperledgeru. Prije preuzimanja, poznat je kao ConsenSysov panteon. Novi član prvi je put predložen za članstvo u konzorciju 8. kolovoza.

To je veliki korak s obzirom na to da u konzorciju imamo sjajne projekte, uključujući Hyperledger Fabric i Hyperledger Sawtooth, iza kojih stoje IBM, odnosno Intel.

29. kolovoza 2019. objavljeno je da je Hyperledger Besu dio konzorcija. To je bio izvrstan dodatak s obzirom da je to prvi javni blockchain koji se pridružio redovima Hyperledgera gdje su samo odobreni blockchains dio. 

Dakle, što je Hyperledger Besu?

Riječ je o klijentu Ethereum otvorenog koda koji je razvijen s licencom Apache 2.0. Također je napisan na Javi i koristi se mrežom Ethereum. Druge ključne tehnologije korištene da bi Besu bio funkcionalan uključuju Gorli, Rinkeby i Ropsten.

Kada je riječ o konsenzusnoj metodi, koristi dokaz o autoritetu (Clique i IBFT 2.0) i dokaz o radu (Ethash).

Sve u svemu, izvrsno je rješenje koje omogućuje poduzećima izradu skalabilnih aplikacija visokih performansi na privatnoj mreži. Štoviše, dolazi s podrškom za dozvolu i privatnost.

Što je klijent Ethereuma?


Ako ste obratili pažnju, već znate da smo Besu spomenuli kao klijenta Ethereuma. Pa, što je to Ethereum klijent? Istražimo.

Klijent Ethereum je softver koji se koristi za implementaciju Ethereum protokola. Jednostavnim riječima, može se koristiti za sljedeće:

  • Stvorite izvršno okruženje u Ethereum blockchainu za obradu transakcija
  • Trajna pohrana podataka, uključujući pohranu izvršavanja transakcija
  • Omogućite mrežnu komunikaciju između čvorova (P2P)
  • Nudi API-je za siguran razvoj i blockchain interakciju.

Koje stvari možete učiniti s Hyperledger Besu? Hyperledger Besu Slučajevi upotrebe

Da bismo dobili bolju ideju o tome što Hyperledger Besu blockchain, naučimo stvari koje se mogu učiniti pomoću Hyperledger Besu mreže.

Prva stvar koju ćete primijetiti kod Besu je njegovo sučelje naredbenog retka. Također nudi JSON-RPC API. Obje se mogu koristiti za nadgledanje, uklanjanje pogrešaka, održavanje i pokretanje čvorova na mreži Ethereum.

Ukratko, može se koristiti za stvari koje su vrlo slične onome što je sposobna mreža Ethereum:

  • Razvoj decentralizirane aplikacije (dApp)
  • Pametni razvoj ugovora
  • Rudarstvo etera

Što se tiče tehničke podrške, ona nudi uobičajene alate za razvoj aplikacije i pametne ugovore. Podržava alate kao što su Remix, Truffle i web3j. Međutim, možda nećete pronaći ključnu podršku za upravljanje u tvrtki Besu. Za to trebate koristiti EthSigner koji s njim besprijekorno radi, dajući vam alat za pravilno upravljanje ključevima. Mreža Hyperledger Besu idealna je za poslovne potrebe, što znači da postoji mnogo slučajeva upotrebe Hyperledger Besu.

Besu Ključne značajke: Kako Hyperledger Besu djeluje

Sad kad je naše razumijevanje Hyperledger Besu mreže ojačalo, vrijeme je da razgovaramo o njezinim značajkama. Prolaskom kroz značajke moći ćete shvatiti što Besu čini važnim članom konzorcija Hyperledger.

Specifikacija EEA (Enterprise Ethereum Alliance)

→ Provodi specifikaciju EEA (Enterprise Ethereum Alliance). Specifikacija osigurava da se može povezati s drugim Ethereum projektima koji mogu biti i zatvoreni i otvoreni izvor. Specifikacija je vrlo važna jer osigurava da se projekti ne moraju brinuti zbog problema s zaključavanjem dobavljača. Štoviše, dobivate i standardno sučelje za besprijekornu izgradnju aplikacija. Besu izvrsno surađuje s EEA-om i uspijeva pružiti značajke poduzeća.

EVM (Ethereum virtualni stroj)

EVM je srž bloka Hyperledger Besu. Turing je potpun. Pomaže u pametnom izvršavanju ugovora putem Ethereum blockchain transakcija.

Konsenzusni algoritmi

Hyperledger Besu nudi dobre mogućnosti kada je u pitanju konsenzusni algoritam. Uobičajeno dobivate podršku za algoritme konsenzusa Proof of Work i Proof of Authority. Algoritmi se koriste za obavljanje transakcija na mreži Ethereum.

Dokaz o radu → Uz dokaz o radu rudari mogu obavljati rudarske aktivnosti na mrežnoj mreži Ethereum. U tu svrhu koristi se Ethash.

Dokaz o ovlasti → Za dokaz o ovlasti dobivate više PoA protokola. Ako ne znate, PoA djeluje samo ako između čvorova koji sudjeluju u mreži postoji već uspostavljeno povjerenje. Zato su PoA algoritmi idealni za odobrene mreže, posebno one koje implementiraju poduzeća. 

  • Izvan kutije možete koristiti IBFT 2.0. Odobreni računi brinu se o blokovima i provjeri valjanosti transakcija. Odobreni računi poznati su kao validatori. Skupina validatora tada djeluje kao entitet moći, gdje mogu glasati za dodavanje / uklanjanje validatora. Jedno ograničenje je da IBFT 2.0 ne dopušta rašlje i uvijek će postojati jedan glavni lanac.
  • Clique je zaštitni algoritam koji osigurava toleranciju kvara. Može tolerirati do polovice neuspjelih validatora. Za IBFT 2.0 potrebno je pokrenuti najmanje 2/3 validatora da biste nastavili postupak stvaranja bloka.

Skladištenje

Mreža Hyperledger Besu fleksibilna je kada je u pitanju pružanje podrške za pohranu. Baš kao i drugo blockchain rješenje, također koristi pristup ključ / vrijednost. Izvan okvira koristi bazu podataka ključ / vrijednost RocksDB. Pomaže u pružanju postojanosti podataka. Podaci koji se čuvaju, međutim, mogu se podijeliti u dvije potkategorije.

Blockchain

→ Zaglavlja blokova koriste se za oblikovanje lanca. Podaci unutar zaglavlja blokova koriste se za kriptografsko provjeravanje blok-lanca.

→ S druge strane, tijela bloka sadrže popis transakcija naloga za svaki blok

→ Metapodaci izvršenja transakcije pohranjeni su u potvrdi o transakciji.

Svjetska država

→ hash stateRoot koristi svako zaglavlje bloka za referencu na svjetsku državu.

→ To je mapiranje računa kojima se treba baviti

→ Račun etera pohranjuje se na račune u vanjskom vlasništvu

→ Pametni ugovori sadrže kôd i pohranu

P2P umrežavanje

Što se tiče P2P umrežavanja, Besu implementira mrežni protokol devp2p Ethereum. Protokol osigurava komunikaciju među klijentima. Također djeluje kao dodatni podprotokol IBFT2. Otkriće je napravljeno pomoću UDP protokola, slično onome što čini internetska mreža. Za komunikaciju koristi RLPx – protokol zasnovan na TCP-u. S druge strane, RLPx koristi razne podprotokole, uključujući ETH Wire Protocol (za sinkronizaciju stanja transakcije) i IBF podprotokol (za donošenje konsenzusnih odluka)

Korisnički API-ji

Besu dolazi s izvrsnim API-ima. API-ji koje pruža putem HTTP-a i WebSocket protokola uključuju EEA JSON-RPC API-je i mainnet Ethereum API-je. Također podržava GraphQL API.

Praćenje

Blok lanac Hyperledger Besu podržava značajke praćenja – uključujući nadzor performansi mreže i čvora. Prometej se koristi za praćenje performansi čvorova. Također, metoda JSON-RPC API može se koristiti za debug_metrics.

Što se tiče mrežnih performansi, koriste se Alethi alati, uključujući EthStats Network Monitor ili Block Explorer.

Privatnost

Za privatnost, Besu nudi privatnog upravitelja transakcija. Osigurava da se uključene strane u transakciji ne moraju brinuti zbog krađe identiteta ili bilo kakvog curenja podataka.

Dozvola

I na kraju, nudi odgovarajuće upravljanje dozvolama koje osigurava sudjelovanje samo čvorova. 

Hiperledger Besu Arhitektura

Arhitektura Hyperledger Besu je jednostavna i učinkovita. O svim ključnim komponentama razgovarali smo u odjeljku značajki.

Ključne tri temeljne komponente Besu uključuju sljedeće.

  • Skladištenje
  • Jezgra Ethereuma
  • Umrežavanje

Prvo razgovarajmo o jezgri Ethereuma. Jezgru čini Ethereum Virtual Machine (EVM). Odgovorna je za svako izvršavanje bilo koje transakcije. Na vrhu EVM-a nalazi se Tx procesor koji pomaže EVM-u da djeluje učinkovito i učinkovito.

Konsenzusne metode također su dio jezgre Ethereuma. Ovdje imamo metode konsenzusa, uključujući PoW, Clique i IBFT2. Ostale dvije glavne komponente jezgre Ethereuma uključuju

  • Skup transakcija → Skup transakcija pohranjuje informacije povezane s transakcijama
  • Usklađivač → pomaže sinkronizirati sve čvorove i mrežu.

Čudno, imamo blockchain i svjetsku državu. Svjetska država sastoji se od stanja računa, pohrane računa i pohrane koda.

I na kraju, postoji umrežavanje kojim se upravlja pomoću Ethereum devp2p protokola. Četiri glavne komponente uključuju

  • Otkriće
  • RLPx
  • ETH potprotokol
  • Podprotokol IBF-a

Zahtjev sustava za Besu

Blok lanac Hyperledger Besu vrlo je fleksibilan kada su u pitanju sistemski zahtjevi. Budući da mreže mogu biti dinamične prirode, uključujući veličinu svjetske države, broj transakcija, ograničenje blokade plina i složenost upita, sistemski zahtjev može puno varirati. 

No, većinom vam je potrebno sljedeće.

  • 4 GB RAM-a. Ako se odlučite za pokretanje Ethereum Mainneta, tada vam treba 8 GB RAM-a
  • Što se tiče prostora na disku, trebate najmanje 3 TB za potpunu sinkronizaciju tijekom rada s mrežom Ethereum

Ako ste i dalje zbunjeni, trebate koristiti Prometheus za praćenje čvora radi poznavanja točnih zahtjeva za diskom i procesorom. Također, Grafana nadzorna ploča radi s Besu, koju možete koristiti za jednostavno nadgledanje.

Mapa puta Hyperledger Besu

Činjenica da je otvoren od otvorenog koda od listopada 2018., sada je otvoren za doprinos svima. Plan Hyperledgera Besu izgleda zanimljivo. Ispod su ključne prekretnice mape puta kojima oni teže.

→ Izgradite grupe za privatnost, odobrenje računa, odobrenje korisničkog sučelja, nadogradnja mreže Istanbul

: Hyperledger Besu 1.2, 31. srpnja 2019

→ Podrška za strujanje, prilagođeno nadgledanje za IBFT, upravljanje dozvolama: Hyperledger Besu 1.3, 7. listopada 2019.

→ Multi Ethereum mrežni klijent, Cross-Privacy Group, napredne značajke privatnosti, integracija poduzeća, Ethereum 2.0, rano 2020..

Instaliranje binarne distribucije, izrada iz izvora i pokretanje Besu

U ovom ćemo odjeljku naučiti kako instalirati Besu, graditi i pokretati ga na MacOS-u i drugim operativnim sustavima.

Instaliranje binarne distribucije

Ako koristite Mac OS, to morate imati Homebrew i Java JDK za početak. Također vam je potrebna Java 11+ jer starije verzije Java nisu podržane.

Sada pokrenite sljedeću naredbu za instalaciju pomoću Homebrew-a.

pivo slavina hiperledger / besu

pivo instalirati besu

Da biste provjerili je li Besu uspješno instaliran, provjerite sljedećom naredbom.

besu –pomoć

Ako koristite Unix / Linux / Windows, onda preuzmite Besu zapakirane binarne datoteke. Nakon preuzimanja, raspakirajte datoteke i idite u bespomoćni direktorij. 

Da biste potvrdili da je Besu ispravno instaliran, upotrijebite besu –pomoć naredba.

Gradi iz izvora

Da biste Besu izgradili iz izvora, trebate klonirati spremište Besu.

git klon – rekurzivan https://github.com/hyperledger/besu.git

Nakon završetka kloniranja uklonit ćemo testove pomoću sljedeće naredbe:

./ gradlew build -x test

Sada idite u distribucijski direktorij pomoću naredbe:

cd gradnja / distribucije /

Odatle morate proširiti arhivu distribucije pomoću sljedeće naredbe.

katran -xzf besu-.tar.gz

S proširenim datotekama, sada se premjestite u novu mapu.

cd besu- /

bin / besu –pomoć

Ako se zadnja naredba uspješno izvodi, uspješno ste gradili iz izvora.

Za Windows je postupak gotovo isti. Počinjete s kloniranjem spremišta, uklanjanjem testova, odlaskom u distribucijski direktorij, proširivanjem i konačno provjerom je li instalacija uspješna ili ne.

Pokrećući Besu

Sjajno, sad kad smo unaprijed instalirali Besu, sada ga moramo pokrenuti. Za početak morate napraviti sljedeće korake.

  • Podaci lokalnog bloka
  • Konfiguracija postanka
  • Potvrdite da je čvor pokrenut ili ne
  • Pokrenite čvor za testiranje

Prvi korak je postavljanje podataka lokalnog bloka. Ako ste se povezali s prethodnom mrežom, tada se morate riješiti podataka lokalnog bloka. Također možete konfigurirati opciju –data-path da odredite nove podatke lokalnog bloka. 

Podatke lokalnog bloka možete izbrisati iz direktorija besu / build / distribution / besu-. Tamo izbrišite direktorij baze podataka i spremni ste za to!

Ako koristite Mainnet, Goerli, Rinkeby ili Ropsten, tada je konfiguracija postanja navedena kada se s njima povežete. 

Također, možete navesti atribut –network = dev da biste pokrenuli genesis konfiguraciju s praznim čvorovima. Također, postavlja konfiguraciju postanka s fiksnom niskom poteškoćom.

Da biste potvrdili radi li čvor, trebate upotrijebiti opciju –rpc – http. Kada završite, upotrijebite cURL, a zatim pozovite JSON-RPC API metode. Ako postoji odgovor, tada je čvor pokrenut.

Na kraju, da biste pokrenuli čvor za testiranje, morate upotrijebiti sljedeću naredbu

besu –network = dev –miner-enabled –miner-coinbase = 0xfe3b557e8fb62b89f4916b721be55ceb828dbd73 –rpc-http-cors-origins = ”all” –host-whitelist = ”*” –rpc-ws-enabled –rpc-http-enabled -data- put = / tmp / tmpDatdir

Privatnost u Hyperledger Besu

Dopuštene mreže poznate su po svojim značajkama privatnosti. Besu se ne razlikuje jer nudi izvanredne mogućnosti privatnosti već izravno. S Besu možete koristiti Privatnost u skladu s EEA ili Besu-proširena privatnost.

Da biste stvorili i upravljali grupama za privatnost, možete koristiti već dostupne metode JSON-RPC API. Te se metode mogu koristiti za stvaranje i upravljanje grupama privatnosti

  • priv_createPrivacyGroup
  • priv_findPrivacyGroup
  • priv_deletePrivacyGroup

Što se tiče transakcija, Besu provodi samo ograničene transakcije. To se radi kako bi se osigurala privatnost i transakcije učinile privatnima.

Transakcije su potpisane određenim ključem ili slučajnim ključem. Ako se želite prijaviti određenim ključem, tada morate upotrijebiti datoteku –privacy-marker-transakcija-potpisivanje-ključa, koja je dostupna s Hyperledger Besu. 

Ako ste zainteresirani, možete pogledati detaljan vodič o tome kako konfigurirati mrežu privatnih transakcija ovdje. U tutorialu možete pronaći Orion kao jedan od preduvjeta za početak.

Dozvola u Hyperledger Besu

Dozvola je kritični dio bilo kojeg okvira za blockchain poduzeća. Isto vrijedi i za Besu. Bilo koja odobrena mreža okružuje se oko ideje da dopušta samo određene čvorove. Oni sudjeluju i omogućuju mrežu obavljanjem transakcija ili dopuštanjem transakcija. 

U slučaju peer-to-peer mreže, potrebno je provesti pravila na čvorovima kako bi se moglo izvršiti odobrenje. Jasno je da je razina povjerenja već potrebna kako bi bila prisutna prije nego što ovlaštena mreža može početi raditi. Da bi se osiguralo da loši glumci ovdje imaju minimalnu ulogu, potrebno je poduzeti mjere predostrožnosti. Na primjer, loši glumci ne mogu utjecati na donošenje odluka u mreži. Odgovarajuća pravila i propisi također mogu pomoći u prepoznavanju loših aktera i njihovom uklanjanju kad ih uhvate u zlonamjernim radnjama.

Osim dopuštanja čvorova, postoji i opcija dozvola računa koja provode više pravila i propisa. Odobrenje računa može se koristiti za provođenje zahtjeva za identitetom i ukrcavanje. Također pomaže obustaviti račune, staviti na crnu listu neispravnih ugovora i ograničiti račune prilikom izvođenja radnji.

Hyperledger Besu blockchain pruža i lokalni i onchain.

Lokalno dopuštenje vrši se na razini čvora. Za njegovu primjenu koristi se datoteka za konfiguraciju dozvola. Kako su dopuštenja lokalna, ona ne utječu na mrežu. Ovo je korisno za funkcioniranje čvora – koji je neovisan o ostatku mreže. Također je potrebno zaštititi čvorove ako se dogodi nešto pogrešno.

Onchain dopuštanje, s druge strane, kodirani su unutar pametnih ugovora. Odobrenje Onchain-a je za cijelu mrežu i svi ga čvorovi mogu čitati i ažurirati. Dopuštanje onchaina može se mijenjati ili ažurirati samo uz koordinaciju. Također, nakon što se ažurira, primjenjuje se na mreži.

Opis: Kako funkcioniraju lokalni i OnChain Permissioned

Možete i slijediti ovaj vodič da biste znali kako postaviti mrežu dozvola u Besu.

Ostale stvari vrijedne spomena

Hyperledger Besu GitHub: Ako mislite da možete pridonijeti Hyperledger Besu, možete provjeriti Hyperledger Besu GitHub spremište ovdje.

Trenutno ne postoji najbolji tečaj za Hyperledger na Besu, i zato također možete provjeriti korisničku dokumentaciju ovdje. Imaju cjelovite vodiče o tome kako brzo pokrenuti mreže ili kako stvoriti privatnu mrežu.

Zaključak

To nas vodi do kraja našeg vodiča za početak rada Hyperledger Besu. Ovdje smo pokrili puno stvari o Besu.

Uskoro ćemo pokrivati ​​Hyperledger Fabric i Besu. Stoga ne zaboravite pretplatiti se na naš bilten.

Također, što mislite o tome? Komentirajte u nastavku i javite nam.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map