Алгоритм Roll-DPoS: демократия на блокчейне

Фото - Алгоритм Roll-DPoS: демократия на блокчейне
Существует множество криптопроектов, которые совершенствуют стандартные протоколы консенсуса, чтобы те соответствовали условиям, заданным разработчиками. К таким «доработанным»‎ алгоритмам относится и Roll-DPoS.
Мы уже делали обзор экзотических алгоритмов, но Roll-DPoS не вошел в этот список. И, скорее всего, перечень моделей голосования для достижения консенсуса будет расширяться и дальше.

Что такое Roll-DPoS?

Все выполненные транзакции должны быть подтверждены в распределенной сети с использованием какого-то механизма консенсуса. Сейчас в блокчейн-проектах широко используются четыре основных алгоритма: 

  • PoW (доказательство работы);
  • PoS (доказательство доли владения);
  • BFT (византийская отказоустойчивость);
  • DPoS (делегированное доказательство доли владения).

Делегированное доказательство доли (DPoS) — это децентрализованная и гибкая система консенсуса, которую используют блокчейны монет Cardano, Tron, Tezos, EOS, Steemit. Но применение DPoS к децентрализованным приложениям Интернета вещей (IoT) невозможно из-за крупномасштабных развертываний и необходимости обрабатывать огромные базы данных. Чтобы решить эту проблему для блокчейн-приложений на основе IoT, создана модель Roll-DPoS. Это рандомизированный алгоритм делегированного подтверждения доли. Он наследует преимущества оригинальной структуры DPoS и дополнительно расширяет ее возможности с точки зрения децентрализации и масштабируемости.

Этот механизм предложил в 2017 году прикладной разработчик из Университета Ватерлоо Синьсинь Фан. Через год он был использован в работе блокчейна IoTeX.

Roll-DPoS развивает концепцию делегирования прав валидаторов, используя «скользящий» набор контролирующих узлов. На практике это означает, что валидаторы, ответственные за проверку транзакций и создание новых блоков, меняются с заданной регулярностью. Этот период может варьироваться в интервале от 24 до 72 часов.

Как назначаются валидаторы на блокчейне Roll-DPoS?

Процесс выбора делегатов в Roll-DPoS отличается от традиционного DPoS. Вместо системы голосования с учетом количества удерживаемых активов Roll-DPoS использует взвешенную систему голосования. Это означает, что право голоса имеет каждый пользователь, и оно не зависит от количества монет на его балансе. Учитывается общее количество проголосовавших адресов‎, а не количество проголосовавших коинов.

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

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

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

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

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