Алгоритм майнинга криптовалюты Ethash (эфириума)
Майнинг криптовалют захватил весь мир после молниеносного восхождения биткоина до 20000$. После этого на рынке появились десятки других монет (альткоинов), которые быстро набрали силу. Умельцы из всех стран начали сооружать майнинг-машины, чтобы не упустить свой кусок от этого пирога. Все что для этого необходимо – мощная видеокарта и программное обеспечение, через которое будут выполняться все вычисления.
Что такое майнинг Ethereum
Майнинг – это процесс добавления блока транзакций в блокчейн криптовалюты.
Ethereum, как и Bitcoin, использует технологию защиты от злоупотребления услугами proof-of-work (PoW). Майнинг является жизненно необходимым условием для PoW, так как майнеры Ethereum (вычислительные машины, использующие необходимое программное обеспечение) тратят время и вычислительные силы для создания транзакций.
Алгоритм майнинга Ethereum
Каждая криптовалюта имеет уникальный алгоритм майнинга, который и отличает ее от всех остальных. У эфира это Ethash.
Ethash – это алгоритм майнинга, использующий систему PoW, на котором основана вся сеть Ethereum. Чтобы лучше понять процесс работы Ethash, необходимо разобраться в его предшественнике – Dagger-Hashimoto.
Dagger-Hashimoto был разработан, чтобы выполнять две основные задачи:
1. Недоступность для ASIC-майнинга.
2. Высокая эффективность и прозрачная работа.
Название алгоритма показывает, что в его создание заложен фундамент от двух других алгоритмов. Они описаны ниже.
Dagger
Алгоритм был придуман Виталиком Бутериным (Виталий Дмитриевич Бутерин) в 2014 году. Он использует продвинутые структуры данных, чтобы построить большой массив информации. Изначально алгоритм занимал чуть более 1 Гб памяти, но в последнее время значение увеличилось до 4-5 Гб.
Hashimoto
Алгоритм, который был разработан пользователем Thaddeus Dryja. Его главной целью является блокирование ASIC-машин для майнинга.
Объединяя эти два изобретения, мы получаем единый алгоритм, который позволяет сконструировать систему майнинга, сложную для ASIC-машин, чтобы эффективно имплементировать данные, и безопасную для использования.
Устройство работы Ethash
Используя алгоритм Dagger-Hashimoto, команда Ethereum вскоре презентовала личный алгоритм Ethash, который сильно отличается от предшественника, сохранив от него только фундаментальные принципы.
Алгоритм майнинга Ethereum включает следующие процессы:
1. Мнемонический код генерируется на основе предыдущих блоков, вплоть до самого первого.
2. Данный код используется для генерации 16 мБ случайного кэша.
3. Кэш, в свою очередь, используется для создания более 4 GB структуры данных, которая обновляется каждые 30 000 блоков.
4. Майнинг начинается, как только продвинутая структура данных создана. В процессе создания блока выбираются случайные значения из структуры данных, которые объединяется с данными транзакций из сети Эфириума.
5. Последний этап генерирует процесс, который создает отдельные части данных, ускоряющих верификацию блока транзакций.
Особенности Ethash
· Зависимость от оперативной памяти, так как алгоритм использует много кодируемых частот. Это защитная мера от ASIC-машин и фундаментальный элемент для функционирования Ethash.
· Алгоритм хорошо совместим с графическими процессорами, что позволяет максимально эффективно использовать их мощность и емкость, быстрее производить все вычисления, сохраняя всю структуру информации с временными данными в памяти.
· Быстрая система верификации. Комбинация цифр, созданная из 16 мБ случайной кэшированной информации, позволяет просто, быстро и надежно выполнять проверку транзакций. Процесс занимает всего 30 секунд.
Достоинства и недостатки алгоритма
Достоинства:
1. Код находится в открытом доступе, что позволяет каждому разобраться и понять принцип его работы.
2. Блокировка ASIC (Application Specific Integrated Circuits) майнинга.
ASIC-машины – это оборудование, используемое на майнинг-фермах. Они создаются на основе интегральных схем, специально разработанных для майнинга криптовалют. Такое оборудование имеет намного большую мощность и вычислительную способность, чем обычные компьютеры. ASIC-машины берут на себя львиную долю майнинга монет, тем самым децентрализуя всю систему, что влечет за собой снижение безопасности криптовалюты.
Поэтому команда Ethereum в 2018 году добавила «брикетирование» ASIC-оборудования. Это означает, что при попытке такого майнинга ASIC-машины будут бесполезны или и вовсе выйдут из строя.
3. Высокая скорость создания блоков и добавления их в блокчейн.
Недостаток:
Объем структуры данных Эфириума на сегодняшний день составляет 3,95 ГБ памяти графического процессора. Это значит, что вскоре майнинг с видеокартами с 4 ГБ памяти будет невозможен. Это сократит число майнеров по всему миру.
Блокчейны, которые используют Ethash
Главная криптовалюта, которая использует данный алгоритм, – Ethereum. Ethash был разработан и улучшен именно в этом проекте, после чего его начали использовать и другие.
Ethereum Classic, который является ответвлением от Ethereum, также использует данный алгоритм. Этот проект разработчики задействуют как полигон для испытания обновлений Ethash. К примеру, сейчас у компании Ethereum стоит задача уменьшить объем своей структуры данных (которая составляет 3,95 Гб) и при этом не потерять майнеров. Они попробовали снизить объем Ethereum Classic до 2,9 ГБ и посмотреть, что из этого выйдет. Результат оправдал ожидания. Теперь у разработчиков есть решение, как уменьшить объем занимаемой памяти без потери пользователей.
Помимо прямых наследников Эфириума алгоритм Ethash используется такими монетами, как Maker, DAI, Tether, MusiCoin, Callisto и другими.
Трейдер БитКоган