Смарт контракты

Главная особенность смарт-контрактов заключается в том, что все действия записаны математическим языком, в виде особых математических правил: так решается проблема двойственности терминов — в математике ее просто не существует.

На сегодняшний день создано множество платформ, предоставляющих возможность создания смарт-контрактов, каждая из которых обладает и положительными, и отрицательными сторонами. Давайте рассмотрим самые инновационные, оригинальные и удобные платформы.

Ethereum

Нельзя говорить о смарт-контрактах, не упомянув Ethereum — первую блокчейн-систему, поддерживающую возможность создания смарт-контрактов. Это, пожалуй, самая надежная и эталонная система, крупнейшая по своей капитализации.

Преимущества Ethereum:

  • Самое широкое распространение.
  • Гибкость системы создания контрактов позволяет прописывать максимально сложные смарт-контракты.
  • Большое количество пользователей обеспечивает достаточную вычислительную мощность.
  • Основан на Тьюринг-полном языке Solidity.
  • Масштабируемость.

Недостатки:

  • Для осуществления переводов требуется оплата в виде «газа”.
  • Использует токен стандарт ERC-20, подверженный ошибке: пользователь, отправивший токены в смарт-контракт с помощью команды transfer(), безвозвратно теряет свои деньги.

Эфириум является самой популярной платформой для создания смарт-контрактов, а ошибку отправки токенов в смарт-контракт нельзя считать ошибкой программы, поскольку во всех случаях ее причиной является человеческий фактор.

Hyperledger Fabric

Проект, созданный Linux Foundation в 2015 году, является основой для создания смарт-контрактов, ориентированных на бизнес. Сами разработчики называют умные контракты в своей системе «чейн-кодом”. Платформа предоставляет пользователям возможность создания многослойных конфигураций блокчейн сети, тем самым создавая новые возможности разработчикам. Разработчики создали и свой особый язык — Go, который отличается быстрой компиляцией, что создает комфортные условия для создания чейн-кодов.

Чейн-код состоит из 4 основных функций:

  • PutState — генерация и обновление актива;
  • GetState — возвращение актива;
  • GetHistoryForKey — получить отчет по истории изменений;
  • DelState — удалить актив.

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

Преимущества:

  • Ориентирована на корпорации.
  • Существование приватных каналов позволяет повысить надежность и пропускную способность.
  • Использует язык программирования Go.
  • Имеет возможность создания чейн-кодов на Java и JavaScript.

Недостатки:

  • Небольшое коммьюнити, что связано с ориентацией на корпоративные нужды.
  • Высокий порог вхождения.

EOS

В июне 2018 года Black.One выпустила для разработчиков собственную блокчейн-платформу EOS. Система работает в соответствии с алгоритмом DPoS — Delegated-Proof-of-Stake. Разработчики создали систему из 21 привилегированного аккаунта, позволяющую отправлять транзакции напрямую к этим аккаунтам. Таким образом решается «Задача Византийских генералов”, привилегированные аккаунты выбираются из общего пула в процессе голосования.

Все пользовательские транзакции обязаны содержать в себе хэш последнего известного блока, благодаря чему транзакция никогда не попадает в параллельную цепочку (форк).

Преимущества:

  • Возможность горизонтальной и вертикальной масштабируемости.
  • Повышенная надежность и безопасность.
  • Защита от нежелательных форков.

Недостатки:

  • Проект пока в раннем доступе.
  • Отсутствие главной сети EOS.
  • Нестандартная бизнес-модель, не вызывающая доверия.

Stellar

Смарт-контракты, представленные проектом Stellar, качественно отличаются от предложенных в Ethereum. Они не являются Тьюринг-полными и могут быть использованы для выполнения договоренностей между более чем двумя сторонами, действия которых подкрепляются транзакциями.

Stellar предлагает более быструю систему подтверждения транзакций: весь процесс занимает около 5 секунд (для сравнения, у Ethereum это занимает 3,5 минуты). Плюс разработчики указали невероятно низкую стоимость транзакции за — 100 000 транзакций пользователь должен заплатить всего 1 цент.

Механизм создания смарт-контрактов отличен от возможностей Ethereum: разработчикам предлагается использовать инструкцию Stellar Developer Guide, в которой указаны все возможности и функции. При этом создание смарт-контрактов предполагается практически на любом языке.

Преимущества:

  • Быстрая скорость подтверждения транзакций.
  • Возможность создания смарт-контрактов на любом языке.
  • Очень низкая стоимость транзакций.
  • Неполная по Тьюрингу система делает аудит проще, а систему защищенней.

Недостатки:

  • Ограниченность функционала.

Чего ждать дальше?

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

Например, платформа Seele представляет собой проект блокчейна четвертого поколения, способного на более быстрые операции и многоуровневую систему распределения задач. Разработчики заявляют о возможности хранения в блокчейне больших объемов данных и улучшенном масштабировании. Пока что мы не можем в полной мере оценить масштабы работы, однако разработчики обещают запустить тестовую версию в конце 2018

Другой схожий проект, Cardano, все еще находится на стадии разработки, однако уже есть рабочая платформа на блокчейне 3.0, а двухуровневая система распределения задач значительно ускоряет процесс обработки данных. Нижний слой отвечает за транзакции, в то время как верхний слой работает со смарт-контрактами. Платформа все еще разрабатывается, но в команде создателей работает один из основателей Ethereum, что говорит о качестве и степени разработки проекта.

Несмотря на то, что Ethereum не является самым современным представителем блокчейна, он наиболее популярен: на основе Эфириума созданы тысячи проектов и запущены тысячи ICO. Давно известно, что Виталик Бутерин и его команда активно работают над совершенствованием системы и готовят уход от PoW алгоритма консенсуса, помимо этого должны быть и качественные изменения в системе смарт-контрактов.

Однако индустрия не стоит на месте и появляются новые и новые компании со своими оригинальными идеями. Каждая из них находит свою нишу и старается сделать комфортным работу именно в конкретной сфере, поэтому при выборе платформы для создания смарт-контрактов в первую очередь необходимо понимать, какие цели ставит перед собой проект, и в каком направлении он планирует развиваться.

12 мин. чтения

%4links%

Идея «умных контрактов” в современном мире представляет собой многообещающую облачную технологию для хранения различного рода документов, договоров, контрактов и т.д. В этой статье вы узнаете, что такое смарт-контракты, как они функционируют и зачем нужны.

Что такое смарт-контракты?

Смарт-контракт – электронный протокол, написанный с помощью компьютерного кода. Его назначение – передача информации и обеспечение исполнения условий контракта обеими сторонами. Его еще называют умный контракт.

Особенности смарт-контракта

Smart-контракты дают возможность безопасно обмениваться деньгами, акциями, собственностью и другими активами напрямую, без участия посредников.

Для того, чтобы заключить любую сделку, необходимо обратиться к нотариусу или адвокату, оплатить документы и ждать их оформление. Зачастую, многие пункты этих документов содержат ссылки на законодательные статьи, которые можно интерпретировать под себя, обойти. В случае невыполнения условий сделки, в реальной жизни людям приходится обращаться в суд, снова тратить деньги на процесс и доказывать свою правоту. При заключении таких сделок вообще не может идти речь о доверии участников договора.

Рассмотрим это на примере сделки: ты-мне, я-тебе. Допустим, вы хотите купить мобильный телефон с рук на торговой интернет-площадке. Но на ней нет возможности посмотреть отзывы, а продавец просит предоплату. Просит, потому что боится, что если он отправит посылку наложенным платежом, вы её не заберете и он потеряет деньги за доставку туда — обратно, то есть, получит убытки. Вы, со своей стороны, боитесь, что продавец окажется мошенником, присвоит ваши деньги и не вышлет товар или вышлет не то, что нужно.

Для этого была разработана программа, которая следит за выполнением обязательств обеих сторон, прописанных в контракте, а также автоматически взымает штрафы за нарушение или невыполнение условий сделки. Умные контракты обеспечивают безопасность сделки и лишены риска неоднозначной трактовки условий, благодаря тому, что основаны на криптографии. Это более выгодные сделки в материальном плане, так как человеку не нужно платить юристам, посредникам или подавать в суд при невыполнении контракта. При чем выполнение условий сделки происходит автоматически с минимальными затратами на их сопровождение, без привлечения третьих лиц (посредников).

%tokenad%

Когда и почему появился смарт-контракт

