Как работает Delegated Proof of Stake и как он связан со стейкингом?
1
В чем разница между PoS и DPoS?
Внимание! Статья устарела и ждет обновления
Delegated Proof of Stake (или DPoS) – алгоритм консенсуса, созданный разработчиком Дэном Ларимером (Daniel Larimer) в 2014 году.Список известных проектов, использующих DPoS:
- BitShares
- Steemit
- Lisk
- Ark
- EOS
PoS похож на прямую демократию, а DPoS — на представительную. Классический PoS позволяет держателям монет заниматься «стейкингом». Держатель монет подтверждает транзакции, получая в награду новые монеты.
Вознаграждения в сети PoS зависят от количества монет, принадлежащих держателю («стейкеру»). Чем больше стейк, тем больше вознаграждение.
PoS стимулирует держателей крупных сумм заниматься стейкингом и образует неравенство, подобное распределению майнинговых мощностей в сети биткоина: майнер, больше инвестировавший в оборудование, получает больший шанс нахождения блока.
Delegated Proof of Stake делает распределение монет и влияние в сети более равномерным и обеспечивает большую степень децентрализации.
В DPoS-блокчейнах каждый кошелек с монетами на балансе может голосовать за так называемых «делегатов» (Delegates, Block Producers, Validators) — специальных представителей сообщества, получивших право генерировать блок и получать награду в виде транзакционных комиссий.
DPoS устойчив к атаке коррумпированного меньшинства. Если делегаты вредят сети или ушли в офлайн, участники сети повторно проводят выборы и назначают новых делегатов, пока количество честных блок-продюсеров не вернется к 100%.
2
Каковы функции делегатов в DPoS-блокчейнах?
Полномочия делегатов заключаются в настройке основных правил сети, поддержании стабильной работы блокчейна и генерации блоков. Они получают комиссии за транзакции в качестве прибыли. Делегатом может стать каждый участник сети, но лишь на короткое время.
Сеть платит делегату за генерацию новых блоков и включение в них новых транзакций. Делегат может по желанию тратить эти средства на маркетинг, лоббирование интересов сообщества, но не в личных целях. Держатели монет решают, сколько получит конкретный делегат за свою работу. Это зависит от правил сети и репутации делегата. Репутация подкрепляется голосами пользователей, которые при помощи своих монет в стейке постоянно участвуют в выборах. Один пользователь может отдать делегату только один голос, но голосовать сразу за нескольких кандидатов.
Когда делегаты избраны, каждый из них попадает в особую группу. Люди в этой группе имеют доступ к генезис-аккаунту.
Это аккаунт с мультиподписью, через который можно изменять:
- награду за блок;
- время генерации блоков;
- размер блока;
- размер вознаграждения свидетелям;
- комиссии за транзакции.
Параметры, находящиеся в компетенции делегатов, не должны меняться слишком часто: нестабильность и новизна отпугивают новичков и инвесторов. Генезис-аккаунт может выполнять и стандартные функции: использовать смарт-контракты , получать средства, формировать стейк.
- Переизбрание новых делегатов возможно после принятия важных решений в DPoS-блокчейнах, если установленные правила не утверждены большинством голосов пользователей.
- Сокращение или увеличение количества делегатов, их замена не влияет на устойчивость сети.
Как стать Делегатом?
- Система выбирает делегатов после подсчета голосов и ставит их в очередь.
- Каждый делегат генерирует блок, порядок делегатов меняется случайным образом.
- Делегат может не пропустить транзакции в блок, но это требует доверия к делегатам.
- Если делегат не создал блок или не включил в него транзакцию, следующий блок будет вдвое большим, чтобы включить неподтвержденные транзакции.
- Заблокировать конкретные транзакции невозможно в долгосрочной перспективе, остальные участники сети могут отстранить злоупотребляющего делегата.
Кто такие Свидетели?
Пользователи, которые занимаются стейкингом и имеют шанс временно стать делегатом, называются свидетелями (Witness, Witness Node, Validator, Block Producer, так как они являются свидетелями транзакций и одновременно узлами сети). DPoS использует репутационную систему и голосование в реальном времени для избрания свидетелей и делегатов.
Свидетели генерируют и распространяют блоки, подтверждают транзакции, держат монеты в стейке и голосуют. В отличие от делегатов, они не могут настраивать основные правила сети. Во время подтверждения транзакций, свидетели и делегаты не могут менять детали транзакций, такие как сумма, отправитель, получатель, ID и так далее.
Также они проверяют:
- входящие блоки и подписи у транзакций;
- результаты исполнения смарт-контракта;
- являются ли делегаты легитимно избранными;
- распространение транзакций пользователей.
Каждый полный узел может предоставить доступ для чтения данных блокчейна, что делает систему похожей на децентрализованную сеть доставки контента (CDN).
5
Как работает стейкинг в DPoS?
Все монеты в DPoS-блокчейнах делятся на свободные (находящиеся в обороте) и те, что в стейкинге. Каждый сам определяет размер стейка, и тратить его нельзя. С помощью таких монет можно стать свидетелем, голосовать за делегатов и принимать участие в управлении сетью через смарт-контракты.
Каковы плюсы стейкинга?
- Не нужно инвестировать в дорогое оборудование, чтобы добывать новые монеты;
- Нет высокого энергопотребления;
- Сложность реализации атаки 51%: атакующий должен владеть как минимум 51% всех токенов ;
- Во время проведения эирдропов некоторые проекты быстрее распределяют монеты именно среди стейкеров;
- Стейкинг в DPoS используется не только для заработка, но и в качестве инструмента влияния на сеть.
6
Есть ли у DPoS существенные недостатки и какие?
Среди недостатков:
- Деанонимизация свидетелей, так как зачастую это публичные компании, а не частные лица.
- Возможность проведения DDoS-атаки на узлы сети.
- Большинство не имеют достаточного стимула принимать участие в голосованиях, ведь их стейк слишком мал.
- Опасность централизации: обладатель больших ресурсов может переизбирать сам себя.
- Голосование кошельком несет высокие финансовые и политические риски: голосующие скорее возьмут взятку или совсем не проголосуют.
- Некоторые реализации рекомендуют использовать многоядерные процессоры для валидации, иначе делегат может упустить награду за блок.
- Во время стейкинга монеты фиксируются на какое-то время, так что если цена сильно снизится, вы не продадите монеты сразу.
Известный биткоин максималист Ник Сабо высказывал обеспокоенность по поводу одной из реализаций DPoS:
«В EOS несколько незнакомцев могут заморозить то, что пользователи считают своими деньгами. В рамках протокола вам нужно доверять конституционной организации, состоящей из людей, которых вы никогда не узнаете лично. Конституция EOS социально не масштабируема и является дырой в безопасности».
Во время голосования в апреле 2019 года за замену временной конституции (interim constitution) на пользовательское соглашение (EUA) явка составила 1,7%. Решение пришлось принимать блок-продюсерам, что вызвало обвинения в централизации и сырости некоторых реализаций DPoS.