Найти тему

Что такое смарт-контракты в блокчейне и как они работают

Оглавление

Смарт-контракты или умные контракты — это, по сути, автоматизированные соглашения между создателем контракта и получателем.

Смарт-контракты в криптовалютах: что это | #BTC_2TheMoon
Смарт-контракты в криптовалютах: что это | #BTC_2TheMoon

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

Итак, что такое исполненный договор? Подписанный договор, который устанавливает договорную связь между двумя или более сторонами, называется исполненным договором. Каждая сторона обещает выполнять некие обязанности, о которых стороны договорились в письменном соглашении, после того как договор будет надлежащим образом подписан. Популяризация блокчейна Ethereum (ETH) и смарт-контрактов привела к появлению в сети множества децентрализованных приложений (dApps) и других вариантов использования.

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

Всё, что требуется, — это согласование двумя сторонами одной концепции — условий смарт-контракта.

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

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

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

Пошаговый процесс создания смарт-контракта
Пошаговый процесс создания смарт-контракта

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

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

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

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

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

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

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

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

В дополнение к вышесказанному, в сентябре 2021 года на блокчейн-обозревателе Cardano (ADA) было развернуто более 200 смарт-контрактов. Смарт-контракты ADA развернуты с использованием языков программирования Marlowe, Plutus и Glow.

Важно также отметить, что смарт-контракты отличаются от письменных контрактов по многим параметрам:

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

Историческая справка о смарт-контрактах

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

Тогда Сабо разработал концепцию цифровой валюты под названием Bit Gold. Хотя этот актив так и не был запущен, предшественник Биткоина продемонстрировал возможность использования смарт-контракта — бесконтрольные транзакции в Интернете. Если Web 1.0 — это сам интернет, а Web 2.0 — наличие централизованных платформ, то Web 3.0 — недоверчивая, автоматизированная, управляемая пользователем версия цифрового пространства.

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

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

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

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

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

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

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

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

Где применяются смарт-контракты

-3

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

Цифровая идентичность

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

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

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

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

Недвижимость

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

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

Представьте, что права на вашу квартиру токенизированы в блокчейне Ethereum. Если вы готовы продать его, вы создаете смарт-контракт с покупателем. Этот контракт будет держать права на квартиру в условном доверенном удержании до тех пор, пока покупатель не оплатит покупку надлежащим образом. Тогда, и только тогда, права на квартиру будут освобождены.

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

Страхование

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

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

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

Цепочка поставок

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

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

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

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

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

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

Основные проблемы смарт-контрактов

Хотя смарт-контракты прекрасны в своей концепции, они, конечно, не идеальны. Во-первых, стоит помнить, что смарт-контракты и сети блокчейн программируются вручную. Человеческая ошибка всегда возможна, и эта ошибка может привести к уязвимостям. Именно это произошло в 2016 году при атаке на децентрализованную автономную организацию (The DAO) Ethereum. Хакеры воспользовались уязвимостью в смарт-контракте The DAO по сбору средств и использовали ее для кражи средств из проекта.

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

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

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

Будущее смарт-контрактов

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

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

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

Ethereum (ETH) | BTC_2TheMoon | Биткоин, блокчейн, криптовалюта | Дзен