Заказать токеномику
База знаний Кейсы Заказать токеномику

Модели голосования в токеномике

Token-weighted, квадратичное, conviction voting, ve-модель — сравнение механизмов голосования в DAO. Формулы кворума, атаки на governance и практические рекомендации.

Governance — это система принятия решений в протоколе. От архитектуры голосования зависит, кто управляет казной, меняет параметры и определяет развитие проекта. Неправильно спроектированный governance превращается в театр голосования, где решения принимаются до начала формального процесса.

Зачем нужен governance

Протокол — это набор параметров, которые кто-то должен менять:

  • Экономические параметры: комиссии, процентные ставки, размер эмиссии, распределение наград
  • Технические параметры: обновления смарт-контрактов, добавление новых рынков, коллатеральные факторы
  • Казначейские решения: расходы из казны, гранты, инвестиции, программы стимулирования
  • Стратегические решения: интеграции, партнёрства, изменение миссии

В централизованной компании эти решения принимает менеджмент. В децентрализованном протоколе — держатели токенов через систему governance.

Более 200 параметров
В типичном DeFi-протоколе насчитывается 200+ параметров, которые потенциально управляются через governance: от комиссий торговых пар до порогов ликвидации. Не все из них должны голосоваться — часть делегируется комитетам или автоматизируется через алгоритмы.

Модель 1: Token-Weighted Voting (1 токен = 1 голос)

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

Механика

  1. Держатель блокирует токены для голосования (или использует Snapshot для off-chain голосования)
  2. Каждый токен даёт один голос
  3. Предложение проходит, если набирает кворум и большинство голосов

Формулы кворума

Кворум участия = V / G
V — количество проголосовавших токенов · G — общее количество токенов с правом голоса
Кворум победы = V_за / (V_за + V_против)
Доля голосов «за» среди проголосовавших · Типичный порог: 50% (простое большинство) или 66.7% (квалифицированное)

Пример расчёта кворума для DAO с 100M токенов:

  • Кворум участия: 4% (4M токенов должны проголосовать)
  • Кворум победы: >50% (простое большинство)
  • Порог создания предложения: 0.1% (100K токенов) или делегированных голосов

Проблемы

Плутократия. Крупные держатели (киты) контролируют результаты голосования. Если 3 кошелька владеют 40% токенов, они могут заблокировать или протолкнуть любое решение.

Апатия. Типичная явка на голосование в DAO — 3-5% от токенов с правом голоса. При кворуме 4% достаточно мобилизовать небольшую группу для контроля.

Купленные голоса. Рынки для покупки голосов (vote markets) позволяют приобрести влияние без долгосрочного интереса в протоколе. Атакующий берёт токены в займ, голосует и возвращает — стоимость атаки равна проценту по займу, а не цене токенов.

Flash loan governance атака
В 2022 году Beanstalk DAO потерял $182M из-за flash loan атаки на governance. Атакующий взял токены в flash loan, проголосовал за вывод казны, получил средства и вернул займ — всё в одной транзакции. После этого инцидента протоколы начали вводить timelock между созданием предложения и голосованием, а также между принятием и исполнением.

Когда подходит

Token-weighted voting работает для простых решений с низким риском: добавление нового рынка, изменение малозначительных параметров. Для казначейских решений и обновлений контрактов нужны дополнительные защитные механизмы (timelock, multisig veto, quorum guards).

Модель 2: Квадратичное голосование (QV)

Квадратичное голосование снижает влияние крупных держателей, делая каждый последующий голос дороже.

Механика

В QV голоса покупаются за «кредиты голосования» (voice credits). Стоимость голосов растёт квадратично:

Стоимость = голоса²
1 голос = 1 кредит · 2 голоса = 4 кредита · 3 голоса = 9 кредитов · 10 голосов = 100 кредитов
Голоса = √кредитов
Обратная формула: держатель 100 кредитов получает 10 голосов · держатель 10 000 кредитов получает 100 голосов (а не 100x больше)

Сравнение с token-weighted

Количество токеновГолоса (1T=1V)Голоса (QV)Разница
1001001010x меньше
1 0001 000~31.631.6x меньше
10 00010 000100100x меньше
1 000 0001 000 0001 0001000x меньше

