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

История смарт-контрактов

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

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

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

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

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

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

Платформа Ethereum использовалась для распространения децентрализованных приложений (DApps). Вместо множества приложений, управляемых многими протоколами, Ethereum позволяет управлять всеми приложениями по одному протоколу.

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

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

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

Автономность
Эти контракты всегда заключаются между одним или несколькими физическими или юридическими лицами, но без посредников. Для подтверждения договора не требуется юрист. Поэтому стороны сокращают и могут даже устранить любого лишнего человека, который не участвует в договоре.
Снижение затрат
Поскольку контракты не зависят от третьей стороны, затраты снижаются. Меньшее вмешательство человека приводит к снижению затрат.
Скорость
Умные контракты используют программный код для автоматизации задач, которые в противном случае выполнялись бы вручную. Поэтому они увеличивают скорость бизнес-процессов и менее подвержены ошибкам вручную.
Безопасность
Основывая контракты на блокчейне Ethereum, они не могут быть потеряны. Все является неизменным. Ничто и никто не может заставить его исчезнуть, и у вас всегда есть к ним доступ. Процесс децентрализованного управления исключает риск манипуляций, поскольку выполнение управляется автоматически всей сетью, а не отдельной частью.

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

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

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

Как создать смарт-контракт?

Контракт разработан на определенном языке (Solidity, Serpent или Mutan), скомпилирован в EVM и, за некоторыми исключениями, соответствует стандартному интерфейсу ERC-20. Solidity является языком, который основан на JS, Python и C++.

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

В документе «Введение юриста в смарт-контракты» для смарт-контрактов описываются два «уровня»: платформа смарт-контрактов (SCP), которая представляет собой инфраструктуру, позволяющую создавать их и управлять ими на блокчейне, и система управления смарт-контрактами (SCMS). Этот протокол добавляется к этой инфраструктуре, чтобы пользователю было проще взаимодействовать с контрактами. То есть, он является графическим интерфейсом.

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

Как происходит процесс оформления смарт-контрактов

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

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

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

Регистрация и смена владельца
необходимые документы могут быть зарегистрированы в блокчейне, чтобы установить собственность с самого начала и сменить владельца посредством интеллектуальных договоров.
Энергетические транзакции
 считается, что это создает цифровую экосистему для обмена энергией. Таким образом, источники электричества или топлива будут связаны с смарт-контрактами, заключенными только между физическими лицами или с вовлеченными организациями, которые, в свою очередь, могут персонализировать потребление каждого клиента.
Интеллектуальная собственность
можно встроить смарт-контракт в любой объект, который контролируется цифровыми средствами. Именно здесь рождается «умная собственность», которая может быть ассимилирована с объектами IoT, подключенными к сети. Они могут варьироваться от дома до автомобилей. Таким образом, например, аренда этих свойств может быть автоматизирована.Также, криптовалюты, такие как Биткоин, можно рассматривать как набор смарт-контрактов, которые обеспечивают соблюдение закона о собственности. Криптографические методы используются, чтобы гарантировать, что их может потратить только владелец цифрового токена. Уже существует несколько децентрализованных рынков активов, так что многие различные цифровые активы могут быть проданы в одной цепочке блоков. Тот же принцип можно распространить и на физические продукты с электронным управлением или встроенными микрочипами.
Финансовые услуги
Криптовалюты, очевидно, открывают широкий спектр различных вариантов использования для умных контрактов, которые иначе были бы невозможны. Например, системы, подобные используемой BurstCoin, могут проводить аукционы, которые автоматически проверяют самую высокую цену в заданный срок и автоматически переводят неактивные средства.