Что такое Смарт контракт простыми словами: примеры, создание

Содержание статьи:

  1. Что такое смарт-контракт?
  2. Среда для работы умных контрактов
  3. Где можно применять смарт-контракты?
  4. Как создать и использовать смарт контракт на эфире
  5. Отличия умных контрактов от обычных
  6. Достоинства и недостатки
  7. Заключение

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

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

Технология смарт-контрактов заключается в записи контрактов в кодовом виде в блокчейне.

Умные контракты облегчают обмен активами и не требуют наличия посредников.

Краткая история

Нет, смарт-контракты не начали использовать одновременно с криптовалютами.

Подобная идея появилась в далеких 90-х благодаря Нику Сабо, американскому ученому и криптографу.

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

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

Так в 2013 году родилась платформа Ethereum, где смарт контракты могли доказать свою полезность.

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

Разработка смарт-контрактов, а также мониторинг смарт-контрактов требуют выполнения некоторых условий:

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

      Необходимо также отсутствие в работе малейшего человеческого фактора (лучшим примером является блокчейн в биткоине).

    3. Необходимо децентрализированное исполнение смарт-контрактов.

      Примеры: Ethereum, Codius и Counterparty.

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

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

Принцип работы платформы смарт-контрактов:

  1. Вам необходимо провести транзакцию, и она пересылается в ноды (компьютерная сеть равноправных узлов).
  2. Умный контракт проверяет подписи обеих сторон, а также выполнение каждого пункта из условий договора.
  3. Далее контрактом принимается решение, основываясь на последнем пункте.
  4. Умный контракт заканчивает сделку и распределяет активы между сторонами.

    В случае, если условия выполнены неправильно, платформа выписывает штрафы и ограничивает доступ к активам.

На платформе Ethereum, smart contracts активируются определенным количеством газа (комиссия), необходимым для проведения транзакции.

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

Язык смарт-контрактов — программирование на языке (Python, С, С+ и тп.), для этого потребуются базовые знание основ программирования.

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

Затем следует выбрать один из доступных блокчейнов.

Простые контракты основываются на логике «если…, то…, иначе…».

Смарт-контракты же действуют подобно торговому автомату.

Пример умного контракта:

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

И это — Etherparty.

В данный момент создана только бета-версия платформы.

Если обратить внимание на анализ Deloitte, собранный в 2016 году, главным кандидатом на внедрение умных контрактов определенно является клиринг.

Также существуют и другие перспективные области, среди которых: здравоохранение, логистика, интернет-магазины.

Разберем каждую из областей.

Клиринг

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

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

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

Здравоохранение

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

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

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

Такое объединение информации облегчит проведение научных исследований и анонимных опросов.

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

Логистика

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

Потому у мошенников появляется шанс заработать в то время, как компании терпят лишь убытки.

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

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

Интернет-магазины

Смарт-контракты позволяют отслеживать полную цепочку поставок.

  • К примеру, вы совершили заказ в интернет-магазине.

     Блокчейн фиксирует оплату заказа, но средства переводятся на счет продавца лишь после того, как вы получите свой товар и подтвердите свое удовлетворение.

Ethereum — программа для создания смарт контрактов.

Далее следует разобрать, как сделать свой смарт контракт на данной платформе.

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

В противном случае потребуется привлечение к работе иных разработчиков.

Языком программирования на платформе Ethereum является Solidity.

Онлайн-редактором и компилятором — Remix.

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

Если простые контракты основаны на логике вида «если…, то…, иначе…», то умные контракты действуют подобно торговому автомату, в который опускают доллар, и впоследствии запускается дальнейшее действие (что соответствует виду «если…, то…»), а далее предлагается выбрать товар.

Если выбор сделан, происходит следующее действие — получение желаемого.

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

  1. Место.

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

  2. Хранение.

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

  3. Используемый язык.

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

  4. Безопасность.

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

  5. Используемые средства.

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

  6. Условия.

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

  7. Длительность процесса.

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

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

  8. Составление контракта.

    Для создания умного контракта не потребуется помощь юристов, но такой контракт сложно составить самостоятельно.

Достоинства пользования смарт-контрактами:

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

Однако даже у такого вида контрактов, как умные контракты в блокчейне, есть свои недостатки.

Например:

  • Смарт-контрактам еще далеко до совершенства.

    Ведь есть вероятность того, что в коде имеются ошибки.

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

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

Оракулами могут являться:

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

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

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

Благодаря тому, что и вопрос, и ответ не выходят за пределы реестра, другие пользователи могут информацию просматривать и сверять.

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

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

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

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

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

Несмотря на это, в нестандартных случаях стандартные бумажные контракты продолжат быть основными элементами документа.

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