QV радикально снижает разрыв: в token-weighted кит с 1M токенов имеет в 10 000 раз больше влияния, чем держатель 100 токенов. В QV — только в 100 раз.

Проблема сибил-атак

Главная уязвимость QV — сибил-атаки: злоумышленник распределяет токены по множеству кошельков и получает больше голосов в совокупности, чем с одного адреса.

Атака: √N × √(S/N) > √S
N кошельков по S/N токенов дают √N × √(S/N) = √S голосов, но при верификации каждого кошелька — больше · Без защиты от сибилов QV уязвим

Решения:

  • Proof of personhood (Gitcoin Passport, Worldcoin) — привязка к реальной личности
  • Социальный граф — анализ связей между адресами
  • Порог участия — минимальная история транзакций или стейкинг для голосования

Примеры

Gitcoin Grants. Используют квадратичное финансирование (quadratic funding) — расширение QV для распределения грантов. Множество мелких пожертвований имеют больший вес, чем одно крупное.

Когда подходит

QV эффективен для распределения ресурсов (гранты, бюджеты) и приоритизации (какой из 10 проектов финансировать). Для бинарных решений (да/нет) преимущества QV менее выражены. Требует механизма защиты от сибил-атак.

Модель 3: Conviction Voting

Conviction voting вводит фактор времени: чем дольше голоса направлены на предложение, тем сильнее их «убеждённость» (conviction).

Механика

  1. Держатель направляет токены на предложение
  2. Conviction накапливается экспоненциально по формуле полупериода
  3. Когда conviction достигает порога, зависящего от запрашиваемой суммы, предложение исполняется
  4. Переключение голосов на другое предложение обнуляет накопленную conviction
C(t) = C_prev × α + tokens × (1 − α)
C(t) — conviction в момент t · α — параметр затухания (0.9 для медленного накопления) · tokens — количество направленных токенов
Порог = ρ × S / (1 − (Amount / Total_funds)^β)
ρ — минимальная уверенность · S — total supply · Amount — запрашиваемая сумма · β — чувствительность к размеру запроса

Преимущества

  • Защита от flash-атак — мгновенная покупка голосов бесполезна, conviction накапливается медленно
  • Непрерывное голосование — нет жёстких дедлайнов, предложения живут до достижения порога или отзыва голосов
  • Пропорциональный порог — крупные запросы из казны требуют больше conviction, чем мелкие

Примеры

1Hive / Gardens. Conviction voting используется для распределения казны DAO. Предложения на мелкие суммы исполняются быстро, на крупные — требуют длительного и широкого консенсуса.

Когда подходит

Conviction voting идеален для непрерывного распределения казны и ситуаций, где важна защита от манипуляций. Не подходит для срочных решений (обновления безопасности) — накопление conviction занимает дни или недели.

Модель 4: Vote-Escrow (ve-модель)

Ve-модель привязывает вес голоса к длительности блокировки токена. Чем дольше блокировка — тем больше голосов и наград.

Механика

veToken = Token × (Lock Time / Max Lock Time)
Блокировка на максимальный срок даёт 1:1 · На половину срока — 0.5 ve-токена · Ve-токены линейно убывают со временем до момента разблокировки

Держатели ve-токенов получают три преимущества:

  1. Голос в governance — пропорционально количеству ve-токенов
  2. Доля от комиссий — revenue share от дохода протокола
  3. Бонусы (boost) — повышенные награды за ликвидность

Gauge Voting

Ключевая механика ve-модели — gauge voting: держатели ve-токенов голосуют за распределение эмиссии между пулами ликвидности.

Каждую неделю/эпоху:
1. Держатели veCRV распределяют голоса между пулами (gauges)
2. Пулы с большим количеством голосов получают больше эмиссии CRV
3. Эмиссия привлекает LP, LP увеличивает TVL пула
4. Протоколы заинтересованы в ликвидности → покупают veCRV или «подкупают» держателей

Результат: рынок голосов (Curve Wars)

Войны за голоса

Gauge voting создаёт экосистему «подкупов» (bribes): протоколы платят держателям ve-токенов за направление эмиссии в нужные пулы. Convex Finance аккумулирует veCRV и позволяет держателям CVX голосовать за направление эмиссии, создавая «мета-governance» — управление управлением.

Примеры

Curve Finance (veCRV). Эталон ve-модели. Блокировка до 4 лет. >50% CRV заблокировано в ve, что радикально снижает обращающееся предложение.

Velodrome / Aerodrome. Ve-модель для DEX на Optimism и Base. Держатели veVELO голосуют за распределение эмиссии и получают 100% комиссий голосуемых пулов (не распределённые по всем, а только по выбранным).

Когда подходит

Ve-модель — для протоколов с устоявшимся TVL и доходом. Она сложна в реализации и требует критической массы участников. Для проектов на ранней стадии ve-модель может быть избыточной.

Сравнение моделей

ПараметрToken-WeightedКвадратичноеConvictionVe-модель
СложностьНизкаяСредняяВысокаяВысокая
Защита от китовНетДаЧастичнаяЧастичная (время)
Защита от flash-атакTimelockTimelockВстроеннаяВстроенная (lock)
Защита от сибиловНе нужнаКритичнаНе нужнаНе нужна
Тип решенийБинарныеРаспределение ресурсовНепрерывное финансированиеУправление эмиссией
Скорость принятия3-7 дней3-7 днейДни-недели1 эпоха (7 дней)
Стимул к участиюНизкийСреднийСреднийВысокий (доход)
ПримерыCompound, UniswapGitcoin1HiveCurve, Velodrome

Архитектура: on-chain vs off-chain

On-chain governance

Голосование происходит на блокчейне. Результаты исполняются автоматически смарт-контрактом.

КомпонентОписание
GovernorСмарт-контракт для создания и исполнения предложений (OpenZeppelin Governor)
TimelockЗадержка между принятием и исполнением (обычно 24-48 часов)
TokenГолосовательный токен (ERC-20Votes) с делегированием

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

Off-chain governance (Snapshot)

Голосование подписями без транзакций. Результаты исполняются вручную (multisig) или через мост.

Преимущества: бесплатно для голосующих, гибкие стратегии голосования, выше явка. Недостатки: исполнение зависит от доверия к multisig, нет гарантии исполнения.

Гибридная модель

Большинство зрелых DAO используют гибрид:

  • Snapshot для сигнального голосования (температурная проверка)
  • On-chain Governor для финального утверждения и исполнения
  • Multisig (5/9 или 4/7) как аварийный механизм и для оперативных решений

Кейс: расчёт кворумов для группового голосования

На практике даже простая задача — голосование группы из 5–25 человек — быстро становится нетривиальной. Разберём конкретный кейс проектирования параметров.

Вводные данные

ПараметрОбозначениеДиапазон
Размер группы (с правом голоса)G5–25
Количество вариантов выбораC2–7
Количество победителей (решений)W1–5
Число участников голосованияP≤ G
Число голосов у каждого участникаvзависит от W

Простой случай: G = 25, W = 1, v = 1. Кворум участия: P > 25/2 = 13. Кворум победы: 13 голосов. Всё очевидно.

Но при W = 5 (пять победителей) возникают нюансы:

  • Кворум участия должен быть выше — иначе решение принимает меньшинство
  • Кворум победы должен быть ниже — иначе 13 голосов попросту никто не наберёт
  • Нужно исключить ситуацию, когда один победитель набрал 9 голосов, а четыре других — по одному

Формулы

Число голосов на участника:

v = W
Каждый участник получает столько голосов, сколько победителей — чтобы можно было голосовать за нескольких кандидатов

Кворум участия:

P > G × W / (1 + W)
Чем больше победителей, тем выше кворум участия · При W=1: P > 25/2 = 13 · При W=3: P > 25×3/4 = 19

Кворум победы (в голосах):

wt > v × G / (1 + W)
Чем больше победителей, тем ниже порог победы в голосах · При W=1: wt > 1×25/2 = 13 · При W=3: wt > 3×25/4 = 19 голосов

Числовые примеры (G = 25)

Победители (W)Голосов на участника (v)Кворум участия (P)Кворум победы (wt)
11> 13 человек> 13 голосов
22> 17 человек> 17 голосов
33> 19 человек> 19 голосов
55> 21 человек> 21 голосов

При W=3 и v=3 общее количество голосов = 19 × 3 = 57. Порог победы = 19. Три победителя могут набрать по 19 голосов — математически возможно.

Второй раунд

Что если победителей должно быть 3, а порог преодолели только 2? Нужен второй раунд:

  1. Исключаем двух победителей из списка кандидатов
  2. Голосуем за оставшихся
  3. Кворумы не снижаем — голосов по-прежнему много (v = W), а вариантов выбора меньше
Ловушка упрощения
Кажется логичным снизить кворум второго раунда до простого большинства (½+). Но при большом числе оставшихся вариантов выбора голоса размываются. Сохранение исходных кворумов гарантирует, что каждый победитель имеет сопоставимую поддержку.

Делегирование

Делегирование позволяет передать голоса другому адресу, не передавая токены. Это решает проблему апатии: пассивные держатели делегируют голоса активным участникам (делегатам).

Параметры делегирования

ПараметрВарианты
ОтзывностьВ любой момент / по эпохам
ГранулярностьВсе голоса одному делегату / разные доли разным делегатам
ТранзитивностьМожет ли делегат пере-делегировать (обычно нет)
КомпенсацияФиксированная / % от казны / по результатам

Проблема профессионализации

Делегирование создаёт класс профессиональных делегатов, получающих значительный вес. Это полезно (компетентные решения), но рискованно (концентрация власти). Решения: лимиты на максимальную долю делегированных голосов, ротация делегатов, публичные отчёты.

Безопасность governance

Типичные атаки

АтакаОписаниеЗащита
Flash loanЗаём токенов → голосование → возврат в одном блокеSnapshot баланса за N блоков до голосования
ПодкупПокупка голосов через bribe-протоколыConviction voting, длинные lock periods
Захват казныПредложение на вывод средств себеTimelock + veto + лимиты на разовые расходы
Governance stalemateБлокировка голосования контрольным пакетомOptimistic governance (вето вместо одобрения)
Poison pillЗамаскированное вредоносное предложениеОбязательный аудит кода + timelock для проверки

Контрольный список безопасности

  • Timelock между принятием и исполнением (минимум 24 часа)
  • Snapshot баланса за несколько блоков до начала голосования
  • Кворум участия не менее 4% от голосующих токенов
  • Порог создания предложения: 0.1-1% от supply
  • Veto-механизм для Security Council (multisig)
  • Лимиты на разовые казначейские расходы (не более 10% казны)
  • Аудит кода для всех предложений, модифицирующих смарт-контракты

Проектирование governance: алгоритм

Шаг 1: Классификация параметров

Разделите все управляемые параметры на категории по уровню риска:

КатегорияПримерыМеханизм управления
КритическиеОбновление контрактов, изменение казны > 10%On-chain голосование + timelock + veto
ЗначимыеКомиссии, коллатеральные факторы, новые рынкиOn-chain или Snapshot + multisig исполнение
РутинныеМалые гранты, параметры наградДелегированные комитеты
ТехническиеОракулы, газовые лимитыАвтоматизация (алгоритмы)

Шаг 2: Выбор модели голосования

Основной тип решений?
├── Бинарные (да/нет) → Token-weighted + timelock
├── Распределение бюджета → Квадратичное (с защитой от сибилов)
├── Непрерывное финансирование → Conviction voting
└── Управление эмиссией → Ve-модель (gauge voting)

Шаг 3: Настройка параметров

Кворум = f(G, W, v)
G — размер группы голосующих · W — количество победителей · v — ожидаемая явка · Формула зависит от конкретной модели

Практические рекомендации:

  • Кворум участия: 4-10% — ниже обычно невозможно набрать, выше — парализует governance
  • Кворум победы: 50% для рутинных, 66.7% для критических решений
  • Timelock: 24 часа для рутинных, 48-72 часа для критических
  • Период голосования: 3-5 дней (достаточно для информирования, не слишком долго)
Театр голосования
В реальном DeFi governance часто работает как театр: фракции договариваются заранее, крупные держатели голосуют предсказуемо, а формальное голосование лишь фиксирует заранее принятое решение. Осознание этого факта — первый шаг к проектированию устойчивого governance. Цель — не устранить политику (это невозможно), а сделать процесс прозрачным и защитить меньшинство от диктатуры большинства.

Нужно спроектировать governance?

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

Обсудить проект →

Читайте также