Нечестный майнинг: как он происходит (а он происходит) и как его выявить

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

В ответ на это развивается новая тенденция — формирование майнинг-пулов, когда группа «шахтеров» объединяется, чтобы добывать монеты общими усилиями.

Как утверждают исследователи, несмотря на децентрализацию, и, казалось бы, защищенную от мошеннических действий сеть биткоина, нечестные действия все же происходят. Как они это делают и как можно выявить селфиш-майнеров — в материале.

Selfish-Mine — это стратегия майнинга, которая позволяет объединившимся майнерам получать доходы, превышающие их мощности. Об этом в своем исследовании «Majority is not Enough: Bitcoin Mining is Vulnerable» пишут Итти Эйял и Эмин Гун. Я изучила это исследование и сложила информацию в полезный материал.

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

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

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

Система состоит из набора майнеров, у каждого из которых есть свои мощности. Каждый из них выбирает цепочку для майнинга и находит следующий блок по истечении времени, которое экспоненциально распределено. Майнинг-мощность пула — это сумма мощностей его участников, а его доход делится между участниками в соответствии с их конкретными мощностями. Доход пула — это ожидаемая доля от добычи блоков, которые были найдены и добавлены в общее число блоков в наиболее длинной цепочке.

Группа майнеров может сформировать пул, который ведет себя как один агент с централизованным координатором, придерживающимся определенной стратегии. Таким образом, по мнению исследователей, эти майнеры могут максимизировать свой доход, отклонившись от протокола. Selfish-Mine позволяет достаточно крупному пулу получать доход, превышающий его коэффициент мощности.

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

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

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

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

На данный момент возможны два исхода: либо честные майнеры обнаруживают новый блок в общедоступной ветке, аннулируя лидерство пула, либо pool добывает второй блок и расширяет свое лидерство на честных майнеров.

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

Более того, «эгоисты» захотят принять новых членов, чтобы усилиться. Следовательно, эгоистичный пул будет количественно возрастать, не встречая сопротивления со стороны какого-либо механизма. Когда эгоистичный или иной пул достигает большинства, он получает контроль над блокчейном. Мажоритарный пул может собирать всю выручку системы путем переключения на модифицированный протокол Биткойн, который игнорирует блоки, сгенерированные вне его.

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

Есть несколько признаков, которые помогут определить, что эгоистичный майнинг имеет место.

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

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

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

Система Биткойн, считают эксперты, была бы намного более надежной, если бы имела автоматизированный механизм, который может помешать эгоистичным майнерам. Исследователи предложили обратно совместимую модификацию Биткойна, которая обеспечит, чтобы пулы размером менее ¼ от общей мощности майнинга не могли выгодно заниматься эгоистичной добычей. Кроме тог, по их мнению, по крайней мере 2/3 сети должны представлять прослойку честных «шахтеров», чтобы препятствовать эгоистичному майнингу, поскольку простого большинства недостаточно.

Это также будет Вам интересно:

Источник

iMag.one - Самые важные новости достойные вашего внимания из более чем 300 изданий!