Алгоритмы консенсуса Proof-of-work и Proof-of-stake обладают своими преимуществами и недостатками. Но иногда в контексте консенсуса Proof-of-stake говорят о проблеме «Nothing at Stake», которая связана с экономическими стимулами. Что это и как с ней справиться?

Экономические стимулы PoW

Исторически первая криптовалюта и ее сеть, Биткоин использует в качестве алгоритма консенсуса Proof-of-work (PoW). Проще говоря, подтверждение транзакций и их запись в блокчейне происходит при участии майнеров. Хотя создатель сети Сатоши Накамото и решил проблему двойной траты посредством майнинга для децентрализованной одноранговой денежной системы, его предложение об использовании PoW в качестве консенсуса является лишь одной из возможных интерпретаций использования Proof-of-work. Изначально PoW предлагался ранним шифропанком и криптографом Адамом Бэком как способ борьбы со спамом в Hashcash.

Можно сказать, что особенность Proof-of-work с экономической точки зрения заключается в создании издержек. Протокол Hashcash Адама Бэка требовал, чтобы отправитель письма вычислял уникальное хеш-значение перед отправкой каждого нового письма.

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

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

Вот почему тот же Биткоин обладает определенной «себестоимостью» добычи, связанной с PoW-консенсусом — множество майнеров постоянно тратит силы, деньги и время на то, чтобы добыть новые монеты.

Экономические стимулы PoS

В отличие от Proof-of-work, где важна вычислительная мощность, в алгоритме консенсуса Proof-of-stake (PoS, «Доказательство доли») решающим фактором является количество монет, которыми владеет участник сети и которые он «ставит на кон». То есть, чтобы участвовать в создании новых блоков и получать за это награду, не нужно жечь электричество и тратить деньги на дорогостоящее оборудование. Достаточно держать монеты на балансе и стейкать их — то есть временно замораживать ради участия в процессе валидации транзакций и получения вознаграждения.

Противники Proof-of-work порой критикуют майнинг за трату электроэнергии и вред экологии, а также ограничения, которые накладываются на работоспособность сети и возможность ее масштабирования.

С другой стороны, в PoS системе реальные затраты у валидатора отсутствуют. По этой причине Адам Бэк считает, что у PoS есть фундаментальные недостатки, и что этот вид консенсуса воспроизводит «худшие аспекты фиатной валюты».

Проблема «Nothing at Stake»

Как следует из названия проблемы «Nothing at Stake» или «Ничто на кону», ее смысл и заключается в том, что валидатор не жертвует чем-то ценным и значимым. Фактически, валидатор ставит на кон монеты PoS-системы, которые, в отличие от монет PoW-системы, «ничем не обеспечены».

То есть проблема «Nothing at Stake» — это про фундаментальный вопрос экономической значимости участия в консенсусе. Если валидатор не ставит чего-то значимого на кон, то он может повторять эту ставку многократно. Иначе говоря, мы вновь возвращаемся к проблеме спама и DoS-атак, против которых Адам Бэк и предложил PoW-консенсус. Только вместо спама в блокчейне валидатор, к примеру, может поддерживать работу уймы форков без каких-либо значимых для себя издержек.

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

Слешинг

Чтобы решить проблему «Nothing at Stake», разработчики PoS-систем начали внедрять механизмы защиты. Одним из наиболее эффективных подходов стал slashing. Механизм заключается в том, что валидаторы, которые нарушают правила консенсуса (например, голосуют за несколько форков блокчейна), теряют часть своих монет. Это штрафует недобросовестных участников и снижает вероятность атак.

Возьмем для примера слешинг в Ethereum. Валидатор подлежит слешингу в следующих случаях:

  • Подписание двух разных блоков для одного слота.

  • Аттестация блока, который «оборачивает» другой, изменяя историю сети.

  • Двойное голосование за разные блоки в одном слоте.

При обнаружении нарушения у валидатора сжигается 1/32 его депозита (но не более 1 ETH), после чего начинается 36-дневный период выхода из сети с постепенным уменьшением стейка. На 18-й день накладывается дополнительный штраф, размер которого зависит от количества других валидаторов, подвергнутых слешингу за последние 36 дней. Чем больше массовых нарушений — тем выше штраф.

