Что такое смарт-контракты, для чего нужны умные контракты, принцип их работы. Что такое смарт-контракты

Одна из ключевых особенностей технологии блокчейн — смарт-контракты. Многие участники рынка считают, что «умные» контракты способны оптимизировать и ускорить процессы во многих сферах экономики. Чтобы разобраться, так ли это, Bloomchain и Ассоциация «ФинТех» подготовили партнерский спецпроект, посвященный смарт-контрактам.

О том, что такое смарт-контракты, как они работают, в чем их сильные и слабые стороны, рассказывает руководитель службы аналитики Ассоциации «ФинТех» Иван Басов.

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

25 января 2018 Министерство финансов РФ и Банк России проекты федеральных законов «О цифровых финансовых активах».

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

Позиция Банка России имеет некоторые отличия. Согласно их подходу, смарт-контракт подразумевает как исполнение прав и обязанностей, так и их определение. Отличается мнение Банка России и в части вида осуществления прав и обязательств. ЦБ РФ использует понятие «цифровых записей» в отличие от «цифровых транзакций» Министерства финансов. Заключительное отличие проявилось в том, что Минфин акцентировал внимание на распределенном реестре цифровых транзакций, а у ЦБ РФ эта часть отсутствует. Часто распределенные реестры ошибочно отождествляют с блокчейном. Блокчейн — один из вариантов реализации распределенных реестров.

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

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

2 Как они появились?

В 1993г. программист Ник Сабо придумал термин «смарт-контракт». В 1996г. вышла его публикация «Smart Contracts: Building Blocks for Digital Markets», в которой он определил смарт-контракты как набор «обещаний», включающий протоколы, в котором стороны выполняют обещания.

3 И как это все работает?

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

Самый простой и наглядный пример смарт-контракта, который будет понятен любому человеку – это вендинговые аппараты. Вшитая формула (код) выглядит так: вы хотите сэндвич, но получить его можете только после внесения в аппарат определенной суммы денег. Это и есть условие, после соблюдения которого вы получаете ваш бутерброд. Также в коде прописано условие дать вам сдачу, если вы вставили купюру большего номинала.

4 О смарт-контрактах все говорят. Что в них особенного?

  • Смарт-контракт – часть ПО, включающая программные коды;
  • Электронная форма и использование цифровой подписи;
  • Низкие издержки на исполнение договора, так как не требуются посредники;
  • Исполнение договора в строгой последовательности и при наступлении определенных событий или обстоятельств.

5 Смарт-контракты — это прорыв?

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

6 А насколько они эффективны?

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

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

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

Смарт-контракты можно разделить:

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

Элементы смарт-контракта (пример реализации на блокчейне):

  1. Идентификационное соглашение. Стороны определяют возможности сотрудничества и желаемые результаты. Соглашение может включать бизнес-процессы, обмен активами, передачу прав и многое другое.
  2. Заданные условия. Смарт-контракт может быть инициирован сторонами или исполняться при выполнении заданных условий. Условия могут инициировать смарт-контракт в выходные, праздничные дни.
  3. Код бизнес-логики. Компьютерная программа написана таким образом, чтобы соглашение автоматически выполнялось при исполнении заданных параметров.
  4. Шифрование. Оно обеспечивает безопасную аутентификацию и верификацию обмена сообщениями между сторонами смарт-контракта.
  5. Исполнение и обработка. При достижении консенсуса по аутентификации и верификации смарт-контракт записывается в блок.
  6. Сетевые обновления. После выполнения смарт-контракта обновляются реестры всех компьютеров в сети для отражения нового состояния. После проверки записи и включения в цепь блоков она не может быть изменена.

8 Плюсы и минусы смарт-контрактов

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

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

Недостатки:

  • Ошибки в коде, случайные или намеренные. Цена ошибки DAO составила свыше $60 млн, – $200 млн;
  • Исполнение смарт-контракта зависит от вычислительной мощности сети, в которой он находится, поэтому могут быть задержки выполнения при перегрузках;
  • Отсутствие законодательно закрепленного статуса;
  • Недостаточное понимание технологии потенциальными пользователями.

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

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

