Читаем без скачивания Больше денег: что такое Ethereum и как блокчейн меняет мир - Виталий Дмитриевич Бутерин
Шрифт:
Интервал:
Закладка:
Например, недавно китайская платформа Bihu опробовала такую модель: чтобы мотивировать пользователей создавать контент, она запустила механизм вознаграждения лучших постов монетами. Работает это примерно так: если пользователь платформы держит токены KEY, он может голосовать ими за статьи. «Проголосовать» можно k раз в день, и «вес» каждого голоса пропорционален количеству токенов, которыми проголосовал пользователь. Статьи с наибольшим количеством голосов попадают на более заметные места платформы, а их авторы получают вознаграждение в KEY, примерно пропорциональное количеству голосов, поддержавших статью. Это очень упрощенное описание, и в действительности механизм содержит некоторые нелинейности, но на его базовый принцип работы они существенно не влияют. Ценность KEY определяется тем, что его можно по-разному использовать внутри платформы, но особенно тем, что часть доходов от рекламы уходит на покупку и сжигание KEY (именно за такой подход – вместо создания еще одного внутреннего токена – проект заслуживает особой похвалы!).
Подобный дизайн далеко не уникален: многие прибегают и к похожим, и к совершенно другим механизмам, чтобы подтолкнуть пользователей к созданию онлайн-контента. И в данном случае эту конкретную платформу уже активно используют.
Несколько месяцев назад в сабреддите /r/ethtrader, посвященном трейдингу на Ethereum, появилась схожая экспериментальная функция: за популярные комментарии пользователи еженедельно получают токены – так называемые пончики. Сумма награды пользователя пропорциональна количеству голосов у его комментариев. На эти пончики можно купить право определять содержимое баннера в шапке сабреддита, а также голосовать в опросах сообщества. Однако здесь есть отличия от схемы с KEY: когда A поддерживает Б и Б получает за это вознаграждение, оно не будет пропорционально запасу монет А, и голоса всех аккаунтов Reddit будут весить одинаково.
Такого рода эксперименты, цель которых – мотивировать пользователей создавать качественный контент, избегая при этом известных проблем, типичных для донатов/микропожертвований, крайне ценны. Недостаточное поощрение пользовательского интернет-контента – серьезная проблема общества в целом, и то, что с помощью дизайна механизмов криптосообщества делаются попытки ее решить, не может не радовать. Но, к сожалению, эти системы также уязвимы для атак.
ГОЛОСОВАНИЕ ЗА СЕБЯ, ПЛУТОКРАТИЯ И ВЗЯТКИ
Описанную выше модель можно было бы «взломать» следующим образом. Предположим, какой-либо богатый пользователь приобретает N токенов, и в результате каждый из k голосов этого пользователя дает получателю вознаграждение в размере n × q (вероятно, q – очень небольшое число вроде 0,000001). Этот пользователь создает сокпаппетов[52] и голосует за них, получая через них вознаграждение в размере N × k × q. Затем система просто сворачивается вокруг каждого пользователя с «процентной ставкой» k × q за этот период, и больше механизм ничего не выполняет.
Разработчики Bihu, по-видимому, предвидели это и добавили к механизму суперлинейную логику, по которой статьи, поддержанные бóльшим количеством KEY, получают непропорционально бóльшую награду. Предположительно это должно стимулировать продвижение самых популярных постов вместо голосования за себя. Такая практика – добавлять суперлинейности, чтобы голосование за себя не подрывало всю систему, – характерна для систем управления с голосованием монетами. Большинство схем DPoS имеют ограниченное количество слотов для делегатов, и пользователи, не набравшие достаточного количества голосов для попадания в один из слотов, получают нулевое вознаграждение, что дает аналогичный эффект. Но и у таких решений есть два слабых места.
▒ Они субсидируют плутократию, поскольку у очень богатых людей и картелей будет все еще достаточно средств для раскрутки своих постов голосованием за себя.
▒ Их можно обойти, подкупив других пользователей, чтобы они массово голосовали за конкретного кандидата.
Сценарий с подкупом может звучать надуманно (кто здесь хоть раз брал взятку в реальной жизни?), но в зрелой экосистеме он гораздо реалистичнее, чем кажется. Как правило, подкуп в среде блокчейна прикрывается эвфемизмами: для операторов это не взятка, а «пул ставок», который «делится дивидендами». В иных случаях взятки просто выдают за что-то другое: представьте себе криптовалютную биржу, которая предлагает нулевую комиссию и тратит силы на создание невероятно качественного пользовательского интерфейса, но при этом даже не пытается получить прибыль; вместо этого она использует средства, внесенные пользователями, для участия в различных системах голосования монетами. Также неизбежно найдутся люди, для которых внутригрупповой сговор – совершенно нормальное явление. Вспомним хотя бы недавний скандал с участием EOS DPoS.
Наконец, возможна «негативная взятка», когда участников шантажом или угрозами вынуждают действовать внутри механизма определенным образом.
В рамках эксперимента /r/ethtrader сообщество опасалось, что люди начнут покупать пончики, чтобы влиять на голосования по вопросам управления, и поэтому решило допускать к участию в голосовании только заблокированные (то есть не подлежащие продаже) пончики. Но для совершения атаки даже не обязательно тратиться на пончики: их можно арендовать (эту атаку можно рассматривать как своего рода скрытую взятку). Если злоумышленник уже держит ETH, он может использовать их в качестве залога на платформе вроде Compound, чтобы получить кредит в виде определенного токена и использовать эти средства на свое усмотрение, в том числе для участия в голосованиях. Когда токены выполнят свою задачу, их можно выменять обратно и вернуть залог – и все это даже без секундного риска изменения цены токена, с помощью которого злоумышленник только что повлиял на голосование, даже если механизм голосования включает временную заморозку (как, например, в Bihu). В каждом случае на удивление трудно избежать проблем из-за взяток и доминирования участников с хорошими связями и деньгами.
ИДЕНТИФИКАЦИЯ
Некоторые системы пытаются смягчить плутократические аспекты голосования монетами за счет системы идентификации. В случае системы пончиков /r/ethtrader, хотя голосования по вопросам управления и проводятся с помощью монет, механизм, определяющий, сколько пончиков (то есть монет) вы изначально получите, основан на аккаунтах Reddit: 1 голос с 1 аккаунта Reddit = N заработанных пончиков. В идеале система идентификации должна работать так, чтобы получить одну идентификацию было относительно легко, а много – трудно. В системе с пончиками в /r/ethtrader используются учетные записи на Reddit, в устройстве CRL-финансирования Gitcoin[53] – учетные записи на GitHub. Но идентификация, по крайней мере в ее сегодняшнем виде, – вещь хрупкая…
Лень сооружать огромный стеллаж с телефонами? Пожалуйста, есть и такой вариант.
Не лишним будет напомнить: сомнительные сайты могут вас обмануть (а могут и не обмануть). Изучайте их как можно внимательнее
Пожалуй, провести атаку через тысячи поддельных марионеточных аккаунтов даже проще, чем заморачиваться с подкупом людей. Если вы думаете, что решить эту проблему можно через повышение безопасности за счет перехода к идентификации на государственном уровне, имейте в виду, что специализированные преступные организации давно к этому приспособились и, даже если ликвидировать их незаконных представителей, враждебные правительства