Căutați să aflați despre Hyperledger Besu? Dacă o faci, atunci ai ajuns la locul potrivit.

Lumea blockchainului înflorește cu proiecte interesante. Este vorba de a aduce cea mai bună soluție pentru companiile care doresc să utilizeze blockchain-ul.

Hyperledger este unul dintre cele mai mari proiecte DLT de acolo. Este o colaborare open-source pentru a aduce cel mai bun efort pentru avansarea tehnologiei blockchain. Cu efort global, Linux Foundation dorește să construiască un cadru pe care companiile să îl poată urmări în întreaga lume. Lideri din diverse verticale participă la proiect, inclusiv servicii bancare, lanțuri de aprovizionare, producție, finanțe și tehnologie.

Hyperledger constă din mai multe proiecte, inclusiv cea mai populară fabrică Hyperledger.

Faceți cunoștință cu Hyperledger Besu, un nou proiect open source care a fost adăugat recent pe lista de proiecte Hyperledger.

Ce este Hyperledger Besu?

Hyperledger Besu este primul proiect public de blockchain care se alătură oficial Hyperledger. Înainte de a prelua conducerea, este cunoscut sub numele de Panteonul ConsenSys. Noul membru a fost propus pentru prima dată pentru a fi adăugat la consorțiul membru pe 8 august.

Acesta este un pas important, având în vedere că avem proiecte extraordinare în cadrul consorțiului, inclusiv Hyperledger Fabric și Hyperledger Sawtooth, susținute atât de IBM, cât și de Intel, respectiv.

Pe 29 august 2019, Hyperledger Besu a fost anunțat că va face parte din consorțiu. A fost o adăugire excelentă, având în vedere că este primul blockchain public care s-a alăturat rândurilor Hyperledger în care doar blockchain-urile permise fac parte din.

Deci, ce este Hyperledger Besu?

Este un client Ethereum open source care este dezvoltat cu o licență Apache 2.0. De asemenea, este scris în Java și folosește rețeaua publică Ethereum. Alte tehnologii cheie utilizate pentru a face Besu funcțional includ Gorli, Rinkeby și Ropsten.

Când vine vorba de metoda consensului, folosește dovada autorității (Clique și IBFT 2.0) și dovada muncii (Ethash).

În general, este o soluție excelentă care permite întreprinderilor să construiască aplicații scalabile, de înaltă performanță pe o rețea privată. Mai mult, vine, de asemenea, cu sprijinul permisiunii și confidențialității.

Ce este un client Ethereum?

Dacă ați acordat atenție, știți deja că am menționat Besu ca client Ethereum. Deci, ce este un client Ethereum? Să explorăm.

Clientul Ethereum este un software utilizat pentru implementarea protocolului Ethereum. În cuvinte simple, poate fi folosit pentru a face următoarele lucruri:

  • Creați un mediu de execuție în blockchain-ul Ethereum pentru procesarea tranzacțiilor
  • Stocare de date persistentă, inclusiv stocarea execuției tranzacției
  • Activați comunicația de rețea peer-to-peer (P2P) între noduri
  • Oferă API-uri pentru dezvoltarea sigură și interacțiunea blockchain.

Ce lucruri poți face cu Hyperledger Besu? Huse Hyperledger Besu

Pentru a ne face o idee mai bună despre ce blockchain Hyperledger Besu, să învățăm lucrurile care se pot face folosind rețeaua Hyperledger Besu.

Primul lucru pe care îl veți observa despre Besu este interfața sa de linie de comandă. De asemenea, oferă API-ul JSON-RPC. Ambele pot fi utilizate pentru a monitoriza, depana, întreține și rula noduri în rețeaua Ethereum.

Pe scurt, poate fi folosit pentru lucruri care sunt foarte asemănătoare cu ceea ce este capabilă o rețea Ethereum:

  • Dezvoltare de aplicații descentralizate (dApp)
  • Dezvoltare de contracte inteligente
  • Exploatarea eterului

