Что такое блок в майнинге

Майнинг и как он работает: матчасть

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге
Привет, %username%!
Я расскажу и покажу как работает основа генерации денег в криптовалютах — майнинг. Как создается первый блок, новые блоки и как появляются деньги из ниоткуда.
Чтобы было проще понять, мы напишем свой импровизированный майнер для импровизированной криптовалюты HabraCoin.

Сначала упрощенный ликбез, куда без него.

Кошельки

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

Транзакция

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

Подтверждение

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

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

Цепочка блоков

Последовательность, в которой каждый следующий блок включает в себя Id предыдущего.

Начало

Итак, есть некоторое количество народа, можно один. Назовём его Хаброша. Он решает запустить свою систему криптовалюты HabraCoin.

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

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

Так же, в алгоритме HabraCoin указаны следующие вещи.

Ограничение скорости

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

Как этого добиться?

Если помните, все блоки состоят из нескольких полей. Мы берем эти поля, конкатенируем, получаем из них массив байт. Это массив байт отдаем хэш функции, получаем результат и смотрим: меньше то, что получилось с учетом текущей сложности, или нет?
Если нет, то изменяем этот массив байт до тех пор, пока не получим нужное значение. А именно:

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

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

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

Комиссия

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

Давайте смоделируем ситуацию и поможем Хаброше скрафтить какой нибудь блок.

Под спойлером программа (в виде Junit теста), которая ради приличия генерирует 2 случайных пары ключей, формирует какое то подобие транзакции (даже подписывает её, все по честному!), а потом ищет такую к ней добавку, чтобы первые 2 байта хэша были нулевыми. Типа сложность такая. Работает пару минут, а потом действительно выдает хэш, который можно быстро проверить, сконкатенировав байты транзакции и счетчика.

Пример получившегося блока:

1824B9ADF09908222CF65069FDE226D32F165B3CF71B7AA0039FDFEF75EAA61610909EBFFBAC023480FC87FCF640C4A
009B82C4A6D25A0F4B8A732AE54EF733E792681137BA378577DFDC2732D192DAF323966EAD4ADC9635D7A12EDD50E34
9F660622D186AF3C03BF7D265F2AA7EB125056F4BF45BE519E8B22B845B28065110000006400000142E5D667CB01CEE
EDD0AC15EC4C491819A99030BD5FEF7CD2B469F2B90BA13D7981EDCD0708353D13390B8564F496C44FAC2777B0AF79D
C94CBF36D0CC0F047E807889F34C4DC5FEB724699C257391F84F3DDD70B84F841D115F4EFEAF4E58779042F35257E5C
035046037DE740718D199A8F06AD7A58E37CCCD4CC5E95295DCC2C5F3C70847BD59FA57BCC5FF4B208F93948FCFD763
EC1E5C85B61C43EB64B77A9F53B28785D7DE2335333003260A0839D53927976751A8D8967B2BB325909D86E82BC4125
2A28ECF6F0E7476BB99B29585EB0E75410000

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

Источник

Как работает майнинг Bitcoin: самое простое объяснение

13 мая курс ВТС обвалился, когда Илон Маск объявил, что Tesla больше не принимает Bitcoin: мол, майнинг неэкологичен. Почему майнинг Bitcoin потребляет столько энергии — и как он вообще работает? Объясняем простым языком.

Каждые 10 минут — по загадке

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

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

Загадочный создатель Bitcoin Сатоши Накамото наладил систему таким образом, что решение криптографической задачи требует огромных вычислительных усилий, зато проверка на правильность совершается очень просто. Когда все майнеры в сети согласятся, что найденное число — правильное, новый блок присоединяется к сети — а система тут же выдает новую загадку. В среднем это происходит каждые 10 минут.

Данный алгоритм называется Proof-of-Work (PoW), то есть «доказательство работы». Понимать это можно так: транслируя потенциальные решения в сеть, майнер доказывает, что совершил вычислительную работу.

Тот, кто первым найдет заветное число — вернее, тот, чье решение первым признают правильным остальные, — получает в награду биткоины. В 2021 г. награда за блок составляет 6,25 ВТС.

Три загадочных слова: хешрейт, сложность и асики

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

На протяжении последних 10 лет хешрейт сети Bitcoin постепенно рос. Казалось бы: если все майнеры трудятся над одной и той же задачей, то с ростом их числа (т. е. суммарного хешрейта) нужно будет все меньше времени, чтобы найти решение. А вот и нет: сложность задач тоже повышается, так что в среднем на решение нужны все те же 10 минут. И наоборот: если много майнеров вдруг покинут сеть, сложность вскоре автоматически упадет.

