Что такое Equivocation?
Equivocation: это когда участник протокола блокчейна подписывает и отправляет конфликтующие сообщения для одного и того же раунда или высоты, например поддерживая два разных предложения одновременно. Представьте это как цифровую двойную речь: одному и тому же человеку сообщают двум группам разные места встречи на одну и ту же ночь в надежде, что никто не сверит информацию.
«Equivocation это просто случайная сетевая помеха». Не совсем. Для появления конфликтующих подписей требуется подписант, обычно один из валидаторов, который действительно создаёт противоречивые подписи для того же слота или высоты.
Как работает Equivocation
Ниже краткий обзор, который легко представить.
- Шаг 1: Валидатор назначен предлагать блок или голосовать в раунде.
- Шаг 2: Вместо одного сообщения он подписывает два разных предложения или голоса для той же высоты, ссылаясь на разные блоки.
- Шаг 3: Узлы распространяют эти сообщения по сети. Кто-то видит обе подписи, привязанные к одному и тому же ключу и раунду.
- Шаг 4: Этот кто-то формирует доказательство, показывающее дублирующий набор подписей.
- Шаг 5: Сеть фиксирует доказательства и применяет санкции, часто лишая вознаграждений и репутации.
Вот и всё.
Почему Equivocation имеет значение
Потому что консенсус это коллективная работа, а двойная речь разрушает такую совместную работу.
- Польза: Быстрое обнаружение Equivocation защищает финализацию цепочки и ваши средства от неприятных откатов.
- Подход: Современные системы с доказательством доли включают правила на уровне механизма консенсуса, чтобы выявлять и наказывать такие случаи.
- Где встречается: Об этом пишут в документации по стекингу, в руководствах по настройке валидаторов и в отчётах об инцидентах после сетевых сбоев.
Если вы управляете нодой, используйте только одного активного подписанта и включите защиту от двойной подписи. Equivocation может привести к слэшингу, поэтому стоит применять отдельные ключи, настройки sentry и аккуратную схему резервного переключения.
Ключевые характеристики Equivocation
Что выделяет это поведение:
- Дублирование: Один и тот же ключ валидатора подписывает два конфликтующих сообщения для одного раунда или высоты.
- Обнаружимо: Доказательства проверяемы посредством сравнения подписей и метаданных.
- Наказывается: Правила протокола часто уменьшают вознаграждения, режут ставку и приостанавливают участие.
Варианты
Разные формы проявляются в разных протоколах:
- Предложение: Подписание двух предложений на одной и той же высоте.
- Голос: Отправка двух голосов за разных родителей в одном раунде.
- Механизм финализации: Конфликтующие голоса в механизме финализации, например Casper или Grandpa.
- Резервная копия: Запуск дублирующих узлов из старой резервной копии ключа, вызывающий случайную двойную подпись.
Большинство случаев Equivocation можно предотвратить. Запуск двух экземпляров с одним и тем же ключом легко приводит к пометке, даже если у вас не было намерения жульничать.
Пример
Валидатор подписывает два разных предложения для высоты 12,345 и отправляет каждое разным узлам, что позже выявляет Equivocation при сравнении подписей.
Интересный факт
Слово происходит из логики и риторики, где оно означает использование термина с двумя значениями, чтобы уклониться от ответственности. В крипто это понятие перенесли и сделали криптографическим.
Итог
В двух словах: Equivocation это двойная подпись, и сеть относится к ней отрицательно по понятным причинам.