Când vine vorba de asistență tehnică, oferă instrumente comune pentru dApp și dezvoltarea contractelor inteligente. Suportă instrumente precum Remix, Truffle și web3j. Cu toate acestea, este posibil să nu găsiți asistență pentru managementul cheie în cadrul Besu. Pentru aceasta, trebuie să utilizați EthSigner care funcționează impecabil cu acesta, oferindu-vă instrumentul pentru gestionarea corectă a cheilor. Rețeaua Hyperledger Besu este ideală pentru nevoile întreprinderii, ceea ce înseamnă că există o mulțime de cazuri de utilizare Hyperledger Besu.

Caracteristici cheie Besu: Cum funcționează Hyperledger Besu

Acum că înțelegerea noastră despre rețeaua Hyperledger Besu a devenit mai puternică, este momentul să discutăm despre caracteristicile sale. Parcurgând caracteristicile, veți putea, de asemenea, să înțelegeți ce face Besu, cum ar fi un membru important al consorțiului Hyperledger.

Specificația EEA (Enterprise Ethereum Alliance)

→ Implementează specificația EEA (Enterprise Ethereum Alliance). Specificația asigură faptul că se poate conecta cu alte proiecte Ethereum care pot fi atât închise, cât și open source. Specificația este foarte importantă, deoarece asigură faptul că proiectele nu trebuie să se îngrijoreze de problemele de blocare ale furnizorilor. Mai mult, obțineți și interfața standard pentru construirea fără probleme a aplicațiilor. Besu funcționează excelent cu EEA și reușește să ofere funcții de întreprindere.

EVM (mașină virtuală Ethereum)

EVM se află în centrul blockchain-ului Hyperledger Besu. Este complet Turing. Ajută la executarea contractului inteligent prin tranzacțiile Ethereum blockchain.

Algoritmi de consens

Hyperledger Besu oferă opțiuni bune atunci când vine vorba de algoritmul de consens. Din cutie, primiți asistență atât pentru algoritmii de consens Dovada muncii, cât și pentru dovada autorității. Algoritmii sunt utilizați pentru a face tranzacții în rețeaua Ethereum.

Dovada muncii → Cu Dovada muncii, minerii pot face activități miniere pe rețeaua principală Ethereum. În acest scop, se folosește Ethash.

Dovada autorității → Pentru dovada autorității, primiți mai multe protocoale PoA. Dacă nu știți, PoA funcționează numai dacă există o încredere deja stabilită între nodurile care participă la rețea. De aceea, algoritmii PoA sunt ideali pentru rețelele permise, în special cele implementate de întreprinderi.

  • Din cutie, puteți utiliza IBFT 2.0. Conturile aprobate se ocupă de blocuri și de validarea tranzacțiilor. Conturile aprobate sunt cunoscute ca validatori. Grupul de validatori acționează apoi ca o entitate de putere, unde pot vota pentru adăugarea / eliminarea validatorilor. O limitare este că IBFT 2.0 nu permite furcile și va exista întotdeauna un singur lanț principal.
  • Clique este un algoritm de protecție care asigură toleranța la erori. Poate tolera până la jumătate din validatorii care nu reușesc. Pentru IBFT 2.0, este necesar să rulați cel puțin 2/3 din validatori pentru a continua procesul de creare a blocurilor.

Depozitare

Rețeaua Hyperledger Besu este flexibilă atunci când vine vorba de furnizarea de suport pentru stocare. La fel ca alte soluții blockchain, folosește și abordarea cheie-valoare. Din cutie, folosește baza de date valoare-cheie RocksDB. Ajută la furnizarea persistenței datelor. Cu toate acestea, datele stocate pot fi împărțite în două subcategorii.

Blockchain

→ Anteturile de blocuri sunt utilizate pentru a forma lanțul. Informațiile din antetele blocului sunt utilizate pentru a verifica starea blockchainului criptografic.

→ Corpurile de blocuri, pe de altă parte, conțin lista tranzacțiilor de comandă pentru fiecare bloc

→ Metadatele de execuție a tranzacției sunt stocate în chitanța tranzacției.

Statul Mondial

→ Hash-ul stateRoot este utilizat de fiecare antet de bloc pentru a face referire la starea mondială.

→ Este maparea conturilor de adresat

→ Soldul eteric este stocat în conturi externe

→ Contractele inteligente conțin codul și stocarea

Rețea P2P

Când vine vorba de rețea P2P, Besu implementează protocolul de rețea devp2p Ethereum. Protocolul asigură comunicarea inter-client. De asemenea, acționează ca un sub-protocol IBFT2 suplimentar. Descoperirea se face folosind protocolul bazat pe UDP, similar cu ceea ce face o rețea de internet. Pentru comunicare, utilizează RLPx – un protocol bazat pe TCP. RLPx, pe de altă parte, folosește diverse sub-protocoale, inclusiv protocolul ETH Wire Protocol (pentru sincronizarea stării tranzacției) și sub-protocol IBF (pentru luarea deciziilor de consens)

API-uri orientate către utilizator

Besu vine cu API-uri excelente. API-urile pe care le furnizează prin protocolul HTTP și WebSocket includ API-urile JEA-RPC EEA și API-urile Ethereum mainnet. De asemenea, acceptă API-ul GraphQL.

Monitorizarea

Blockchain-ul Hyperledger Besu acceptă funcții de monitorizare – inclusiv monitorizarea performanței rețelei și a nodurilor. Prometeu este utilizat pentru a monitoriza performanța nodului. De asemenea, metoda API JSON-RPC poate fi utilizată pentru debug_metrics.

Când vine vorba de performanța rețelei, sunt utilizate instrumentele Alethi, inclusiv EthStats Network Monitor sau Block Explorer.

Confidențialitate

Pentru confidențialitate, Besu oferă un Manager de tranzacții private. Se asigură că părțile implicate într-o tranzacție nu trebuie să-și facă griji cu privire la furtul de identitate sau la orice scurgere de informații.

Permisiunea

În cele din urmă, oferă gestionarea adecvată a permisiunilor, care asigură numai nodurile cărora li se permite să participe.

Hyperledger Besu Architecture

Arhitectura Hyperledger Besu este simplă și eficientă. Am discutat toate componentele cheie în secțiunea de caracteristici.

Hyperledger Besu Architecture

Cele trei componente cheie ale Besu includ următoarele.

  • Depozitare
  • Core de Ethereum
  • Rețele

Să discutăm mai întâi nucleul Ethereum. Nucleul este format din mașina virtuală Ethereum (EVM). Este responsabil pentru orice executare a oricărei tranzacții. Pe partea de sus a EVM, există un procesor Tx care ajută EVM să funcționeze eficient și eficient.

Metodele de consens sunt, de asemenea, o parte a nucleului Ethereum. Aici avem metode de consens, inclusiv PoW, Clique și IBFT2. Celelalte două componente principale ale nucleului Ethereum includ

  • Grup de tranzacții → Grupul de tranzacții stochează informații legate de tranzacții
  • Sincronizator → ajută la sincronizarea tuturor nodurilor și a rețelei.

Pentru ciudat, avem blockchain și World State. World State constă din starea contului, stocarea contului și stocarea codului.

În cele din urmă, există o rețea care este operată utilizând protocolul Ethereum devp2p. Cele patru componente principale includ

  • Descoperire
  • RLPx
  • Sub-protocol ETH
  • Sub-protocol IBF

Cerințe de sistem pentru Besu

Blockchain-ul Hyperledger Besu este foarte flexibil în ceea ce privește cerințele de sistem. Deoarece rețelele pot avea o natură dinamică, inclusiv dimensiunea statului mondial, numărul de tranzacții, limita de blocare a gazelor și complexitatea interogărilor, cerința sistemului poate varia foarte mult.

Dar, în cea mai mare parte, aveți nevoie de următoarele.

  • 4 GB RAM. Dacă decideți să rulați Ethereum Mainnet, atunci aveți nevoie de 8 GB RAM
  • În ceea ce privește spațiul pe disc, aveți nevoie de cel puțin 3 TB pentru sincronizarea completă în timp ce lucrați cu Ethereum mainnet

Dacă sunteți încă confuz, atunci trebuie să utilizați Prometheus pentru a monitoriza nodul pentru a cunoaște exact cerințele de disc și CPU. De asemenea, tabloul de bord Grafana funcționează cu Besu, pe care îl puteți utiliza pentru a monitoriza cu ușurință.

Foaia de parcurs Hyperledger Besu

Faptul că a devenit open source din octombrie 2018, este acum deschis pentru contribuția oricui. Foaia de parcurs a Hyperledger Besu pare interesantă. Mai jos sunt etapele cheie ale foii de parcurs pe care le vizează.

→ Construiți grupuri de confidențialitate, permisiunea contului, permiterea UI, actualizarea rețelei din Istanbul

: Hyperledger Besu 1.2, 31 iulie 2019

→ Suport pentru flux, monitorizare personalizată pentru IBFT, guvernare a permiselor: Hyperledger Besu 1.3, 07 octombrie 2019

→ Client de rețea Multi Ethereum, Grup Cross-Privacy, Funcții avansate de confidențialitate, Integrare întreprinderi, Ethereum 2.0, începutul anului 2020.

Instalarea distribuției binare, construirea din sursă și pornirea Besu

În această secțiune, vom învăța cum să instalăm Besu, să construim și să-l pornim pe MacOS și alte sisteme de operare.

Instalarea distribuției binare

Dacă utilizați Mac OS, trebuie să aveți Homebrew și Java JDK pentru a începe. De asemenea, aveți nevoie de Java 11+, deoarece versiunile Java anterioare nu sunt acceptate.

Acum, executați următoarea comandă pentru a instala utilizând Homebrew.

brew tap hyperledger / besu

brew install besu

Pentru a verifica dacă Besu este instalat cu succes, verificați cu următoarea comandă.

besu –help

Dacă utilizați Unix / Linux / Windows, atunci trebuie să descărcați Besu binare ambalate. După descărcare, despachetați fișierele și accesați directorul besu-.

Pentru a confirma că Besu este instalat corect, utilizați besu –help comanda.

Construiți din sursă

Pentru a construi Besu de la sursă, trebuie să clonați depozitul Besu.

git clone –recursive https://github.com/hyperledger/besu.git

După clonare, vom elimina testele folosind următoarea comandă:

./ gradlew build -x test

Acum, accesați directorul de distribuție folosind comanda:

cd build / distributii /

De acolo, trebuie să extindeți arhiva de distribuție folosind următoarea comandă.

tar -xzf besu-.tar.gz

Cu fișierele extinse, treceți acum la noul folder.

cd besu- /

bin / besu –help

Dacă ultima comandă rulează cu succes, ați construit cu succes din sursă.

Pentru Windows, procesul este aproape același. Începeți prin clonarea depozitului, eliminarea testelor, accesarea directorului de distribuție, extinderea acestuia și apoi verificarea finală a instalării are succes sau nu.

Începând din Besu

Minunat, acum că avem Besu preinstalat, acum trebuie să-l rulăm. Pentru a începe, trebuie să efectuați pașii următori.

  • Date bloc locale
  • Configurarea Genesis
  • Confirmați că nodul rulează sau nu
  • Rulați nodul pentru testare

Primul pas este să configurați datele blocului local. Dacă v-ați conectat la o rețea anterioară, atunci trebuie să scăpați de datele blocului local. De asemenea, puteți configura opțiunea –data-path pentru a specifica noile date de bloc local.

Puteți șterge datele blocului local din directorul besu / build / distribution / besu-. Acolo, ștergeți directorul bazei de date și sunteți bine să mergeți!

Dacă utilizați Mainnet, Goerli, Rinkeby sau Ropsten, atunci configurația genesis este specificată atunci când vă conectați cu ei.

De asemenea, puteți specifica atributul –network = dev pentru a începe configurația Genesis cu noduri de boot goale. De asemenea, setează configurația genezei cu o dificultate redusă fixă.

Pentru a confirma dacă nodul rulează, atunci trebuie să utilizați opțiunea activată –rpc – http. După ce ați terminat, utilizați cURL și apoi apelați metodele API JSON-RPC. Dacă există un răspuns, atunci nodul rulează.

În cele din urmă, pentru a rula nodul pentru testare, trebuie să utilizați următoarea comandă

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

Confidențialitate în Hyperledger Besu

Rețelele permise sunt cunoscute pentru caracteristicile lor de confidențialitate. Besu nu este diferit, deoarece oferă opțiuni excelente de confidențialitate. Cu Besu, puteți utiliza Confidențialitate conformă SEE sau Besu-Confidențialitate extinsă.

