< >

Смарт-контракты для биткоина? Тадж Дрийа из Lightning работает над этим

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

Ethereum создал платформу, которая позволяет разработчикам легко создавать почти любые типы смарт-контрактов, а биткоин добавляет подобный функционал гораздо медленнее. Но разработчики биткоина, такие как соавтор документации Lightning Network Тадж Дрийа (Tadge Dryja), заявляют, что есть причина, по которой смарт-контракты в биткоин следует добавлять более осмотрительно.

Во время работы над ускорением транзакций при помощи технологии Lightning Network, которой Тадж занимается в последнее время в Массачусетском технологическом институте (MIT), он изобрёл метод для добавления частичной функциональности смарт-контрактов в биткоин, не вредя его анонимности и масштабируемости.

Идея Дрийа по созданию компактных лог-контрактов (англ. - Discreet Log Contracts) (DLC) призвана поддержать децентрализованность блокчейна: «Идея направлена на поддержание безопасности личных данных и масштабируемости, а не на развитии функциональности. Она не позволяет создавать, скажем, ICO или Тьюринг-полные смарт-контракты, или что-то подобное, поэтому в этом смысле её возможности ограничены по сравнению со смарт-контрактами на Ethereum».

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

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

Биткоин-оракулы

Идея смарт-контрактов Дрийа завязана на другой популярной концепции: оракулах.

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

Скажем, один пользователь ставит 5 единиц эфира на то, что в пятницу будет теплее 27ºC. Два пользователя создают смарт-контракт, в котором задают это условие, и затем выбирают источник информации, которому доверяют оба (они могут выбрать, например, gismeteo.com, если им кажется, что веб-сайт предоставляет точную информацию).

После этого смарт-контракт автоматические получает информацию с сайта в пятницу. Угадавший правильную температуру получает 5 единиц эфира. Всё просто, не так ли?

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

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

Защита личных данных в смарт-контрактах

И здесь Дрийа развивает свою мысль. Оператор оракула не будет знать, использует ли кто-то информацию, которую он отправляет.

«Вот такая вот одинокая жизнь оракула», - говорит он. «Вы не узнаете, существовал ли контракт вообще даже после окончания процесса. Забавно, правда?»

Как DLC реализует это? На высоком уровне оракул распространяет информацию. Скажем, он отправляет информацию о температуре в определённое время каждый день. Этот ключ будет смешан с информацией пользователя, прежде чем он попадёт в блокчейн.

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

«Мы собираемся соединять информацию оракулов с нашей собственной секретной информацией, поэтому мы сможем её определять, а оракулы – нет».

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

DLC, как и проект Ethereum Town Crier, предлагают способ защиты части информации.

Проблемы оракулов

У оракулов есть и другие проблемы.

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

Разработчики предлагают разные решения, чтобы обойти эту точку централизации.

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

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

«Математически это работает, но это ведь не мешает оракулам передавать неверные сообщения?» - сказал он, добавив, что эту идею необходимо ещё изучать.

SegWit, please?

Идея находится ещё в разработке, но Дрийа говорит, что он ждёт реакцию сообщества после публикации DLC white paper.

А пока он надеется, что его идея поможет по-новому взглянуть на смарт-контракты, которые будут обеспечивать защиту личных данных и масштабируемость. Что касается следующих стадий развития проекта, Дрийа говорит, что DLC станет для него “следующим проектом для развлечений”, после того как он закончит разработку Lightning Network для MIT.

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

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

Источник: http://www.coindesk.com/smart-contracts-bitcoin-lightnings-tadge-dryja-working/
Комментарии 0
Вы должны войти на сайт, чтобы разместить свой комментарий.