ЧТО

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

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

КАК

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

КЛЮЧЕВЫЕ ЭЛЕМЕНТЫ

Объекты смарт-контракта

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

Тема

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

Правила или условия

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

Известные блокчейны или платформы для смарт-контрактов

Ethereum
EOS
Hyperledger Fabric

ПРЕИМУЩЕСТВА смарт-контрактов

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

РИСКИ и ВОПРОСЫ БЕЗОПАСНОСТИ

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

Такая атака, которую трудно быстро исправить, была успешно проведена на DAO в июне 2016 года, в результате чего было потрачено 50 миллионов долларов США в эфире, в то время как разработчики пытались найти решение, которое получило бы консенсус. Программа DAO имела временную задержку, прежде чем хакер смог удалить средства; был проведен хард-форк программного обеспечения Ethereum, чтобы отобрать средства у злоумышленника до истечения срока.

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

УПРАВЛЕНИЕ

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

- Хард-форк Ethereum

Поскольку DAO был взломан и был украден эфир на сумму 50 миллионов долларов, Виталик Бутерин, разработчики Ethereum и сообщество успешно форкнули блокчейн Ethereum, чтобы принудительно вернуть украденный эфир.

- Вопросы юрисдикции

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

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

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

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

- Стороны, подписавшие контракт

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

- Нарушение контракта

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

Группа параллельных вычислений и оптимизации предлагает вероятностную факторную модель (PFM), которая может быть реализована в цепочке блоков для автоматического выявления нарушений, которые могут нанести существенный ущерб и имеют высокую вероятность повторения. PFM также может издавать судебные запреты за нарушения. Основная концепция PFM построена на понятии неконтролируемого машинного обучения и стохастического моделирования из дисциплины Data Science.

- Безопасность смарт-контрактов

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

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

«- Виталик Бутерин

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

- Человеческая ошибка

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

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

- Неизбежные недостатки безопасности

- Дыры в безопасности

Уровень Причина уязвимости Атаки

Solidity / EVM / блокчейн

Для Solidity,

Причина уязвимости:

  • Звонок в неизвестность
  • Безгазовая отправка
  • Исключительные расстройства
  • Приведение типов
  • Реентерабельность
  • Хранение секретов

Для EVM (виртуальная машина Ethereum),

Причина уязвимости:

  • Неизменяемые ошибки
  • Эфир потерян при передаче
  • Ограничение размера стека

Для блокчейна

  • Причина уязвимости:
  • Непредсказуемое состояние
  • Генерация случайности
  • Временные ограничения

Для получения дополнительной информации см.

Https://brage.bibsys.no/xmlui/bitstream/handle/11250/2479191/18400_FULLTEXT.pdf?sequence=1

p15

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

- Производительность

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

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

- Оракулы

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

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

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

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

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

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

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

- Контрольный список для реализации смарт-контрактов

◦ Логические ошибки
◦ Неудачные отправления
◦ Рекурсивные вызовы
◦ Целочисленное арифметическое переполнение
◦ Отравляющие данные
◦ Открытые функции
◦ Открытые секреты
◦ Отказ в обслуживании / Dust Spam
◦ Уязвимости майнеров
◦ Malicious Creator
◦ Безопасность вне сети
◦ Атаки с повторением между блоками
◦ Проблема с Tx.Origin < br /> ◦ Сигнатуры функций твердости и конфликты резервных данных
◦ Неправильное использование криптографии
◦ Ограничения по газу
◦ Исчерпание глубины стека

Для получения дополнительной информации перейдите по следующему URL-адресу,

Https://www.kingoftheether.com/contract-safety-checklist.html?

- Ограничения

технологические и правовые ограничения

- Аудиты

безопасность и юридический аудит

- Управление

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

100% операторов в выборке владеют своей сетью и действуют как привратники /

администраторы

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

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

обновления программного обеспечения

- Показатели

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

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

Для получения дополнительной информации перейдите по следующему URL-адресу: https://www.researchgate.net/publication/322978386_Smart_Contracts_Software_Metrics_a_First_Study

- Препятствия

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

ИСПОЛЬЗОВАНИЕ:

Страхование имущества и от несчастных случаев

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

Здравоохранение

Смарт-контракты могут революционизировать оказание медицинской помощи

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

Блокчейн здравоохранения: смарт-контракты удаляют посредников

Https://www.prolifics.com/blog/healthcare-blockchain-how-smart-contracts-could-revolutionize-care-delivery

Страхование здоровья

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

Https://www.tearsheet.co/blockchain/how-blockchain-could-change-the-health-insurance-industry

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

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

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

отслеживание доставки еды в целях безопасности, т.е. Walmart.

роскошное хорошее отслеживание, например, ювелирные изделия для предотвращения мошенничества

глобальная торговая логистика, т.е. Maersks

Энергия

Децентрализованная система энергоснабжения и транзакций

Https://medium.com/ethereum-dapp-builder/how-blockchain-will-re-write-the-energy-sector-b19d7ad8e7d3

powerledger

Согласие

т.е. соблюдение экспортного контроля

Https://www.mme.ch/en/magazine/magazine-detail/url_magazine/smart_contracts_blockchain_and_export_control_compliance

Интеллектуальная собственность

Музыка
Фильмы
Книги
Патенты
Товарные знаки

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

Https://www.lexology.com/library/detail.aspx?g=edeffa75-b081-4392-98aa-04ae8f893543

Умный город

Рикардианский договор

И последнее, но не менее важное: давайте займемся рикардианским контрактом.

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

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

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