В 1994 году криптограф и специалист в области права Ник Сабо понял, что с помощью децентрализованного реестра можно заключать электронные самоисполняемые контракты. Их можно записать в виде кода. Выполнение контрактов обеспечит сеть компьютеров, которая управляется цепочкой блоков. Таким образом, люди смогут переводить друг другу деньги, получать товары и услуги. Лишь в 2008 году удалось на практике реализовать идею умных контрактов, благодаря появлению технологии блокчейн.

В 2013 году умные контракты начали применяться на практике, благодаря созданию проекта Ethereum.

Как работают смарт-контракты

Умные контракты основаны на технологии блокчейн. Это распределенный реестр, который представляет собой децентрализованную систему, которая существует благодаря множеству компьютеров, объединенных в одну сеть. Блокчейн позволяет пользователям осуществлять транзакции, передавать информацию и материальную ценность без банков и посредников.

Смарт-контракты – это по сути программы, которые создаются на основе компьютерной логики и передаются в виде кода. Именно поэтому участники сделки или договора могут быть уверены, что все условия контракта будут соблюдены, и никто из участников не сможет изменить условия или интерпретировать под себя. Код – это закон умных контрактов.

Принцип работы блокчейна и смарт-контрактов

  • Вы хотите произвести транзакцию. Эта транзакция пересылается в компьютерную сеть равноправных узлов (они называются нодами).
  • Сеть нод подтверждает транзакцию и статус пользователя.
  • Транзакцией считается перевод средств в криптовалюте, передача информации, в том числе и контрактов.

    Криптовалюта – цифровые деньги, которые создаются и хранятся в блокчейне. Самой известной криптовалютой является биткоин. Криптовалюта не имеет внутренней ценности (ее нельзя обменять на золото), существует только в электронном виде и хранится децентрализовано в сети (то есть не эмитируется центральным банком).

  • После подтверждения, транзакция объединяется с другими транзакциями и формирует новый блок цифрового реестра, который занимает уникальное место в цепочке блокчейна и не поддается изменению. Тогда транзакция считается завершенной.

То есть код умного контракта выполняется в момент, когда приходит транзакция или сообщение. Это можно сделать со своего аккаунта, отправив транзакцию или через другой смарт-контракт, который прислал сообщение. Код не имеет доступа к интернету, также ограничен в доступе между умными контрактами.

Умные контракты реагируют лишь на транзакции. Основатель Эфириума поясняет работу умных контрактов так: актив или валюта переводятся в программу, после этого она начинает следить за выполнением условий контракта. Как только они будут выполнены, продавец получает деньги, а покупатель товар. Работу умных контрактов можно сравнить с автоматом продаж. Бросаешь монетку и получаешь товар без посредников, без помощи третьих лиц.

Пример кода смарт-контракта

Это образец кода, который написан на блокчейн-платформе Ethereum. Эфириум дает неограниченные возможности для написания и работы с умными контрактами. Хотя есть и другие платформы, где можно написать умный контракт. Кто пишет код умных контрактов? Любой участник сети может вызвать написание кода за небольшую плату (Gas). Писать контракты можно и самому, но для этого придется долго учиться и разобраться в компьютерных языках Script и Тьюринг (для Эфириума).

Где заключается смарт-контракт

Заключаются smart-контракты различных блокчейн-платформах. К ним относятся:

  • Bitcoin — первая криптовалюта, но возможности написания умных контрактов на ней очень ограничены;
  • Side Chains —в этом блокчейне возможности для умных контрактов более расширены, чем в Биткоин;
  • NXT — открытая онлайн-платформа с ограниченным количеством смарт-контрактов, которые пишутся по шаблонам блокчейна. Создать уникальный контракт нет возможности;
  • Ethereum — открытая онлайн-платформа, в которой можно написать любой смарт-контракт, но за него нужно заплатить криптовалютой данного блокчейна;
  • Также можно заказать разработку смарт-контрактов у профессиональных программистов.

Как использовать умные контракты?

Самым простым примером использования смарт-контрактов является мультиподпись. С помощью такой подписи, участники договора могут заморозить определенную сумму монет на блокчейне так, что в случае необходимости ее потратить потребуются подписи более половины участников. Такое условие контракта обеспечивает безопасность средств, вложенных в проект. В случае провала, средства будут возвращены инвестору автоматически. Если сбор заявленной суммы прошел успешно, тогда участники мультиподписи активируют свои ключи, подтверждая добросовестность проекта, в который инвестируют.

Смарт-контракты можно использовать для любых финансовых действий в сфере страхования, регистрации или передачи собственности, кредитовании. Наиболее широкое распространение умных контрактов наблюдается в бизнес — сфере, где предполагаются выплаты и действий, обусловленные платежами.

Палата цифровой коммерции выпустила так называемую «белую книгу», в которой описано 12 сфер, в которых можно реализовать смарт-контракты.

  1. Цифровая идентичность. Умные контракты дают возможность контролировать свои данные, цифровые активы и репутацию. Решать, какие данные можно разглашать контрагентам, а какие нет.

  2. Смарт-контракты способны преобразовать в цифровой вид и систематизировать Единый торговый кодекс, а также автоматизировать его обновление и соблюдение правил по уничтожению записей в будущем.

  3. Умные контракты позволяют обойти посредников в цепочке поставок ценных бумаг. При этом происходит автоматическая выплата дивидендов и управление обязательствами.

  4. Смарт-контракты удобно использовать при международных расчетах. Они обеспечивают более быстрый аккредитив, то есть оплату торговой сделки с гарантией. Повышается ликвидность финансового актива — это возможность быстрого превращения его в денежные средства без значительных финансовых потерь.

  5. Смарт-контракты упрощают торговые процессы после сделки. В контракте прописаны условия и верификация сделки. То есть соответствие продукта правилам, стандартам и сертификации, которые прописаны в контракте. В случае некачественного товара, продавец не получает деньги, и с него взимается штраф за доставку некачественной продукции.

  6. Финансовые организации могут с помощью умных контрактов вести записи финансовых данных. Это поможет объединить все данные в один реестр и упростит обмен информацией между организациями. Это снизит расходы на аудит, и улучшит предоставление финансовой отчетности.

  7. С помощью умных контрактов можно автоматизировать обработку платежей по ипотечному залогу.

  8. Технология смарт-контрактов обеспечивает передачу собственности без жульничества.

  9. Благодаря умным контрактам можно отследить всю цепочку поставок товара в реальном времени. Через Интернет можно записать перемещение товара от цеха до полки супермаркета.

  10. В сфере страхования автомобилей, умный контракт может хранить в себе страховой полис, а также запись по истории вождения. Можно отправлять запросы в Интернет Вещей, который можно установить в авто, после происшествия, и таким образом быстро установить причину ДТП.

  11. С помощью умных контрактов можно улучшить клинические исследования пациентов, так как они автоматизируют данные о пациенте и передают информацию между клиниками.

  12. С помощью смарт-контрактов можно облегчить распространение данных о раковых заболеваниях, при этом конфиденциальность пациента будет защищена.

Примеры смарт контрактов в реальной жизни

  • Вы с другом играете в тотализатор на исход футбольного матча. Вы вносите в блокчейн ставки в виде транзакций, которые сохраняются там до окончания игры. Когда матч заканчивается, умный контракт проверяет его исход на одном из спортивных сайтов и автоматически переводит все средства победителю.

  • Вы заказали товар через интернет-магазин. Оплата ваша за товар фиксируется в блокчейне и только после подтверждения курьерской службы, что товар вы забрали и удовлетворены его качеством, деньги поступают продавцу.

  • Также с помощью умных контрактов можно урегулировать договор аренды жилья. К примеру, в контракте прописано, что оплату нужно осуществить с 1 по 5 число каждого месяца. В случае неуплаты, замок входной двери блокируется, и вы не можете попасть в квартиру.

  • Что касается кредитных договоров. Например, вы взяли в банке кредит на машину. В случае, если вы не внесли ежемесячный платеж, машина блокируется.

  • С помощью умных контрактов можно избежать неправомерных действий посредников, которые хотят заработать на вас. К примеру, вы решили сдать квартиру. Вы сами сделали фото и выставили на сайт. Агенты по недвижимости копируют ваши фото и выставляют такое же объявление, чтобы получить комиссию за сдачу жилья. Вы можете сбросить фото в блокчейн и подписать их электронной подписью в сервисе Strampery. Так ваша собственность будет защищена.

  • Компании мобильных операторов предоставляют услугу, которая регулируется смарт-контрактов. В случае потери или кражи мобильного телефона, он блокируется, фотографирует вора и передает его фото в компанию мобильного оператора. Также телефон передает местонахождение Вашего телефона. Таким образом, гарантируется возврат мобильного или компенсация стоимости телефона за небольшую плату в месяц.

  • Также умные контракты обеспечивают идентификацию личности. Что в будущем рассматривается как возможность проведения выборов в стране через блокчейн-голосование.

  • Также с помощью умного контракта можно составить завещание. Система проверяет наличие свидетельства о смерти конкретного человека и автоматически приводит завещание в исполнение, прописанное в контракте без посредников. В будущем, смарт-контракты вероятно станут неотъемлемой частью нашей жизни. Вместо бумажных контрактов с кучей страниц и непонятной терминологией люди будут прописывать умные контракты, которые экономят время, деньги и нервы. Это даст возможность структурировать и обезопасить многие сферы жизни без сложностей, посредничества и взяточничества.

