Viz Market prices protocol
Или MPP
Суть
Есть приложение, которое собирает данные о курсах криптовалют из coinmarketcap и coingecko по определённому списку.
Оно формирует специальный JSON из нескольких массивов. Каждый массив состоит из двух значений: источник, данные.
В данных ключом является название криптовалюты или токена, а значением - курс.
Последним элементом основного массива является массив с первым значением "result" и вторым, где отображаются данные в формате "название: курс". Причём курс считается по медиане или берётся среднее арифметическое от курсов двух источников.
timestamp берётся из timestamp блока.
id такого json - MPP.
1. После публикации приложение награждает себя, указывая в memo viz://@login/block с блоком, где размещена цена.
2. Другие приложения, которые также добавляют данные, смотрят, отличаются ли они у них. Если нет, награждают первое приложение с указанием viz://@login/block. Если нет, создаёт свой custom.
3. Третье приложение смотрит предыдущие два и сравнивает. Если одно из них верно, награждает. Если неверно, создаёт своё
4. Если приложение публикует совпадающие данные вместо награждения, последующие проверяющие не награждают его, а награждают первое опубликовавшее такие данные.
5. Берутся опубликованные наиболее близко к текущему времени, после чего сортируются по сумме наград.
Проблемы
1. Сложность с подсчётом наград: всё это должно быть в одном блоке, а это нереально. Разделять же на несколько означает то, что данные уже неактуальны.
Делать же протокол в качестве инструмента ведения истории изменения курсов криптовалют - не дело.
2. Но приложения сами себя могут награждать в том-же блоке. Соответственно, получается будет побеждать тот, у кого больше соц. капитал, если получающему данные нужны текущие курсы криптовалют. Это уничтожает все плюсы от влияния награждения других на показатель вероятной точности курса.
Для чего?
1. При обращении к централизованным источникам локально можно столкнуться с подменой данных, если это необходимо злоумышленнику. Подделать же собранные разными участниками данные труднее.
2. Пользователи смогут смотреть усреднённые данные из разных источников.
3. Хранение истории курсов криптовалют в блокчейне (надёжнее, чем в базах данных).
Может что ещё...
Вариант 2
Приложения размещают курсы криптовалют в memo к награде аккаунту committee.
Парсер таких данных смотрит сумму награды и ориентируется на то, у кого больше. Также может сверять данные, складывая суммы наград одинаковых курсов за указанное время.
Всё
Предлагаю обсудить.
Comments