- Что такое хэш биткоина?
- Что такое хэш?
- Что такое хэш биткоина?
- Хешрейт биткоина: что это, от чего зависит и как меняется с течением времени
- Что такое хешрейт биткоина
- График хешрейта биткоина
- Сложность майнинга биткоина. Взаимосвязь с хешрейтом
- Факторы, влияющие на хешрейт биткоина
- Динамика изменений хешрейта биткоина
- Хеширование биткоина: основа функционирования блокчейна
- Что такое хеширование биткоина
- Значение криптографической хеш-функции в хешировании и ее свойства
- Свойство 1: Детерминированность
- Свойство 2: Быстрое вычисление
- Свойство 3: Стойкость к атаке поиска прообраза
- Свойство 4: Стойкость к коллизии
- Свойство 5: Лавинный эффект
- Свойство 6: Высокий показатель энтропии
- Хеширование биткоина: структура данных
- Указатели
- Связанные списки
- Хеширование в сети биткоин
Что такое хэш биткоина?
Если вы интересуетесь биткоином, то наверняка слышали о криптографии и хэш-алгоритмах. Криптография и алгоритмы хэширования обеспечивают безопасность блокчейну биткоина. Они являются строительными блоками современной криптовалютной индустрии. В этой статье мы подробно поговорим о криптографических алгоритмах хэширования.
Для начала важно иметь общее представление о том, что такое хэш-функция и что она делает.
Что такое хэш?
Алгоритм хэширования берет данные любого произвольного объема (числа, алфавиты, медиафайлы) и преобразует его в фиксированную буквенно-цифровую строку. Размер фиксированного бита может варьироваться (например, 64-битный или 128-битный или 256-битный) в зависимости от используемой хэш-функции.
И этот выход фиксированного размера — это то, что называется хэшем. Другими словами, хэш является криптографическим побочным продуктом хэш-алгоритма.
Хэш-алгоритм обладает определенными уникальными свойствами:
- Он генерирует уникальный результат (хэш).
- Это односторонняя функция.
Математика, лежащая в основе алгоритма хэширования, гарантирует, что нет способа генерировать исходные данные из созданного хэша. Это означает, что хэш функционирует только в линейной прогрессии. Если прибегнуть к аналогии, то вы не сможете создать реальный человеческий палец, имея лишь отпечаток.
Вот почему хэш можно рассматривать как «цифровой отпечаток» данных, обрабатываемых хэш-функцией. Следуя логике, один и тот же хэш будет генерироваться только из одних и тех же входных данных. Однако, если вы даже незначительного измените входные (пробел или запятая), то на выходе хэш полностью изменится.
Блокчейн биткоина в свои механизме использует свойства криптографической хэш-функции для достижения консенсуса.
Что такое хэш биткоина?
Блокчейн биткоина использует SHA-256 (Secure Hash Algorithm). В 2001 году этот алгоритм был разработан Агентством национальной безопасности США.
Лежащий в основе биткоина алгоритм proof of work основывается на SHA-256. Используя его, биткоин-майнеры решают сложные математические задачи, чтобы добавить блоки в блокчейн. Биткоин-блоки добавляются путем проверки хэшей на основе лотереи.
Чтобы успешно добавить блок, майнет должен хэшировать заголовок блока таким образом, чтобы он был меньше или равным 256-битной последовательности. Хэш заголовка блока должен быть 256-битной буквенно-цифровой строкой и начинаться с нулей. Количество нулей вначале строки изменяется с изменением сложности майнинга и происходит после каждых добавленных 2016 блоках.
Майнеры стремятся найти конкретный хэш, изменяя небольшую часть заголовков блока, которая называется «nonce». «Nonce» всегда начинается с «0» и увеличивается каждый раз для получения требуемого хэша.
Шансы получить этот конкретный хэш, который начинается с множества нулей, очень низки. Поэтому майнеры предпринимают множество попыток, изменяя nonce.
И для этого требуется огромное количество вычислительных мощностей и аппаратных ресурсов, что доказывает, что значительная работа выполняется прежде чем добавить любой отдельный блок. Вот почему это называется «доказательством работы».
Таким образом, независимо от того, какой майнер первым получит правильный хэш биткоина, он выиграет в лотерею и получит вознаграждение в размере 12,5 BTC.
Источник
Хешрейт биткоина: что это, от чего зависит и как меняется с течением времени
Несмотря на то, что сфера майнинга биткоин существует уже более 10 лет, она продолжает стабильно пополняться новичками, которые желают заработать на добыче главной криптовалюты.
При этом им в первую очередь нужно освоить азы технологии, которые позволят выбрать необходимое оборудование и оценить его продуктивность. В частности, стоит обратить внимание на такой параметр, как хешрейт биткоина, и его взаимосвязь с другими показателями.
Что такое хешрейт биткоина
Хешрейт биткоина (от англ. hashrate — частота хеширования) — это параметр, характеризующий скорость решения математических задач устройствами, которые задействованы в добыче новых блоков в сетях, работающих на алгоритме Proof-of-Work (PoW, доказательство выполнения работы).
Другими словами, это мера производительности оборудования, которое используется для майнинга.
Если же говорят о хешрейте биткоина, то речь идет о суммарной вычислительной мощности всех подключенных к сети Bitcoin майнинговых устройств.
Поскольку математические задачи, которые необходимо решать для генерации новых блоков, называются хешами (hash), то измеряется хешрейт в хешах в секунду (H/s). Вычислительная мощность сети биткоина в последние 10 лет с момента появления криптовалюты стремительно росла, производительность оборудования также постоянно увеличивалась и поэтому периодически складывалась необходимость в использовании более удобных единиц измерения для выражения этого показателя — например, терахеш/сек (1 TH/s = 1000000000000 H/s) и петахеш/сек (1 PH/s = 1000 TH/s). В настоящий момент хешрейт биткоина измеряется в экзахешах (1 EH/s = 1000 PH/s).
График хешрейта биткоина
Возможность посмотреть текущее значением мощности сети Bitcoin и историей этого параметра за предыдущие периоды, предоставляется различными криптоаналитическими онлайн-сервисами вроде BitInfoCharts.com и Blockchain.com. Перейдя на них вы сможете просмотреть актуальный график хешрейта на сегодня.
Сложность майнинга биткоина. Взаимосвязь с хешрейтом
Еще одним важным для майнеров показателем является сложность сети биткоина — параметр, отображающий, насколько трудоемкой является задача по выполнению математических расчетов, необходимых для нахождения нового блока и получения за это награды в виде монет BTC.
Сложность является динамической характеристикой, которая неразрывно связана с хешрейтом. Все дело в том, что колебания суммарной мощности сети приводят к изменению времени нахождения новых блоков, которое в идеале должно равняться 10 минутам.
Если взглянуть на график этого показателя, например, за последние полтора года, можно заметить, что он полностью повторяет изменения хешрейта.
Таким образом Bitcoin-сеть саморегулируется, не допуская нарушения баланса между количеством подключенных к ней мощностей, трудоемкостью вычислительных операций и прибыльностью майнинга.
Например, если цена биткоина падает до значений, при которых добыча монет становится нерентабельной, часть майнеров отключается от сети. При этом хешрейт биткоина падает, сложность также пропорционально уменьшается, а оставшиеся в сети участники начинают получать вознаграждение такого размера, который мотивирует их продолжать свою деятельность. Как только курс существенно повысится, количество майнеров снова начнет повышаться, провоцируя рост вычислительных мощностей и сложности.
Оба этих показателя, сопоставленные с ценой биткоина, являются основными параметрами, на которые ориентируются при оценке энергоэффективности и рентабельности используемого для майнинга оборудования.
Что будет с майнингом в 2020 году и с хешрейтом главной криптовалюты, мы рассказывали в одном из наших роликов:
Биткоин Майнинг 2020. Заработок. Есть ли смысл майнить?Факторы, влияющие на хешрейт биткоина
Основываясь на вышеперечисленных зависимостях, можно сделать вывод, что на хешрейт биткоина в основном влияют:
- Количество и производительность подключенного к сети оборудования;
- Курс биткоина;
- Тарифы на электроэнергию (как и предыдущий фактор, влияют на рентабельность используемых для майнинга устройств);
- Уровень популярности биткоина (изменяется в зависимости от направления ценового тренда);
- Выход на рынок более технологически совершенного оборудования.
Динамика изменений хешрейта биткоина
В первый год существования биткоина мощности сети были крайне скудными по сравнению с сегодняшними показателями. На тот момент хешрейт измерялся в мегахешах/сек (MH/s), т.е. в миллионах хешей.
Поначалу этот показатель поддерживался за счет оборудования разработчиков и горстки приближенных к ним энтузиастов. Из-за этого в первый месяц 2009 года хешрейт биткоина был очень нестабильным (4,5–10 MH/s). Затем до июня мощность сети стала более стабильной и в основном равнялась 5–6, изредка выходя за эти рамки.
В июне хешрейт резко упал и в течение полугода пребывал в диапазоне 1–4,5 MH/s. В декабре на фоне запуска первой торговой Bitcoin-площадки New Liberty Standard и расширения круга осведомленных о первой криптовалюте лиц наконец произошел резкий скачок до 10 MH/s, который положил начало стабильно стремительному увеличению вычислительных мощностей сети.
Следующие полтора года наблюдался экспоненциальный рост хешрейта, спровоцированный популяризацией биткоина путем упоминания в некоторых интернет-СМИ и запуска первой полноценной криптобиржи MtGox в июле 2010-го.
Прибавление мощностей затормозилось вблизи отметки 10 TH/s лишь после взлома той самой биржи в июне 2011 года. Спустя полтора месяца хакеры атаковали кошелек MyBitcoin, после чего курс биткоина до декабря отправился в даунтренд, за время которого хешрейт сократился до 7 TH/s.
Весь 2012 год мощность сети плавно растет (пропорционально движению курса BTC) и к моменту первого халвинга биткоина (28 ноября) достигает 29 TH/s. Уполовинивание награды спугнуло часть майнеров, спровоцировав падение хешрейта до 18 TH/s всего за 2 недели.
За первую половину 2013-го мощности сети 10-кратно увеличиваются и достигают значения 200 TH/s (за это время Bitcoin дорожает с $14 до $266). Затем за оставшееся до конца года время хешрейт растет еще стремительнее и достигает 17 PH/s (к этому моменту биткоин торгуется по $1240).
Весь 2014 год, несмотря на спровоцированный новым взломом и закрытием биржи MtGox медвежий тренд на рынке, происходит плавный рост вычислительных мощностей сети Bitcoin до уровня 300 PH/s.
В январе 2015 о потере 19000 BTC из-за хакерской атаки заявляет криптовалютная биржа Bitstamp. Это событие задает тон на весь год — курс биткоина консолидируется в коридоре $200–300, а хешрейт медленно идет к отметке 400 PH/s.
В конце октября Высший суд ЕС освобождает Bitcoin-держателей от налогов на продажу криптовалюты, что провоцирует рывок стоимости BTC до $500. Это дает толчок новой волне популяризации биткоина и, как следствие, ускоряет рост мощностей сети до 770 PH/s к концу года.
В конце января 2016-го хешрейт впервые достигает значения 1 EH/s (1000 PH/s). За этот год биткоин дорожает вдвое (с $500 до $1000). С вычислительными мощностями происходит то же самое — к декабрю они удваиваются и хешрейт преодолевает отметку 2 EH/s. Интересно, что на произошедший в середине 2016 года халвинг майнеры не обратили внимания и продолжили наращивать производительность своего оборудования.
В первой половине 2017 года наблюдается ускорение прироста хешрейта (идет активная подготовка к «тому самому буллрану»). К августу он доходит до 7 EH/s и затем падает до 4,3 EH/s из-за перехода части майнеров на добычу Bitcoin Cash — монеты, появившейся в результате хардфорка биткоина.
За следующие три месяца мощности сети увеличиваются почти втрое (11,5 EH/s). К этому моменту курс биткоина достигает $8000 на фоне обширного освещения в СМИ и ожидающегося хардфорка SegWit2x, после которого происходит кратковременная коррекция цены до $5800 и снижение хешрейта до 4,9 EH/s. До конца года курс Bitcoin продолжает стремительно расти до $20000, привлекая все больше внимания майнеров, которым всего за месяц удается нарастить вычислительные мощности до 15 EH/s.
2018-й начинается с негативных новостей о закрытии криптобирж в Южной Корее, сопровождающих начало даунтренда, из которого рынок в итоге не сможет выбраться больше года. Несмотря на это хешрейт биткоина продолжает безостановочно расти вплоть до октября, достигая 58–60 EH/s. Объясняется это тем, что майнинг остается выгодным покуда Bitcoin торгуется выше $6000.
Ситуация меняется 14 ноября, когда курс биткоина резко уходит под названный уровень и продолжает падать вплоть до середины декабря, остановившись на отметке $3100. К этому моменту от сети отключается значительная часть майнеров, не выдержавших напора медведей, и вычислительные мощности сети уменьшаются до 35 EH/s.
В течение первых четырех месяцев 2019 года, пока биткоин консолидировался под уровнем $4000, а затем неожиданно поднялся до $5000–5600, хешрейт немного подрос и удерживался в диапазоне 40–50 EH/s.
В середине мая стоимость BTC наконец снова оказалась выше $6000, а затем и вовсе достигла $8000, вернув веру в «туземун». Майнеры начали активнее возвращать в сеть свое оборудование и суммарные вычислительные мощности впервые вернулись к максимальному значению прошлого года — 58 EH/s.
На момент написания этой статьи биткоин пытается преодолеть отметку $9700, а хешрейт вырос до 65 EH/s. Учитывая статистику прошлых лет, рост вычислительных мощностей должен продолжиться. Разница может быть лишь в его темпе, который будет зависеть от дальнейших движений курса биткоина.
Что такое хешрейт биткоинаИсточник
Хеширование биткоина: основа функционирования блокчейна
Если вы интересуетесь технической стороной криптовалют и тем, как работает блокчейн, то хеширование биткоина — это одна из основных тем, которая даст вам ключ к пониманию того, как устроены эти новые peer-to-peer технологии.
Что такое хеширование биткоина
Хеширование биткоина — это преобразование массива данных любого объема в исходную строку фиксированной длины. Для более легкого понимания назовем их Input (входящий массив данных) и Output (полученный хеш, т.е. уже упомянутая выше строка фиксированной длины). В отношении криптовалют, таких как, например, Bitcoin.
Транзакции биткоина, которые являются основным массивом данных, проходят через алгоритм криптовалют (в основу работы Bitcoin положен алгоритм хеширования SHA-256), который в результате дает исходную строку фиксированной длины. В этом и заключается принцип работы хеширования биткоина.
Давайте на небольшом примере посмотрим, как устроен процесс хеширования биткоина. Для преобразования массива информации в хеш мы применим уже упомянутый выше алгоритм хеширования SHA-256 (Secure Hashing Algorithm):
Как видите, вне зависимости от длины и объема Input на выходе всегда получается одинаковый Output, который имеет фиксированную длину в 256 бит. Это имеет решающее значение, особенно когда нужно преобразовать в хеш большие и очень большие массивы информации, как например, множество транзакций в сети Bitcoin или Ethereum.
Успешное применение хеширования в блокчейне и криптовалютах объясняется уникальными свойствами криптографической хеш-функции, о которой мы и поговорим в следующем разделе.
Что такое хешированиеЗначение криптографической хеш-функции в хешировании и ее свойства
Криптографические хеш-функции — это особый вид хеш-функций, которые обладают свойствами, позволяющими сделать использование хеш-функций в криптовалютах безопасным и надежным. Ниже мы подробно рассмотрим все эти свойства.
Свойство 1: Детерминированность
Это означает, что независимо от того, сколько раз вы будете преобразовывать Input в Output, на выходе всегда получится один и тот же хеш. Данное свойство хеш-функции играет очень важную роль, поскольку в противном случае было бы невозможно отслеживать исходные данные.
Свойство 2: Быстрое вычисление
Хеш-функция должна быстро возвращать исходные данные. В противном случае система просто не будет эффективной. Особенно это актуально для популярных криптовалют, в блок которых входит большое количество транзакций.
Свойство 3: Стойкость к атаке поиска прообраза
Суть свойства стойкости к атаке поиска прообраза состоит в следующем: если мы знаем значение H (A), в котором A — Input, а H (A) — Output, т.е. хеш, то нахождение значения A является практически неосуществимой задачей. Здесь стоит сделать акцент именно на слове «неосуществимо», а не на «невозможно». Ведь работа майнеров доказывает, что при определенных обстоятельствах эта задача становится выполнимой. Давайте рассмотрим небольшой пример.
Вы используете телефон, который отображает не номера, а их хеши, созданные в системе алгоритма хеширования SHA-256. Вы знаете, что ваш номер известен только 7 людям, номера которых вы также знаете. Чтобы узнать, от какого абонента вы пропустили звонок, вам нужно просто узнать хеши этих семи номеров, а потом каждый из них сравнить с хешем номера, который отобразился в списке пропущенных звонков.
Однако такой метод поиска Input актуален лишь при работе с небольшими массивами данных, но когда у нас просто огромный объем информации, получить Input путем применения данного метода (он называется «brute force» — метод «грубой силы») становится очень сложной задачей. Данный математический метод заключается в переборе всех допустимых вариантов Input, их преобразование в Output и сравнение с имеющимся хешем. Сложность нахождения правильного решения напрямую зависит от объема исходной информации.
В случае применения метода brute force есть три варианта развития событий:
- Самый оптимистичный — вам повезло и вы получите правильный результат с первого раза, однако, это практически нереально, если смотреть на ситуацию с точки зрения математики.
- Реалистичный — Input будет найден примерно после перебора половины всех существующих вариантов.
- Самый негативный — исходные данные вы найдете только, преобразовав последний из имеющихся вариантов в хеш.
Однако в случае с криптовалютами даже реализация самого реалистичного варианта очень маловероятна, поскольку здесь речь идет об очень большом количестве возможных вариантов Input.
Свойство 4: Стойкость к коллизии
Вероятность нахождения двух Input, которые бы имели один и тот же Output после прохождения процесса хеширования биткоина, должна быть максимально приближенной к нулю. Теоретически это может быть возможным, однако время, которое было бы затрачено на поиск двух одинаковых прообразов должно измеряться десятками лет. Данное свойство имеет очень важное значение, когда мы говорим о вопросе цифровой безопасности в криптовалютах. В криптографии способность противостоять возможности поиска второго прообраза называется стойкостью к коллизии.
В этом контексте, чтобы понять как работает хеширование биткоина, стоит упомянуть такое явление как «парадокс дня рождения». В чем его суть?
Прежде всего, нужно сказать, что шанс встретить двух незнакомых людей, которые бы родились в один и тот же день, равен 0,27%. Однако если в одном помещении одновременно находятся 366 людей, то шанс, что как минимум двое из них родились в один и тот же день, возрастают до 100%. Очевидно, что чем большее количество людей находится в одной группе, тем более высока вероятность того, что два человека будут иметь день рождения в один день.
«Парадокс дня рождения» используется в криптографической атаке, которая называется атакой «дней рождения» и в которой метод brute force применяется для поиска двух Input с одинаковым Output. «Парадокс дня рождения» помогает создать коллизию, потому что метод «грубой силы» при применении «парадокса дня рождения» становится более эффективным, чем без него. Однако несмотря на это в системе хеширования Bitcoin данный вид атаки малоприменим, поскольку шанс создать коллизию — примерно один к триллиону.
Свойство 5: Лавинный эффект
Данное свойство в процессе хеширования биткоина означает, что внесение даже незначительных изменений в Input приводит кардинальному изменению Output, т.е. хеша. Посмотрим на простой пример:
Как видите, хеши одной и той же фразы кардинально отличаются. И при этом все, что мы сделали — просто изменили регистр двух символов.
Данное свойство криптографических хеш-функций играет одну из самых главных (если не самую главную) ролей в обеспечении безопасности и надежности блокчейна. Каждый блок содержит в себе хеш предыдущего, и чтобы изменить данные одного блока, придется изменить данные предыдущего — и так по цепочке вплоть до самого первого. Как можно догадаться, это практически нереализуемо.
Свойство 6: Высокий показатель энтропии
Данное свойство означает, что хеши массивов данных должны быть максимально распределены в системе в процессе хеширования, т.е. обладать высоким показателем энтропии (энтропия — в информатике это мера неопределенности ситуации).
Рассмотрим небольшой пример. Так, у нас есть уравнение Y = H (k | x). Так, если Y является Output, а значение k обладает высоким показателем энтропии, то найти такое значение x (Input), которое бы удовлетворяло уравнению, будет практически невозможно.
«Высокая энтропия» означает состояние, при котором значение выбрано из такого широкого круга всевозможных вариантов, что попытки угадывания методом рандомного подбора не имеет никаких шансов на успех. Например, число, которое находится в рамках от 1 до 10, обладает низким показателем энтропии, в то время как число, которое находится между 1 и 2^256 имеет высокий показатель энтропии.
Если принять во внимание описанное выше, то можно сказать, что криптографическая хеш-функция превращает процесс подбора исходных данных для злоумышленников в игру в рулетку, т.е. шанс найти правильный Input должен быть очень низким, однако при этом каждый Input должен всегда иметь неизменный Output.
Хеширование биткоина: структура данных
Структура данных — это способ хранения данных. В блокчейне структура данных, задействованных в процессе хеширования, представлена двумя видами элементов: указателями и связанными списками.
Указатели
Указатели в программировании — это переменные, которые ссылаются на другие переменные, вне зависимости от вида языка программирования. Вместо того чтобы хранить числовые значения переменных, указатели содержать лишь своего рода «ссылку» на них. Как можно понять из названия, указатели «показывают путь» к расположению других переменных.
Например, выражение int b = 100 означает, что есть некая переменная b, которая содержит в себе целое числовое значение 100.
Связанные списки
Связанные списки имеют общие черты со структурой блокчейна, в которой каждый блок включает в себя данные предыдущего. В хешировании биткоина связанные списки функционируют по такой схеме:
Указатели — это часть структуры данных, они знают адрес следующего блока, входящего в общую цепочку. Стоит сказать, что последний блок имеет нулевой указатель, которому не присваивается никакой значение до того момента, пока не будет создан следующий блок в цепочке.
Блокчейн состоит из связанных между собой блоков, каждый из которых имеет хеш-указатель — это особый вид указателей, которые содержат ссылку на предыдущий блок. Хеш-указатели добавляют адрес предыдущего блока только после прохождения исходного массива данных через алгоритм хеширования биткоина — это позволяет сделать связь надежной и защищенной.
Однако генезис-блок не содержит этот указатель. В его состав входит только указатель, который связывает его со вторым блоком цепи. Этот особый хеш-указатель содержит хеш-данные genesis-блока.
Такая система неуязвима перед атаками злоумышленников, которые могут попытаться изменить данные в блокчейне, потому что любое изменение в Input неизбежно приводит к изменениям в Output. Если была совершена попытка атаки на конкретный блок, участники сети (ноды) сразу же получают оповещение об этом и отклоняют запрос на внесение изменений. Это гарантирует неизменность блокчейна и безопасность системы. Однако если бы каждый блок не имел свой уникальный хеш, его отслеживание было бы невозможным.
Информация, которая содержится в заголовке каждого блока, отвечает за его идентификацию. Каждый заголовок включает в себя следующие элементы:
- Номер версии блокчейна (необходимо для отслеживания обновлений и изменений в протоколе);
- Временную метку UNIX;
- Сложность сети (определяется количеством нулей, которые соответствуют текущему уровню протокола Proof-of-Work);
- Хеш-указатель;
- Nonce (значение, которое ищут майнеры для того, чтобы создать блок и присвоить ему правильный хеш);
- Хеш корня Меркла, который состоит из хешей транзакций, входящих в конкретный блок.
Каждый из этих элементов играет очень важную роль в создании блока. Например, nonce очень важен, потому что майнеры перебирают множество вариантов, прежде чем один из участников сети найдет правильное значение и создаст правильную строку блока. В частности, факт нахождения nonce раньше других гарантирует майнеру получение вознаграждения в виде криптовалюты.
Дерево Меркла отвечает за упорядочивание и хранение транзакций внутри блока. Дерево Меркла выглядит так:
В самом низу древовидной структуры дерева Меркла находятся листовые узла (на приведенной выше картинке это L1, L2, L3 и L4). Выше них расположены несколько уровней дочерних узлов — это все узлы, которые находятся ниже корневого узла. На картинке это узлы Hash 0-0, Hash 0-1, Hash 1-0, Hash 1-1 и Hash 0, Hash 1. В самом верху находится корневой хеш дерева Меркла (в нашем случае он называется Top Hash).
Древовидная структура корня Меркла помогает отследить расположение определенной транзакции и получить доступ к ее данным, как, например, время создания, объём, адрес отправителя и получателя и т.д.
Биткоин: Криптографические хэш-функцииХеширование в сети биткоин
Говоря простым языком, майнинг биткоина — это поиск новых блоков, которые после нахождения добавляются в блокчейн. Этим и занимаются майнеры — они обеспечивают беспрерывный рост блокчейна. Для этого используются огромные вычислительные мощности — каждый майнер делает свой вклад в увеличение общего хешрейта биткоина (вычислительной мощности) . От показателя общего хешрейта зависит скорость проведения операции хеширования биткоина каждым майнером — чем выше общий хешрейт сети, тем больший объем вычислительной работы за меньшее количество времени должен сделать майнер.
Майнеры используют вычислительные ресурсы для решения загадки, зашифрованной в строке, которая представляет собой набор цифр, который всегда начинается с множества нулей (чем больше нулей, тем выше сложность сети). Они должны найти правильное число nonce, добавление которого сформирует правильную строку блока. Процесс подстановки nonce в строку длится до тех пор, пока не будет найдено верное решение. Иногда количество попыток может доходить до миллионов раз. Тот майнер, который первым найдет верное решение, добавляет блок в блокчейн и получает за это вознаграждение.
С математической точки зрения данный процесс описывается следующей формулой: H (k | x) = Y, в которой K — это nonce, x — хеш блока, а Y — текущая сложность сети. Процесс подбора nonce рандомный и основан на применении метода brute force. Поэтому майнинговое оборудование непрерывно генерирует рандомные сроки до тех пор, пока не будет найдено верное значение nonce. На данный момент майнеры имеют 10 минут на добавление каждого нового блока, что обеспечивает низкую вероятность возникновения коллизий и создания блоков-орфанов (потерянных блоков, которые не были добавлены в блокчейн, например, в том случае, когда nonce был найден почти одновременно несколькими майнерами или при попытке хакеров внести изменения в транзакции).
Хеширование биткоина играет решающую роль в майнинге, поскольку оно лежит в основе работы алгоритма Proof-of-Work, который используется в сети Bitcoin, Ethereum и многих других криптовалют. Хеширование биткоина обеспечивает безопасность и надежность системы, предохраняет ее от создания коллизий и возможного взлома. Без хеширования не существовало бы блокчейна, по крайней мере, в том виде, в котором мы его имеем сегодня.
Источник