Преимущества и недостатки смарт-контрактов

Смарт-контракты обладают такими преимуществами:

  • Экономия средств и времени, так как больше не нужно прибегать к услугам посредников для заключения договоров или сделок;
  • Обеспечивается безопасность, так как прописанные условия контракта хранятся в распределенном реестре, и никто не может их изменить;
  • Отсутствие посредников позволяет участникам контракта работать на более выгодных условиях и экономить свои средства на юристах, нотариусах, аудите и посредниках;
  • Умные контракты обеспечивают более быстрое разрешение вопросов. Как только условия контракта выполнены, стороны сразу же обмениваются активами. Конечно, смарт-контракты имеют и свои недостатки:
  • Как любая компьютерная программа, они подвержены багам и могут работать некорректно из-за ошибок программистов;
  • Создать смарт-контракт непросто, в нем необходимо учесть все условия и варианты сделки;
  • Большинство пользователей не понимают, что такое смарт-контракты и как ими пользоваться, что сильно сокращает количество участников;
  • Защита устройства пользователя – слабое звено в информационной безопасности. Само устройство и запись с ключами можно потерять, тогда человек не сможет пройти в систему;
  • Смарт-контракты не обладают гибкостью. Если с человеком вы можете договориться, объяснить ситуацию, почему вы не внесли, к примеру, оплату за аренду жилья, то в смарт-контрактах все однозначно. Нарушение – штраф или наказание.
  • Если возникнет необходимость рассмотрения смарт-контракта в суде, то будет проблематично установить, когда был оформлен договор и был ли оформлен вообще. Нарушены ли были обязательства или нет.
  • Регулирующий надзор понадобится в любом случае для разрешения спорных вопросов. А для интерпретации кода смарт-контракта потребуются невероятные навыки регулятора.
  • Все умные контракты включают в себя код, которые не всегда правильно функционирует. Транзитные данные могут быть повреждены, приватные ключи взломаны. Разработчики продолжают работать над устранением этих проблем. Несмотря на недостатки, умные контракты все больше закрепляют себя на рынке многих стран мира.

    Отличия умных контрактов от обычных контрактов

«Тупые” контракты – контракты, которые сильно полагаются на действия других людей в функциональности. Именно поэтому им необходима доверенная третья (юридическая) сторона. Таким контрактом людей легко ввести в заблуждение или обмануть. Таблица сравнения умных и «тупых” контрактов:

