Назад

Глубокое погружение в масштабирование FTSO

Сайт Предложения по управлению STP.06 и FIP.06 скоро будут открыты для голосования. Они включают обновления, необходимые для масштабирования емкости Flare Time Series Oracle (FTSO) для сетей Flare и Songbird.

FTSO

FTSO - это система, работающая на Flare, которая предоставляет децентрализованные каналы данных для dapps на Flare, не полагаясь на централизованных провайдеров. В настоящее время доступны только фиды данных для криптовалютных ценовых пар, например BTC USD. Поддерживаются следующие фиды: ADA, ALGO, ARB, AVAX, BNB, BTC, DOGE, ETH, FIL, FLR (на Flare), SGB (на Songbird), LTC, MATIC, SOL, USDC, USDT, XDC, XLM и XRP.

Независимые поставщики инфраструктуры, включая Google Cloud, Ankr и Figment, играют важную двойную роль в системе: они отвечают за безопасность сети в качестве валидаторов и вносят свой вклад в работу оракулов Flare в качестве поставщиков данных.

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

Масштабируемость FTSO

Текущий FTSO (v1) реализован в основном как смарт-контракт на цепочке. В настоящее время мы предоставляем обновления для 18 каналов данных каждые 180 секунд.

Для поддержки новых сценариев использования, требующих более быстрого обновления и более широкого спектра данных, потребовалась более масштабируемая перестройка системы. С помощью FTSO Scaling поставщики данных смогут предоставлять до 1000 потоков данных (криптовалютные пары, цены на акции, погодные данные и многое другое) каждые 90 секунд.

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

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

Не следует путать FTSO Scaling с FTSO Fast Updates, которые станут предметом будущего предложения по управлению. FTSO Fast Updates позволит даппам запрашивать и оплачивать данные по требованию с задержкой в 1-2 блока (примерно 1-3 секунды). Если предложения по управлению будут одобрены сообществом Flare, сочетание FTSO Scaling и FTSO Fast Updates позволит реализовать наше видение FTSO v2.

Роль сообщества Flare

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

Роль поставщика данных

При масштабировании FTSO поставщики данных продолжают предоставлять полезную информацию, например ценовые пары. Данные, которые слишком далеки от медианы (выбросы), продолжают удаляться. Полученные оценки данных вознаграждаются и становятся доступными на цепочке. Поставщики данных продолжают использовать процесс фиксации и раскрытия, который позволяет зафиксировать все данные. Фаза фиксации позволяет предоставлять оценки без того, чтобы некоторые поставщики данных могли обманывать, видя оценки других поставщиков данных. Фаза раскрытия позволяет поставщикам данных получить доступ к зафиксированным оценкам для проверки.

В случае одобрения FTSO Scaling будут введены две новые фазы: Фаза подписания и Фаза доработки.

  • На этапе Sign поставщики данных отфильтровывают раскрытия, которые не совпадают с коммитами. Только достоверные раскрытия используются для расчета медианных значений подачи и вознаграждений. Результаты представляются в виде кода ("хэшированного"), и поставщики данных подписывают его.
  • На этапе финализации, как только будет представлен достаточный вес подписей для голосования, любой субъект может собрать их и отправить смарт-контракту для голосования. Выполняется проверка, достигают ли предложенные подписи в совокупности требуемого порога веса (не менее 50 % от общего веса всех имеющих право голоса поставщиков данных). В случае успеха корень Меркле публикуется в контракте на голосование для данного идентификатора раунда голосования. После этого он становится доступен всем остальным смарт-контрактам, которые могут использовать эти данные для проверки результатов вычислений.

Разделение вознаграждений

Как и в FTSO (v1), поставщики данных будут продолжать получать вознаграждение за предоставление данных, близких к медианному значению. Если предложение руководства будет одобрено, то при полном внедрении масштабирования FTSO большая часть всех имеющихся вознаграждений за предоставление данных FTSO - 80% - будет по-прежнему распределяться между поставщиками данных, которые этого добиваются.

Аналогичным образом, если и когда масштабирование FTSO будет полностью реализовано, оно также будет вознаграждать за предоставление подписей на этапе Sign и за инициирование финализации на этапе Finalization. За отправку подписи на этапе "Подпись" 10 % вознаграждения за предоставление данных будут распределяться между поставщиками данных, которые предоставят одну достоверную подпись. Для запуска финализации в фазе Finalization финализацию могут провести до пяти организаций: первые пять, которые приведут к успешному достижению порогового веса. Этим поставщикам данных выплачивается 10 % вознаграждения за предоставление данных.

Штрафы

Шкалирование FTSO наказывает поставщиков данных за сокрытие информации или двойное подписание:

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

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

Этапы развертывания

Масштабирование системы FTSO до 1000 потоков данных потребует ряда существенных обновлений. Чтобы дать Flare Foundation время на тестирование, а поставщикам данных - на адаптацию к изменениям, в случае одобрения обновление будет состоять из этапа тестирования, этапа бета-тестирования и этапа вывода из эксплуатации.

На этих этапах будут сосуществовать текущие и обновленные поставщики данных. Текущие поставщики данных - это те, кто работает с существующим кодом FTSO (v1), а обновленные поставщики данных - это те, кто работает с новым кодом, включающим масштабирование FTSO. 70 % от общей инфляции Flare по-прежнему идет на вознаграждение за предоставление данных FTSO, но оно будет распределено между поставщиками данных следующим образом:

  • Пробная фаза: На этом этапе распределение вознаграждения не изменится: нынешние поставщики данных будут продолжать получать 100% вознаграждения за предоставление данных FTSO, распределяемого между ними; в то время как обновленные поставщики данных не получат никакого вознаграждения.
  • Бета-фаза: На этом этапе Flare Foundation обновит контракт Inflation таким образом, что текущие поставщики данных получат 50% от общего распределения вознаграждения за предоставление данных FTSO, а обновленные поставщики данных получат остальные 50%. В это время все поставщики данных смогут требовать свои вознаграждения. Например, допустим, что во время бета-фазы у нас есть 100 FLR инфляции для вознаграждений. Таким образом, текущие поставщики данных получат 50 FLR, а новые поставщики данных распределятся между ними следующим образом: 40 - за медианную близость, 5 - за правильную подачу подписи и 5 - за вклад в финализацию.
  • Фаза обесценивания: Во время этой фазы Flare Foundation снова обновит контракт на инфляцию, чтобы вознаграждение получали только обновленные поставщики данных. Таким образом, при сумме инфляции в примере выше, 100 FLR, обновленные поставщики данных получат полное распределение между ними: 80 за медианную близость, 10 за правильную подачу подписи и 10 за вклад в доработку.