Как работает биткоин. Часть 3

МАЙНИНГ БИТКОЙНОВ

Итак, транзакция Алисы теперь распространяется по биткойн-сети. Она не станет частью структуры данных блокчейна до тех пор, пока не будет проверена и включена в блок в результате выполнения процесса, называемого майнингом (mining). Доверительные отношения в биткойн-системе основаны на математических вычислениях. Транзакции объединяются в блоки (blocks), доказательство корректности которых требует огромного объема вычислений, но для проверки принятого блока необходим относительно небольшой объем вычислений. Процесс майнинга служит достижению двух целей в биткойн-системе:

узлы майнинга проверяют правильность (validate) всех транзакций на соответствие правилам консенсуса (consensus rules) биткойн-системы. Следовательно, майнинг обеспечивает защиту транзакций биткойнов, отвергая недопустимые или неправильно сформированные транзакции;

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

Майнинг позволяет достичь почти идеального баланса между стоимостью и вознаграждением (компенсацией). Для решения математических задач в процессе майнинга расходуется электроэнергия. Успешный майнер будет получать вознаграждение или компенсацию (reward) в форме новых биткойнов и сборов за выполнение транзакций. Но вознаграждение можно получать только в том случае, если майнер действительно правильно проверил все транзакции на соответствие правилам консенсуса (consensus). Этот динамический баланс обеспечивает защиту биткойнов без какого-либо центрального органа управления.

Неплохой аналогией для описания процесса майнинга является крупномасштабное соревнование по решению головоломок судоку (sudoku), которое возобновляется всякий раз, когда кто-нибудь находит решение, при этом сложность головоломок автоматически регулируется таким образом, чтобы на поиск решения требовалось около 10 минут. Представьте себе гигантскую головоломку судоку размером в несколько тысяч строк и столбцов. Если я покажу вам решенную головоломку, то вы сможете проверить правильность моего решения достаточно быстро. Но если головоломка содержит несколько заполненных квадратов, а остальные пусты, то решение потребует огромного объема работы. Сложность судоку можно регулировать изменением ее размера (увеличивая или уменьшая количество строк и столбцов), но проверка решения может оставаться относительно простой задачей даже при больших размерах. Головоломка, используемая в биткойн-системе, основана на криптографических хэш-значениях и обладает похожими характеристиками: решение ее несравнимо труднее, чем проверка (которая значительно проще), а сложность можно регулировать.