Pentru a crea și gestiona grupuri de confidențialitate, puteți utiliza metodele API JSON-RPC deja disponibile. Aceste metode pot fi utilizate pentru a crea și gestiona grupuri de confidențialitate

  • priv_createPrivacyGroup
  • priv_findPrivacyGroup
  • priv_deletePrivacyGroup

Când vine vorba de tranzacții, Besu implementează doar tranzacții restricționate. Acest lucru se face pentru a asigura confidențialitatea și a face tranzacțiile confidențiale.

Tranzacțiile sunt semnate de o anumită cheie sau o cheie aleatorie. Dacă doriți să vă conectați cu o anumită cheie, trebuie să utilizați –privacy-marker-transaction-signature-key-file, care este disponibil cu Hyperledger Besu.

Dacă sunteți interesat, puteți consulta un tutorial detaliat despre cum să configurați rețeaua de tranzacții private Aici. În tutorial, puteți găsi Orion ca fiind una dintre condițiile prealabile pentru a începe.

Permisiunea în Hyperledger Besu

Permisiunea este o parte critică a oricărui cadru blockchain de întreprindere. Același lucru este valabil și pentru Besu. Orice rețea autorizată înconjoară ideea de a permite doar anumite noduri. Aceștia participă și permit rețeaua efectuând o tranzacție sau permițând tranzacții.

În cazul unei rețele peer-to-peer, este necesar să se aplice regulile privind nodurile, astfel încât să se poată face permisiunea. În mod clar, este necesar deja un nivel de încredere pentru a fi prezent înainte ca o rețea autorizată să poată fi activată. Pentru a ne asigura că actorii răi au un rol minim aici, trebuie luate măsuri de precauție. Actorii răi singuri, de exemplu, nu pot avea impact asupra luării deciziilor rețelei. Regulile și reglementările adecvate pot ajuta, de asemenea, la identificarea actorilor răi și la eliminarea lor atunci când sunt prinși acțiuni rău intenționate.

În afară de permisiunea nodurilor, există și o opțiune de permisiuni de cont care impun mai multe reguli și reglementări. Permiterea contului poate fi utilizată pentru a impune cerințele de identitate și integrarea. De asemenea, ajută la suspendarea conturilor, pe lista neagră a contractelor încălcate și la restricționarea conturilor atunci când efectuați acțiuni.

Hyperledger Besu blockchain oferă atât local cât și onchain.

Permisiune locală se face la nivelul nodului. Pentru a-l implementa, este utilizat un fișier de configurare a permisiunilor. Deoarece permisiunile sunt locale, acestea nu afectează rețeaua. Acest lucru este util pentru modul în care funcționează nodul – care sunt independente de restul rețelei. De asemenea, este necesar să protejați nodurile dacă se întâmplă ceva greșit.

Permisiunea Onchain, pe de altă parte, sunt codificate în cadrul contractelor inteligente. Permisiunea Onchain este la nivelul întregii rețele și toate nodurile o pot citi și actualiza. Permiterea Onchain poate fi modificată sau actualizată numai cu coordonare. De asemenea, odată ce este actualizat, este aplicat în întreaga rețea.

Hyperledger Besu

Subtitrare: Cum funcționează permisul local și OnChain

De asemenea, puteți urmări acest ghid pentru a ști cum să configurați o rețea de autorizare în Besu.

Alte lucruri demne de menționat

Hyperledger Besu GitHub: Dacă credeți că puteți contribui la Hyperledger Besu, puteți verifica depozitul Hyperledger Besu GitHub Aici.

În prezent, nu există cel mai bun curs Hyperledger pe Besu și de aceea puteți consulta și documentația utilizatorului Aici. Au tutoriale complete despre cum să porniți rapid rețelele sau cum să creați o rețea privată.

Concluzie

Acest lucru ne conduce la sfârșitul ghidului nostru de începere al Hyperledger Besu. Aici am acoperit o mulțime de lucruri despre Besu.

În curând vom acoperi Hyperledger Fabric vs Besu în curând. Așadar, nu uitați să vă abonați la newsletter-ul nostru.

De asemenea, ce părere aveți despre asta? Comentează mai jos și anunță-ne.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me