Смарт-контракты могут использоваться в области цифровой идентичности, ценных бумаг, финансовой торговли, деривативов, ипотечного кредитования, страхования, цепочки поставок, клинических испытаниях, нотариате. Практическое использование смарт-контрактов пока не очень широкое, так как регулирование пока не носит законодательный характер. Среди экспериментальных проектов можно выделить сделку и банка-участника Ассоциации «ФинТех» — «Альфа-Банка».

10 Что мешает внедрению смарт-контрактов в реальную жизнь?

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

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

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

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

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

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

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

Основной принцип можно объяснить на примере торгового автомата, беспрекословно выполняющего инструкции.

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

Что нужно для создания смарт-контракта?

Предмет договора

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

Цифровые подписи

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

Условия договора

Условия смарт-контракта в форме точной последовательности операций. Все участники должны подписать эти условия.

Децентрализованная платформа

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

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

Выборы

Логистика

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

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

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

В чем преимущества смарт-контактов?

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

Смарт-контракт зашифрован и хранится распределенно, что гарантирует защиту от потери или несанкционированного изменения.

Дешевизна и скорость

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

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

К примеру за 2017 год в арбитражных судах РФ было рассмотрено 1,7 миллионов дел, большинство из которых были прямо или косвенно связаны с нарушением договорных обязательств .

Но к счастью, технология блокчейн дала нам не только криптовалюты, как трансграничное платежное средство. Блокчейн – это нечто большее, чем деньги. Это то, что может заменить собой привычные договорные отношения с помощью умных контрактов (smart-contacts) .

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

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

Сам термин “смарт-контракт” не такой уж и новый. Его впервые использовал в 1994 году Ник Сабо (Nick Szabo), которого считают отцом технологии блокчейн. Кстати, многие считают, что Ник Сабо и есть – создатель . Почитайте про него и все поймете.

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

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

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

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

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


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

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

Ethereum: платформа для смарт-контрактов

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


Большинство смарт-контрактов написаны и работают на . Ethereum – это блокчейн система предложенная в 2013 году русско-канадским программистом . В 2015 году она была полностью реализована и запущена.

Каждый контракт выполняется на Turing-complete Ethereum Virtual Machine (EVM). Или другими словами Виртуальная Машина Тьюринга . Эта виртуальная машина является частью общего алгоритма Ethereum и способна выполнять определенный спектр задач. В частности, она заточена под обработку смарт-контрактов. Такая машина Тьюринга принимает решения на основе каких-либо переменных. Если выполняется какое-либо условие, то она выполняет заданное действие.

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

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

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

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

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

  • Независимость. Вы больше не нуждаетесь в посредниках. Исчезают проблемы в виде переплаты за посреднику, бюрократических сложностей при подписании и получении заверения договора, а также вероятности недобросовестного поведения посредника. Смарт-контракт работает в децентрализованном блокчейне, что снимает возможные ограничения национальных правительств и их надзорных органов.
  • Доверие. Не обязательно доверять партнеру-контрагенту, достаточно доверять блокчейну. In blockchain we trust!
  • Безопасность. Вероятность взлома и кражи средств стремиться к нулю. Например, чтобы украсть ваши деньги со счета, хакеру нужно взломать ваш аккаунт. Но в случае с блокчейном ему попросту нечего взламывать, ведь блокчейн децентрализован. Он одновременно находится в тысячах компьютеров. Чтобы совершить атаку, нужно захватить 51% всей сети, что практически невозможно сделать, так как такая атака будет стоить ОЧЕНЬ больших денег.
  • Скорость. Контракты не просто безопасные и удобные – они еще и быстрые. И не только потому, что вы избавлены от контактов с бюрократией в виде чиновников и нотариусов, а потому, что блокчейн работает очень быстро. Процесс полностью автоматизирован и все операции видно в свободном доступе.

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

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

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

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

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

Например, организаторы ICO KICKICO потеряли 8 миллионов долларов в июле 2017 из за уязвимости в смарт-контракте. Но самым известным случаем ошибки в коде является взлом DAO в июне 2016 года из за которого раскололось сообщество Ethereum и появился . Во время этого происшествия, хакерам удалось похитить 50 миллионов долларов США.


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

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

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

Будущее умных контрактов

Технология смарт-контрактов стремительно развивается. После ошеломляющего успеха Ethereum, многие крупные компании обратили внимание на открывшиеся на горизонте возможности и ринулись исследовать их. Так например, проекты Enigma и Wanchain ведут разработки секретных контрактов (secret contracts), которые были бы не видны в публичном блокчейне. Поскольку пользуются огромным спросом, то и на анонимные смарт-контракты должен быть спрос.

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

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

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

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

Термин смарт-контракт был придуман специалистом в сфере информатики Ником Сзабо в 1994 году. Именно в честь него одна из единиц Ethereum названа Szabo. Она составляет 0.000001 ETH.

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

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

Есть 2 типа смарт-контрактов: обусловленные и необусловленные. Они отличаются возможностью условий запускать заданные действия в смарт-контракте.

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

Примеры: доказуемо честные лотереи, транзакции с мультиподписью

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

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

Примеры: ставки на спорт, рынки предсказаний

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

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

Что такое Эфириум

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

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

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

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

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

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

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

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

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

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

Эфириум позволяет нам делать следующее:

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

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

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

Пример из виртуальной среды:

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

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

Еще пример. Покупатель покупает в интернет магазине товар. Создает умный контракт со следующими условиями:

  • Зарезервировать сумму на покупку с моего лицевого счета
  • Ожидать уведомления от службы доставки 3 дня
  • При получении автоматического уведомления от службы доставки, совершить денежный перевод на счет интернет магазина
  • Если доставка в течении 3 дней не получена, снять блокировку суммы и вернуть деньги на счет

Еще один пример умных контрактов. Документы на владения автомобилем оцифрованы и занесены в блокчейн систему. Каждый участник системы имеет набор документом на владение. У кого-то набора не будет (если нет автомобиля), будет просто пустая «папка» с документами в блокчейн системе. Например в системе указано, что Алиса владеет автомобилем Audi A6. Алиса решает продать этот автомобиль. Она создает контракт и указывает условия сделки:

  • Покупатель должен иметь нулевую или положительную историю покупок автомобилей
  • Покупатель должен перечислить сумму N за автомобиль на счет Алисы
  • Когда сумма перечислена, произвести перевод документов владения на счет покупателя

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

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

  • Арендатор должен иметь положительный баланс денег на своем счету
  • Арендатор должен иметь положительную или нулевую история («карму») съема квартир
  • Если арендатор перевел нужную сумму на лицевой счет, то послать сигнал дверному замку (или в целом умному дому) на разблокировку квартиры для ключа арендатора
  • Если в текущем месяце не произведена оплата, послать сигнал замку на блокировку

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

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

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

Таким образом, он служит платформой для множества различных типов децентрализованных приложений блокчейн, не ограничиваясь криптовалютами. Сердце Эфириум – Виртуальная Машина Эфириум (EVM), которая выполняет код произвольной алгоритмической сложности. База данных блокчейн поддерживается и обновляется каждым узлом, подключенным к сети. Каждый узел сети Эфириум запускает виртуальную машину у себя и выполняет инструкции, указанные в контракте.

Узлы сети и виртуальные машины Эфириум:

Транзакция создается одним из узлов и отправляется соседним узлам, которые выполняют ее на виртуальной машине EVM:

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

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

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

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

Для того, чтобы получить Газ и совершать транзакции обычным узлам сети нужно иметь у себя на счету Эфир.

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

Майнинг Эфира

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

Алгоритм доказательства работы называется Ethash (модифицированная версия алгоритма Dagger-Hashimoto).

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

Алгоритм Ethash больше завязан на память, что усложняет создание ASIC устройств для майнинга. Это достигается тем, что алгоритм требует выбор подмножеств для расчетов из фиксированного файла, размером в несколько гигабайт, который называет DAG файл (Directed Acyclic Graph – направленный ацикличный граф, специальная структура в виде файла для вычисления хешей). DAG файл полностью меняется каждые 30 тысяч блоков или 125 часов. Период в 125 часов называется эпохой.

DAG файл всегда создается заново при первоначальном старте майнинга или при смене эпох.



Просмотров