
Как выполняются смарт-контракты в Hyperledger?
11 мая 2022 г.В мире блокчейна каждый узел хранит копию реестра, и все узлы имеют доступ к одной и той же информации. Это не похоже на традиционные базы данных, где пользователи могут пользоваться различными уровнями доступа к данным. Распределенная архитектура блокчейна позволяет осуществлять взаимодействие между узлами без доверия.
Одним из основных направлений деятельности большинства предприятий является внедрение смарт-контрактов в Hyperledger или любой другой блокчейн-инфраструктуре. Смарт-контракты являются важным компонентом любой реализации блокчейна. Hyperledger облегчает внедрение и проверку смарт-контрактов, делая нашу жизнь немного проще.
Прежде чем мы углубимся в стратегию реализации смарт-контрактов в протоколах блокчейна, таких как узел структуры Hyperledger, давайте рассмотрим еще немного о смарт-контрактах:
Что такое смарт-контракты?
Когда большинство людей думают о контрактах, они представляют себе лист бумаги с подписями на нем. Однако контракты не обязательно должны быть бумажками. Они также могут быть цифровыми соглашениями, которые выполняются автоматически при выполнении определенных условий. Здесь на помощь приходят смарт-контракты.
Смарт-контракты — это компьютерные программы, которые могут автоматически выполнять условия контракта. Они основаны на технологии блокчейн, которая представляет собой распределенную базу данных, обеспечивающую безопасные и прозрачные транзакции. Это делает их идеальными для таких вещей, как онлайн-платежи и другие транзакции, требующие доверия.
Проще говоря, смарт-контракт — это бизнес-обоснование, работающее на блокчейне. Вы не можете определить сложность своего смарт-контракта или его отношение к вашей стратегии, пока не определите программное решение для своей проблемы.
Категории смарт-контрактов
Существует две категории смарт-контрактов, в зависимости от варианта использования, в котором они выполняются:
Смарт-контракты в цепочке. Эти типы смарт-контрактов реализуются, когда транзакция происходит в блокчейне, и эти смарт-контракты также хорошо хранятся в узлах блокчейна.
Установленные смарт-контракты. Смарт-контракты, созданные до запуска сети или до их фиксации в реестрах, классифицируются как установленные смарт-контракты.
Чейнкод для исполнения смарт-контракта в гиперреестре
Конечные пользователи взаимодействуют с реестром, используя смарт-контракты блокчейна. В программном обеспечении блокчейна с открытым исходным кодом Hyperledger Fabric смарт-контракты вызываются в пакетах с именем chaincode.
Организации, которые хотели бы проверить транзакции или воспользоваться преимуществами функциональности системы блокчейна, должны установить чейн-код на своих конкурентов. Когда код цепочки был загружен при членстве в группе, другие участники должны загрузить приложение на произвольные узлы.
Когда это чейнкод, который был установлен на стороне соединения, участники канала могут развернуть чейнкод на канале и использовать блокчейн-контракты чейнкода для выполнения с имуществом канала в реестре канала.
Сетевые коды Fabric создаются в процессе, известном как жизненный цикл Chaincode, который позволяет нескольким сторонам договориться о том, как будет использоваться код. Например, в то время как политика подтверждения определяет, какие компании должны подтверждать транзакцию путем выполнения чейнкода, участники канала должны использовать жизненный цикл чейнкода Fabric для взаимодействия с нужными людьми в отношении текущей политики подтверждения чейнкода. Чтобы лучше понять, как использовать чейнкод для канала, см. Жизненный цикл чейнкода Fabric.
Чтобы объяснить, как использовать команду жизненного цикла Reflector, вы можете просмотреть воспроизведение учебных пособий в программном обеспечении для тестирования сети Fabric. Получив общее представление об этих шагах, вы можете выполнить шаги, описанные в руководствах, для развертывания своего чейн-кода в тестовой сети Hyperledger Fabric или развернуть свой чейн-код в сети Fabric.
Вы также можете положиться на популярные платформы, такие как Zeeve- ведущий блокчейн в качестве поставщика услуг для развертывания, управления и мониторинга узлов структуры гиперледжера и помощи в интеграции децентрализованной приложение или смарт-контракт. Всего за несколько кликов вы можете запустить свое децентрализованное приложение или смарт-контракт в сети Hyperledger Fabric.
Внимательно изучите архитектуру Hyperledger, чтобы больше узнать о смарт-контрактах. Разработчики создают смарт-контракты, используя кодовую базу Hyperledger Fabric, которая состоит из блоков Codegen, Deployer и Explorer.
Как выполняются смарт-контракты?
Здесь все начинается с ввода идентификатора транзакции, отправляемого в блокчейн в запросе на транзакцию. Когда реплика переводчика контракта не подходит, контракт отклоняется. Таким образом, транзакция перемещается в реестр.
После завершения проверки механизм консенсуса, расположенный в ядре обработки, отправляется в пакет транзакции. Именно здесь [смарт-контракты] (https://hackernoon.com/smart-contracts-limit-the-metaverse---fat-contracts-enable-it) проверяют, а также подтверждают, может ли транзакция быть связана с блокчейн или нет. Это не простое, прямое выполнение правил «да» или «нет» в коде смарт-контракта, который определяет проверку. На самом деле смарт-контракт также проверяет две важные вещи: синтаксические ошибки и логические ошибки.
Задачи проверки синтаксиса невероятно просты. Но когда дело доходит до логических ошибок, подход к проверке довольно сложен. Если настроена политика смарт-контракта для просмотра переводов в цепочке, проверка сохранит документацию по транзакциям двойного перевода, чтобы их можно было использовать позже для целей аудита.
Преимуществом Hyperledger Fabric являются удобные возможности смарт-контрактов. Его лучшая особенность — возможность упростить их в каждой из своих платформ:
- · Hyperledger Sawtooth,
- · Hyperledger Burrow и
- · Гиперрегистр Ироха.
При использовании Hyperledger для крупномасштабной сделки платформа Sawtooth предпочтительнее, поскольку она выполняет смарт-контракты криптографически, а не посредством простой проверки.
Оригинал