Смарт-контракты: что это такое? Назначение, виды, примеры и перспективы

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

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

Smart Contracts

Суть и отличия от обычных контрактов

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

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

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

Для четкого понимания, ниже в таблице показаны отличия и преимущества смарт-контрактов перед обычными бумажными контрактами:

смарт-контракты против обычных контрактов

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

Для того чтобы объяснить как работает смарт-контракт простыми словами возьмем два примера из жизни:

  • Пример №1: покупка товара в интернет-магазине

Обычная схема выглядит следующим образом:

  1. Выбор и заказ товара покупателем;
  2. Полная или частичная оплата после подтверждения наличия на складе;
  3. Отправка товара после поступления средств на счет продавца.

Сразу видна основная проблема – требуется полное доверие как со стороны покупателя (поставка после полной предоплаты) так и со стороны продавца (полный расчет при частичной оплате после поставки товара).

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

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

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

пример использования смарт контракта через медиатора

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

  • Пример №2. Коллективная покупка

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

пример применения smart contract с условиями

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

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

Классификация smart contracts

На текущем этапе развития технологии, смарт-контракты принято разделять по следующим критериям:

  • По среде выполнения: централизованная и децентрализованная с большей независимостью и надежностью.

централизованные и децентрализованные виды смарт контрактов

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

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

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

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

  • По формированию задания и выполнения его условий: предустановленные (типизированные), произвольно программируемые и ограниченные.

К системам, работающим по предустановленной модели, относятся смарт-контракты Bitshares и Waves.

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

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

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

  • По способу запуска (инициирования): автоматические (самоисполняемые) и ручные.

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

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

  • По уровню приватности: открытые, частично открытые и полностью закрытые.

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

Проблемы и перспективы

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

сферы где используют смарт контракты

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

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

В электронной среде противоположная ситуация: языки программирования blockchain smart contract, как и обрабатывающие серверы, пишутся людьми, и на каждом этапе недоработки накапливаются.

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

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

Понравилась статья? Подпишитесь на обновления:
Ссылка на основную публикацию