Follow Us
Facebooktwitteryoutube
YouTube
Promo
banner
Promo
banner

Hyperledger Besu – публичният блокчейн на Hyperledger с отворен код

Търсите ли да научите за Hyperledger Besu? Ако го направите, значи сте попаднали на правилното място.

Светът на блокчейн цъфти с вълнуващи проекти. Всичко е свързано с предоставянето на най-доброто решение за компании, които искат да се възползват от блокчейн.

Hyperledger е един от най-големите DLT проекти там. Това е сътрудничество с отворен код, за да донесе най-добрите усилия за напредък на блокчейн технологията. С глобални усилия Linux Foundation иска да изгради рамка, която компаниите могат да следват по целия свят. В проекта участват лидери от различни вертикали, включително банки, вериги за доставки, производство, финанси и технологии.

Hyperledger се състои от няколко проекта, включително най-популярната Hyperledger Fabric.

Запознайте се с Hyperledger Besu, нов проект с отворен код, който наскоро е добавен към списъка с проекти на Hyperledger.

Какво е Hyperledger Besu?

Hyperledger Besu е първият публичен блокчейн проект, който официално се присъединява към Hyperledger. Преди да го поеме, той е известен като ConsenSys ’Pantheon. Новият член беше предложен за първи път за член на консорциума на 8 август.

Това е голяма стъпка, имайки предвид, че имаме страхотни проекти в консорциума, включително Hyperledger Fabric и Hyperledger Sawtooth, подкрепени съответно от IBM и Intel.

На 29 август 2019 г. Hyperledger Besu беше обявен за част от консорциума. Това беше чудесно допълнение, като се има предвид, че това е първата публична блокчейн, която се присъединява към редиците на Hyperledger, където само разрешени блокчейн са част от.

И така, какво е Hyperledger Besu?

Това е клиент с отворен код Ethereum, който е разработен с лиценз Apache 2.0. Той също е написан на Java и използва публичната мрежа Ethereum. Други ключови технологии, използвани за превръщането на Besu в функционални, включват Gorli, Rinkeby и Ropsten.

Що се отнася до метода на консенсус, той използва доказателство за власт (Clique и IBFT 2.0) и доказателство за работа (Ethash).

Всичко на всичко, това е чудесно решение, което позволява на предприятията да изграждат мащабируеми, високопроизводителни приложения в частна мрежа. Освен това той идва с поддръжката на разрешителни и поверителност.


Какво е клиент на Ethereum?

Ако сте обърнали внимание, вече знаете, че споменахме Besu като клиент на Ethereum. И така, какво е клиент на Ethereum? Нека да изследваме.

Клиентът на Ethereum е софтуер, който се използва за внедряване на протокол Ethereum. С прости думи, той може да се използва за следните неща:

  • Създайте среда за изпълнение в блокчейн Ethereum за обработка на транзакции
  • Постоянно съхранение на данни, включително съхраняване на изпълнение на транзакции
  • Активиране на peer-to-peer (P2P) мрежова комуникация между възли
  • Предлага API за безопасно развитие и взаимодействие на блокчейн.

Какви неща можете да правите с Hyperledger Besu? Случаи на използване на Hyperledger Besu

За да получите по-добра представа за това какво представлява блокчейнът на Hyperledger Besu, нека научим нещата, които могат да бъдат направени с помощта на мрежата Hyperledger Besu.

Първото нещо, което ще забележите при Besu, е неговият интерфейс за команден ред. Той също така предлага JSON-RPC API. И двете могат да се използват за наблюдение, отстраняване на грешки, поддръжка и стартиране на възли в мрежата Ethereum.

Накратко, той може да се използва за неща, които са много подобни на това, на което е способна мрежата Ethereum:

  • Разработка на децентрализирано приложение (dApp)
  • Интелигентно разработване на договори
  • Копаене на етер

Що се отнася до техническата поддръжка, тя предлага общи инструменти за разработка на dApp и интелигентни договори. Той поддържа инструменти като Remix, Truffle и web3j. Възможно е обаче да не намерите ключова поддръжка за управление в Besu. За това трябва да използвате EthSigner, който работи безотказно с него, като ви дава инструмента за правилно управление на ключовете. Мрежата Hyperledger Besu е идеална за корпоративни нужди, което означава, че има много случаи на използване на Hyperledger Besu.

Besu Основни характеристики: Как работи Hyperledger Besu

Сега, когато разбирането ни за мрежата Hyperledger Besu стана по-силно, сега е време да обсъдим нейните характеристики. Преглеждайки функциите, вие също ще можете да разберете какво прави Besu като важен член на консорциума Hyperledger.

Спецификация на EEA (Enterprise Ethereum Alliance)

→ Прилага спецификацията EEA (Enterprise Ethereum Alliance). Спецификацията гарантира, че може да се свърже с други проекти на Ethereum, които могат да бъдат както затворени, така и с отворен код. Спецификацията е много важна, тъй като гарантира, че проектите не трябва да се притесняват от проблеми със заключването на доставчика. Освен това получавате и стандартния интерфейс за безпроблемно изграждане на приложения. Besu работи чудесно с EEA и успява да предостави корпоративни функции.

EVM (виртуална машина Ethereum)

EVM е в основата на блокчейна Hyperledger Besu. Тюринг е пълен. Помага при изпълнението на интелигентни договори чрез блокчейн транзакциите на Ethereum.

Алгоритми на консенсуса

Hyperledger Besu предлага добри възможности, когато става въпрос за консенсусен алгоритъм. Извън кутията получавате поддръжка както за консенсус алгоритми за доказателство за работа, така и за доказателство за власт. Алгоритмите се използват за извършване на транзакции в мрежата Ethereum.

Доказателство за работа → С доказателство за работа майньорите могат да извършват дейност по добив в основната мрежа на Ethereum. За целта се използва Ethash.

Доказателство за правомощия → За доказателство за правомощия получавате множество PoA протоколи. Ако не знаете, PoA работи само ако има вече установено доверие между възлите, участващи в мрежата. Ето защо PoA алгоритмите са идеални за разрешени мрежи, особено тези, които се прилагат от предприятия.

  • Извън кутията можете да използвате IBFT 2.0. Одобрените акаунти се грижат за блокирането и валидирането на транзакциите. Одобрените акаунти са известни като валидатори. След това групата на валидаторите действа като субект на властта, където те могат да гласуват за добавяне / премахване на валидатори. Едно ограничение е, че IBFT 2.0 не позволява разклонения и винаги ще има една основна верига.
  • Clique е алгоритъм за защита, който осигурява толерантност към повреди. Той може да толерира до половината неуспешни валидатори. За IBFT 2.0 е необходимо да стартирате поне 2/3 от валидаторите, за да продължите процеса на създаване на блок.

Съхранение

Мрежата на Hyperledger Besu е гъвкава, когато става въпрос за предоставяне на поддръжка за съхранение. Подобно на друго блокчейн решение, той също използва подхода ключ-стойност. Извън кутията той използва базата данни ключ-стойност RocksDB. Помага да се осигури постоянство на данните. Съхраняваните данни обаче могат да бъдат разделени на две подкатегории.

Блокчейн

→ Блоковите заглавки се използват за оформяне на веригата. Информацията в блоковите заглавия се използва за криптографско потвърждаване на състоянието на блокчейна.

→ Телата на блоковете, от друга страна, съдържат списък с транзакции за поръчки за всеки блок

→ Метаданните за изпълнение на транзакцията се съхраняват в касовата бележка.

Световна държава

→ Хешът stateRoot се използва от всеки заглавен блок за препратка към световното състояние.

→ Това е картографиране на акаунти към адреса

→ Етерният баланс се съхранява във външни акаунти

→ Интелигентните договори съдържат кода и хранилището

P2P мрежа

Що се отнася до P2P мрежата, Besu прилага мрежовия протокол devp2p Ethereum. Протоколът осигурява комуникация между клиенти. Той също така действа като допълнителен подпротокол IBFT2. Откритието е направено с помощта на UDP-базиран протокол, подобно на това, което прави интернет мрежата. За комуникация използва RLPx – TCP-базиран протокол. RLPx, от друга страна, използва различни подпротоколи, включително ETH Wire Protocol (за синхронизиране на състоянието на транзакциите) и подпротокол IBF (за вземане на решения за консенсус)

Потребителски API

Besu се предлага с отлични API. Приложните програмни интерфейси (API), които той предоставя чрез протокол HTTP и WebSocket, включват API на EEA JSON-RPC и API на mainnet Ethereum. Той също така поддържа API на GraphQL.

Мониторинг

Hyperledger Besu blockchain поддържа функции за наблюдение – включително монитор за ефективност на мрежата и възлите. Prometheus се използва за наблюдение на производителността на възела. Също така, методът JSON-RPC API може да се използва за debug_metrics.

Що се отнася до производителността на мрежата, се използват инструменти на Alethi, включително EthStats Network Monitor или Block Explorer.

поверителност

За поверителност Besu предлага Мениджър на частни транзакции. Той гарантира, че участващите страни в транзакцията не трябва да се притесняват за кражбата на тяхната самоличност или за изтичане на информация.

Разрешение

И накрая, той предлага правилно управление на разрешенията, което гарантира, че само възли, които имат право да участват.

Архитектура на Hyperledger Besu

Архитектурата на Hyperledger Besu е проста и ефективна. Обсъдихме всички ключови компоненти в раздела за функции.

Архитектура на Hyperledger Besu

Основните три основни компонента на Besu включват следното.

  • Съхранение
  • Ethereum Core
  • Работа в мрежа

Нека първо да обсъдим ядрото на Ethereum. Ядрото се състои от виртуалната машина Ethereum (EVM). Той е отговорен за всяко изпълнение на транзакция. На върха на EVM има Tx процесор, който помага на EVM да функционира ефективно и ефективно.

Методите на консенсус също са част от ядрото на Ethereum. Тук имаме консенсусни методи, включително PoW, Clique и IBFT2. Другите два основни компонента на ядрото на Ethereum включват

  • Пул транзакции → Пулът транзакции съхранява информация, свързана с транзакциите
  • Синхронизатор → помага за синхронизиране на всички възли и мрежата.

Странно е, че имаме блокчейн и световна държава. Световната държава се състои от състояние на акаунта, съхранение на акаунта и съхранение на код.

И накрая, има мрежа, която се управлява с помощта на протокола Ethereum devp2p. Четирите основни компонента включват

  • Откритие
  • RLPx
  • ETH подпротокол
  • Подпротокол IBF

Системни изисквания за Besu

Блокчейнът на Hyperledger Besu е много гъвкав, що се отнася до системните изисквания. Тъй като мрежите могат да имат динамичен характер, включително размера на световната държава, броя на транзакциите, ограничението на газта и сложността на заявките, системните изисквания могат да варират много.

Но в по-голямата си част имате нужда от следното.

  • 4 GB RAM. Ако решите да стартирате Ethereum Mainnet, тогава имате нужда от 8 GB RAM
  • По отношение на дисковото пространство са ви необходими поне 3 TB за пълна синхронизация, докато работите с основната мрежа на Ethereum

Ако все още сте объркани, трябва да използвате Prometheus, за да наблюдавате възела, за да знаете точните изисквания към диска и процесора. Също така, таблото за управление на Grafana работи с Besu, което можете да използвате за лесно наблюдение.

Пътна карта на Hyperledger Besu

Фактът, че той е отворен код от октомври 2018 г., вече е отворен за принос от всеки. Пътната карта на Hyperledger Besu изглежда интересна. По-долу са ключовите етапи от пътната карта, към които те се стремят.

→ Изграждане на групи за поверителност, разрешаване на акаунти, разрешаване на потребителски интерфейс, надстройка на мрежата в Истанбул

: Hyperledger Besu 1.2, 31 юли 2019 г.

→ Поддръжка на поток, Персонализиран мониторинг за IBFT, Управление на разрешения: Hyperledger Besu 1.3, 07 октомври 2019 г.

→ Multi Ethereum мрежов клиент, Cross-Privacy Group, Разширени функции за поверителност, Enterprise Integration, Ethereum 2.0, началото на 2020 г..

Инсталиране на двоично разпространение, изграждане от източник и стартиране на Besu

В този раздел ще научим как да инсталирате Besu, да го изградите и стартирате на MacOS и други операционни системи.

Инсталиране на двоично разпространение

Ако използвате Mac OS, трябва да имате Homebrew и Java JDK, за да започнете. Трябва ви и Java 11+, тъй като по-ранните версии на Java не се поддържат.

Сега изпълнете следната команда, за да инсталирате с помощта на Homebrew.

пивоварен кран хиперлед / besu

варете инсталирайте besu

За да проверите дали Besu е инсталиран успешно, проверете със следната команда.

besu –помощ

Ако използвате Unix / Linux / Windows, тогава трябва да изтеглите Besu пакетирани двоични файлове. Веднъж изтеглени, разопаковайте файловете и отидете в besu- директорията.

За да потвърдите, че Besu е инсталиран правилно, използвайте besu –помощ команда.

Изграждане от източник

За да изградите Besu от източника, трябва да клонирате хранилището Besu.

git clone – рекурсивен https://github.com/hyperledger/besu.git

След като клонирането приключи, ще премахнем тестовете, като използваме следната команда:

./ gradlew build -x тест

Сега отидете в директорията за разпространение с помощта на командата:

cd build / дистрибуции /

Оттам нататък трябва да разширите архива за разпространение, като използвате следната команда.

tar -xzf besu-.tar.gz

С разширените файлове сега се преместете в новата папка.

cd besu- /

bin / besu –помощ

Ако последната команда се изпълнява успешно, вие успешно сте изградили от източник.

За Windows процесът е почти същият. Започвате с клониране на хранилище, премахване на тестове, отиване в директорията за разпространение, разширяване и след това накрая проверявате дали инсталацията е успешна или не.

Започвайки Besu

Страхотно, сега, след като вече сме инсталирали Besu, сега трябва да го стартираме. За да започнете, трябва да направите следните стъпки.

  • Локални блокови данни
  • Битие Конфигурация
  • Потвърдете, че възелът работи или не
  • Стартирайте възел за тестване

Първата стъпка е да настроите локални блокови данни. Ако сте се свързали с предишна мрежа, тогава трябва да се отървете от локалните блокови данни. Можете също да конфигурирате опцията –data-path, за да укажете новите данни за локален блок.

Можете да изтриете данните от локалния блок от директорията besu / build / distribution / besu-. Там изтрийте директорията на базата данни и сте готови!

Ако използвате Mainnet, Goerli, Rinkeby или Ropsten, тогава конфигурацията на генезиса е посочена, когато се свържете с тях.

Също така можете да посочите атрибута –network = dev, за да стартирате конфигурацията на генезиса с празни начални възли. Също така, той задава конфигурацията на генезиса с фиксирана ниска трудност.

За да потвърдите дали възелът работи, тогава трябва да използвате опцията –rpc – http-enabled. След като приключите, използвайте cURL и след това извикайте JSON-RPC API методите. Ако има отговор, възелът работи.

И накрая, за да стартирате възел за тестване, трябва да използвате следната команда

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

Поверителност в Hyperledger Besu

Разрешените мрежи са известни със своите функции за поверителност. Besu не е по-различен, тъй като предлага отлични опции за поверителност. С Besu можете да използвате Поверителност, съвместима с ЕИП или Besu-разширена поверителност.

За да създавате и управлявате групи за поверителност, можете да използвате вече наличните методи на JSON-RPC API. Тези методи могат да се използват за създаване и управление на групи за поверителност

  • priv_createPrivacyGroup
  • priv_findPrivacyGroup
  • priv_deletePrivacyGroup

Що се отнася до транзакциите, Besu прилага само ограничени транзакции. Това се прави, за да се осигури поверителност и да се направи поверителност на транзакциите.

Транзакциите се подписват от определен ключ или произволен ключ. Ако искате да влезете с определен ключ, тогава трябва да използвате файла –privacy-marker-transaction-Signature-key-key, който се предлага с Hyperledger Besu.

Ако се интересувате, можете да разгледате подробен урок за това как да конфигурирате мрежата за частни транзакции тук. В урока можете да откриете, че Орион е една от предпоставките за започване.

Разрешение в Hyperledger Besu

Разрешаването е критична част от всяка корпоративна блокчейн рамка. Същото важи и за Бесу. Всяка разрешена мрежа се обгражда около идеята да разрешава само определени възли. Те участват и активират мрежата, като извършват транзакция или разрешават транзакции.

В случай на peer-to-peer мрежа се изисква да се наложат правила на възли, за да може да се направи разрешение. Ясно е, че вече е необходимо ниво на доверие, за да бъде налице, преди разрешената мрежа да започне да функционира. За да се гарантира, че лошите актьори имат минимална роля тук, трябва да се вземат предпазни мерки. Самотните лоши участници, например, не могат да повлияят на вземането на решения в мрежата. Правилните правила и разпоредби също могат да помогнат за идентифицирането на лоши участници и да ги премахнат, когато бъдат хванати да извършват злонамерени действия.

Освен разрешаване на възли, има и опция за разрешения за акаунти, които налагат повече правила и разпоредби. Разрешаването на акаунти може да се използва за налагане на изисквания за самоличност и вграждане. Той също така помага за спиране на акаунти, поставяне в черен списък на счупени договори и ограничаване на акаунти при извършване на действия.

Hyperledger Besu blockchain предоставя както локални, така и onchain.

Местно разрешение се извършва на ниво възел. За да се приложи, се използва конфигурационен файл за разрешения. Тъй като разрешенията са локални, те не оказват влияние върху мрежата. Това е полезно за това как функционира възелът – които са независими от останалата част от мрежата. Също така се изисква да се защитят възлите, ако се случи нещо нередно.

Разрешаване на Onchain, от друга страна, са кодирани в рамките на интелигентни договори. Разрешаването на Onchain е за цялата мрежа и всички възли могат да го четат и актуализират. Разрешаването на Onchain може да бъде модифицирано или актуализирано само с координация. Също така, след като бъде актуализиран, той се прилага в мрежата.

Hyperledger Besu

Надпис: Как работят локалните и OnChain Permissioned

Можете също да следите това ръководство за да знаете как да настроите разрешаваща мрежа в Besu.

Други неща, които си струва да се споменат

Hyperledger Besu GitHub: Ако смятате, че можете да допринесете за Hyperledger Besu, можете да разгледате хранилището на Hyperledger Besu GitHub тук.

Понастоящем няма най-добрия курс за Hyperledger за Besu и затова можете също да проверите потребителската документация тук. Те имат пълни уроци за това как да стартирате бързо мрежи или как да създадете частна мрежа.

Заключение

Това ни води до края на нашето ръководство за стартиране на Hyperledger Besu. Тук разгледахме много неща за Besu.

Скоро ще покрием Hyperledger Fabric срещу Besu скоро. Затова не забравяйте да се абонирате за нашия бюлетин.

Освен това, какво мислите за това? Коментирайте по-долу и ни уведомете.

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