Умный контракт Обычный контракт
Это программа или транзакционный протокол, который использует в своей работе блокчейн Бумажная версия документов
Основывается на коде Основывается на праве и законодательных актах
Пишется на компьютерном языке Пишется юридическим языком
Условия контракта невозможно изменить Условия контракта можно изменить, переписать или интерпретировать по-другому
Условия контракта выполняются автоматически всеми участниками процесса Условия контракта могут быть не выполнены или выполнены некачественно
При нарушении условий контракта автоматически происходит наказание, штраф или санкция, прописанные в контракте При нарушении условий контракта необходимо обращаться в суд
Все сделки осуществляются без третьих лиц и посредников Сделки осуществляются с множеством посредников. Необходимы помощь нотариуса, юриста и обращения в государственные службы
Транзакции проводятся с помощью криптовалют Транзакции проводятся валютой через банки
При выполнении условий контракта, обмен ценностями происходит мгновенно Обмен ценностями происходит с задержками
Все данные о контрагентах хранятся в блокчейне, и человек сам устанавливает, какая информация будет общедоступной Информацию о контрагентах можно узнать лишь при условии, что он предоставит выписки и справки из государственных органов
Контракт можно заключить с человек из любой точки мира без личного присутствия Контракт подписывается лишь при личной встрече двух сторон или их доверенных лиц
Гарантируется безопасность сделки Нет никаких гарантий. Любой закон можно обойти
При заключении контракта строго все условия соблюдаются безоговорочно, в противном случае налаживается штраф или возврат денег покупателю Условия можно изменить, договориться
Жульничество и мошенничество исключены Вероятность обмана, подкупа, взяточничества очень высока
Умный контракт достаточно сложно составить самому, чтобы учесть все возможности и условия сделки Для составления обычного контракта необходима помощь юристов

В заключение

Сейчас на рынке не так много разработчиков смарт-контрактов. Чтобы не потерять все средства, собранные на ICO из-за ошибки программистов, мы советуем обращаться к опытным специалистам. Написание смарт-контрактов — это достаточно новое направление, которое отличается от привычного программирования. Среди профессиональных компаний мы рекомендуем обращаться в smartcontract.ru (компания «Белов Ай Ти Лаб»), специалисты которой уже зарекомендовали себя на этом рынке.

Надеемся, статья помогла вам разобраться в схеме работы смарт-контрактов. Технология Blockchain имеет свои проблемы, разработчики пытаются устранить все возможные недостатки. Но она превосходит многие централизованные схемы, которые используются в банках и государственных структурах на данный момент. Очевидно, что умные контракты будут распространяться по всему миру в разных сферах жизнедеятельности, так как существенно экономят средства и время, а также дают возможность стереть границы со всеми странами мира в сфере коммерческой деятельности.

Ник Сабо впервые описал технологию смарт-контрактов в 1990-х годах. Он определил смарт-контракты как инструмент, который формализует и защищает компьютерные сети путем объединения протоколов с пользовательским интерфейсом. Сабо также обсуждал потенциальное применение смарт-контрактов в различных областях, которые включают в себя общественные отношения договорного характера, такие как кредитные соглашения, обработка платежей и управление авторскими правами.

В мире криптовалют смарт-контракт — это приложение (или программа), работающее на блокчейне. Как правило, он выступает в качестве цифрового соглашения, которое подкрепляется определенным набором правил. Эти правила предопределены компьютерным кодом, который реплицируется и выполняется всеми узлами сети.

По существу, применительно к блокчейну, смарт-контракты позволяют создавать доверительные протоколы. Это означает, что обе стороны могут взять на себя обязательства через блокчейн, без знания или доверия друг к другу. Участники данного процесса могут не беспокоится о правильности выполнения обязательств, поскольку если условия не будут удовлетворены то контракт аннулируется. Помимо этого, использование смарт-контрактов может устранить необходимость в посредниках, значительно снижая операционные расходы.

Хотя протокол биткоина уже много лет поддерживает смарт-контракты, они были популяризованы создателем и соучредителем Ethereum Виталиком Бутериным. При этом каждый блокчейн может представить другой метод реализации смарт-контрактов.

В центре внимания этой статьи смарт-контракты, работающие на виртуальной машине Ethereum (EVM), которая является важнейшей частью блокчейна Ethereum.

Как это работает?

Простыми словами, смарт-контракт работает как детерминированная программа. Она выполняет определённые действия, когда соблюдены заданные условия. Исходя из этого, система смарт-контрактов часто использует «if… then…» выражения. Несмотря на общепринятую терминологию, смарт-контракты не являются ни контрактами в юридическом смысле, ни «умными». Это всего лишь фрагменты кода, запущенного в распределенной системе (в блокчейне).

В сети Ethereum смарт-контракты отвечают за выполнение операций между пользователями (адресами). Любой адрес, не являющийся смарт-контрактом, называется личным аккаунтом (EOA). Таким образом, смарт-контракты управляются программным кодом, а личные аккаунты – пользователями.

