Что такое слешинг?

Фото - Что такое слешинг?
Многие знают, что блокчейны Proof-of-Stake поощряют своих валидаторов. Но мало кто знает, как их наказывают. В этой статье углубимся в понятие слешинга и разберемся в его эффективности.
Слешинг — это механизм наказания валидаторов, действия которых противоречат правилам работы блокчейна. Он является одним из компонентов консенсуса, однако, в отличие от вознаграждений, дает не пряник, а кнут.

Алгоритм консенсуса Proof-of-Stake

С помощью Proof-of-Stake узлы-валидаторы приходят к согласию относительно состояния блокчейна. Это позволяет сети быть децентрализованной и обеспечивает безопасность. Слешинг является уникальным являнием, характерным именно для PoS-блокчейнов. 

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

  • в Proof-of-Work — с помощью высокой требовательности к вычислительной мощности;
  • в Proof-of-Stake — с помощью слешинга.

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

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

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

Стейкинг

Стейкинг — это блокировка в сети определенного количества токенов для получения доступа к участию в консенсусе. Таким образом валидатор подтверждает намерение проводить только законную активность. В случае же неправомерных действий к этим токенам будет применен слешинг.
Роль стейкинга и принцип работы PoS. Источник: shiksha.com

Роль стейкинга и принцип работы PoS. Источник: shiksha.com

Каждая сеть самостоятельно устанавливает минимальную сумму токенов, которые необходимо заблокировать, чтобы стать валидатором, например:

  • BNB Smart Chain — 10 000 BNB;
  • Solana — 0,01 SOL;
  • Ethereum — 32 ETH.

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

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

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

Причины и последствия слешинга

Хотя причины слешинга в разных блокчейнах отличаются, можно выделить наиболее повторяющиеся из них:

  1. Простой валидатора. Если узел-валидатор не участвует в процессе консенсуса в течение определенного времени, сеть воспринимает это как признак его ненадежности. Поэтому за подобные действия к валидатору применяется слешинг.
  2. Двойная подпись. Во избежание слешинга за простой валидаторы запускают идентичную резервную установку, которая может участвовать в консенсусе, если основной узел вышел из строя. Однако это создает риск двойной подписи, когда идентичный ключ валидатора подписывает блок дважды.

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

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

Слешинг в Ethereum

В сентябре 2022 года Ethereum полностью перешел на алгоритм консенсуса Proof-of-Stake. В его сети существуют три ситуации, при которых к валидатору будет применен слешинг:

  • предложение и подписание двух блоков для одного и того же слота (периода времени для предложения блока — 12 секунд);
  • голосование за исходную (последний блок предыдущей эпохи) и целевую (первый блок текущей эпохи) контрольные точки, при которых точки одной аттестации находятся внутри или окружают точки другой;
  • голосование за 2 целевые контрольные точки в одной эпохе.

При обнаружении какого-либо из этих действий к валидатору применяется слешинг. В таком случае 1/32 часть его стейкинга сжигается (максимум 1 ETH), после чего начинается 36-дневный период его отставки от участия в консенсусе.
Жизненный цикл валидатора Ethereum. Источник: attestant.io

Жизненный цикл валидатора Ethereum. Источник: attestant.io

В течение этого времени заблокированные токены валидатора постепенно исчезают. Он не только лишается вознаграждения, но и получает штраф в размере около 8000 Gwei (0,000008 ETH) за каждую пропущенную эпоху (примерно 6,4 минуты). В результате он теряет около 0,07 ETH.

На 18-й день после применения слешинга валидатор выплачивает штраф. Его сумма зависит от общего количества застейканых ETH у всех валидаторов, к которым был применен слешинг за последние 36 дней. Очевидно, что при увеличении числа таких валидаторов, величина штрафа также становится больше.

Этот штраф называется корреляционным и рассчитывается следующим образом:

  1. Вычисляется сумма эффективных балансов (баланс на момент слешинга) всех валидаторов, к которым был применен слешинг в период 36 дней.
  2. Эта сумма умножается на параметр PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX (значение которого равняется 3) и ограничивается общим балансом стейка всех валидаторов Ethereum.
  3. Эффективный баланс недобросовестного валидатора умножается на результат из пункта №2.
  4. Результат из пункта №3 делится на общий баланс стейка всех валидаторов Ethereum.

Рассмотрим пример, в котором валидатор с суммой стейкинга 32 ETH подписал два блока для одного и того же слота 1 февраля 2024 года. 

В таком случае к нему применяется слешинг и он теряет 1 ETH. Спустя 18 дней выясняется, что в 36-дневный период (за 18 дней до и 18 дней после применения слешинга) в сети ETH было обнаружено 10 таких же недобросовестных валидаторов. В этом случае сумма штрафа будет большей, нежели в ситуации, где таких валидаторов было бы 5.

Утечка бездействия

Если консенсус не завершается в течение четырех эпох, в сети активируется протокол утечки бездействия. 

Чтобы прийти к консенсусу относительно состояния блокчейна, ⅔ всех валидаторов должны согласовать исходную (последний блок предыдущей эпохи) и целевую (первый блок текущей эпохи) точки. Если более ⅓ валидаторов будут бездействовать, то остальная их часть не сможет “договориться”.

С помощью утечки бездействия стейк неактивных валидаторов постепенно уменьшается. Это происходит до тех пор, пока общее количество таких валидаторов не составит менее ⅓ от общего стейка всех участников консенсуса. 
Доля потери стейка в течение утечки бездействия. Источник: github.com

Доля потери стейка в течение утечки бездействия. Источник: github.com

Поэтому, каким бы большим ни был пул неактивных валидаторов, в итоге они будут контролировать меньше ⅓ всего стека, что позволит остальной части валидаторов продолжить консенсус.

Заключение

Слешинг — это эффективный способ противодействия нарушениям со стороны валидаторов. Он помогает обезопасить сеть не только от умышленных, но и от непреднамеренных действий. Его эффективность подтверждается статистикой.

С момента запуска Beacon Chain (компонент Ethereum, который отвечает за Proof-of-Stake) 1 декабря 2020 года и до 15 февраля 2024 года слешинг был применен 414 раз. С учетом того, что количество активных валидаторов в сети составляет 940398, со слешингом столкнулись лишь 0,04% из них.

Пишет о DeFi и криптовалютах через призму технологий.