Этот дополнительный штраф называется correlation penalty. В случае одиночного нарушения потери минимальны, при массовом — валидатор может потерять весь депозит.

Как объясняет предприниматель, экономист и блокчейн-эксперт Алекс Рейнхардт:

«PoS-сети борются с проблемой Nothing at Stake комплексно, создавая систему, где следование протоколу является доминирующей экономической стратегией из-за высокого риска финансовых потерь при попытке его нарушить. Это эффективная митигация Nothing at Stake через наложенные правила — в отличие от встроенных издержек PoW, изначально исключающих такую проблему».

Иначе говоря, поскольку Proof-of-stake не имеет встроенных экономических издержек за участие в консенсусе (в отличие от PoW), для борьбы с «Nothing at Stake» приходится вводить искусственные экономические барьеры.

Финальность

Для блокчейнов крайне важна финальность — когда транзакции, после того как они попали в блокчейн, нельзя ретроспективно изменить или отменить. Финальность появляется тогда, когда участники сети приходят к консенсусу по поводу блока. Проблема «Nothing at Stake» может теоретически угрожать финальности, поскольку ставит под вопрос консенсус, когда участники сети одновременно голосуют за разные ветки.

В то же время, финальность можно использовать в обратную сторону: для борьбы с проблемой «Nothing at Stake». Как только блок получает достаточную поддержку, он становится финализированным — то есть его невозможно изменить. Это устраняет любые попытки валидаторов поддерживать несколько цепочек одновременно, потому что все альтернативы быстро теряют актуальность. Таким образом, финальность в сочетании с дополнительными мерами против «Nothing at Stake» может делать голосование сразу по нескольким веткам бессмысленным.

Гибридные решения

Существуют проекты, которые в разное время предпринимали попытки объединить лучшие стороны консенсусов PoW и PoS, что, гипотетически, могло бы несколько снизить риски проблемы «Ничто на кону» в подобной сети. Но, поскольку система объединяет элементы двух консенсусов, PoS-часть все еще требует наличия своих механизмов митигации «Nothing at stake».

Чаще всего, в качестве примера объединенного (гибридного) консенсуса, рассматривают проект Decred. Он использует оба механизма (PoS и PoW) для поддержания работы сети и ее безопасности. Майнеры и стейкеры сотрудничают для создания новых блоков: майнеры создают новые блоки, а валидаторы проверяют и контролируют. Действительность блока возможна только после подписания как минимум тремя из пяти тикетов (голосов) стейкеров, голосующих в этом блоке.

Трагедия общих ресурсов

Иногда в контексте проблемы «Nothing at stake» вспоминают о феномене «Трагедии общих ресурсов» (иногда можно встретить термин «трагедия общин»). Суть сводится к следующему: благо общего пользования может истощаться по мере того, как люди будут им пользоваться в личных интересах.

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

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

Аналогии проводят с теорией игр («дилеммой заключенного») и другими моделями, когда у одного участника есть стимулы действовать в сиюминутных личных интересах вопреки долгосрочным выгодам от использования всеми участниками общего блага.

С этой аналогией блокчейн рассматривается как «общее благо», а недобросовестные практики отдельных валидаторов, характерных для проблемы «Nothing at stake», — как индивидуальная выгода, которая снижает доверие к механизму консенсуса и привлекательность проекта для новых пользователей.

Актуальность проблемы

Проблема «Nothing at stake» в PoS-системах в виде конкретного злоупотребления при голосовании и поддержании работы разных форков является скорее теоретической, поскольку разные системы предлагают те или иные ограничения для подобных недобросовестных практик, в том числе: слешинг, финализация и гибридные модели консенсуса.

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

Вывод

Проблема «Nothing at stake» проявляется в PoS-системах и связана с фундаментальным вопросом экономической значимости участия в консенсусе. PoW-консенсус сопряжен с естественными экономическими издержками для майнера — затратами на оборудование и электроэнергию. Тогда как в PoS-консенсусе для митигации «Nothing at Stake» используют искусственные экономические барьеры, такие как слешинг. Финализация, слешинг и гибридные решения — это основные методы борьбы с уязвимостью.