Блокчейн и смарт-контракты. Доступно на котиках объясняем, в чем прорыв и перспективы
Биткоин — это не только криптовалюта, на которой можно было заработать. Куда важнее то, что в ее основе лежит технология блокчейна — защищенной и прозрачной цепочки, содержащей информацию о транзакциях. Биткоины — лишь частный случай применения технологии, которую можно внедрить во многие сферы человеческой жизни благодаря смарт-контрактам. Вместе с партнером проекта в лице Приорбанка рассказываем про блокчейн, умные контракты и их перспективы.
Что такое блокчейн?
Самое простое и популярное объяснение таково: блокчейн — это цепочка блоков с информацией о транзакциях. Каждый блок неразрывно связан с предыдущим, так как содержит захешированную информацию о нем. Каждый новый блок крепится к предыдущему. Весь блокчейн хранится на компьютере каждого его участника. Например, блокчейн биткоина на февраль 2018 года «весит» более 150 ГБ.
Вся информация по переводу криптовалюты с кошелька на кошелек хранится в блокчейне. Историю всех транзакций можно отследить, поэтому лишние биткоин-монетки попросту не могут появиться из воздуха по чьей-то злой воле.
Чем блокчейн отличается от классической базы данных?
Блокчейн хранится на компьютере каждого участника сети, тогда как база данных находится на специальных серверах, к которым есть доступ только у определенных организаций.
Взлом такой базы может иметь непоправимые последствия: злоумышленники могут перевести себе на счета деньги, уничтожить контракты, внести сумятицу в данные и повредить отдельные участки хранилища. Тогда как блокчейн совсем не просто взломать: если даже на нескольких компьютерах удастся подменить информацию, безопасность не будет нарушена из-за распределенной архитектуры сети. Ломать придется все, однако на практике это нереально и крайне трудозатратно. Чтобы провести такую операцию, потребуются огромные компьютерные мощности. Подробнее об этом мы рассказывали в статье о принципах функционирования биткоина.
И в такой автоматизированной и защищенной системе можно организовать не только обмен криптовалютами, но и кое-что поинтереснее.
Что такое смарт-контракт?
Смарт-контракт — это условие, записанное компьютерным языком, при выполнении которого стороны, подписывающие смарт-контракт, обмениваются какими-либо активами: валютой, недвижимостью, акциями и т. д. Например, валюта покупателя переводится в программу и замораживается там до тех пор, пока продавец не выполнит свою часть контракта. Если условие сорвано, то сумма возвращается на счет клиента, а смарт-контракт аннулируется. Если все условия выполнены, то происходит обмен активами.
Этот обмен фиксируется в смарт-контракте и записывается в блокчейн, после чего аннулировать его, подменить или уничтожить уже не получится. Отслеживанием выполненных условий программа занимается в автоматическом режиме, контроль или участие людей не нужны. Другими словами, смарт-контракты работают напрямую между заинтересованными сторонами, исключая посредников.
Например, вы хотите купить квартиру. Нашелся подходящий продавец, у вас есть деньги. Чтобы заверить сделку, вам придется обращаться к третьей стороне — нотариусу. А это дополнительные расходы на ваши плечи — косметический ремонт в квартире откладывается.
Например, в сентябре прошлого года в Киеве с помощью блокчейн-сети Ethereum была продана квартира. Сделка зафиксирована онлайн-магазином недвижимости Propy в децентрализованном реестре собственности, который базируется на блокчейне Ethereum. Так как криптовалюта в Украине не является платежным средством, сделка прошла по договору обмена.
Правда, без нотариуса не обошлось. Киевский специалист зарегистрировал сделку и внес в госреестр данные нового владельца. Информация из этого госреестра попала в блокчейн, после чего продавец получил свою сумму в криптовалюте.
Откуда взялась идея смарт-контракта?
Еще в 1996 году первую идею об умных контрактах высказал Ник Сабо — ученый с разработками в информатике и криптографии. Но реализовать это на практике, хоть и частично, удалось только в 2008-м, когда принципы смарт-контрактов нашли применение в блокчейне биткоина. Однако принципы эти оказались крайне ограниченными, нацеленными исключительно на функционирование криптовалюты.
Этот недостаток отметил Виталик Бутерин, основатель Ethereum, который и решил реализовать расширенный функционал умных контрактов в своем проекте.
Где можно использовать смарт-контракты?
Умными контрактами можно регулировать самые разные финансовые (и не только) отношения между людьми. Самый очевидный вариант — торговля в интернете. Электронная коммерция охватывает сегодня практически все виды товаров. Мы заказываем не только технику, но и готовую еду, продукты.
Выше мы уже приводили пример с покупкой недвижимости. Давайте разберемся, как можно реализовать вариант с ее арендой. Мы должны внести деньги за первый месяц аренды и залог. Сумма фиксируется в блокчейне, после чего лендлорд передает ключи.
Чтобы полностью автоматизировать смарт-контракт, необходимо добавить немного «интернета вещей»: желательно установить в съемном жилье навороченный замок, который автоматически будет блокироваться при просрочке оплаты либо по окончании оговоренного срока. Когда аренда подойдет к концу, двери заблокируются и арендатору автоматически вернется замороженный в блокчейне залог.
Кроме того, умные контракты можно использовать при распределении наследства. Пожилой миллиардер, который не доверяет душеприказчикам (человеческий фактор, миллиарды наследства — сами понимаете), прописывает в смарт-контракте счета получателей наследства в случае своей смерти. Система периодически отслеживает информацию из государственного реестра умерших. Как только там появляется запись об искомом миллиардере, деньги автоматически рассылаются его довольным наследникам.
Резонный вопрос: а как умный контракт может отслеживать такой реестр или получать информацию от дверного замка? Тут-то и всплывает главная загвоздка в распространении данной технологии — смарт-контрактам нужна прокладка в реальный мир, из которого программа и черпает информацию для проверки условий. Для этого нужны оракулы.
Что такое оракул и зачем он нужен?
Как мы уже поняли, применение смарт-контрактов может быть самым разнообразным. Но пока все упирается в ограниченность платформ при получении данных из внешнего мира. Оракулы должны поставлять эту информацию для проверки условий умных контрактов в понятном для них виде.
Информация может быть самой разной: от данных с датчиков температуры до изменений в базах продавцов, государственных реестрах и на фондовых рынках. Оракулы нужны в самом широком спектре областей человеческой деятельности. И оракулы должны быть доверенными, получать информацию из авторитетных источников, что накладывает некую долю субъективизма на будущую работу смарт-контрактов.
Работа над оракулами ведется не только в специализированных компаниях, но и в крупных корпорациях наподобие IBM и Microsoft. Все они пытаются создать как частные решения, так и универсальные платформы, которые позволят блокчейнам общаться с внешним миром и получать данные, необходимые для полноценного функционирования умных контрактов.
Что же делает смарт-контракты перспективными?
Спектр их применения может быть крайне широким. А потому и преимущества варьируются в зависимости от конкретных типов и шаблонов умных контрактов. Но можно выделить несколько основных преимуществ, которые делают такие системы перспективными.
Смарт-контракты избавляют от посредников между заинтересованными сторонами: расходы на услуги нотариусов заметно сократятся, а время совершения сделок заметно ускорится. Чем меньше прокладок между людьми и компаниями, готовыми обменяться активами, тем быстрее будут выполняться их контракты. Главное, четко перевести все условия контракта в программный вид и предоставить программе доступ ко всем необходимым данным.
К тому же умные контракты в распределенном реестре блокчейна невозможно изменить, подменить или уничтожить. Если вдруг одна из сторон обзаведется злым умыслом, ей не удастся нарушить целостность блокчейна из-за его распределенной структуры.
Какие недостатки есть у смарт-контракта?
Умные контракты используют для своей работы криптовалюты, правовой статус которых в качестве финансового инструмента на сегодня определен далеко не в каждой стране.
Смарт-контракты надо записывать без ошибок и учитывать мельчайшие условия и детали сделки. Если с человеком еще можно договориться, то программа будет беспристрастно выполнять свой алгоритм. Чем сложнее процесс сделки, тем труднее будет создать для нее умный контракт.
Как мы уже говорили в части об оракулах, смарт-контрактам нужен проводник в реальный мир, который сможет доставлять нужные данные для проверки условий. Чем сложнее контракт, тем больше условий и тем больше информации потребуется извлечь из разных платформ. Но не все платформы готовы открывать данные оракулам, не все платформы можно считать доверенными и безусловно авторитетными.
Партнерский спецпроект. ООО «ЭС ЭМ ДЖИ», УНП 190247301
Сетевые фильтры в каталоге Onliner.by
Читайте также:
Наш канал в Telegram. Присоединяйтесь!
Быстрая связь с редакцией: читайте паблик-чат Onliner и пишите нам в Viber!
Перепечатка текста и фотографий Onliner.by запрещена без разрешения редакции. [email protected]
Смарт-контракты: Как это работает | Обучение
Что такое умные контракты, как они работают и почему будущее именно за ними.
Блокчейн представляет собой децентрализованную систему, существующую благодаря множеству объединенных в сеть компьютеров. Поэтому одно из его главных достоинств — то, что вы можете не платить посредникам и экономить свое время и нервы.
У блокчейна есть свои недостатки, но он быстрее, надежнее и безопаснее традиционных систем, и поэтому банки и правительственные организации все чаще используют эту технологию для своих нужд.
В 1994 году Ник Сабо, специалист в области права и криптограф, понял, что с помощью децентрализованного реестра можно заключать «умные контракты», которые также называют самоисполняемыми, цифровыми или смарт-контрактами.
Такие контракты могут быть записаны в виде кода, сохранены и продублированы в системе, а их выполнение обеспечит сеть компьютеров, управляющая блокчейном. Также с помощью реестра можно будет переводить друг другу деньги и получать товары или услуги.
Что такое умные контракты?
Умные контракты позволяют обмениваться деньгами, собственностью, акциями или другими активами, не прибегая к услугам посредников.
Для того, чтобы заключить обычную сделку, нужно пойти к юристу или нотариусу, заплатить и дождаться оформления документов. Умные контракты работают как торговые автоматы: вы просто бросаете в автомат (то есть в реестр) биткоин (Bitcoin), и хранившийся у третьего лица контракт, водительские права или любая другая услуга, которую вы заказывали, падает на ваш счет.
Кроме того, в отличие от традиционных соглашений, умные контракты не только содержат информацию об обязательствах сторон и штрафах за их нарушение, но и сами автоматически обеспечивают выполнение всех условий договора.
На недавнем блокчейн-саммите в Вашингтоне Виталик Бутерин, 23-летний программист из проекта Ethereum, объяснил, что в умном контракте актив или валюта переводятся в программу, которая следит за соблюдением заложенного набора условий.
В определенный момент эта программа подтверждает выполнение условия контракта и автоматически определяет, должен ли указанный актив перейти к одному из участников сделки или немедленно вернуться к другому участнику (а может быть, условия несколько сложнее). Все это время документ хранится и дублируется в децентрализованном реестре, что обеспечивает его надежность и не позволяет ни одной из сторон менять условия соглашения.
Пример умного контракта
Вот код, написанный для обычного умного контракта на блокчейн-платформе Ethereum. Контракты могут быть написаны в любом блокчейне, но Ethereum наиболее популярен, поскольку предоставляет неограниченные возможности для написания умных контрактов и работы с ними.
Образец умного контракта, написанного на платформе Ethereum
Здесь говорится, что создатель контракта должен получить 10 тыс. биткоинов. Этот контракт позволяет любому, у кого достаточно средств на счете, перевести биткоины другим людям.
Практическое применение умных контрактов
Используя умные контракты, можно упростить работу во многих сферах жизни, в том числе логистике, менеджменте, юриспруденции и даже в выборах.
Выборы
По мнению экспертов, сфальсифицировать итоги выборов практически нереально, однако благодаря умным контрактам можно полностью исключить возможность внешнего вмешательства в систему голосования.
В таком случае голоса избирателей будут помещены в распределенный реестр, и для их декодирования потребуется исключительные вычислительные возможности. Таких компьютеров не существует, так что взломать эту систему будет невозможно.
Менеджмент
Блокчейн не только предлагает надежный и прозрачный общий реестр, но и помогает избежать недопонимания при совместной работе или ситуаций, когда стороны составляют контракты независимо друг от друга.
Логистика и снабжение
Разработчик протокола Bitcoin Core Джефф Гарзик говорит:
«UPS может исполнять контракты, в которых будет сказано: „Если мы получим оплату за доставку товара, то его производитель, который в цепочке поставок находится на много звеньев выше, немедленно начнет создавать новый такой товар, поскольку этот уже доставлен по назначению“».
Снабжение слишком часто страдает из-за бюрократии, когда разные формы должны пройти утверждение в многочисленных инстанциях. Из-за этого мошенники получают возможность заработать, а компании несут убытки. Блокчейн позволяет избежать этих проблем, так как каждый участник цепочки поставок получает доступ к безопасной электронной системе, которая контролирует выполнение работ и платежи.
Блокчейн для чайниковТак, банк Barclays Corporate Bank использует умные контракты для того, чтобы регистрировать переход права собственности и автоматически перечислять платежи в другие кредитно-финансовые учреждения.
Автомобили
Задумайтесь о будущем, где все будет автоматизировано. Google уже строит его, создавая умные телефоны, умные очки и даже умные автомобили. И здесь на помощь придут умные контракты.
Возьмем, например, самоуправляемые или самопаркующиеся автомобили. Умные контракты будут определять, кто виновен в аварии: датчик или водитель, а также помогут при разрешении любых других ситуаций. С помощью умных контрактов страховые компании могут устанавливать размер взносов в зависимости от того, где и при каких условиях водители управляют транспортными средствами.
Другие сферы
Другие индустрии, такие как эквайринг, кредитование и бухгалтерский учет, тоже будут использовать умные контракты — например, для оценки рисков и аудита в режиме реального времени. Юристы смогут перейти от составления традиционных контрактов к созданию типовых образцов умных контрактов. А на сайте Blockchain Technologies умные контракты превратились в электронно-бумажный гибрид: они подтверждаются блокчейном и получают материальное воплощение в виде бумажной копии.
Патрик Хаббард, главный специалист и старший управляющий маркетингом продуктов в SolarWinds:
«Янгонская фондовая биржа в Мьянме производит платежи с помощью распределенного реестра. Особый интерес вызывают те функции блокчейна, которые выходят за рамки традиционного использования технологии. Так на Янгонской бирже удалось решить проблему производимых в разное время расчетов в торговой системе, которая синхронизирует торги всего лишь дважды в день. Благодаря тому, что умные контракты сами обеспечивают исполнение сделок, блокчейны с их надежной системой проведения транзакций могут использоваться в ситуациях, где требуется выполнение сложных операций, зависящих от разных изменяющихся факторов. Вот почему Amazon, Microsoft Azure и IBM Bluemix уделяют такое внимание разработке облачной технологии „блокчейн как услуга“».
Минусы умных контрактов
Умные контракты далеки от совершенства. Что если в код попадут ошибки? Как должно регулировать эти контракты государство? И как оно будет взимать налоги с таких транзакций?
Список возможных проблем этим не ограничивается. Специалисты пытаются решить все вопросы, но подобные трудности отталкивают многих возможных пользователей.
Блокчейны, где можно заключить умные контракты
Bitcoin: Отличный блокчейн для транзакций с биткоинами, но возможности для работы с документами там ограничены.
Side Chains: Другое название для блокчейнов, параллельных Bitcoin, которые предоставляют несколько большие возможности для работы с контрактами.
NXT: Это открытая блокчейн-платформа с ограниченным числом образцов умных контрактов. Вы можете использовать только то, что там есть; написать свой код нельзя.
Ethereum: Открытая блокчейн-платформа, которая лучше всего подходит для написания умных контрактов и работы с ними. Вы можете составить любую программу, однако за вычислительные ресурсы платформы надо будет заплатить монетами ETH.
Подготовила Тая Арянова
Что такое смарт контракт в Блокчейне
Концепция смарт-контрактов набирает силу среди более широкой аудитории, и в связи с этим возникает необходимость в четком рабочем определении. В настоящее время информация вокруг смарт-договоров сопровождается только путаницей, связанной с конкретным значением термина.
В этой статье мы попытаемся пролить свет на природу умных контрактов. Надеемся, что с отзывами сообщества мы сможем получить более четкую картину, чем то, что у нас есть сейчас.
Содержание страницы
Что такое смарт контракты в Blockchain
Термин «умный контракт» восходит как минимум к 1995 году к междисциплинарному юристу Нику Сабо, который опубликовал несколько статей на своем веб-сайте в отношении идеи умных договоров. Его определение имеет следующий вид:
Смарт контракт — это набор обещаний, указанных в цифровой форме, включая протоколы, в которых стороны выполняют эти обещания.
Давайте подробнее рассмотрим, что он имеет в виду. Итак, умные контракты характеризуются следующими особенностями:
Набор обещаний относится к (часто взаимным) правам и обязательствам, на которые согласны стороны договора. Эти обещания определяют характер и цель контракта. Возьмите договор купли-продажи как классический пример. Продавец обещает доставить товар в обмен на желаемую цену, которую оплатить покупатель.
Цифровая форма означает, что договор должен быть написан в машинном коде. Это необходимо, поскольку права и обязанности, установленные в интеллектуальном контракте, выполняются компьютером или сетью компьютеров, как только стороны пришли к соглашению.
Тут стоит уточнить:
Принятие соглашения — когда стороны разумного договора заключают соглашение? Ответ зависит от конкретной реализации интеллектуального контракта. В целом, соглашение заключается (не позднее), когда стороны взяли на себя обязательство (безотзывно) на выполнение договора, установив соглашение на платформе.
Выполнение — то, что действительно означает «выполнение», также зависит от реализации. Вообще говоря, исполнение означает активное действие, обеспечиваемое технологическими средствами.
Машинный код — кроме того, конкретная «цифровая форма», в которой должен быть составлен контракт, в значительной степени зависит от выбора протоколов, которые стороны соглашаются использовать.
Протоколы — это техническая реализация, на основе которой выполняются договорные обещания или на которых в обязательном порядке осуществляется документирование. Какие протоколы выбраны, зависит от многих факторов, а главное от характера активов, которые должны быть обменены во время исполнения соглашения.
Как работает смарт контракт
Вместо того, чтобы полагаться на другую сторону, чтобы оправдать свое слово или даже хуже, полагаясь на адвокатов и правовую систему для исправления ситуации, если что-то пойдет не так, смарт контракт позволяет выполнять то, что должно произойти своевременно и объективно.
Принцип работы смарт контракта:
Смарт-контракты довольно глупые
Использование слова «умный» подразумевает, что эти контракты имеют врожденный интеллект. Они этого не имеют. Умная часть договора не нуждается в сотрудничестве с другим абонентом для выполнения соглашения. Вместо того, чтобы выкидывать арендодателей, которые не платят, «умный» контракт блокирует доступ неплатежеспособных арендаторов в их квартиру. Выполнение согласованных последствий — это то, что делает интеллектуальные контракты мощными, а не контрактами врожденной разведки.
Поистине разумный договор будет учитывать все смягчающие обстоятельства, взглянуть на дух контракта и сделать справедливые решения даже в самых мрачных обстоятельствах. Другими словами, действительно умное соглашение будет действовать как действительно хороший судья.
Вместо этого «умный контракт» в этом контексте вовсе не интеллектуальный. На самом деле это совокупность прописанных пунктов, которым следует машинный код, и он не может принимать во внимание второстепенные соображения или «дух» закона.
Другими словами, заключение смарт-договора означает, что не может быть места для двусмысленности.
От теории к практике
Когда Сабо вел свою теорию почти двадцать лет назад в Интернете, практика значительно отставала. Не было четкого пути, как идея могла быть преобразована в реальность.
Сегодня технология догнала дальновидный ум Сабо, и умные контракты начинают становиться жизнеспособными. Что случилось за эти двадцать лет?
Короче говоря, протоколы, которые Сабо теоретизировал в своем определении, наконец, были разработаны. Они приняли форму протокола Биткоинов или, в более общем плане, всех протоколов, которые могут достичь консенсуса.
В связи с разработкой этих протоколов мы получили еще один необходимый строительный блок: первые по-настоящему родные цифровые активы, а именно Биткоин валюты. Без этих активов интеллектуальные договора также были бы нежизнеспособными, поскольку финансовый сектор был крайне враждебным к любым нововведениям за последние десятилетия.
И, наконец, концепция, которая еще не пришла к полной реализации, — умная собственность. Мы вступаем в эпоху вездесущих вычислений и подключений, обычно называемых интернет-вещами. Способность физических объектов отправлять и получать информацию в Интернет и из Интернета, а также контролировать свое использование с помощью программного обеспечения (технология DRM) позволяет нам строить то, что Szabo называет встроенными контрактами.
Основная идея технологии умных контрактов заключается в том, что многие виды договорных предложений могут быть встроены в аппаратное и программное обеспечение, с которым мы имеем дело.
Смиренное начало встроенных соглашений Szabo видит в торговых автоматах, терминалах точки продажи (POS), электронном обмене данными (EDI) между крупными корпорациями и сетями SWIFT, ACH и FedWire для передачи и выравнивания платежей между банками. Другим примером встроенных контрактов являются DRM-механизмы в области потребления цифрового контента, такие как музыка, фильмы и электронные книги.
Умные контракты – это мост между киберпространством и физическим пространством.
Язык программирования смарт контрактов
Из-за большого централизованного маркетинга от Ethereum существует ошибочное убеждение, что технология смарт контрактов существуют только в Ethereum. Это неправда. У Bitcoin с самого начала в 2009 году был довольно обширный смарт-контрактный язык под названием Script. Фактически, смарт-договоры существовали до Биткойна еще в 1995 году. Разница между умным языком контракта Биткойна и Ethereum заключается в том, что Эфириум использует Turing-полноту. То есть, Solidity (язык умных контрактов ETH) позволяет составлять более сложные соглашения за счет затруднения их анализа.
Есть некоторые существенные последствия сложности. Хотя сложные контракты могут позволить более сложные ситуации, сложный договор также очень трудно обеспечить. Даже в нормальных контрактах, чем сложнее соглашение, тем сложнее его применять, поскольку осложнения добавляют дополнительную неопределенность и место для интерпретации. С помощью интеллектуальных контрактов безопасность означает всевозможные способы, с помощью которых можно было выполнить сделку, и убедиться, что контракт делает то, что авторы намереваются.
Выполнение в контексте Turing-полноты чрезвычайно сложно в анализе. Обеспечение полного интеллектуального контракта Turing становится эквивалентом того, что компьютерная программа не имеет ошибок. Мы знаем, что это очень сложно, поскольку почти каждая компьютерная программа имеет ошибки.
Подумайте, что для написания обычных контрактов требуется много лет обучения и очень жесткий экзамен, чтобы грамотно писать. Смарт-контракты ico требуют, по крайней мере, такого уровня компетентности, и в настоящее время многие из них написаны новичками, которые не понимают, насколько это небезопасно. Это очень ясно из различных контрактов, которые, как было показано, являются ошибочными.
Решение Bitcoin этой проблемы состоит в том, чтобы просто не иметь Turing-полноту. Это упрощает анализ контрактов, так как возможные состояния программы легче перечислять и анализировать.
Решение Ethereum заключается в том, чтобы возложить бремя на разработчиков смарт-контрактов. Авторы договора должны убедиться, что соглашение делает то, что они намереваются.
Если написание смарт контрактов имеет ошибки
Продолжим мысль предыдущего абзаца.
Эфириум запустил идею о том, что «код — это закон». То есть, контракт на Ethereum является высшим авторитетом, и никто не может его отменить. Идея заключалась в том, чтобы дать понять разработчикам умных контрактов, что они сами по себе. Если вы придумали свой собственный умный контракт, то в каком-то смысле вы этого заслуживаете. Это произошло, когда произошло событие DAO.
DAO означает «децентрализованная автономная организация», и фонд был создан в Ethereum в качестве способа показать, что может сделать платформа. Пользователи могут вносить деньги в DAO и получать доход на основе инвестиций, которые сделала DAO. Сами решения были бы подорваны и децентрализованы. DAO привлек 150 миллионов долларов в ETH, когда ETH торговал примерно в 20 долларов. Все это звучало хорошо в теории, но возникла проблема. Код не был обеспечен очень хорошо и привел к тому, что кто-то выяснил способ слить из DAO деньги.
Многие называли человека, укравшего средства с DAO «хакером». В том смысле, что «хакер» нашел способ взять деньги из договора таким образом, который не был создан создателями, это правда. Но в более широком смысле это был не хакер, а только тот, кто воспользовался причудами в умном контракте в свою пользу. Это не очень отличается от того, как креативный CPA выясняет налоговую лазейку, чтобы спасти деньги своих клиентов.
Что произошло дальше, так это то, что Эфириум решил, что код больше не является законом и вернул все деньги, которые пошли в DAO. Другими словами, авторы контрактов и инвесторы сделали что-то глупое, и разработчики Ethereum решили выручить их.
Последствия этого инцидента хорошо известны – произошло разделение. Родился Ethereum Classic, сохраняя DAO как написанный и сохраняющий принцип «code is law». Кроме того, разработчики начали уклоняться от использования свойства Turing-полноты Ethereum, поскольку это оказалось трудно защитить. Стандарты ERC20 и ERC721 являются наиболее часто используемыми смарт-шаблонами контрактов в Ethereum, и важно указать, что оба типа контрактов могут быть записаны без какой-либо полноты Turing.
Юридические аспекты
Большая часть путаницы вокруг концепции интеллектуальных контрактов связана с ее именем и языком, используемым для его описания. Люди, похоже, делают вывод из употребления термина «контракт», что концепция должна иметь какое-то отношение к правовой концепции договоров. Умный контракт тогда, согласно этой логике, является юридически обязывающим соглашением плюс «х», где х делает указанное соглашение «умным».
С юридической точки зрения эта презумпция неверна или, по крайней мере, не обязательно истинна. В зависимости от реализации разумного контракта, который вы выбираете, вполне возможно, что две или более стороны могут заключить «разумный контракт» без указанного договора, составляющего необходимые требования, которые считаются действительным договором в юридическом смысле.
Однако нельзя отрицать, что умные контракты должны быть классифицированы как юридически соответствующее поведение. Мы живем в мире, который регулируется правовыми нормами, которые охватывают все возможные экономические транзакции (и многое другое). Контрактное право является всего лишь одним из возможных инструментов для организации экономических операций.
Перспективы будущего
Очень хочется, чтобы интеллектуальные контракты могли быть более полезными, чем они есть на самом деле. К сожалению, большая часть того, что мы думаем, как контракты, приводит к целому ряду предположений и установленному прецедентному праву, которые не обязательно должны быть четко указаны.
Кроме того, оказывается, что использование полноты Тьюринга — это простой способ испортить и вызвать всевозможные непреднамеренные действия. Мы должны маркировать смарт-платформы контрактов на Тьюринга-уязвимые, а не Тьюринг-полноту. Инцидент DAO также доказал, что существует «дух» контракта, который неявно доверителен и помогает разрешать споры больше, чем мы понимаем.
Смарт-контракты просто слишком просты в использовании, слишком трудны для защиты, слишком сложны, чтобы быть беззаботными и иметь слишком много внешних зависимостей для работы на большинстве вещей. Единственное реальное место, где интеллектуальные контракты фактически добавляют доверие, — это цифровые инструменты на предъявителя на децентрализованных платформах, таких как Биткоин.
Одно можно сказать наверняка: умные контракты появились, чтобы остаться. Они являются строительными блоками по-настоящему глобальной экономики, к которым у всех есть доступ без предварительной проверки и высоких первоначальных затрат. Они устраняют необходимость доверия со стороны многих экономических транзакций, а в других случаях переносят доверие к сторонам, которым можно разумно доверять.
Примеры умных контрактов и Блокчейна
Смарт-контракты на практике можно использовать в разных сферах жизнедеятельности. Они позволяют лучше монетизировать бизнес. Среди основных направлений применения можно выделить:
Что такое умный контракт (видео)
Почему многие кейсы применения умных контрактов попросту неосуществимы
Одно из предназначений смарт-контрактов — автоматизация платежных операций между контрагентами. На этом рынке работает и наш платежный блокчейн-сервис Wirex. Несмотря на перспективность смарт-контрактов, автор материала анализирует недостатки этой технологии.Как разработчика популярной блокчейн-платформы меня иногда спрашивают есть ли в планах развития нашего сервиса Multichain место умным контрактам по типу тех, что используются в Ethereum. В ответ всегда звучит: «Нет, или во всяком случае не сейчас».
Но ведь в шумном хайповом мире блокчейнов умные контракты считаются чем-то очень крутым. Почему же ответ всегда нет? Что ж, проблема в том, что если в случае с работающими подобно биткоину контролируемыми блокчейнами нам известны как минимум три мощных сценария их практического применения (отслеживание истории происхождения, хранение документов компаний, облегченная организация финансовых систем), то для эфирных умных контрактов эквивалентных по эффективности кейсов попросту не существует.
Дело не в том, что люди не понимают, чего они хотят от умных контрактов. Проблема скорее в том, что очень многие из этих идей попросту неосуществимы. Когда умные люди слышат термин «умные контракты», они, как правило, дают волю своему воображению. Рисуют в голове картины умного автономного ПО, оседлавшего волну данных и подключающегося к решению задач реального мира. К сожалению, реальная картина работы умных контрактов гораздо более прозаична.
Умный контракт — фрагмент кода, хранящийся в блокчейне. Он приводится в действие блокчейн-транзакциями и читает из блокчейна или пишет в него данные. Вот и все. Ни больше, ни меньше.
Умный контракт — всего лишь звучное название кода, который работает на блокчейне и взаимодействует с его состоянием. Что же это за код? Это Pascal, Python или PHP. А может быть, Java, Fortran или C++. Если мыслить форматом баз данных, то его можно представить в виде процедур, написанных на каком-либо расширении SQL.
Фундаментально все эти языки эквиваленты, они решают те же самые виды задач, применяя те же способы их решения. Конечно, у каждого из них есть сильные и слабые стороны. Вы сошли бы с ума, пытаясь создать веб-сайт на C или сжать HD-видео в Ruby. Но по крайней мере чисто теоретически вы могли бы это сделать, если бы захотели. Вам просто пришлось бы заплатить высокую цену с точки зрения удобства, производительности, и весьма вероятно, потерять немало волос на голове.
Проблема умных контрактов заключается не только в чрезмерно завышенных ожиданиях, но еще и в том, что ожидания эти приводят к тому, что немалое количество людей тратят время и деньги на идеи, реализовать которые на практике едва ли получится.
Практика показывает, что у крупных компаний, как правило, есть достаточно ресурсов чтобы пройти длинный путь от момента, когда топ-менеджмент узнает о новой технологии до момента, когда ее преимущества и ограничения становятся по-настоящему понятны.
На протяжении последних девяти месяцев мы выслушали немало питчей на тему возможных сценариев применения умных контрактов и так уж вышло, что раз за разом мы отвечали их авторам, что эти идеи попросту невозможно воплотить в реальной жизни.
В результате мы выделили тройку наиболее распространенных заблуждений на тему умных контрактов. Эти идеи неверны не потому, что технология еще недостаточно созрела или не из-за того, что у нас пока нет каких-то инструментов.
Вместо этого, они основываются на непонимании фундаментальных свойств кода, живущего в базе данных и обрабатываемого децентрализованным способом.
1. Взаимодействие с внешними сервисами
Часто можно слышать предложение воспользоваться умными контрактами, изменяющими свое поведение в ответ на некое внешнее событие. К примеру, сельскохозяйственный страховой полис, производящий выплаты в зависимости от количества осадков, выпавших в тот или иной месяц.
По замыслу авторов идеи процесс протекает примерно следующим образом: умный контракт выжидает некоторое предопределенное время, получает метеосводку от внешнего сервиса и ведет себя в соответствии с полученными данными.
Звучит довольно просто. Просто и в то же время невозможно. Почему? Потому что блокчейн — это основанная на консенсусе система, а это означает, что работать она будет, только если каждый узел сети достигает одинакового состояния после обработки каждой транзакции и каждого блока.
Все происходящие в блокчейне операции должны быть полностью детерминированы, без малейшей вероятности, что в его работу закрадется какое-либо различие. Как только два честных узла занимают разные позиции по вопросу состояния чейна, вся система становится бесполезной.
А теперь напомню, что каждый узел чейна исполняет умные контракты независимо. Это значит, что если умный контракт получает некоторую информацию из внешнего источника, то каждый узел повторяет процедуру получения данных самостоятельно. Но поскольку источник находится за пределами блокчейна, нет никакой гарантии, что каждый узел получит одинаковый ответ.
Возможно, источник изменит свой ответ в некий момент времени между запросами двух разных узлов, или возможно станет временно недоступен. Так или иначе, консенсус достигнут не будет и весь блокчейн перестанет работать.
Какой же можно найти выход из ситуации? А выход на самом деле очень простой. Надо всего лишь заменить процесс обращения умного контракта к внешнему источнику на одного или нескольких доверенных сторон (так называемых оракулов) создающих транзакцию, записывающую нужные данные в чейн. Тогда у каждого узла будет идентичная копия данных, и их можно будет использовать в вычислениях умного контракта.
Другими словами, вместо умного контракта, «подтягивающего» данные извне, оракул будет вписывать эти самые данные в блокчейн.
Похожие проблемы возникают и когда дело доходит до умных контрактов, инициирующих определенные события во внешнем мире. К примеру, многим нравится идея умных контрактов, обращающийся к API банка для перевода денег. Но если каждый узел выполняет код чейна независимо, какой из узлов будет отвечать за вызов API?
Если это будет какой-то один узел, то что произойдет, если именно этот узел, умышленно или непроизвольно начнет сбоить? А если обращаться будут все узлы, можем ли мы доверять каждому узлу пароль от API? Да и оправдано ли будет делать сотни обращений вместо одного? И что еще хуже: если умному контракту необходимо определять успешность обращения к API, то мы снова сталкиваемся с проблемой зависимости от внешних данных.
И здесь тоже есть простой выход. Вместо того чтобы поручать обращение к внешнему API умному контракту, мы можем воспользоваться доверенным сервисом, осуществляющим мониторинг состояния блокчейна и совершающим определенные действия в ответ на полученные данные. Например, банк мог бы проактивно следить за блокчейном и осуществлять переводы денег, соответствующие одобренным в чейне транзакциям. Такой подход не создает никаких рисков для достижения консенсуса, поскольку чейн в этой модели играет абсолютно пассивную роль.
Рассмотрев предложенные выходы из описанных выше ситуаций, мы можем сделать некоторые выводы.
Во-первых, оба подхода требуют наличия некой доверенной третьей стороны для управления взаимодействиями между блокчейном и внешним миром. Несмотря на теоретическую возможность реализации такой модели, любая децентрализация в ее рамках теряет всякий смысл.
Во-вторых, использованные в этих примерах механизмы представляют собой прямые примеры чтения и записи в базу данных. Предоставляющий внешнюю информацию оракул просто пишет ее в чейн. А сервис, повторяющий состояние блокчейна в реальном мире выполняет не что иное, как чтение из этого чейна. Другими словами, любое взаимодействие между блокчейном и внешним миром в таком случае сводится к обычным операциям с базой данных.
Подробнее мы раскроем этот факт далее в материале.
2. Выполнение платежей внутри чейна
Еще одно предложение, которое мы слышим довольно часто: применение умных контрактов для автоматизации выплат по купонам так называемых умных облигаций. Суть идеи в автоматической инициализации выплаты в нужно время, выполняемой умным контрактом. Это позволит избежать ручной обработки выплаты и гарантирует, что эмитент не сможет объявить дефолт.
Конечно, чтобы эта идея сработала, используемые для выплат средства должны также находиться внутри блокчейна. В противном случае умный контракт просто не сможет гарантировать выплату.
Давайте вспомним, что блокчейн — всего лишь база данных. В нашем случае — финансовый реестр, содержащий выпущенные облигации и некоторую кассу. Поэтому когда мы говорим о купонных выплатах, мы на самом деле говорим об операциях с базой данных, выполняемых автоматически в согласованный срок.
Несмотря на то что с технической точки зрения такая автоматизация осуществима, затруднения возникают с финансовым аспектом модели. Если используемые для купонных выплат средства управляются облигационным умным контрактом, то тогда эти выплаты действительно можно гарантировать. Но в таком случае эмитент облигаций не сможет воспользоваться этими средствами для каких-либо других целей. А вывод средств из-под контроля умного контракта, делает любые гарантии их выплаты недействительными.
Иными словами, умная облигация оказывается бессмысленна или для эмитента, или для инвестора. Если поразмышлять над этой ситуацией, то подобный вывод становится совершенно очевиден.
С точки зрения инвестора, суть покупки облигаций заключается в возможности получить привлекательную прибыль, при наличии некоторого, приемлемого риска дефолта. Для эмитента смысл выпуска облигаций заключается в привлечении средств для продуктивной, но несколько рискованной деятельности, такой, например, как постройка новой фабрики.
Для эмитента не существует способа привлечь средства, и в то же время однозначно гарантировать выплаты инвесторам. Думаю, никого не удивит тот факт, что существующая между риском и прибыльностью закономерность — не входит в список задач, которую блокчейны способны решить.
3. Потребность спрятать конфиденциальные данные
Как я уже писал ранее, самый серьезный вызов, с которым мы сталкиваемся при развертывании блокчейнов — это крайняя степень прозрачности, которую они предоставляют.
Например, если группа из 10 банков захочет вместе создать блокчейн, любые двусторонние транзакции в этом блокчейне немедленно становятся видимы восьми остальным участникам. Несмотря на наличие различных стратегий, позволяющих нивелировать этот эффект, ни одна из них не может превзойти простоту и эффективность централизованной базы данных, управляемой неким доверенным лицом, обладающим полным контролем над уровнями видимости и доступа всех участников.
Некоторые люди полагают, что умные контракты могут решить эту проблему. Их рассуждение начинается с того, что каждый умный контракт содержит собственную миниатюрную базу данных и полностью ей управляет. Все операции чтения и записи в этой БД проходят при полном посредничестве кода контракта, что исключает ситуацию, когда один контракт читает данные другого. (Эта тесная связь между данными и кодом называется инкапсуляцией. Она лежит в основе популярных парадигм объектно-ориентированного программирования).
Итак, ни один умный контракт не может получить доступ к данным других умных контактов. Но решает ли это задачу конфиденциальности внутри блокчейна? Есть ли смысл говорить о сокрытии информации внутри умного контракта? К сожалению, ответ отрицательный.
Да, умный контракт не может читать данные других контрактов, однако эти копии этих данных по-прежнему находятся в каждом отдельном узле сети. Каждый ее участник хранит эти данные в своей памяти или на жестком диске системы, находящейся под полным его контролем. В итоге ничто не останавливает этого участника от чтения информации в собственной системе, если и когда он захочет это сделать.
Попытки скрыть данные в умном контракте сопоставимы по уровню безопасности с попыткой спрятать их в HTML-коде веб-страницы. Конечно, обычные веб-пользователи такую информацию не увидят, поскольку она не будет отображаться в окне браузера. Но для ее раскрытия требуется всего лишь нажать на кнопку отобразить «исходный код», которая есть во всех современных браузерах и данные сразу же становятся как на ладони.
Аналогично и в случае со спрятанными в умном контракте данными, требуется всего лишь внести изменения в ПО для работы с блокчейном, чтобы оно отображало полное состояние контракта и вся видимость секретности сразу же сойдет на нет.
Любой программист средней руки справится с этой задачей не более чем за час.
Каково предназначение умных контрактов?
После всего написанного выше возникает резонный вопрос: где вообще умные контракты могут найти применение? Но для того чтобы ответить на этот вопрос нам необходимо мысленно вернуться к базовым понятиям блокчейнов. Если коротко, то блокчейн позволяет группе не доверяющих друг другу лиц совместно, напрямую и безопасно работать с базой данных без необходимости обращаться за помощью к некоему главному администратору.
Блокчейны позволяют отказаться от посредничества в работе с данными, что может привести к существенному упрощению и снижению затрат.
Чтобы внести изменение в любую базу данных, необходимо выполнить так называемую транзакцию, содержащую набор изменений в базе, которые либо будут успешно применены, либо будут отклонены все вместе. Возьмем, к примеру, ситуацию с финансовым реестром, когда Алиса совершает платеж в пользу Боба. Платеж представляется в виде транзакции, которая: a) проверяет, достаточно ли у Алисы средств на счету, б) вычитывает указанное количество средств со счета Алисы и c) добавляет это же количество на счет Боба.
В обычной централизованной базе данных эти транзакции создаются неким единым доверенным управляющим. В противовес этому, в общедоступной БД блокчейн-типа транзакции могут быть созданы любым пользователем блокчейна. И поскольку между этими пользователями нет абсолютного доверия, в БД должны быть правила, накладывающие ограничение на выполнение транзакций.
Например, в финансовом реестре, все узлы которого находятся в равном положении, параметры каждой транзакций не должны приводить к нарушению общего баланса средств. В противном случае участники смогут беспрепятственно выделять себе столько денег, сколько захотят.
Способов соблюдения этих правил можно придумать великое множество, но в настоящее время преобладают две парадигмы, получившие распространение под влиянием Биткоина и Ethereum. Метод Биткоина, который по-другому можно назвать «ограничением транзакций» оценивает каждую транзакцию с точки зрения: a) записей в БД, удаленных с помощью этой транзакции и б) созданных записей.
В финансовом реестре используется правило: общее количество средств в удаленных записях не должно конфликтовать с общей суммой в созданных. (изменение в записи рассматривается как удаления этой записи и ее пересоздание с нужными значениями).
Вторая парадигма, берущее свое начало в Ethereum — это умные контракты. Согласно ей все изменения в данных контракта должны выполняться его кодом. (В контексте традиционных баз данных, можно считать, что речь идет об обязательной к выполнению хранимой процедуре) Для изменения данных контракта, пользователи блокчейн отправляют запросы его коду, определяющему, следует ли выполнять запрос и каким образом это следует сделать.
В свете приведенного выше примера, умный контракт для финансового реестра выполняет те же самые задачи, что и администратор централизованной базы данных: проверка наличия достаточного количества средств, вычитание их с одного счета и прибавление к другому.
Обе парадигмы работают эффективно, и у каждой из них есть свои преимущества и недостатки. Если вкратце, то ограничение транзакций биткоин-типа позволяет добиться лучших показателей одновременной доступности и производительности, в то время как умные контракты эфириумного типа позволяют добиться большей гибкости.
Поэтому, возвращаясь к вопросу о том, для чего предназначены умные контракты: они необходимы, когда реализовать блокчейн-кейс с помощью ограничения транзакций не удается.
Но даже определившись с этим критерием для использования умных контрактов, я по-прежнему затрудняюсь назвать хотя бы один сценарий их применения для закрытых блокчейнов, где традиционный биткоиновый подход действительно был бы неприменим.
Все действительно интересные блокчейн проекты, которые я знаю, могут быть реализованы с помощью биткоинового подхода, в рамках которого можно реализовать как разделение прав доступа и хранение данных, так и создание активов, их перемещение, депонирование, обмен и уничтожение. Как бы то ни было, новые пользовательские кейсы регулярно появляются и я не удивлюсь, если некоторым из них действительно потребуется мощь умных контрактов. Или, по крайней мере, расширение парадигмы Биткоин.
Так или иначе, ключевое правило в любой ситуации — помнить, что умные контракты — это всего лишь один из методов ограничения выполнения транзакций в базе данных.
Они, без сомнения, представляют собой очень полезную вещь и играют важную роль в обеспечении безопасности совместного доступа к базе данных. Тем не менее умные контракты не способны на что-либо другое. И уж точно они не могут выйти за рамки базы данных, в которой существуют.
Смарт-контракт на блокчейне Эфириума — как он работает и каковы его возможности
Одна из лучших вещей в блокчейне заключается в том, что, поскольку это децентрализованная система, которая распределена между всеми сторонами, нет необходимости платить посредникам. Это экономит время и средства. Хотя у блокчейна есть свои проблемы, он быстрее, дешевле и безопаснее традиционных систем, поэтому люди все больше обращаются к ним. Что такое смарт-контракты и их возможности рассмотрим в этой статье.
История
В 1994 году Ник Сабо, юрист и криптограф, понял, что децентрализованный леджер может использоваться для умных контрактов, иначе называемых смарт-контрактами или цифровыми контрактами.
В этом формате контракты могут быть преобразованы в компьютерный код, сохранены и повторены в системе, и контролируются сетью компьютеров. Первые умные контракты появилась только в 2008 году на основе технологии блокчейн, реализованной в криптовалюте биткоин, а первое практическое применение для них нашлось в проекте Ethereum, после чего они приобрели большую популярность.
Что такое смарт-контракты?
Умные контракты помогают обменять деньги, собственность, акции или что-либо ценное прозрачным способом, избегая при этом услуг посредника.
Лучший способ описать смарт-контракты — сравнить технологию с торговым автоматом. Обычно нужно обратиться к адвокату или нотариусу, заплатить им и подождать, пока вы получите документ или какое-то заключение. С помощью смарт-контрактов вы просто бросаете монету (в данному случае криптовалюту) в торговый автомат (то есть гроссбух, леджер), а также свои документы, водительские права или все, что нужно в учетной записи. Более того, смарт-контракты не только определяют правила и штрафы вокруг соглашения так же, как и традиционный контракт, но и автоматически применяют эти обязательства.
Основатель Ethereum Виталик Бутерин пояснил принципы смарт-контракта:
«Все переводится в код. и программа запускает этот код, и в какой-то момент он автоматически проверяет текущее состояние и автоматически определяет, должен ли актив переходить конкретному лицу, должен ли он немедленно быть возвращен лицу, которое его отправило, либо другие комбинации».
Тем временем децентрализованная цепь также хранит и дублирует документ, что дает ему определенную безопасность и неизменность.
Пример умного контракта
Предположим, вы арендуете у меня квартиру. Вы можете сделать это через блокчейн.
- Вы получаете квитанцию, которая хранится в нашем виртуальном контракте;
- Я даю вам ключ цифровой записи, который приходит к вам.
- Если ключ не приходит вовремя, блок-цепочка освобождает возврат.
- Если я отправлю ключ до даты аренды, система удерживает его;
Система работает по принципу «Если-То» и засвидетельствована сотнями людей, поэтому вы можете ожидать безупречного исполнения обязательств.
- Если вы отправляете определенное количество биткоинов, вы получаете ключ.
- Документ автоматически обнуляется по истечении времени, и код не может быть заменен ни одним из нас без ведома других, так как все участники предупреждаются одновременно.
Вы можете использовать возможности смарт-контрактов для всех ситуаций, которые варьируются от производственных финансовых инструментов до страховых премий, соглашений о нарушении, имущественных прав, кредитного обеспечения, финансовых услуг, юридических процессов и многого другого.
Разработка смарт-контрактов
Вот пример кода для базового смарт-контракта, который был написан на блокчейне Ethereum. Контракты могут быть закодированы на любой цепи блоков, но в основном используется Ethereum.
Подробнее на https://www.ethereum.org/greeterПрименение смарт-контрактов
Правительство
Инсайдеры признают, что наша система голосования чрезвычайно сложна, но, тем не менее, умные контракты будут смягчать все проблемы, предоставляя более достоверную систему. Защищенные голоса можно декодировать, но для этого потребуется такая вычислительная мощность, какой нет в мире. Это во-первых. Во-вторых, смарт-контракты могут обеспечить голосование через Интернет без надобности ходить на участок, стоять очередь, показывать свой паспорт и заполнять неуклюжие формы.
Смотрите статью «Блокчейн и выборы«.
Управление
Блокчейн не только выступает как достоверный источник, но и облегчает рабочий процесс за счет своей точности, прозрачности и высокой степени автоматизации. Обычно бизнес-операции проводятся долго и муторно: ожидают одобрения сторон, проверки, зависят от внешних факторов. Регистр блокчейна упрощает это. Он также устраняет расхождения.
Цепь поставок
Смарт-контракты работают по принципу Если-То, поэтому можно автоматизировать платежи и заказы новых товаров в случае их получения. Это снижает бумажную волокиту, риски и мошенничество.
Читайте статью «Блокчейн в логистике«.
Автопром
Нет никаких сомнений в том, что мы постепенно приходим к супер-умным роботам. Подумайте о будущем, когда все будет автоматизировано: с умными смартфонами, умными очками и даже умными автомобилями. Именно здесь помогают умные контракты. Одним из примеров является самоходная машина, где интеллектуальные контракты могутиспользоваться для определения виновника аварии по средством данных различных датчиков. Используя интеллектуальные контракты, автомобильная страховая компания может формировать счета с учетом того, где и в каких условиях клиенты эксплуатируют свои транспортные средства.
Недвижимость
Вы можете получить больше денег за счет смарт-контрактов. Обычно, если вы хотели арендовать квартиру кому-то, вам нужно будет заплатить риелтору или хотя бы сайту за рекламу объявления. Смарт-контракт сокращает расходы. Все, что вы делаете, это выполняете свою часть договора.
Смотрите статью «Блокчейн в аренде и недвижимости«.
Медицина
Личные записи о состоянии здоровья могут быть закодированы и сохранены в блокчейне с помощью приватного ключа, доступ к которому может быть только у определенных лиц. Та же стратегия может обеспечить выполнение законов Гиппократа. Квитанции об операциях могут храниться на блокчейне и автоматически отправляться страховым компаниям. Леджер также может использоваться для общего управления здравоохранением, например, надзором за лекарствами, результатами тестирования и управления медицинскими принадлежностями.
Кто использовал:
- Barclays Corporate Bank использует смарт-контракты для регистрации смены владельца и автоматического перевода платежей в другие финансовые учреждения.
- В 2015 году Depository Trust & Clearing Corp. использовала блокчейн для обработки ценных бумаг стоимостью более 1,5 млрд долларов США, что составляет 345 млн транзакций.
Преимущества
Автономность. Нет необходимости полагаться на брокера, адвоката или других посредников для подтверждения транзакции. Кстати, это также исключает опасность манипуляций с третьей стороны, поскольку исполнение происходит автоматически, а не управляется одним или несколькими, возможно, предвзятыми, людьми, которые могут ошибаться.
Доверие. Ваши документы зашифрованы в общем гроссбухе. Никто не может пожаловаться на достоверность или потерянные бумаги. Адрес смарт-контракта доступен всем.
Резервное копирование. Представьте, если банк потерял ваш сберегательный счет. На блокчейне вся информация дублируется по нескольку раз.
Безопасность. Криптография, шифрование веб-сайтов, защищает документы. Фактически, для взлома кода и вывода потребуется аномально гениальный хакер.
Скорость. Обычно приходится тратить уйму времени на сбор документов и их обработку. В смарт-контракте это делает однажды написанная программа.
Экономия. Без посредника, который должен засвидетельствовать транзакцию, вы значительно экономите.
Точность. Автоматизированные контракты не только быстрее и дешевле, но и избегают ошибок, которые возникают при ручном заполнении форм.
Проблемы
Умные контракты далеки от совершенства. Что делать, если ошибки закрадываются в код? Или как правительства должны регулировать такие контракты? Или, как будут налагаться налоги на эти сделки с интеллектуальными контрактами?
Что произойдет, если я пришлю неправильный код или что-то в реальности пойдет не так? Если бы это был традиционный контракт, можно отменить его в суде, но блокчейн — это другая ситуация. Контракт выполняется, несмотря ни на что.
Эксперты, например, представители Cornell Tech, пытаются решить эти проблемы, но нерешенные вопросы тормозят запуск смарт-контрактов в широкое обращение.
Где написать умный контракт
Bitcoin: биткоин отлично подходит для обработки операций с биткоинами, но имеет ограниченную возможность обработки документов.
Side Chains: Это другое имя для цепочек, которые работают рядом с Bitcoin и предлагают больше возможностей для обработки контрактов.
NXT: это общедоступная платформа блокчейна, которая содержит ограниченный набор шаблонов для умных контрактов. Вы должны использовать то, что дано; Вы не можете закодировать свой собственный контракт.
Ethereum: Ethereum является самой передовой платформой для кодирования и обработки смарт-контрактов. Вы можете запрограммировать все, что пожелаете, но придется платить за вычислительную мощность с помощью токенов «ETH».
Как написать простой смарт-контракт: видео
Новый тренд в бизнесе: «умные контракты»
Автоматизация бизнес-задач, как и любой другой вид автоматизации, — это область, которая активно развивается уже несколько десятилетий. Выгоды от внедрения таких технологий очевидны как владельцам бизнеса, так и простым обывателям. Самой элементарной и такой необходимой в современном мире является возможность автоматического платежа с банковской карты — например, провайдеру или интернет-магазину, в котором были совершены покупки. По сути, «умные контракты» — это развитие столь же простых идей автоматизации бизнес-задач, но построенных на новых технологических платформах и использующих современные средства, которые позволяют легче справиться с необходимыми процедурами и обеспечивают высокий уровень защиты.
Предпосылки для появления «умных контрактов»
Многие крупные промышленные предприятия давно и весьма успешно интегрируют свои ERP-системы с такими же решениями своих партнеров. Разумеется, это требует серьезной кастомизации, но зато они существенно упрощают контроль и сопровождение бизнес-процессов, что приводит к снижению накладных расходов. В таких системах можно реализовать автоматизированные действия, похожие на «умные контракты», но ERP по определению закрытые, поэтому их возможности ограничены.
«Умные контракты» поднимают функциональность подобной автоматизации на принципиально новый уровень. В частности, smart contracts позволяют взаимодействовать как с уже известными партнерами, с которыми налажены отношения, так и с неизвестными — т. е. обеспечивают доверительное взаимодействие сторон автоматически. Нет необходимости прибегать для этого к услугам третьей стороны и, соответственно, оплачивать эти услуги. Остановимся подробнее на некоторых новейших направлениях, связанных с этой областью индустрии, — блокчейне и «Интернете всего».
Почему необходим блокчейн
«Умные контракты» основаны на блокчейне (его называют и по-другому, например «децентрализованной бухгалтерской книгой»), технологии, которая практически исключает шансы подделки записей и, соответственно, минимизирует возможности мошенничества.
Блокчейн получил широкую известность благодаря буму криптовалюты биткойн. Нельзя ставить знак равенства между блокчейном и криптовалютами, но для понимания сути технологии нам придется поговорить о некоторых ее важных особенностях, которые наиболее выразительно проявились именно в ситуации с биткойном.
Открытость как защита
Биткойн — это просто последовательность цифр, которая может быть передана от одного пользователя другому в качестве платежа. Конечно, за системой биткойна стоит сложнейшая математика, которая во многом и предопределила популярность этой криптовалюты. Но при ее создании нужно было предусмотреть некоторые важные моменты, которые позволяли бы использовать биткойны в качестве платежного инструмента. В частности, как доказать, что данная последовательность в качестве оплаты передана из одного «электронного кошелька» в другой, и как сделать так, чтобы эту последовательность невозможно было скопировать и использовать любое количество раз?
Для автоматизации этих задач был создан блокчейн, и на нем построили решение, которое позволяет системе «кошельков» отслеживать каждый биткойн, автоматически фиксируя все его перемещения. Для фиксации факта передачи средств уже не нужны никакие другие структуры — ни банки, ни нотариусы, ни какие-либо иные институты.
Важно, что эта система распределенная. В ней участвует каждый «кошелек», поэтому взломать ее практически невозможно. Взлом отдельного «кошелька» в данном случае бесполезен, уничтожение части системы тоже ничего не даст потенциальным «фальшивобиткойнщикам». Подделку возможно реализовать математическими методами, но для этого потребуется контролировать более половины «кошельков» на планете, что сделать нереально.
От криптовалюты к индустрии
Блокчейн, как технологию для создания единой «блочной» базы данных, содержимое которой практически невозможно подделать, можно использовать не только для «кошельков» криптовалют, но и для других задач — например, фиксации прав собственности и их передачи. Таким образом, наличие такого средства позволяет автоматизировать многие бизнес-задачи. Эта автоматизация экономически оправдана, хотя бы за счет исключения затрат на транзакции: напомним, в данном случае оказываются необязательными банки, нотариальные конторы, кадастровые системы и другие посреднические структуры, к услугам которых договаривающиеся стороны обычно прибегают при оформлении сделок.
Существует достаточное количество блокчейн-платформ — как открытых, так и созданных отдельными структурами, например банками или консорциумами. Платформы могут и зафиксировать необходимые условия, и обеспечить работу нужных алгоритмов в «умных контрактах».
«Умные контракты» = алгоритмы
Пункты большинства контрактов в бизнесе могут без проблем получить математическое описание. По сути, smart contract — это алгоритм, однозначно и полно описывающий взаимодействие сторон.
Появление платформ обеспечит простоту создания «умных контрактов» и, что очень важно, практически исключит возможность мошенничества. Заметим, что, кроме блокчейн-платформ, для работы потребуются и другие криптоинструменты, но они, по счастью, уже есть и даже стали привычными. В качестве примера приведем электронные подписи, использование которых давно стало привычным делом: они как раз необходимы для фиксации факта приема условий сторонами и, соответственно, для активации «умного контракта».
Инфраструктура уже готова
Итак, блокчейн-системы, созданные за пределами биткойна, к обеспечению работы «умных контрактов» готовы. Но некоторые технические сложности на пути smart contracts все же еще есть.
Основная проблема состоит в том, что система, обеспечивающая работу «умного контракта», должна иметь беспрепятственный и прямой доступ к предмету договора, а для этого должен быть соблюден ряд условий. Например, предмет договора, как минимум, должен быть или изначально цифровым (как, например, криптовалюта), или иметь достоверное «цифровое отражение». С последним связаны очевидные сложности, которые сейчас уходят в результате распространения «Интернета всего» (Internet of Everything, IoE).
«Интернет всего» для smart contracts
Термин «Интернет всего» стирает грань между миром физическим и миром цифровым. На примере «умных контрактов» это особенно хорошо видно. Причем наиболее выразительно — в решениях из области энергетики.
Если проверенные датчики способны предоставить «умному контракту» по защищенному каналу достоверную информацию о факте соблюдения условий договора, то с его заключением проблем нет. Технически вполне возможна и обратная ситуация: «умный контракт» определяет выполнение условий договора и, соответственно, дает команду IoE-системе на выполнение действий в физическом мире, например на перевод денежных средств, манипуляции с вентилями, подключение или отключение энергосистемы и т. д.
Пример с энергосистемами в настоящее время наиболее реалистичен, так как энергетика сегодня является отраслью, наиболее насыщенной IoE-решениями, и «умные контракты» для бизнес-процессов в этой области использовать проще всего.
Практическое внедрение
Несмотря на простоту, сегодня системы, построенные на основе «умных контрактов», все еще находятся на стадии внутреннего тестирования в ряде как российских, так и глобальных компаний — приведем лишь примеры IBM и «Сбербанка». Причина проста: нужное количество упомянутых нами блокчейн-платформ, необходимых для функционирования «умных контрактов», было создано только летом прошлого года. За несколько месяцев полноценные решения для промышленности создать невозможно, тем более на основе современных технологий, которые проходят «обкатку» в новых условиях. Но за это время компании успели провести R&D и убедились в актуальности доступных инструментов и, что важно, в степени защищенности всей процедуры.
В ближайшее время, уже в этом году, мы увидим разворачиваемые пилотные проекты на основе «умных контрактов», причем в самых разных областях экономики — от энергетики и промышленности до страховой сферы и банков.
Материал подготовлен на основе докладов со Smart Energy Summit.
Вконтакте
Google+
Умные контракты — мечта того, кто презирает юристов. Экопарк Z
Привожу подробную информацию про Умные контракты:
Что такое смарт контракты (умные контракты) на базе блокчейна?
Блокчейн представляет собой децентрализованную систему, существующую благодаря множеству объединённых в сеть компьютеров. Поэтому одно из его главных достоинств — то, что Вы можете не платить посредникам и экономить своё время и нервы.
У блокчейна есть свои недостатки, но он быстрее, надёжнее и безопаснее традиционных систем, и поэтому банки и правительственные организации всё чаще используют эту технологию для своих нужд.
Принцип работы блокчейна показан на инфографике: В 1994 году Ник Сабо, специалист в области права и криптограф, понял, что с помощью децентрализованного реестра можно заключать «умные контракты», которые также называют само-исполняемыми, цифровыми или смарт-контрактами.
Такие контракты могут быть записаны в виде кода, сохранены и продублированы в системе, а их выполнение обеспечит сеть компьютеров, управляющая блокчейном.
Также с помощью реестра можно будет переводить друг другу деньги и получать товары или услуги.
Навигация по материалу:
1 Что такое умные контракты?
2 Рассмотрим конкретный пример смарт контракта
3 Практическое применение умных контрактов
4 Плюсы смарт контрактов
5 Минусы умных контрактов
6 Блокчейны, где можно заключить умные контракты?
7 Заключение
Что такое умные контракты?
Умные контракты позволяют обмениваться деньгами, собственностью, акциями или другими активами, не прибегая к услугам посредников.
Для того, чтобы заключить обычную сделку, нужно пойти к юристу или нотариусу, заплатить и дождаться оформления документов.
Умные контракты работают как торговые автоматы: Вы просто бросаете в автомат (то есть в реестр) биткоин, и хранившийся у третьего лица контракт, водительские права или любая другая услуга, которую Вы заказывали, падает на Ваш счет.
Кроме того, в отличие от традиционных соглашений, умные контракты не только содержат информацию об обязательствах сторон и штрафах за их нарушение, но и сами автоматически обеспечивают выполнение всех условий договора.
Умный контракт (англ. Smart contracts) — электронный алгоритм, описывающий набор условий, выполнение которых влечёт за собой некоторые события в реальном мире или цифровых системах. Для реализации умных контрактов требуется децентрализованная среда, полностью исключающая человеческий фактор, а для возможности использования в умном контракте передачи стоимости требуется криптовалюта. Определение Википедии.
На недавнем блокчейн-саммите в Вашингтоне Виталик Бутерин, 23-летний программист и создатель проекта Ethereum, объяснил, что в умном контракте актив или валюта переводятся в программу, которая следит за соблюдением заложенного набора условий.
В определенный момент эта программа подтверждает выполнение условия контракта и автоматически определяет, должен ли указанный актив перейти к одному из участников сделки или немедленно вернуться к другому участнику (а может быть, условия несколько сложнее).
Всё это время документ хранится и дублируется в децентрализованном реестре, что обеспечивает его надежность и не позволяет ни одной из сторон менять условия соглашения.
Рассмотрим конкретный пример смарт контракта
Вот код, написанный для обычного умного контракта на блокчейн-платформе Ethereum.
Контракты могут быть написаны в любом блокчейне, но Ethereum наиболее популярен, поскольку предоставляет неограниченные возможности для написания умных контрактов и работы с ними.
Образец умного контракта, написанного на платформе Ethereum. Источник: www.ethereum.org/token
Здесь говорится, что создатель контракта должен получить 10 тыс. биткоинов. Этот контракт позволяет любому, у кого достаточно средств на счёте, перевести биткоины другим людям.
Практическое применение умных контрактов
Используя умные контракты, можно упростить работу во многих сферах жизни, в том числе логистике, менеджменте, юриспруденции и даже в выборах.
Выборы
По мнению экспертов, сфальсифицировать итоги выборов практически нереально, однако благодаря умным контрактам можно полностью исключить возможность внешнего вмешательства в систему голосования.
В таком случае голоса избирателей будут помещены в распределенный реестр, и для их декодирования потребуется исключительные вычислительные возможности.
Таких компьютеров не существует, так что взломать эту систему будет невозможно.
Менеджмент
Блокчейн не только предлагает надёжный и прозрачный общий реестр, но и помогает избежать недопонимания при совместной работе или ситуаций, когда стороны составляют контракты независимо друг от друга.
Логистика и снабжение
Разработчик протокола Bitcoin Core Джефф Гарзик говорит: «UPS может исполнять контракты, в которых будет сказано: “Если мы получим оплату за доставку товара, то его производитель, который в цепочке поставок находится на много звеньев выше, немедленно начнет создавать новый такой товар, поскольку этот уже доставлен по назначению”».
Снабжение слишком часто страдает из-за бюрократии, когда разные формы должны пройти утверждение в многочисленных инстанциях. Из-за этого мошенники получают возможность заработать, а компании несут убытки.
Блокчейн позволяет избежать этих проблем, так как каждый участник цепочки поставок получает доступ к безопасной электронной системе, которая контролирует выполнение работ и платежи.
Так, банк Barclays Corporate Bank использует умные контракты для того, чтобы регистрировать переход права собственности и автоматически перечислять платежи в другие кредитно-финансовые учреждения.
Автомобили
Задумайтесь о будущем, где всё будет автоматизировано. Google уже строит его, создавая умные телефоны, умные очки и даже умные автомобили. И здесь на помощь придут умные контракты.
Возьмем, например, самоуправляемые или самопаркующиеся автомобили. Умные контракты будут определять, кто виновен в аварии: датчик или водитель, а также помогут при разрешении любых других ситуаций.
С помощью умных контрактов страховые компании могут устанавливать размер взносов в зависимости от того, где и при каких условиях водители управляют транспортными средствами.
Другие сферы
Другие индустрии, такие как эквайринг, кредитование и бухгалтерский учет, тоже будут использовать умные контракты — например, для оценки рисков и аудита в режиме реального времени.
Юристы смогут перейти от составления традиционных контрактов к созданию типовых образцов умных контрактов.
А на сайте Blockchain Technologies умные контракты превратились в электронно-бумажный гибрид: они подтверждаются блокчейном и получают материальное воплощение в виде бумажной копии.
Патрик Хаббард, главный специалист и старший управляющий маркетингом продуктов в SolarWinds:
«Янгонская фондовая биржа в Мьянме производит платежи с помощью распределенного реестра. Особый интерес вызывают те функции блокчейна, которые выходят за рамки традиционного использования технологии.
Так на Янгонской бирже удалось решить проблему производимых в разное время расчетов в торговой системе, которая синхронизирует торги всего лишь дважды в день.
Благодаря тому, что умные контракты сами обеспечивают исполнение сделок, блокчейны с их надёжной системой проведения транзакций могут использоваться в ситуациях, где требуется выполнение сложных операций, зависящих от разных изменяющихся факторов.
Вот почему Amazon, Microsoft Azure и IBM Bluemix уделяют такое внимание разработке облачной технологии “блокчейн как услуга”».
Плюсы смарт контрактов
Если рассматривать смарт-контракты при использовании в разных сферах жизнедеятельности, то можно выделить ряд важных преимуществ.
Среди плюсов:
независимость — больше не нужно прибегать к услугам посредников для заключения сделок;
безопасность — смарт-контракт находится в распределенном реестре, его условия нельзя изменить;
экономия — избавляясь от посредников, стороны умного контракта могут сотрудничать на более выгодных условиях;
отсутствие издержек — в случае выполнения условий контракты, стороны сразу обмениваются активами.
Минусы умных контрактов
Умные контракты далеки от совершенства. Что если в код попадут ошибки? Как должно регулировать эти контракты государство? И как оно будет взимать налоги с таких транзакций?
Список возможных проблем этим не ограничивается. Специалисты пытаются решить все вопросы, но подобные трудности отталкивают многих возможных пользователей.
Умные контракты нельзя назвать идеальным инструментом для построения взаимоотношений между людьми. У них тоже есть несколько недостатков.
Среди минусов:
правовой статус — для работы умных контрактов используется криптовалюта, а её пока не принимают в качестве официального финансового инструмента;
ошибки — для составления умного контракта нужно прописывать всевозможные условия и варианты развития сделок, чем сложнее процесс, тем труднее создать смарт-контракт;
отсутствие понимания — большинство пользователей пока слабо понимают, что собой представляют смарт-контракты.
Несмотря на вышеперечисленные недостатки, умные контракты имеют высокий потенциал закрепиться в нашей жизни в будущем. Они станут всё чаще использоваться по мере того, как вещи будут подключаться к интернету.
Блокчейны, где можно заключить умные контракты?
Ethereum: Открытая блокчейн-платформа, которая лучше всего подходит для написания умных контрактов и работы с ними. Вы можете составить любую программу, однако за вычислительные ресурсы платформы надо будет заплатить монетами ETH.
NXT: Это открытая блокчейн-платформа с ограниченным числом образцов умных контрактов. Вы можете использовать только то, что там есть; написать свой код нельзя.
Bitcoin: Отличный блокчейн для транзакций с биткоинами, но возможности для работы с документами там ограничены.
Side Chains: Другое название для блокчейнов, параллельных Bitcoin, которые предоставляют несколько большие возможности для работы с контрактами.
Заключение
Надеемся, наша статья помогла Вам разобраться в схеме работы смарт-контрактов.
Технология Блокчейн имеет свои проблемы, но даже в текущих условиях она значительно превосходит централизованные системы, которые используются банками, государствами и другими структурами.
Уже сейчас ряд передовых стран занимается разработкой устройств смарт-контрактов, чтобы в будущем использовать их в разных сферах жизнедеятельности.
Если умные контракты и дальше будут распространяться по всему миру, то это положительно скажется на стоимости Эфириума.
Поэтому мы рекомендуем обратить внимание на эту криптовалюту для инвестирования. Её курс и дальше будет расти.
Информация с сайта: https://mining-cryptocurrency.ru/umnye-smart-kontrakty/
Лично я испытываю к Умным контрактам и к Блокчейну не только познавательный, но и практический интерес.
Приглашаю всех высказываться в Комментариях. Критику и обмен опытом одобряю и приветствую. В особо хороших комментариях сохраняю ссылку на сайт автора!
И не забывайте, пожалуйста, нажимать на кнопки социальных сетей, которые расположены под текстом каждой страницы сайта.
Продолжение тут…