Как устроен майнинг и кто такие майнеры?⛓⚙ ⚙ ⚙ ⛏

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

В двух словах майнинг сводится к подбору числа в служебном поле блока nonce. Такому, чтобы хеш от всего блока удовлетворял текущему критерию сложности генерации новых блоков. Напpимер, чтобы он начинался с трех нулей подряд (получится что-то вроде 000413224AF6B6D3505DD1819D02491C34508DA7A4DC6A9AD48A8F7E08E2F7B). В алгоритме майнинга каждого альткойна есть свои детали и задействованы разные функции хеширования.

Процесс называется «майнинг», поскольку нaпоминает работу шахтера в карьере: в поисках алмазов надо перелопатить тонны пустой породы.

Технический взгляд:

У каждого блока есть заголовок, состоящий, из 80 байт в следующем порядке: версия блока, хеш предыдущего заголовка блока, специально вычисленный хеш всех транзакций, называемый деревом Меркла (Merkle root), времени генерации блока, сложность сети на момент майнинга и числа nonce.

Майнер генерирует SHA-256 хеш от заголовка блока, который хочет добавить в блокчейн, получая некоторое число и сравнивая его с текущим target-значением сети биткоин, которое и описывает сложность сети. SHA-256 хеш (обычно) — это большое число 2 в степени 256, но бывают исключения, основанные на теории вероятности. Target — это так же большое число, но в степени меньше, например, сложность в самом первом блоке, сгенерированном самим Сатоши была 2^224, для того, чтобы найти хеш с такой сложностью требуется перебрать около 4.5 миллионов хешей, чем ниже степень сложности – тем больше хешей нужно перебрать для нахождения нужного и соответственно тем больше сложность.

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

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

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

КриптоГномы

©CryptoRelax 2019