Брошенные блоки

Что называют блоком?

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


Что такое брошенный блок?

     Брошенный блок (по-английски stale blocks) в официальной терминологии Bitcoin Core означает блок, не являющийся частью основной цепи.

 


Как блок становится брошенным?

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


Что собой представляют блоки-сироты и как они образуются?

     Блоки-сироты (на английском orphan blocks) – это блоки, у которых неизвестен «родительский блок», то есть на данный момент он не является обработанным нодой. Из другого определения: это блоки, не имеющие известного предка в самой длинной цепочке.

     В сообществе майнеров есть разногласия по поводу этих определений. Например, некоторые считают, что “orphan”-ом является блок, не вошедший в основную цепь по причине опережения его другим блоком. Например, так пишет ресурс Blockchain.info. Мы за основу берем традиционную терминологию. Как правило, «родительские» связи блока-сироты устанавливаются гораздо позже и только спустя определенный промежуток времени блок все же подтверждается, занимая свое место в сети. А вот уже брошенные или сдвоенные блоки навсегда остаются ненужными, при этом они остаются вне основной цепи Биткоин.

     Примечание автора:

Нода (на английском пишется как node) -это узел. Оно означает любой компьютер, подключенный к Биткоин-сети, в котором используется p2p протокол. Сеть блокчейна конструктивно и состоит из таких узлов.


Почему брошенные блоки не любят майнеры?

     Здесь все понятно: производя одновременно по блоку, один из майнеров рискует не получить своей награды, если сеть выберет не его блок. Кроме того, брошенные блоки негативно сказываются и на безопасности цепи. Из-за них сеть Блокчейн становится более уязвимой для хакерских атак, наиболее распространенной из которых в данной ситуации является атака 51%.


Интересное мнение

     Тема блоков активно обсуждается в сети, и есть очень интересные мнения. Грамотно по этому вопросу высказался ведущий разработчик Blockbid Бернард Пех. Он рассказал о возможных действиях злоумышленников: «Если хакер контролируют внушительную долю мощности хэширования, он всегда находится на шаг впереди, потому что имеет преимущество перед добычей следующего блока». Далее он объяснил, в чем же заключается профит: он может вместо передачи блока сразу в основную цепь, сделать это во время добычи нового блока. Но чтобы осуществлять подобные манипуляции, надо вовремя реагировать на развитие событий и внедрять блок таким образом, чтобы опережать своих оппонентов.


Что в действительности делают злоумышленники?

     Хакер создает параллельную сеть, которую в состоянии контролировать самостоятельно.  Когда она достигает внушительных размеров по длине, протокол Биткоина выводит ее в статус приоритетной, и это развязывает руки. Злоумышленнику становятся посильными даже откаты транзакций. Что это значит? Он может признавать даже подтвержденные транзакции недействительными и заниматься повторным расходованием средств. Такая централизация очень опасна, потому что технически не является слишком сложной. На сегодняшний день любой майнер (не обязательно хакер) может пользоваться подобными методами и извлекать из этого выгоду, если ему удастся контролировать значительный объём вычислительных мощностей сети.


Истоки появления концепции «Эгоистичного майнинга»

     Впервые о такой возможности упомянули в 2013 году исследователи Корнельского университета. Такая концепция получила очень оригинальное название «Эгоистичный майнинг». Два человека из исследовательской группы - Гюн Сирер и Иттай Эяль - заявили, что майнеры могут зарабатывать значительно больше, если будут объединяться в группы. Чтобы получать максимальную выгоду, они должны скрывать новейшие из сгенерированных блоков, в результате этого будет создаваться собственная ветвь. С технической стороны она будет представлять собой не что иное, как обычные «брошенные блоки».


Интересные особенности «Эгоистичного майнинга»

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


Каким образом может сработать сценарий атаки 51%?

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

     Примечание автора:

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


Обсуждение проблемы брошенных блоков

     Существует проблема возникновения брошенных блоков в контексте их размеров. Ее суть заключается в том, что при увеличении размеров блоков Биткоина, увеличивается время на их обработку. Такое положение вещей неизбежно приведет к увеличению доли брошенных блоков. Об этом еще в 2015 году говорил Расти Рассел, являющийся членом команды Blockstream. Он сделал замечание майнерам и обрисовал возможное будущее в негативном ключе, выразив мнение, что майнеров не заботит репутация биткоина, и они будут продолжать сознательно делать централизацию. Он рассказал, что пулы регулярно занимаются организацией атак, и особо крупные игроки применяют свои мощности, чтобы делать двойные траты. Им удается украсть тысячи биткоинов, и Рассел приводит реальные примеры, например, атаку на GHash.IO. Он выразил мнение, что, если крупные блоки технически можно будет использовать против слабых майнеров, крупные майнеры не упустят возможности поживиться.


Немного статистики

     Авторитетный сайт Blockchain.info приводит интересную статистику касаемо брошенных блоков. Согласно ей, наибольшее их количество наблюдалось во временной промежуток с марта 2014 года по июль 2017 года. Примерное количество брошенных блоков в неделю тогда составляло по 2-3 штуки. На данный момент в каком-то количестве они тоже присутствуют, в этом уверяет пользователь Reddit. Он говорит, что при сломанном чатре, его ноды примерно каждые 500-1000 блоков получали брошенные блоки. Как уверяет пользователь с никнеймом statoshi, это продолжалось на протяжении полугода.


Много ли брошенных блоков сегодня?

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


Как Fibre повлиял на сокращение брошенных блоков?

     Основным преимуществом Fibre является ее сверхвысокая скорость через волокно, поэтому она передает блоки по сети абсолютно без задержек, тем самым снижая вероятность возникновения брошенных блоков. Несмотря на то, что протокол не был внедрен в клиент Bitcoin Core, он может использоваться пользователями, которые имеют полную ноду Биткоин на своих устройствах. Люди из блокчейн-сферы не случайно резко выступают против увеличения блоков и кэша, ведь именно это приводит к возникновению большого количества slate blocks. Поэтому FIBRE является настоящей панацеей от этой болезни Биткоина.


Что говорит по этому поводу создатель сети Биткоин?

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


Интересные аналогии от Крега Райта

     1. Ковка стали.

     Райт провел аналогию обработки транзакций с ковкой стали. Он даже сделал сравнение брошенных блоков с железом, которое необходимо для производства стали. По его мнению, блоки-сироты в данной ситуации являются углеродом, который вводят в железо, чтобы сделать биткоин стальным. Он считает, что майнеры выражают недовольство брошенными блоками, так как теряют деньги, но самой системе они практически не вредят. Райт даже утверждает, что брошенные блоки не мешают майнерам зарабатывать, и говорит, что мнение о том, что с ними нужно бороться, в корне не верно. Им также было отмечено, что фиксить такие блоки также не рекомендуется, ведь это приведет к необходимости фиксить всю систему. Самое интересное, что действия, направленные на починку таких блоков, приведут к полному коллапсу Биткоина. Его точка зрения основана на том, что Биткоин и должен быть в какой-то степени неэффективным, это задает тон майнингу и заставляет майнеров приспосабливаться по принципу здоровой конкуренции. Видеть ситуацию, основываясь только на краткосрочную перспективу, очень опрометчиво, как и в любом бизнесе, считает он.

     2.Охота на оленей

     Райт провел еще одну аналогию про взаимоотношение майнеров на примере трактата Жана Жака Руссо «Рассуждение о происхождении и основании неравенства между людьми». Суть этого трактата такова: если охотники совместно охотятся на оленя и рядом возле одного из них будет пробегать заяц, то один из охотников без зазрения совести переключится на зайца и будет охотиться, пока не убьет. В такой ситуации его мало волнует, что его друзья охотники упустят добычу, главное, что на его столе сегодня будет еда. Поэтому, особенно в бизнесе, всех интересует только личная нажива и мало кого беспокоит благосостояние других людей. Глобальную проблему он видит именно в том, что это привносит раздор и разногласия в ряды майнеров. При этом биткоин устроен таким образом, что наиболее интересной всегда является именно погоня за оленем. Все усилия опытных майнеров направлены на увеличение мощностей и подключаемости, то есть легкости вступления в игру новых майнеров. Именно эти действия повышают децентрализацию. Как становится понятным, описывая погоню за зайцем, Крег имел в виду наиболее эгоистичный и материально выгодный способ, в то время как образование децентрализованной сети он описывал как совместную охоту на оленя.


Решение от Крега Райта

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

Поделиться статьей в социальных сетях: