Вы здесь

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

Максимальный размер блоков в цепочках блоков биткоинов составляет 1 МБ. Сложность доказательства выполнения работы откалибрована таким образом, чтобы каждые 10 мин создавался 1 блок. Майнеры, как правило, стремятся максимально увеличить количество транзакций, которые они включают в блок, так как они получают комиссии за транзакции.

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

По логике с увеличением популярности Биткоин средний размер блока будет приближаться к своему пределу.

В таких условиях просто удивительно видеть множество пустых блоков, создаваемых при майнинге. Пустой блок не является абсолютно пустым, он содержит 1 транзакцию — coinbase-транзакцию (генерирующую монеты), которая назначает майнеру вознаграждение за майнинг (12,5 биткоина на момент написания данной статьи). Важно знать, что майнинг пустых блоков не проще, не дешевле и не быстрее, чем майнинг заполненных блоков.

Доли пустых блоков сильно различаются в зависимости от пула для майнинга. Например, пулы Bitfury, BitClub Network и Kano CKPool вообще не майнят пустые блоки.


Почему возникают пустые блоки?

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

Такой эффект при майнинге без проверки (майнинге SPV) можно наблюдать на странице цепочки блоков Kaiko, где сразу после нормального блока образуются пустые блоки, когда пул неподтвержденных транзакций (mempool) еще далеко не пуст.

Количество пустых блоков сокращается

 Количество пустых блоков сокращается

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

В число этих улучшений входят, помимо прочего, следующие:

  • Улучшение, которое дает возможность заранее частично выполнять вычисления, необходимые для проверки майнером всех транзакций в блоке (а не осуществлять это во время создания блока)
  • Улучшения, внесенные в конфигурацию сети ретрансляции, в том числе упрощение механизма (и соответственно ускорение) назначения приоритетов транзакциям, чтобы майнеру было проще решить, какие транзакции следует включить в блок
  • Bitcoin Core GetBlockTemplate — улучшение, благодаря которому отдельный майнер запрашивает структуру блока для оптимизации майнинга. Более подробную информацию можно найти здесь

Это плохо?

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

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

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

Pascal Gauthier

Категория: 
Криптовалюты
3
Ваша оценка: Нет Средняя: 3 (2 оценок)
16652 / 0
Аватар пользователя admin
Публикацию добавил: admin
Дата публикации: ср, 07/20/2016 - 22:18

Что еще почитать: