Введение
Equihash представляет собой алгоритм, который делает возможным майнинг криптовалют наподобие Zcash. Алгоритм, работающий с использованием сложной математической и вероятностной задачи, известной как «Проблема дня рождения».
Протокол или алгоритм майнинга Equihash — один из многих протоколов или алгоритмов майнинга. Однако он занимает особое место. Это связано с тем, что он специально создан для разработки алгоритма, который будет оказывать конкуренцию ASIC майнингу, делая его сложным или не безопасным.
Происхождение алгоритма Equihash
Equihash появился благодаря совместной работе Алекса Бирюкова и Дмитрия Ховратовича. Целью этих двух разработчиков было создание алгоритма майнинга, который бы обеспечивал устойчивость к майнингу ASIC и связанной с этим растущей опасности централизации.
Это давно обсуждаемая проблема в сообществе Bitcoin. Тем более, что хешрейт указанного блокчейна (который использует SHA-256) в настоящее время полностью используется с применением ASIC- майнеров. Эта ситуация может привести к большим рискам, например, к тому, что компания или группа влиятельных майнеров могут сговориться, чтобы негативно повлиять на работу сети.
И хотя в Биткоин- ообществе осознают опасность подобного и есть стимулы, чтобы этого не произошло, на данный момент такая ситуация продолжается. Все майнеры биткоинов хотят одного-чтобы биткоин был самой мощной криптовалютой. Не только с точки зрения хешрейта, но и цены, что повышает безопасность блокчейна от злоумышленников.
Хотя это возможно в таких больших сетях, как Биткоин, в меньших сетях ситуация другая. Бирюков и Ховратович заметили это и решили создать Equihash. Для этого они спроектировали сложную алгоритмическую инфраструктуру, созданную для решения сложной математической задачи под названием «Проблема дня рождения». С этими элементами в 2016 году они представили результат своей работы и исследований — полный и функциональный алгоритм Equihash.
Эта презентация проводилась в Люксембургском университете под руководством группы CryptoLUX, где они работали. Дополнительно Equihash представили на Симпозиуме по безопасности сетей и распределенных систем 2016 года в Сан-Диего.
Цель Equihash
Цель создания Equihash проста: не допустить, чтобы применение ASIC майнеров способствовало централизации майнинга. Особенно серьезная проблема возникает в небольших блокчейнах , где один ASIC-майнер может подразумевать использование более половины мощности майнинга сети. В этой ситуации майнер с этим ASIC может получить полный контроль над сетью и даже при желании переписать историю сети.
Помня об этой проблеме, Бирюков и Ховратович разработали Equihash. Фактически, в официальном документе Equihash они четко упоминают этот аспект в разделе об объяснении необходимости этих систем.
Доказательство работы является основной концепцией современных криптовалют и инструментов защиты от отказа в обслуживании, но требование быстрой проверки до сих пор делало его легкой добычей для графических процессоров, ASIC и ботнетов. Попытки использовать вычисления с интенсивным использованием памяти для устранения несоответствия между архитектурами привели к медленным или неработающим схемам.
Их работа привела к созданию очень сложного алгоритма с высоким потреблением памяти, высоким уровнем штрафов в средах с малым объемом оперативной памяти, а именно в ASIC, низким потреблением вычислительной мощности и проведением коротких криптографических тестов, которые не означали серьезных проблем с хранением и передачей данных.
Наше решение практично и готово к использованию: тестовая реализация нашего доказательства работы требует 700 МБ ОЗУ, работает за 15 секунд на процессоре с частотой 2,1 ГГц, но увеличивает объем вычислений в 1000 раз, если память уменьшается вдвое и представляет собой только тест длина всего 120 байт.
Как работает Equihash?
Для создания этого алгоритма Бирюков и Ховратович взяли за основу небольшую, но сложную математическую задачу под названием «Задача о дне рождения» . Это вероятностная проблема со следующей задачей:
Задача о дне рождения устанавливает, что из 23 человек существует вероятность 50,7 % , что по крайней мере двое из них рождены в один и тот же день. Для 57 и более человек вероятность превышает 99,666%. Строго говоря, это не парадокс, поскольку это не логическое противоречие. Однако тут речь идет о математической истине, которая противоречит общепринятой интуиции.
Многие люди думают, что вероятность намного ниже и что для достижения вероятности 50,666% требуется гораздо больше людей. Если бы в комнате находилось 367 человек, из принципа голубятни мы знаем, что в один и тот же день рождается как минимум два человека, поскольку в обычном году 365 дней, а в високосном — 366.
Это очень известная проблема в сфере вычислительной техники, которая широко изучалась для построения систем рекурсии и поиска с возвратом (два метода программирования), которые стремятся решать проблемы этого типа наиболее эффективным способом.
Алгоритм разрешения
Простое утверждение выше — это строительная база, которую Бирюков и Ховратович использовали для создания Equihash. По сути, они создали алгоритм, основанный на задании по решению задач на день рождения, созданном Дэвидом Вагнером из Калифорнийского университета в Беркли. Вагнер, известный специалист по криптографии, создал этот алгоритм для того, чтобы любое сокращение памяти увеличивало сложность времени решения этой задачи.
То есть алгоритм Вагнера способен решить проблему дня рождения для очень большого количества людей. Но для этого он интенсивно использует оперативную память. Если ОЗУ уменьшить, алгоритм все равно сможет решить задачу, но сложность и трудность разрешения возрастут.
Это позволило создать систему майнинга, которую системам ASIC с небольшим объёмом оперативной памяти было особенно сложно решить.
Кроме того, алгоритм Вагнера был модифицирован таким образом, чтобы он не давал нескольких решений проблемы. Это свойство делает майнинг слишком простым для майнеров с большим объемом оперативной памяти, поскольку все эти решения могут быть приняты в сети. Для достижения этой цели Equihash обновили за счет реализации метода, называемого «привязка алгоритма». Связь с алгоритмом изменяет задачу так, что в среднем у нее не более двух решений каждое из которых практически уникально.
Таким образом, алгоритм Equihash гарантирует максимально возможную сложность майнинга криптовалюты при его применении.
Интеграция Equihash с ASIC
Все вышесказанное ясно дает понять одно: майнинг в Equihash очень эффективен при использовании мощного компьютера с относительно большим объемом оперативной памяти. Фактически, одна из основных рекомендаций — иметь компьютеры с оперативной памятью не менее 2 ГБ. Equihash можно эффективно майнить на процессоре. Но при использовании графического процессора, можно получить лучшие результаты при наличии у графического процессора достаточно памяти для хранения всего DAG , сгенерированного Equihash для майнинга.
Со временем Bitmain наконец удалось создать ASIC для майнинга Equihash, тем самым преодолев сопротивление алгоритма ASIC. Это произошло в 2018 году, когда производитель представил свой первый ASIC-майнер для Equihash. На самом деле сегодня существует огромное разнообразие ASIC-майнеров для Equihash, среди которых можно выделить майнеры от Bitmain и InnoSilicon.
Характеристики алгоритма
Несмотря на то, что не удалось найти реального и устойчивого сопротивления ASIC, это не подрывает техническое качество Equihash. Фактически, среди наиболее интересных его свойств можно отметить:
Это алгоритм, который стремится избежать централизации майнинга. Несмотря на то, что существуют ASIC-майнеры, майнинг Equihash сложен, что видно по относительно низкой эффективности ASIC-майнеров для Equihash.
Он предлагает сложный криптографический тест для построения, но с небольшим разрешением. Подобное позволяет сети не перенасыщаться трафиком крупных криптографических тестов, что способствует полной масштабируемости сети.
Для теста требуется большой объем памяти, что даже при оптимизации всегда приводит к большим затратам на майнинг со стороны процессора, графического процессора и ASIC.
Наличие гибкости, которая позволяет в будущем совершенствовать алгоритмы и вносить архитектурные изменения.
Это позволяет Equihash со временем развиваться и улучшать свои функции в соответствии с потребностями проектов, которые его используют.
Криптовалюты, использующие алгоритм Equihash
В настоящее время существует несколько валют, которые используют алгоритм Equihash для обеспечения безопасного майнинга. Среди этих монет наиболее известны ZCash (ZEC), Bitcoin Gold (BTG), Komodo, Beam. Самая маленькая из них — Beam с капитализацией около $11 млн. А самой крупной является ZCash с капитализацией около 420 миллионов долларов.
Из всех этих проектов до сих пор ни один не пострадал от атаки 51%, и не был взломан каким-либо другим существенным образом. Подобное ясно свидетельствует о качестве алгоритма Equihash.
Комментарии
Комментарии для сайта Cackle