Автор: Ричард Рэд, контрибьютор Decred.
Гибридный PoW/PoS Консенсус
Механизм консенсуса в блокчейн служит для обеспечения согласия участников относительно текущего состояния блокчейн сети. Механизм консенсуса определяет, кто может добавлять новые блоки транзакций, и одна из его основных целей состоит в том, чтобы гарантировать, что цепочка не будет переписана.
Консенсус Proof of Work
Блокчейны с Proof of Work консенсусом (как Биткойн) могут функционировать исключительно благодаря майнерам, которые используют оборудование, эффективно угадывающее ответы на математические проблемы. Каждый раз, когда майнер делает правильное предположение, он может построить блок, который примет сеть. В то время как майнеры могут выбрать майнинг любой цепочки, сеть будет принимать только цепочку с наибольшим накопленным доказательством работы (то есть с наибольшим количеством хэшей или предположений) в качестве легитимной цепочки. Это означает, что майнеры заинтересованы в майнинге на самой длинной цепочке, и когда они увидят новый блок, они попытаются найти решение, которое позволит им построить его, добавить в сеть и получить награду.
Сложность переписывания блокчейн сети состоит в том, что позволяет ему функционировать в качестве регистра для учета финансовых операций. Когда транзакция появляется в блоке, который отправляет монеты в кошелек, и несколько блоков были построены поверх этого блока (подтверждения), маловероятно, что блок (и транзакция) будут перезаписаны.
Если объект контролирует достаточную большую мощность хеширования, чтобы превзойти основную цепочку, он может перезаписать (или реорганизовать) цепочку блоков, используя “старый” блок вместо последнего. Вот упрощенный отчет об атаке такого типа, также известной как атака 51%: злоумышленник проводит операцию с блоком X, отправляя его на биржу, а затем начинает майнинг параллельной цепочки в частном порядке (блоки не передаются в сеть). После того, как необходимое количество подтверждений будет получено, атакующий обменивает монеты и выводит их с обменника. Когда осуществляется вывод средств, они освобождают параллельную цепочку, и если в ней больше PoW (блоков), чем в исходной, сеть примет ее в качестве легитимной цепочки и версии истории транзакций, а представленная исходная цепочка (включая депозит злоумышленника) исчезнет. Затем атакующий может снова потратить эти монеты.
Поскольку майнеры являются единственными, кто может напрямую добавлять блоки в цепочку криптовалют, основанных на PoW, это предоставляет им большую роль в управлении сетью. Для принятия любых изменений, согласованных правилами сети, изменения должны будут иметь поддержку большинства хэш-функций. “Софтфорки” требуют достаточного количества майнеров для распознавания нового набора правил, чтобы пользователи могли совершать сделки в ожидании того, что их транзакции будут должным образом обработаны и включены в блоки. “Хардфорки” разделили бы сеть на двое, и по общепринятому правилу “цепочка с наибольшим количеством PoW - это правильная цепочка для следования”, майнеры будут решать какая из них будет считаться легитимной.
Proof of Stake
Proof of Stake - это альтернативный метод решения, связанный с тем кто сможет добавлять новые блоки и проверять текущее состояние блокчейн сети. Вместо того, чтобы майнеры боролись за решение проблемы в proof of stake, следующий создатель блока определяется неким процессом, основанным на количестве монет, хранящихся в кошельках (или в “доле”). Этот процесс доверяет тому, кто больше всех заинтересован, и будет принимать ответственные решения для сети.
Proof of Stake устраняет необходимость в энергоемком майнинге, но отсутствие значительных энергетических затрат создает еще одну проблему, иногда называемую “ничего в стейке”. В случае форка цепочки, PoS форжеры (“форжинг” обычно используется вместо “майнинга”), поощряются за майнинг в обеих цепях, так как это очень мало стоит для майнинга в дополнительной цепочке, и они могут собирать вознаграждения в двух цепях. Это проблема для сети, потому что изначально предполагается, что она состоит только из одной цепочки, и согласование состояния этой единственной цепи является основной целью данного механизма консенсуса.
Proof of Stake имеет дополнительную проблему с распределением токенов. PoW майнеров имеют большие затраты (оборудование, электричество), и они обычно должны продавать значительную часть добытых монет, чтобы покрыть эти расходы. В результате многие добытые монеты доступны для покупки на рынке, а не накапливаются майнерами. Proof of Stake форжеры имеют очень низкие эксплуатационные расходы, поэтому они не испытывают такого же давления, чтобы продавать эти монеты, которые они получают за поддержание сети. Форжеры владеющие большим количеством монет, имеют тенденцию увеличивать свою долю обращающихся монет, поскольку они собирают вознаграждения за блоки и комиссионные сборы с пользователей сети. Это было уподоблено феодализму, при котором сеть фактически принадлежит владельцам монет и управляется ими, и пользователи платят им арендную плату за ее использование. Но также существуют некоторые ограничения и правила, которые ограничивают непосредственное участие в Proof of Stake.
Гибрид PoW/PoS
Целью гибридных систем Proof of Work и Proof of Stake является выявление преимуществ соответствующих подходов и их использование для уравновешивания слабых сторон друг друга. Decred - это одна из немногих криптовалют, которая использует PoW и PoS в их первозданных формах и объединяет их вместе для создания многофакторного или гибридного консенсус механизма.
“Монеты мастернод” в некотором смысле также являются гибридами в том, что они имеют один из компонентов связанных с Proof of Work, который выполняет ту же роль, что и в Биткойн, и дополнительную роль для специальных узлов. Как правило, существует обязательное требование, чтобы эти специальные узлы держали определенное количество валюты, чтобы продемонстрировать, что им можно доверять, и они действуют в наилучших интересах сети, что по аналогии имеет отношение к Proof of Stake. Dash это оригинальная мастернода и называет эту модель Proof of Service. Данная статья сфокусирована на гибридах с компонентом Proof of Stake и не рассматривает множество монет, которые эмулируют мастерноды или Proof of Service.
Компонент PoW в Decred работает аналогично другим проектам основанным на PoW и использующих хеш-функцию Blake-256. Компонент PoW в Decred и способ его вплетения в цепочку является уникальным и заслуживает дальнейшего объяснения.
Чтобы принять участие в Proof of Stake Decred, холдеры должны установить временную блокировку своего DCR для покупки “тикетов”. Цена за отдельный тикет устанавливается рыночным механизмом, посредством которого система стремится к определенному количеству живых тикетов (40 960), если целевое число больше, чем цена, цена повышается, если меньше, то снижается. Когда кто-то покупает тикет, используемый ими DCR блокируется (то есть он не может их потратить) до тех пор, пока его тикет не будет псевдослучайно вызван для голосования или пока не истечет его время, примерно 142 дня. Это обеспечивает альтернативную стоимость для PoS, предназначенную для обеспечения того, чтобы у избирателей PoS была оболочка в игре и они действовали исключительно в интересах сети.
Участники PoS (также называемые избирателями или стейкхолдерами (держателями доли)) играют три разные роли: голосование за блок, голосование за изменения правил консенсуса и голосование за менеджмент на уровне проекта с использованием Politeia Proposal System. Первый из них, “голосование за блок”, - это способ, с помощью которого избиратели PoS самым непосредственным образом участвуют в поддержании консенсуса.
Голосование за блоки
Когда PoW майнер находит валидный блок, он транслирует его в сеть, но для того, чтобы этот блок считался действительным, он должен включать в себя голоса по крайней мере 3 - 5 случайно выбранных тикетов. PoS избиратели держат кошельки открытыми и готовы голосовать при вызове их тикетов (или они привлекают Провайдеров Услуг Голосования для голосования от их имени). Когда PoS тикет вызывается для голосования и голосует, его владелец получает вознаграждение.
Когда вызываются тикеты, они голосуют за принятие или отклонение обычных транзакций предыдущего блока. Узлы в сети не будут распознавать новый блок как действительный до тех пор, пока он не будет содержать не менее 3 голосов. Если большинство заявок на голосование отклоняют транзакции предыдущего блока, они возвращаются в пул памяти. Эти регулярные транзакции включают вознаграждение PoW майнеров, но не PoS избирателей.
Таким образом, PoS избиратели имеют право лишать майнеров награды, не влияя на их собственные вознаграждения. Это ограничивает возможности PoW майнеров наложить вето на изменения согласованных правил сети, за которые голосуют стейкхолдеры. На самом деле, PoS избиратели могут отклонить любое действие майнеров, которое им не нравится, приняв политику голосования “нет”, при обнаружении злонамеренного или неэффективного поведения, они препятствуют PoW майнерам от написания транзакций и получения вознаграждений.
Этот уровень верификации PoS значительно повышает безопасность сети и ее устойчивость к большинству атак. Обычный метод проведения атаки большинства с двойным расходованием состоит в том, чтобы переписать блокчейн, секретно извлекая альтернативную цепочку, а затем выпуская ее через определенный промежуток времени и используя преимущества аннулирования транзакций в “старой” цепочке (т. е. удвоить затраты ресурсов). Поскольку для Decred блоков требуется, чтобы входные данные из случайно выбранных тикетов считались действительными и не могли быть созданы PoW майнерами до тех пор, пока они не получили разрешение, майнеры не могут майнить в тайне, если они также не контролируют значительную долю живых тикетов (см. эти статьи).
Гибридная конструкция PoW/PoS значительно увеличивает затраты на атаку сети, поскольку существует две отдельные системы, которые атакующий должен обойти. Компонент PoS, в частности, настроен таким образом, что тикеты могут быть получены но довольно медленно. В каждом блоке/интервале можно купить ограниченное количество тикетов, а покупка максимального их количества приводит к резкому увеличению цены. Кроме того, после покупки этих тикетов, средства, использованные для их покупки, будут ограничены по времени, в результате чего злоумышленник подвергнется девальвации заблокированных монет, произошедшей в результате атаки.
Требование, чтобы за каждый блок голосовали случайно выбранные стейкхолдеры, означает, что блокчейн должен быть доступен всем участникам по мере его майнинга, что повышает безопасность сети. Гибридная система Decred была разработана, чтобы также предоставить стейкхолдерам власть над PoW майнерами.
Голосование об изменении консенсуса
Компания Decred с самого начала решила сделать стейкхолдеров PoS доминирующей силой принятия решений в управлении блокчейном. В правила консенсуса включена процедура ратификации обновления, посредством которой любое изменение в правилах консенсуса сети может быть применено только после того, как оно пройдет процесс голосования. Изменения могут быть внесены только в том случае, если они получат одобрение от не менее чем 75% тикетов для голосования. Этот процесс начинается, когда определенная доля майнеров (95%) и избирателей (75%) запускают обновленное программное обеспечение со скрытыми изменениями правил. Если предложение получило 75% поддержки после 4 недельного периода голосования, оно принимается, в противном случае оно отклоняется, и если оно не имеет ни одного из большинства голосующих, начинается повторное голосование. Если предложение принято, изменение правил вступает в силу через месяц.
Проект менеджмент: Politeia
Награды за блок в Decred распределены между PoW майнерами (60%), PoS избирателями (30%) и Казначейством (10%) для финансирования разработки программного обеспечения с открытым исходным кодом, которое соответствует целям проекта. Владельцы тикетов имеют право голосовать за то, как должен расходоваться этот фонд, какие функции следует добавить и определяют политику с помощью платформы Politeia.
Заключение
Поскольку PoS избиратели получают 30% вознаграждения за блок, они не могут поддерживать свою относительную долю циркулирующего DCR, просто делая стейки. Большинство вновь созданных DCR направляется PoW майнерам в обмен на роль, которую они играют в защите сети и смягчении проблемы “ничего в стейке” в PoS системах. Майнеры, как правило, должны продавать значительную часть вознаграждений, которые они получают, чтобы покрыть свои операционные расходы, гарантируя, что на рынке имеется достаточное количество DCR.
Блокчейн Decred представляет уникальную архитектуру и является одним из наиболее заметных примеров гибридной PoW/PoS системы. Точно так же, как проекты с PoS консенсусом представляют собой общую группу со значительными различиями внутри, будущие проекты, в которых используются гибридные подходы PoW/PoS, также будут уникальными и не обязательно будут следовать фреймворку Decred.