Блокчейн/Уровень IX · Скорость и зрелище/9.2 Честный рынок/Урок 4
Атаки при запуске и дизайн, нейтральный к атакам Сивиллы
Снайпинг, бандлинг и симметрия комиссий, которая их обезвреживает
МатериалыБлок-эксплорер с отображением графа транзакцийИнструмент для карты холдеров (например, Bubblemaps)Таблица для отслеживания источников финансированияЭлектронная таблица для расчёта пропорционального распределения
Любопытство
- Почему место в начале блока определяет, кому достанутся самые дешёвые токены?
- Как один человек может владеть десятью тысячами кошельков так, что никто не узнает об этом до тех пор, пока всё не произойдёт?
- Можно ли спроектировать запуск так, чтобы ранний вход не давал никакого преимущества?
Исследование
- При рождении токена цена определяется положением на бондинг-кривой. Первый покупатель платит минимально возможную цену; каждая следующая покупка увеличивает резерв и поднимает цену за единицу. Это порождает гонку: тот, кто попадёт в первый блок после создания, получает максимальную скидку. Скорость здесь не просто преимущество — в ней заключается вся экономическая ценность точки входа.
- Снайперы отслеживают в сети создание новых токенов. Как только транзакция минта попадает в блок, они исполняют ордер на покупку в следующем же слоте. В высокопроизводительных сетях вроде Solana эта гонка измеряется миллисекундами. Снайпер покупает тысячи токенов по стартовой цене кривой и часто продаёт их в течение нескольких минут органическим покупателям, которые видят токен в трендах.
- Бандлинг формализует эту гонку. Создатель может объединить создание токена и покупки с множества свежих кошельков в «бандл» до пяти транзакций, каждая из которых может содержать несколько покупок; они исполняются вместе или не исполняются вовсе. Это позволяет одному участнику забрать значительную часть раннего предложения и гарантирует, что ни один сторонний снайпер не сможет вклиниться между созданием токена и его собственными скоординированными покупками.
- Создание новых адресов в большинстве блокчейнов почти ничего не стоит. Скрипт может за секунды сгенерировать тысячи уникальных пар публичных и приватных ключей, и каждая из них выглядит в блокчейне как отдельный холдер. Это открывает путь к сибил-атакам: один участник распределяет свои активы по множеству кошельков, чтобы замаскировать концентрацию или фармить награды, начисляемые на кошелёк, — например, аирдропы и голоса в управлении, — которые исходят из того, что за каждым адресом стоит отдельный человек.
- Выявление происходит задним числом. Инструменты вроде Bubblemaps анализируют граф финансирования этих адресов, прослеживая потоки средств до общего кошелька-источника. Если сто «независимых» холдеров получили стартовые средства с одного и того же биржевого аккаунта или с кошелька создателя, становится видно, что это один участник. Однако такой анализ проводится уже после того, как ценовое влияние произошло, а прибыль зафиксирована.
- Задача дизайна будущих запусков носит структурный характер: можно ли построить механизм, полностью исключающий ценообразование по принципу «кто первый»? Если каждый ордер в блоке получает одинаковую цену, быть первым внутри блока ничего не даёт (об этом — в одном из следующих уроков). Если награды зависят от баланса, а не от числа адресов, дробление на сибил-кошельки ничего не приносит.
- Комиссия с каждого перевода токенов без исключений для отдельных адресов или переименованных кошельков создаёт постоянные издержки на каждой стороне любой сделки. При вош-трейдинге, когда участник покупает и продаёт сам себе, чтобы имитировать объём, эта комиссия взимается дважды за каждый круг. Поскольку это реальная потеря капитала при каждом исполнении, экономический стимул создавать фиктивный объём резко снижается по мере роста ставки комиссии.
- Стратегии just-in-time (JIT) подключаются на одно мгновение, чтобы забрать выплату: в AMM — добавить ликвидность прямо перед крупной сделкой, получить с неё комиссию и сразу изъять ликвидность, забрав комиссию, которую заработали бы пассивные поставщики; с токенами-вознаграждениями — купить прямо перед распределением и продать сразу после. Комиссия и на входе, и на выходе делает такие круги дороже краткосрочной выплаты, если только эта выплата не необычно велика; дешёвый вход и бесплатный выход, наоборот, поощряют их.
- Статья Дж. Р. Дусера 2002 года об атаках Сивиллы показала, что системы, опирающиеся на подсчёт идентичностей, уязвимы для противника, который создаёт множество фальшивых идентичностей. В токеномике вознаграждения, распределяемые поровну на каждый кошелёк, провоцируют такой фарминг: один пользователь может создать десять кошельков и получить в десять раз больше вознаграждения при том же совокупном капитале. Это отрывает вознаграждение от реальной экономической доли и позволяет одному участнику доминировать в доходности без соразмерных вложений.
- Линейное пропорциональное распределение решает эту проблему, жёстко привязывая вознаграждение к размеру баланса. Если фонд вознаграждений распределяется пропорционально объёму владения, то разделение баланса на несколько кошельков даёт ровно ту же суммарную выплату, что и хранение в одном. Атакующий ничего не выигрывает от атаки Сивиллы, поскольку сумма вознаграждений остаётся неизменной вне зависимости от того, на скольких адресах лежат токены. Число идентичностей теряет значение; важен только капитал.
- Рассмотрим фонд вознаграждений в 10 000 единиц, распределяемый на общее предложение в 100 000 токенов, — каждый токен приносит 0,1 единицы. Один кошелёк с 1 000 токенов получает 100 единиц; десять кошельков по 100 токенов получают по 10 единиц каждый — снова 100 в сумме. Распределение не зависит от дробления адресов. Такая линейность делает атаки Сивиллы экономически нейтральными и вынуждает атакующих конкурировать реально вложенным капиталом, а не умножением идентичностей.
- Обратная сторона — подавление объёма. Комиссии снижают чистую доходность добросовестных трейдеров и при слишком высокой ставке могут убить рынок. Стандарт Solana Token-2022 поддерживает встроенные комиссии за переводы, а в EVM-сетях обычно полагаются на налоги на уровне протокола или логику смарт-контракта. SafeMoon, руководителям которого в 2023 году предъявили обвинения в мошенничестве, показывает, как налог может служить инсайдерам, если команда контролирует поступления от него. Разработчикам приходится искать баланс между сдерживанием и жизнеспособностью рынка.
Часть IАтаки при запуске: снайпинг, бандлинг и сибил-кошельки
Часть IIКомиссии, симметрия и вознаграждения, нейтральные к атаке Сивиллы
Ключевые факты
- Снайперы покупают токены в первом блоке после создания, чтобы получить самую низкую цену на бондинг-кривой.
- Бандлы до пяти транзакций с разных кошельков исполняются вместе или не исполняются вовсе.
- Сибил-атаки используют дешёвую генерацию адресов, чтобы выдать концентрацию у одного участника за множество независимых холдеров.
- Анализ графа финансирования позволяет задним числом связать разрозненные адреса с общим кошельком-источником.
- Награды, начисляемые на кошелёк, стимулируют дробить активы по множеству адресов, усиливая сибил-риск.
- Бандл из создания токена и первых покупок не позволяет сторонним снайперам вклиниться между ними.
- Комиссии и на входе, и на выходе в большинстве случаев делают краткосрочные стратегии «вошёл-вышел» дороже, чем они приносят.
- Линейное пропорциональное распределение вознаграждений делает разделение баланса между кошельками в рамках атаки Сивиллы экономически нейтральным.
- Дж. Р. Дусер описал атаку Сивиллы в своей статье 2002 года о пиринговых (P2P) системах.
- Стандарт Solana Token-2022 включает встроенную поддержку комиссий за переводы.
- Вош-трейдинг влечёт расходы на комиссии как при покупке, так и при продаже в каждом круге.
- Чрезмерные комиссии за переводы могут подавить добросовестный объём торгов вплоть до гибели рынка.
Упражнение девять, шесть, три, один
9СобратьПеречислите 9 различных механизмов запуска или способов распределения, используемых при развёртывании токенов. Укажите, что вознаграждает каждый из них: скорость, идентичность или предоставление ликвидности.
6СгруппироватьСгруппируйте 9 в 6 по тому, к чему каждый из них наиболее уязвим.
3Выделить главноеСведите 6 групп к 3 фундаментальным противоречиям дизайна, которые возникают при попытке уравновесить справедливость и устойчивость к атакам при запуске.
1КристаллизоватьНапишите одно предложение, сравнивающее, насколько трудно устранить преимущество скорости и преимущество владения множеством адресов.
Проверка фактов
Даты, цифры и утверждения были проверены по приведенным ниже опубликованным источникам.