Авторские блоги и комментарии к ним отображают исключительно точку зрения их авторов. Редакция ЛІГА.net может не разделять мнение авторов блогов.
16.06.2018 16:10

Оракулы и смарт-контракты

Руководитель Южно-Украинского филиала Arzinger, адвокат

Что такое оракулы и как они связанны со смарт-контрактами

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

Оракул — это сервис, который отвечает за подключение к источнику данных.

Оракул взаимодействует со смарт-контрактом и с источником данных. В упрощённом виде это взаимодействие выглядит так.

(i)              Смарт-контракт отправляет запрос оракулу на пре- доставление нужных данных.

Такой запрос может быть направлен для получе- ния какой-либо информации (например, кто является участником компании), или структурирован по модели запроса подтверждения фактов. Например, смарт-контракт направит запрос на подтверждение того,  что N  владеет  долей  в размере Х в компании Z.

(ii)                 Оракул передаёт запрос во внешний источник данных. 

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

(iii)               Оракул получает ответ от внешнего источника информации.

(iv)                Оракул записывает ответ на запрос в реестр или отправляет сообщение смарт-контракту, который сделал запрос.

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

 

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

Если Вы заметили орфографическую ошибку, выделите её мышью и нажмите Ctrl+Enter.
Последние записи
Контакты
E-mail: blog@liga.net