По существу, смарт-контракты Ethereum состоят из кода контракта (содержащего условия выполнения) и двух публичных ключей. Первый публичный ключ предоставлен создателем контракта. Другой ключ представляет собой сам контракт, являясь цифровым идентификатором, уникальным для каждого смарт-контракта.

Выполнение любого смарт-контракта происходит при блокчейн-транзакции, и они могут быть активированы при инициации личным аккаунтом (или другим смарт-контрактом). Однако запускается последовательность смарт-контрактов всегда с личного аккаунта (т. е. пользователем).

Основные характеристики

Смарт-контракт Ethereum зачастую имеет следующие характеристики:

Распределенность. Смарт-контракты реплицированы и распределены по всем узлам сети Ethereum. Это одно из главных отличий от других решений, использующих централизованные сервера.

Детерминированность. Смарт-контракты выпоняют действия, для которых они предназначены, по достижении удовлетворённых требований. Кроме того, результат всегда будет одинаковым вне зависимости от того, кто выполняет требования.

Автономность. Смарт-контракты могут автоматизировать все виды задач, работая как самоисполняемая программа. В большинстве случаев, если смарт-контракт не инициирован, он находится «в бездействии» и не выполняет каких-либо действий.

Неизменность. Нельзя изменить процесс работы смарт-контракта после его разработки и активации. Изменения могут быть внесены только в том случае, если разработчики до этого реализовали определенную функцию. Таким образом, мы можем сказать, что смарт-контракты могут обеспечить защиту от взломов для кода посредством доказательства подлинности.

Настраиваемость. Перед реализацией, смарт-контракты могут разрабатываться разными способами. В связи с этим, данная технология подходит для создания многих типов децентрализованных приложений (DApps). Это также связано с тем, что Ethereum является завершенной по Тьюрингу блокчейн-сетью.

Доверительность. Две или более стороны могут взаимодействовать с помощью смарт-контрактов, без знания и доверия друг к другу. В добавок к этому, технология блокчейн обеспечивает точность и учет всех данных.

Прозрачность. Поскольку смарт-контракты основаны на публичном блокчейне, их исходный код доступен для каждого.

Могу ли я изменить или удалить смарт-контракт?

В смарт-контракт Ethereum нельзя добавлять новые функции после активации. Однако, если разработчик включает в код контракта функцию под названием SELFDESTRUCT, в дальнейшем он сможет удалить его и заменить на новый. В свою очередь, если данная функция не была написана в коде, контракт нельзя будет удалить.

Примечательно, что так называемые обновляемые смарт-контракты обеспечивают разработчикам доступ к изменениям кода, тем самым предоставляя большую гибкость по сравнению с неизменными контрактами. Существует множество способов создания подобного вида смарт-контрактов различной степени сложности.

Рассмотрим это на простом примере. Давайте представим, что смарт-контракт делится на несколько небольших контрактов. Некоторые из них нельзя изменить, в то время как другие можно удалить, благодаря вышеупомянутой функции. Это означает, что часть кода (энное количество смарт-контрактов) можно удалить и заменить на другой, в то время как остальные функциональные возможности остаются неизменными.

Преимущества и варианты использования

Поскольку это программируемый код, смарт-контракты легко настраиваются и могут разрабатываться разными способами, предлагая различные виды услуг и решений.

В качестве децентрализованной и самореализующейся программы, смарт-контракты могут обеспечить повышенную прозрачность и снизить эксплуатационные расходы. В зависимости от направления деятельности, они также могут повысить эффективность и снизить бюрократические издержки.

Преимущества смарт-контрактов в особенности проявляются, когда речь идет о денежных переводах или обмене средств между двумя или более сторонами.

Другими словами, смарт-контракты могут быть разработаны для широкого спектра вариантов использования. Некоторые из примеров включают в себя создание токенизированных активов или акций, систем голосования, криптовалютных кошельков, децентрализованных бирж, игр и мобильных приложений. Они также могут быть реализованы совместно, наряду с другими решениями на блокчейне, которые затрагивают такие области как: здравоохранение, благотворительность, цепочки поставок, государственное управление и децентрализованное финансирование (DeFi).

ERC-20

Токены, выпущенные на блокчейне Ethereum соответствуют стандарту, который также известен, как ERC-20. Данный стандарт описывает основные функции всех токенов на основе сети Ethereum. Такой вид цифровых активов часто называют ERC-20 токенами, и они представляют большую часть существующих криптовалют.

