Алгоритмы майнинга криптовалют: как они работают
Многие современные криптовалюты, например, Bitcoin построены на алгоритме консенсуса PoW (англ. Proof-of-Work – доказательство работы). Именно такой принцип построения блокчейна позволяет добывать криптовалюту при помощи майнинга – специального процесса вычислений, за который майнеры получают вознаграждение.
Алгоритм майнинга криптовалют – один из ключевых механизмов, обеспечивающих работу PoW-блокчейнов. С его помощью информация из предыдущего блока с транзакциями кодируется и передается в следующий блок – таким образом выстраивается вся цепочка блоков в блокчейне.
В этой статье я подробно расскажу про алгоритм майнинга, принципы его работы и рассмотрю наиболее известные алгоритмы.
Что такое алгоритм криптовалютного майнинга?
Алгоритм майнинга криптовалюты – это набор правил, по которым производится вычисление хэша. Хэш – это строка из символов, которая служит ссылкой с текущего блока блокчейна на предыдущий и, таким образом, связывает всю цепочку блоков. Для получения хэша используются специальные хэш-функции, например, SHA-256 – для Bitcoin’a, Scrypt – для Litecoin и Dogecoin, Equihash – для Zcash и т.д.
Важно понимать, что алгоритм майнинга и хэш-функция – не одно и то же. Алгоритм майнинга – это набор правил вычислений, а хэш-функция – метод, при помощи которого вычисления производятся. Однако в криптовалютной сфере эти два понятия часто используются как синонимы. Далее в статье я буду делать так же.
Наиболее популярные алгоритмы майнинга
Существует огромное количество алгоритмов майнинга криптовалют. Далее я остановлюсь только на самых популярных алгоритмов.
SHA-256 – алгоритм Bitcoin
SHA-256 – это хэш-функция семейства функций SHA-2, разработанная Агентством национальной безопасности США в 2002 году. Ее основными техническими параметрами являются: ограничение на количество кодируемой информации (число транзакций в блоке ограничено), необратимость (исходные данные предыдущего блока невозможно получить, расшифровав хэш) и ограничение длины полученного хэша (для SHA-256 – 256 бит).
Криптовалюты, использующие алгоритм SHA-256: BTC, BCH, NMC, PZM, LCC и другие.
Ethash – алгоритм Ethereum Classic
Ethash использовался для расчета хэша в Ethereum. После перехода сети на алгоритм консенсуса PoS (англ. Proof-of-Stake – доказательство владения) в сентябре 2022 года, главной криптовалютой с алгоритмом Ethash стал Ethereum Classic. Ethash продолжает развитие идей алгоритма Даггера-Хошимото, авторства Виталика Бутерина и Таддеуса Дрийи, унаследовав многое от своего предшественника. Отличительными особенностями алгоритма являются высокие требования к оперативной памяти и поддержка графических процессоров.
Криптовалюты, использующие алгоритм Ethash: EТС, CLO, QKC, EXP, WHL и другие.
Scrypt – алгоритм майнинга Litecoin и Dogecoin
Scrypt – один из первых алгоритмов, разработанных в попытке улучшить и оптимизировать SHA-256. Алгоритм Scrypt относится к семейству KDF-функций (c англ. Key Derivation Function – функция формирования ключа). Такие алгоритмы формируют ключи (для криптовалют – хэш предыдущего блока) на основе некоторой исходной информации (для криптовалют – список транзакций в блоке). Основное отличие Scrypt от похожих функций – высокие требования к использованию памяти вычислительного устройства.
Scrypt считается менее сложным алгоритмом майнинга, чем, например, SHA-256. Он позволяет снизить энергопотребление из-за меньшего количества операций расчета хэша, работает быстрее (например, в сети Litecoin блок формируется в 4 раза быстрее, чем в Bitcoin) и дает возможность устанавливать более низкую комиссию за проведение транзакций в блокчейне.
Криптовалюты, использующие алгоритм Scrypt: LTC, DOGE, SYS, NLG, MONA и другие.
Equihash – алгоритм майнинга Zcash и Komodo
В основе алгоритма Equihash лежит процесс поиска решений для обобщенной задачи дней рождений. Хэш-функция была разработана в 2016 году. Как и Scrypt, Equihash требователен к памяти вычислительного устройства и некоторое время считался ASIC-резистентным алгоритмом. Хэш-функция имеет несколько связанных параметров для настройки, которые позволяют разработчикам установить сложность, время добычи и объем необходимой для решения задачи памяти. Таким образом, можно контролировать время создания блока и его размер.
Криптовалюты, использующие алгоритм Equihash: ZEC, BTG, ZEN, KMD, BEAM и другие.
X11 – алгоритм майнинга Dash
Алгоритм X11 был разработан в 2014 году, чтобы решить одну из наиболее серьезных проблем криптовалют на базе PoW – постепенную централизацию сети владельцами ASIC-майнеров. X11 состоит из 11 хэш-функций, которые по очереди и в случайном порядке применяются к значению хэша. На сегодняшний день X11 cчитается одним из самых сложных алгоритмов добычи криптовалюты. Есть продвинутые версии – X12, X13, X14 и прочие (число после “X” обозначает количество используемых хэш-функций).
Криптовалюты, использующие алгоритм X11: DASH, BLU, RTM, SYNX, HYP и т.д.
Cryptonight – алгоритм майнинга Bytecoin
Cryptonight – один из самых популярных алгоритмов майнинга. Развивался как часть алгоритма CryptoNote, появившегося в 2012 году. Часто выбирается разработчиками из-за способности противостоять добыче криптовалюты при помощи ASIC-майнеров и оптимизации для майнинга на центральных процессорах ПК. Одной из основных особенностей Cryptonight является его скорость – хэш можно вычислять очень быстро. Правда, при этом сильно загружается кэш-память центрального процессора.
Cryptonight использует алгоритм шифрования AES (англ. Advanced Encryption Standard – улучшенный стандарт шифрования), который считается очень надежным способом кодирования информации. Из-за этого хэш-функция часто используется в проектах, которые уделяют повышенное внимание конфиденциальности и безопасности.
Криптовалюты, использующие алгоритм Cryptonight: BCN, BDX, ETN, CCX, XMV и другие.
RandomX – эволюция CryptoNight
RandomX – продвинутый алгоритм майнинга, созданный комьюнити блокчейна Monero с целью противостоять растущим возможностям ASIC-майнеров. Первая версия появилась в 2019 году. В основе алгоритма лежит версия Cryptonight, использовавшаяся для обеспечения работы XMR. RandomX оптимизирован под добычу криптовалюты на CPU. Поддерживает два режима майнинга, повышенную защиту от несанкционированного майнинга, использует хэш-функции семейства Blake, генераторы паролей и симметричное шифрование AES. RandomX один из немногих алгоритмов, прошедших сторонний аудит компаний в сфере кибербезопасности, подтвердивший его надежность.
Криптовалюты, использующие алгоритм RandomX: XMR, BBPP, QRL.
Сравнительная таблица для алгоритмов майнинга
Алгоритм майнинга | Криптовалюты с поддержкой алгоритма | Можно добывать на ASIC | Энергоэффективность |
---|---|---|---|
SHA-256 | BTC, BCH, NMC, PZM, LCC и т.д. | Да | Средняя |
Ethash | EТС, CLO, QKC, EXP, WHL и т.д. | Да | Высокая |
Scrypt | LTC, DOGE, SYS, NLG и т.д. | Да | Средняя |
Equihash | ZEC, BTG, ZEN, KMD, BEAM и т.д. | Да | Средняя |
X11 | DASH, BLU, RTM, SYNX, HYP и т.д. | Да | Высокая |
Cryptonight | BCN, BDX, ETN, CCX, XMV и т.д. | Да | Высокая |
RandomX | XMR, BBPP, QRL | Нет | Высокая |
Виды алгоритмов консенсуса
Алгоритмы консенсуса задают правила, по которым узлы распределенной сети определяют, что новый блок в блокчейне можно считать истинным. Выше в статье уже упоминались алгоритмы консенсуса PoW и PoS – это два основных типа таких алгоритмов. Рассмотрим их подробнее.
Proof-of-Work (PoW)
Алгоритм консенсуса, который для получения и подтверждения решения (значения хэша) требует выполнения работы по расчету этого хэша. Это позволяет закрыть предыдущий блок с транзакциями в блокчейне и получить на него ссылку (хэш), который затем запишется в новый блок. Процесс вычислений называется майнингом, а узлы блокчейна, выполняющие вычисления – майнерами. За свою работу майнеры получают вознаграждение в виде криптовалюты той сети, в которой производят вычисления.
Proof-of-Stake (PoS)
PoS стал логичным развитием PoW. Алгоритм консенсуса с доказательством доли не требует расчетов хэша. Вместо этого в рамках блокчейна выбираются узлы-валидаторы, которые хранят на своих адресах определенное количество криптовалюты и постоянно подключены к сети. За обеспечение работы блокчейна в таком виде валидаторы, как и майнеры, получают вознаграждение в виде криптовалюты сети.
Заключение
Алгоритмы майнинга используются в криптовалютах, которые работают на алгоритме консенсуса PoW. Существует большое количество алгоритмов майнинга, самые популярные из которых SHA-256, Scrypt, X11 и его разновидности, Cryptonight и его разновидности. Алгоритмы отличаются типами решаемой задачи, уровнем затрат энергии на решение задачи, механизмами шифрования и многими другими параметрами. При этом нужно отличать алгоритмы майнинга и алгоритмы консенсуса. Самые популярные алгоритмы консенсуса – PoW и PoS. Их основное отличие в том, что в PoW нужно рассчитывать значение хэша при помощи алгоритмов майнинга.
FAQ
- Выберите криптовалюту для майнинга;
- Соберите нужный сетап для ее добычи;
- Выберите метод майнинга (соло, в пуле, в облаке);
- Скачайте (если необходимо) и настройте майнинговое ПО;
- Запустите майнинг.
Например, текущие выплаты в сети Монеро практические достигли своего минимума в 0.6 XMR за блок, а в апреле 2024 произойдет ближайший халвинг BTC (уменьшение выплат вдвое), после которого вознаграждение майнерам снизится до 3.125 BTC за блок.
При этом, например, текущая архитектура мем-коина DOGE не предполагает ни ограничений на выпуск монет, ни уменьшения выплат майнерам. Однако фактически никто не может гарантировать, что какая-либо криптовалюта будет добываться вечно.