На заре развития Bitcoin сложность была такой низкой, что майнить ВТС можно было на обычном компьютере. Теперь же для этого используются специальные устройства: ASIC, или Application Specific Integrated Circuit, что означает «интегральная схема особого назначения». Это микрочип, способный выполнять только один вид вычислений — зато крайне эффективно.

Проблема энергопотребления

Хешрейт современных «асиков» исчисляется в терахешах в секунду, то есть в триллионах хешей (решений). Для такой мощности эти устройства очень эффективны: один ASIC потребляет в разы меньше электричества, чем набор видеокарт (GPU) с таким же суммарным хешрейтом.

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

В этом парадокс алгоритма Proof-of-Work, и майнинг Bitcoin останется затратным до тех пор, пока не будет намайнена последняя монета — предположительно в 2140 г.

Стоит ли игра свеч?

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

11 месяцев, чтобы отбить первоначальную инвестицию — это много. Пожалуй, самый ценный вывод для обычного пользователя заключается в том, что майнинг — вовсе не легкий способ разбогатеть, каким его часто изображают. Напротив, это очень затратный вид деятельности, в котором профит никогда не гарантирован.

В качестве альтернативы майнингу ВТС на асиках часто предлагается майнинг других PoW-криптовалют на GPU (видеокартах). Действительно, сложность добычи таких монет, как Monero (XMR) или Ravencoin (RVN), во много раз ниже, чем у Bitcoin. Но не все так радужно с GPU-майнингом:

Информация о криптовалютах в интернете зачастую некорректна или слишком запутана. Чтобы пользователям было легче сделать первые шаги, портал MyFin и регулируемая криптобиржа FREE2EX запустили данную серию статей, которые помогут новичкам разобраться, где в криптоиндустрии правда, а где — просто громкие заявления. Не пропустите следующую публикацию!

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

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

*Партнерский материал. ООО «Пиксель Интернет» УНП: 590995582

Источник

Виды майнинга: как можно добывать криптовалюту? Все существующие способы

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

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

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

Быстрый старт

В настоящее время существует огромное количество различных видов майнинга криптовалют. Самый распространённый вид майнинга – на видеокартах (фермы на GPU) и на Асиках (специальное оборудование). Далее идет майнинг на процессоре, жестких дисках (HDD / SSD), облачный майнинг, мобильный майнинг, POS майнинг.

Обо всех типах майнинга мы подробнее поговорим далее в статье.

Посмотрите видео с нашего YouTube канала, в котором мы рассказали про все возможные виды майнинга, а также рассказали про историю появления первых майнинг оборудований

Зачем майнить криптовалюту?

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

Что такое майнинг криптовалюты?

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

Когда дело доходит до майнинга, золото и криптовалюта очень похожи.

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

Добыча криптовалюты аналогична, но вместо физической задачи машина (компьютер) решает вычислительные математические задачи, чтобы получить криптовалюту.

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

Теперь, когда вы разобрались с майнингом криптовалюты, давайте продолжим и посмотрим, какими способами вы можете добывать криптовалюту.

Виды майнинга криптовалюты

Заинтересованы в майнинге криптовалюты, но не знаете с чего начать? Есть сотни криптовалют которые предназначены для майнинга.

После регистрации по номеру телефона или email, у вас появится кошелек для Биткоина. Узнайте его адрес на вкладке “Принять криптовалюту”.

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

К слову, кошелек там будет не только для флагмана криптомира, но и для других монет.

Зная адрес, на кошелек можно отправить Биткоины.

После того, как они поступят, вы можете их продать на вкладке “Обмен”.

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

Стоимость будет автоматически рассчитана по текущему курсу после того, как вы введете количество продаваемых Биткоинов. Вы сразу будете видеть, сколько получите на счет. Продать можно не только за рубли, но также за доллары и евро.

После проведения операции обмена деньги поступают на счет в “Матби”. Затем их можно вывести на карты VISA\Mastercard, либо другими методами, в том числе без комиссии.

В случае, если у пользователя возникнут вопросы, то команда “Матби” подготовила подробную видеоинструкцию.

Итак, сначала выберите монету, которую вы хотите майнить. Затем, чтобы начать добычу, вам принципиально необходимо оборудование.

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

Различные типы оборудования, используемые в майнинге криптовалют

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

Вы не получите прибыли, если будете майнить монеты ASIC с использованием GPU или CPU. Но не волнуйтесь, есть сотни других монет, устойчивых к ASIC.

Например, Monero использует алгоритм RandomX Proof-Of-Work, который оптимизирован только для видеокарт и процессоров. Но что, если у вас нет графического процессора или какого-либо конкретного оборудования, но вы все еще заинтересованы в майнинге? Тут в игру вступает облачный майнинг.

Тип 1: облачный майнинг

Это единственный метод, при котором вы можете добывать любой тип криптовалюты, не вкладывая средства в оборудование.

Это позволяет пользователю добывать Биткойны и / или любые альткойны без необходимости покупки и обслуживания специального оборудования. Итак, как это работает?

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

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

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

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

Просто вбейте в Google «Cloud Mining» или «аренда оборудования для майнинга», и вы найдете несколько сайтов, предлагающих эту услугу. Проведите исследование и найдите лучший вариант, который соответствует вашим потребностям.

Также посмотрите наше видео про облачный майнинг:

Тип 2: ASIC-майнинг

Если вы хотите инвестировать в оборудование для майнинга основных криптовалют, таких как Биткойн, Эфириум, Litecoin и Dash, вам необходимо купить ASIC.

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

Например, вы не можете добывать Ethereum или Litecoin с помощью майнера Bitcoin ASIC. Для этих монет вам понадобится специальное оборудование.

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

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

Как только выйдет новый конкурентоспособный Асик, ваше старое оборудование станет просто пресс-папье. У ASIC нет другого варианта использования, кроме добычи этих конкретных монет определенного алгоритма.

Другая проблема заключается в том, что не все могут купить ASIC, так как периоды ожидания огромны.

Лишь немногие компании производят такие машины и продают их только партиями.

Это одна из причин, по которой большинство монет со средней и низкой капитализацией все еще остаются на GPU или CPU.

Тип 3: Майнинг на GPU

Если вы геймер или дизайнер, работающий с 3D-моделями, то, скорее всего, у вас есть графический процессор (видеокарта) на вашем ПК.

Используя свою видеокарту, вы можете добывать любые монеты. Но чтобы получать прибыль, вы должны находить и добывать только монеты, которые предлагают сопротивление ASIC (асик устойчивые монеты).

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

Но прежде чем вы начнете добывать определенную монету с помощью видеокарты, осознайте риски майнинга на рабочем ПК. Для этого Вы можете посмотреть видео (которое расположено не много выше) «Но прежде чем вы начнете добывать определенную монету с помощью».

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

Если вы хотите использовать свой графический процессор 24 x 7 для майнинга, не выполняйте майнинг с вашего ПК. Вместо этого соберите для этого отдельную ферму для майнинга на GPU, которую вы можете построить примерно за 3000 долларов.

Но проблема с майнингом на GPU в текущем сценарии заключается в том, что трудно получить рентабельность инвестиций, то есть окупаемость майнинг фермы будет довольно длительной.

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

Тип 4: Майнинг на CPU

В то время как майнинг GPU использует мощность GPU, майнинг CPU использует вычислительную мощность CPU для майнинга криптовалют.

Это был единственный вариант на заре Биткойна. Но в настоящее время вы редко встретите монеты, которые позволяют майнить их на CPU. Причина в том, что он очень медленный и менее энергоэффективный по сравнению с майнингом на GPU.

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

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

Тип 5: мобильный майнинг

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

Вы можете задаться вопросом: когда майнинг на центральном процессоре больше не является жизнеспособным, как возможен мобильный майнинг?

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

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

Как мы уже говорили, каждая монета использует определенный алгоритм, и каждое оборудование способно добывать определенный алгоритм.

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

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

Источник

Майнинг в блокчейн-сетях: как он работает

В начале января правительство Китая приказало «армии биткойн-майнеров» страны, которые генерируют 3/4 всей мировой криптовалюты, прекратить работу. Одной из главных причин такого решения стало слишком высокое количество электроэнергии, которое потребляют майнинговые фермы — сейчас на обеспечение безопасности биткойн-блокчейна и добычу монет уходит порядка 0,2% всего мирового энергопотребления.

Сегодня поговорим, почему майнинг потребляет такое количество энергии, зачем он нужен и как реализуется. Мы расскажем об алгоритме хеширования (SHA-256) и о том, почему майнеры «обращаются за помощью» к пулам.

Для чего нужен майнинг

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

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

В чем состоит работа майнеров

Майнеры занимаются тем, что подбирают значение хеша, которое бы подошло к транзакциям в блоке и позволило получить секретный ключ. Искомый хеш формируется на основании хеша предыдущего блока, случайного числа (nonce) и суммы хешей транзакций за прошедшие 10 минут. При этом он должен удовлетворять условиям системы: соответствовать заявленной сложности майнинга (Difficulty) и быть меньше целевой сложности (Target) — она определяет количество нулевых битов в начале искомого хеша.

Для вычисления сложности хеша можно использовать алгоритм с разложением в модифицированный ряд Тейлора, который приводится на страничке bitcoinwiki:

На момент написания статьи сложность блокчейн-сети составляет: 2874674234415.941, однако этот параметр пересчитывается через каждые 2016 блоков. Он увеличивается или уменьшается, чтобы поддержать среднюю скорость создания блоков (примерно 6 штук в час).

SHA-256

В качестве инструмента для хеширования в биткойн-блокчейне выбран алгоритм SHA-256. Далее, мы рассмотрим один из его раундов.

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге

/ Раунд SHA-256 для восьми входных слов / Wikimedia / kockmeyer / CC

Предположим, что на вход алгоритму подали восемь слов, обозначим их A, B, C… H. Функция Ma выполняет побитовые операции со словами A, B и C — если большинство полученных значений нули, она также вернет ноль, иначе — единицу.

Блок Σ0 трижды сдвигает слово A: на 2, 13 и 22 бита, а сформированные значения побитно складываются операцией xor. Блок Σ1 работает аналогично — сдвиги выполняются на 6, 11 и 25 бит.

Блок Ch — это функция выбора результирующего бита на основании битов в E. Если входное значение единица, то на выход поступит соответствующий бит слова F, иначе — бит слова G.

Красные квадраты на схеме — это блоки 32-битного сложения, которые генерируют новые значения для A и E. Весь цикл повторяется 64 раза, после чего информация оказывается надежно зашифрованной.

Для иллюстрации процесса вычисления хеша, приведем код на Python, который формирует хеш слов «Bl0Ckchain» и «blockchain»:

А вот проверка созданных хешей выполняется очень быстро, даже если на их создание ушло множество ресурсов:

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

Так как биткойн-протокол использует двойное хеширование, то задачей майнеров становится нахождение второго прообраза хеша x’ (имея первый прообраз x хеша y, где y=H(x)), который бы удовлетворял условию y=H(x’). Однако с целью упрощения задачи, майнеры ищут лишь частичный прообраз — H(x)/2^(n-k)=0. Здесь n — «размер» результата (n=256 бит для SHA256), а k — это фактор, отвечающий за количество нулей в результирующем хеше. Например, k=20 потребует проведения порядка одного миллиона попыток.

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

Майнинг — совместные усилия участников сети

Сложность решения блока чрезвычайно велика. Сейчас майнеры в биткойн-сети выполняют порядка 20 млн терахешей в секунду, и эта цифра растет. Для сравнения, одна видеокарта выдает порядка 30 мегахешей в секунду. Также в своем блоге инженер Кен Ширриф (Ken Shirriff) попробовал решить блок с помощью ручки и бумаги — его достижение было еще скромнее (0,67 хешей в день).

Что такое блок в майнинге. Смотреть фото Что такое блок в майнинге. Смотреть картинку Что такое блок в майнинге. Картинка про Что такое блок в майнинге. Фото Что такое блок в майнинге
/ Количество терахешей за секунду, по данным blockchain.info

Из-за выросшей (и постоянно растущей) сложности майнерам тяжело решать блоки в одиночку. Поэтому они объединяются в пулы, где делят работу по решению блока и награду. Пулы выдают майнерам задачи и следят за количеством выполненной работы. Чем больший вклад в решение блока внес майнер, тем большую долю награды он получит.

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

За организацию взаимодействия пула и майнеров отвечают специальные протоколы. Например, протокол Stratum (еще есть Getwork, Getblocktemplate и другие), который используется большинством пулов. В своем блоге Кен Ширриф приводит код, пересылаемый пулом при выдаче задания, который содержит всю необходимую информацию для начала работы над блоком.

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

По своей сути майнинг биткойнов напоминает своеобразную «гонку вооружений». В самом начале люди майнили криптовалюту с помощью CPU, затем мощности центрального процессора стало недостаточно, и индустрия перешла на GPU и специализированное оборудование ASIC.

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

Но подобная привязка к технике и «реальному миру» имеет свои недостатки. Как уже было отмечено, майнинг — достаточно «затратная» с точки зрения потребления энергии деятельность. На сегодняшний день биткойн-блокчейн расходует 48 ТВт/час в год, причем 30–40% энергии идет на охлаждение чипов.

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

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

Предлагаем вам еще несколько материалов о работе блокчейнов из нашего блога:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *