Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
igors713
5 лет назад
блокчейн

Построение нового протокола на блокчейне VIZ (репост)

Сложная тема для понимания, но необходимая, чтобы развиваться
image.png

Поговорим о проблеме связанности данных.
В распределенном реестре построенном на согласовании блоков всё просто. Блок за блоком строится согласованность общего состояния системы. Действие вида: Пользователь 1 перевел токены пользователю 2 — записывается в транзакцию, делегат складывает транзакции от разных пользователей в блок, ссылаясь на предыдущий и отправляет его в сеть. Другие делегаты подтверждают, что всё правильно — своим участием.
Блоки нужны чтобы согласовать состояние системы: балансы пользователей, статус их социального капитала, голоса в комитете за разные инициативы, состояние платных подписок и соглашений. А что делать с социальной связанностью?
то будет хранить «лайк» одного пользователя и комментарий под фото другого пользователя? Кто будет держать в уме, что пользователь выложил статью, чтобы её могли найти в блокчейне?

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

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

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

Как пример — медиа-платформа (media). Да, в VIZ уже действует один дополнительный протокол, который основан на правилах заложенных в Steem. В нем присутствует 2 действия: content и delete_content для создания контента и его удаления, соответственно.

Есть дополнительное расширение для протокола media: follow. В нем есть 2 действия, первое — одноименный follow для подписки на блог, игнорирования или удаление из списка для следования. Второе действие — reblog, для репоста контента.

Мне не нравится эта структура данных, она кажется… сломанной и не продуманной. Но она досталась нам в наследство от блокчейн медиа-платформы Steem и просто осталась.

Эти 2 протокола дополняющих друг друга реализованы через операцию custom, которая позволяет записывать в блокчейн любые json данные. И control.viz.world/media как раз демо-приложение и оракул для этого протокола.

Приложение, так как предоставляет интерфейс для выполнения custom операции к блокчейну VIZ по протоколу media в виде действия content для создания постов или комментариев. И оракул, так как следит за появлением подобных действий в блокчейне VIZ, обрабатывая и связывая данные в нем по правилам протокола. Например, если оракул видит действие от пользователя reblog по протоколу follow, то проверяет наличие поста от указанного автора и добавляет её в ленту активности инициатора транзакции.

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

Любой желающий может сам написать оракула, который будет обрабатывать VIZ блок за блоком и обрабатывать тот или иной протокол.

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

Что будет, если один из оракулов дополнит протокол новыми возможностями? Ничего существенного, просто другие оракулы не будут учитывать эти данные.

Что будет, если кто-то будет отправлять транзакции не соблюдая правила протокола? Ничего существенного, просто оракулы проигнорируют такие операции.

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

В продолжении (ссылка на статью про протокол Голос Voice на VIZ) мы обсудим возможность создания протокола для децентрализованной социальной сети, где оракулами могут выступать сами пользователи, без необходимости доверять посреднику в виде отдельного сайта.
Источник https://viz.media/custom-protocol-viz-blockchain/

блокчейнвизvizprotocol
111
11.697 GOLOS
На Golos с November 2017
Комментарии (26)
Сортировать по:
Сначала старые