Многие компании и стартапы работающие с блокчейном разрабатывают смарт-контракты, чтобы выпустить свои цифровые токены в сети Ethereum. После своего рода эмиссии, большинство таких компаний распределяет свои ERC-20 токены с помощью первоначального предложения монет (ICO). В большинстве случаев, использование смарт-контрактов позволяло осуществлять обмен денежными средствами и распределять токены доверительным и эффективным способом.

Недостатки

Смарт-контракты состоят из компьютерного кода, написанного людьми. Это является причиной многочисленных рисков, поскольку код подвержен уязвимостям и ошибкам. В идеале, разработка должна осуществляться опытными программистами, особенно когда речь идет о конфиденциальной информации или больших суммах денег.

Помимо этого, некоторые утверждают, что централизованные системы могут обеспечить большинство решений и функций, предлагаемых данной технологией. Основное отличие заключается в том, что смарт-контракты выполняются в распределенной одноранговой сети, а не на централизованном сервере. И поскольку смарт-контракты основаны на блокчейне, они как правило неизменны, либо процесс внесения изменений очень сложный.

Неизменность, это хорошо в одних ситуациях, но очень плохо в других. Например, когда децентрализованная автономная организация под названием «DAO» была взломана в 2016 году, хакеры украли эфира (ETH) на миллионы долларов из-за недостатков в коде смарт-контракта.

Поскольку их смарт-контракт был неизменным, разработчики не смогли исправить код. В конечном итоге это привело к хардфорку, последствием которого является вторая цепочка сети Ethereum. Проще говоря, одна цепь отменила взлом и вернула средства законным владельцам (это часть текущего блокчейна Ethereum). Другая цепочка решила не вмешиваться, основываясь на том, что вещи, которые происходят в блокчейне, никогда не должны изменяться (эта цепочка теперь называется Ethereum Classic).

Следует заметить, что проблема возникла не из-за работы блокчейна Ethereum. Вместо этого, ошибка была вызвана неправильной реализацией смарт-контракта.

Еще один недостаток смарт-контрактов связан с их неопределенным юридическим статусом. И это связано не только с тем, что в большинстве стран данная технология находится в «серой зоне», но и по причине того, что смарт-контракты не соответствуют их текущей нормативно-правовой базе.

К примеру, основным требованием множества договоров и контрактов является идентификация участников возраст которых составляет 18 или более лет. Псевдонимность, обеспечиваемая технологией блокчейн, в сочетании с отсутствием посредников, может выступить помехой для соответствия таким требованиям. Несмотря на то, что существуют потенциальные решения данного вопроса, юридическая составляющая смарт-контрактов является одной из главных проблем, особенно когда речь идет о всемирном масштабе и распределенных сетях.

Критика

Некоторые блокчейн-энтузиасты видят в смарт-контрактах решение, которое может заменить и автоматизировать большую часть существующих коммерческих и бюрократических систем. В то время как это вполне реально сделать, смарт-контракты далеки от того, чтобы их использование в данной сфере стало нормой.

Смарт-контракты безусловно интересная технология. Но в связи с распределенным и детерминированным характером, а также прозрачностью и частичной неизменностью, делает ее менее привлекательной для использования в некоторых ситуациях.

По существу, вся критика опирается на то, что смарт-контракты не являются подходящим решением для множества реальных проблем. И по факту, некоторым организациям проще и лучше использовать обычные альтернативные сервера.

По сравнению со смарт-контрактами, централизованные сервера проще и дешевле в обслуживании, помимо этого, они также могут обеспечить более высокую эффективность с точки зрения скорости работы и взаимодействия с другими сетями (функциональной совместимости).

Без сомнений, смарт-контракты оказали большое влияние на мир криптовалют, и безусловно произвели революцию в области блокчейн-технологий. Поскольку конечные пользователи могут не взаимодействовать напрямую со смарт-контрактами, возможно в будущем они послужат основой для широкого спектра приложений, от финансовых услуг до управления цепочками поставок.

Потенциал смарт-контрактов вместе с блокчейном может оказать влияние практически на все сферы деятельности нашего общества. Но только время покажет, смогут ли эти инновационные технологии преодолеть множество барьеров на пути к широкомасштабному внедрению.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *