June 3, 2019

Что такое Биткойн-майнинг

Майнинг (mining, добыча) — деятельность по созданию новых структур (блоков в блокчейне) для обеспечения функционирования криптовалютной платформы. За создание очередной структурной единицы обычно предусмотрено вознаграждение за счёт новых единиц криптовалюты и/или комиссионных сборов от транзакций, включённых в этот блок.

Блокчейн — выстроенная по определённым правилам непрерывная последовательная цепочка криптографически связанных блоков с информацией. Заголовок каждого следующего блока основывается на предыдущем, что делает невозможным незаметное изменение записанный ранее информации.

Самый первый блок в цепочке — первичный блок (genesis block) — является исключение , так как у него отсутствует "родительский" блок.

Под информацией здесь понимается набор транзакций (переводов между адресами данной сети).

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

Помимо этих платежей каждый блок содержит важную техническую информацию:

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

Помимо этих платежей каждый блок содержит важную техническую информацию:

Заголовок предыдущего блока;

Хэш блока;

Хэш всех транзакций этого блока;

Nonce.

Информация это транзакции (платежи пользователей друг другу).

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

Помимо этих платежей каждый блок содержит важную техническую информацию:

once.

Nonce.

Что такое хэш

Чтобы понять, что такое хэш, для начала расскажем о хэшировании.

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

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

Другое свойство хэширования состоит в том, что из полученного хэша нельзя получить исходную информацию.

Важно заметить, что предугадать результат хэширования невозможно.

Существует множество различных алгоритмов хэширования. В Биткойне используется криптографический алгоритм, который называется SHA-256.

Алгоритм майнинга

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

Чтобы найти такой хэш требуется громадное количество проб и ошибок.

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

Тут и появляется специальное число, которое называется nonce. Майнер вписывает в поле nonce цифру “1” и хэширует блок. Если полученный хэш не удовлетворяет условиям, nonce меняется на “2” и блок ещё раз хэшируется. И так до тех пор, пока мы не получим хэш, отвечающий требованиям. Тут нет какого-либо алгоритма, используется обычный перебор.

Этот подход называется proof of work (доказательство работы). И полученный хэш как раз и служит доказательством затраченных усилий майнера на нахождение хэша.

Proof of work используется как метод для достижения согласия между участниками сети Биткойн по поводу признания блока соответствующим требованиям. Майнер предъявляет рассчитанный им хэш, на нахождение которого было затрачено большое количество ресурсов, остальные участники с лёгкостью проверяют этот результат проведя повторное хэширование с указанным числом nonce и после прохождения проверки, блок добавляется в цепочку блокчейн.

Этим перебором и занимаются все майнеры (точнее, их оборудование).

Сформированный блок дает майнеру, который его разгадал, определенное количество Биткойнов. Выпуск монет лимитирован – всего добыть можно только 21 млн. В 2009 году расшифровка давала сразу 50 BTC. Каждые 4 года данная сумма уменьшается вдвое и с 2017 за новый блок дают только 12,5 BTC. Причина ступенчатого уменьшения вознаграждения — желание снизить риск обесценивания Биткойна при активной добыче новых блоков.

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

Сложность задачи

Каждые 2016 блоков (при генерации одного блока примерно в 10 минут процесс занимает порядка 14 суток) в сети Биткойн усложняется задача – число нулей в начале хэша уменьшается или увеличивается. Уровень сложности формируется в соответствии с данными, которые получаются путем сравнения скорости нахождения сетью блоков в реальном времени и стандартных значений.

Если скорость выше стандартного значения – сложность растет, если наоборот – снижается. Сама сложность была реализована в сети, чтобы эмиссия монет происходила по заданной программе.

Но задачей заняты миллионы точек во всем мире. Что произойдет, если решение будет найдено одновременно?

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

Транзакция считается подтвержденной после того, как с момента ее отправки найдено три новых блока. 

Как осуществляется расчет сложности?

Для расчета сложности майнинга используется следующая формула:

Упрощенно уравнение сложности будет выглядеть следующим образом:

Эта формула может оказаться непростой для понимания, поэтому для контроля сложности можно использовать специальные ресурсы, на которых представлены соответствующие графики (Blockchain.comBitcoincity).

Оценивать сложность майнинга рекомендуется одновременно из нескольких источников, поскольку индикатор имеет динамический характер и данное значение со временем может меняться.

Виды майнинга

1. Индивидуальный (соло) майнинг.

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

Начинался майнинг с процессоров и видеокарт (это актуально и сейчас, однако менее прибыльно). Современный майнинг опирается на мощные «асики» — ASIC-процессоры.

2. Майнинг в пуле.

Пулы – это сообщество майнеров, которые объединяют свои мощности для достижения одной цели. Найденные блоки записываются в единую базу данных. Затем вознаграждение распределяется между пользователями.

3. Облачный майнинг.

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

Заключение

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