Смарт контракт это кратко и понятно

Обновлено: 05.07.2024

Ник Сабо впервые описал технологию смарт-контрактов в 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). В большинстве случаев, использование смарт-контрактов позволяло осуществлять обмен денежными средствами и распределять токены доверительным и эффективным способом.

Недостатки

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

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

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

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

Критика

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

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

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

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

Заключение

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

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

image

image

Принцип интеллектуальных контрактов был описан американским криптографом и программистом Ником Сабо еще в 1996 году задолго до появления технологии blockchain. Согласно концепции Сабо, интеллектуальные контракты — это цифровые протоколы для передачи информации, которые используют математические алгоритмы для автоматического выполнения транзакции после выполнения установленных условий и полного контроля процесса. Это определение, которое опережало свое время более чем на десять лет, остается точным и по сей день. Однако в 1996 году эта концепция не могла быть реализована: в то время необходимые технологии не существовали, в частности, распределенная книга.

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

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

Как уже упоминалось выше, интеллектуальные контракты — это компьютерные протоколы или, проще говоря, компьютерный код.

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

  • Скорость. Обработка документов вручную занимает много времени и задерживает выполнение задач. Смарт- контракты предполагают автоматизированный процесс и в большинстве случаев не требуют личного участия, что экономит драгоценное время.
  • Независимость. Смарт-контракты исключают возможность вмешательства третьих сторон. Гарантия на транзакцию — сама программа, которая, в отличие от посредников, не даст основания сомневаться в ее целостности.
  • Надежность. Данные, записанные в blockchain, не могут быть изменены или уничтожены. Если одна сторона сделки не выполняет свои обязательства, другая сторона будет защищена условиями интеллектуального договора.
  • Нет ошибок — Автоматическая система для выполнения транзакций и удаления человеческого фактора обеспечивает высокую точность при выполнении контрактов.
  • Сбережения. Смарт-контракты могут обеспечить значительную экономию за счет устранения расходов для посредников и сокращения операционных расходов, а также возможность для сторон работать вместе на более выгодных условиях.

Недостатки Smart Contracrs

Несмотря на их перспективный потенциал, у умных контрактов также есть свои недостатки:

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

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

Смарт-контракты: как они работают и зачем нужны

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

Принцип работы

Внешний вид смарт-контракта:


Можно прописать в умном контракте все стадии сделки или отдельную часть. В зависимости от этого он может быть:

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

Язык программирования смарт-контракта зависит от технологии. Если планируется использовать технологию распределенных реестров (блокчейн), есть смысл выбирать Solidity (используется в Ethereum), Go (используется в Hyperledger fabric), Java, Kotlin (Corda R3).

Характеристика существующих блокчейн-платформ:


Использование

Эксперты утверждают: можно автоматизировать что угодно, но это будет дорого и бессмысленно. Смарт-контракты разумно использовать для типовых, повторяющихся сделок (поставка, аренда, обеспечение тендеров, аккредитивы, гарантии, лицензионные платежи), исполнение которых легко отследить. Если информация для совершения таких сделок уже оцифрована или сделка основана на открытых данных (например, ЕГРЮЛ и ЕГРП), составить и исполнить смарт-контракт еще проще.

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

В декабре 2016 года Альфа-банк совместно с S7 Airlines первыми в России провели расчёты с контрагентом с использованием смарт-контрактов. Авиакомпания внесла в обслуживающий ее банк согласованную сумму, в момент подачи заявки на аккредитив деньги списались со счета, а после поставки услуг и предоставления документов об этом поступили на счет исполнителя. Особенностью сделки является использование сразу двух смарт-контрактов в системе Ethereum: один нужен для открытия аккредитива, второй – для закрытия. Это снизило вероятность возникновения ошибок в коде, защитило интересы участников сделки и увеличило ее прозрачность.

Плюсы и минусы

У умных контрактов есть недостатки, которые и мешают их распространению в России:

Смарт-контракты сделали криптовалюту Ethereum второй по величине. Рассказываем о том, что это такое и как это связано с модным понятием ICO.

18 октября 2017

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

Так вот, Биткойн — на данный момент однозначно номер один. А знаете, какая криптовалюта на втором месте? Ethereum. Когда мы говорим про места, мы имеем в виду капитализацию, то есть суммарную стоимость всех монет валюты.


Капитализация и цены TOP-5 криптовалют. Источник

Идея Ethereum

Ethereum запустился совсем недавно, 30 июля 2015 года. Одним из его создателей был нынче известный в блокчейн-тусовке и, не побоюсь этого слова, влиятельный Виталик Бутерин. Он родился в России, но с шести лет жил в Канаде. На тот момент, когда он изложил свои идеи, которые в итоге легли в основу сети Ethereum, ему было 19 лет.

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

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

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

И вот это нововведение существенно расширило сферу применения блокчейн-валют.

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

Какие программы можно написать? Да какие угодно. Например, финансовую пирамиду. Для этого в сети Ethereum достаточно создать смарт-контракт со следующими правилами:

Или можно устроить аукцион. Пишем программу:

  1. Если аукцион еще не окончен, запоминаем адреса отправителей и суммы ставок каждого участника.
  2. Когда аукцион окончен, выбираем максимальную ставку, объявляем победителя, высылаем обратно все остальные ставки.
  3. Опционально: высылаем выигранный лот, если Ethereum имеет представление, что это такое.

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

Ограничения смарт-контрактов

Но есть и существенные ограничения, вот некоторые из них:

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

Главное использование смарт-контрактов


Простой смарт-контракт Ethereum. Имеющаяся ошибка позволяет украсть все деньги, кто нашел — молодец

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

ICO — Initial Coin Offering

Нащупал эту нишу Ethereum не сразу. На 1 января 2017 стоимость одного эфира составляла $8, а своего пика (во всяком случае, пока) в $400 курс достиг к июню. Все благодаря большому количеству проводимых ICO — первичному предложению акций стартапов. Желание вложить эфир в какой-либо проект стимулирует спрос на эфир. А проектов этих сейчас — тьма.


График стоимости Ethereum. Источник

Обсудим ICO поподробнее. Типичная схема криптостартапа такова:

  1. У вас есть идея. Обычно она как-то связана с криптовалютой или блокчейном.
  2. На ее реализацию и запуск вам нужны деньги.
  3. Вы объявляете всем, что принимаете эфир, а взамен выдаете акции/токены/фантики при помощи смарт-контракта.
  4. Вы рекламируете свой проект и собираете требуемую сумму.

Сумма обычно составляет 10-20 миллионов долларов и собирается буквально за несколько минут, иногда дней. Как правило, ICO ограничено по времени или собираемой сумме — и это формирует ажиотаж.

Окупаемость криптоинвестиций

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

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

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

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

В 2017 году (к сентябрю) на ICO разные проекты уже собрали порядка 1,7 миллиарда долларов. Об успешных проектах слышно мало, но инвесторы не теряют оптимизма.

Читайте также: