Сайт о телевидении

Сайт о телевидении

» » Алгоритмы майнинга криптовалют – обзор, отличия и выбор. Объясняем крипто-алгоритмы майнинга

Алгоритмы майнинга криптовалют – обзор, отличия и выбор. Объясняем крипто-алгоритмы майнинга

  • Ненормальное программирование ,
  • Платежные системы
    • Перевод

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

    Один криптографический раунд

    Майнинг

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

    Криптографическая функция хэширования на вход получает блок с данными, а выдаёт небольшой, но непредсказуемый, выход. Она спроектирована так, что не существует быстрого способа получить нужный выход, и вы должны продолжать перебор пока не найдёте подходящее значение. Биткойн использует SHA-256 в качестве такой функции. Причём для усиления стойкости SHA-256 применяется к блоку дважды и называется уже двойным SHA-256.

    В биткойне критерием валидности хэша является достаточное число нулей в его начале. Найти такой хэш так же сложно, как, к примеру, найти номер машины или телефона, заканчивающийся на несколько нулей. Но, конечно, для хэша это экспоненциально сложнее. На текущий момент, правильный хэш должен содержать примерно 17 стартовых нулей, чему удовлетворяет только 1 из 1.4x10 20 . Если провести аналогию, то найти такое значение сложнее, чем обнаружить конкретную частичку среди всего песка на Земле .

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

    Функция большинства (Ma блок) побитово работает со словами A, B и C. Для каждой битовой позиции она возвращает 0, если большинство входных битов в этой позиции - нули, иначе вернёт 1.

    Блок Σ0 циклически сдвигает A на 2 бита, затем исходное слово A циклически сдвигается на 13 бит, и, аналогично, на 22 бита. Получившиеся три сдвинутые версии A побитово складываются по модулю 2 (обычный xor, (A ror 2) xor (A ror 13) xor (A ror 22) ).

    Ch реализует функцию выбора. На каждой битовой позиции проверяется бит из E, если он равен единице, то на выход идёт бит из F с этой позиции, иначе бит из G. Таким образом, биты из F и G перемешиваются, исходя из значения E.

    Σ1 по структуре аналогичен Σ0, но работает со словом E, а соответствующие сдвиговые константы - 6, 11 и 25.

    Красные блоки выполняют 32-битное сложение, формируя новые значения для выходных слов A и E. Значение W t генерируется на основе входных данных (это происходит в том участке алгоритма, который получает и обрабатывает хэшируемые данные. Он вне нашего рассмотрения). K t - своя константа для каждого раунда.

    На схеме сверху заметно, что только A и E меняются за один криптографический раунд. Остальные слова не меняются, но сдвигаются на выходе - старое A превращается в выходное B, старое B - в новое C, и так далее. Хотя отдельный раунд алгоритма не сильно изменяет данные, но после 64 раундов, входная информация будет полностью зашифрованной.

    Майним вручную

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


    Немного поясню что происходит: я записал слова от A до H в шестнадцатеричной форме, и под каждым сделал перевод в двоичный вид. Результат выполнения блока Ma находится под словом C, а значения A после сдвигов и сам выход Σ0 располагаются над строкой с A. Функция выбора появляется под G, и, наконец, соответствующие сдвинутые версии E и значение после блока Σ1 идут над строкой с E. В нижнем правом углу произвёл сложение, результат которого участвует в вычислении и нового A, и нового E (первые три красных блока суммирования). Справа сверху я рассчитал новое значение A, а посерёдке располагается уже расчет нового значения E. Все эти шаги обсуждались выше и легко могут быть отслежены на схеме.

    Кроме того раунда, что показан в видео, я провёл еще один - последний 64-ый хэшируюший раунд для конкретного биткойн-блока. На фотографии значение хэша выделено желтым. Количество нулей подтверждает, что это валидный биткойн-хэш. Заметьте, что нули располагаются в конце хэша, а не в начале, как я писал ранее. Причина заключается в том, что биткойн, просто-напросто, переворачивает байты полученные SHA-256.


    Последний раунд SHA-256, в результате которого виден успешно смайненный биткойн-блок

    Что всё это значит для проектирования «железных» майнеров?

    Каждый шаг в SHA-256 очень просто выглядит в цифровой логике - простые битовые операции и 32-битные суммирования (если вы когда-либо изучали схемотехнику, то, скорее всего, уже представили себе как это может выглядеть в железе). Поэтому ASIC-микросхемы реализуют SHA-256 очень эффективно, размещая параллельно сотни блоков исполнения SHA-256 раундов. Фотография ниже показывает микросхему для майнинга, которая может вычислять 2-3 миллиарда хэшей в секунду. На Zeptobars можно поглядеть больше фото.


    Снимок кремниевого кристалла ASIC-микросхемы Bitfury, которая может майнить биткойны со скоростью в 2-3 гигахэшей в секунду. Картинка с Zeptobars . (CC BY 3.0)

    В противоположность биткойну, Litecoin, Dogecoin и другие похожие альтернативные -coin системы используют алгоритм хэширования scrypt , в котором изначально заложена сложность реализации в железе. Этот алгоритм во время выполнения хранит в памяти 1024 разных значений хэша, а уже на выходе комбинирует их для получения конечного результата. Поэтому требуется куда больше памяти и схематики для вычисления scrypt-хэшей по сравнению с SHA-256-хэшами. Влияние изменения алгоритма хэширования наглядно видно при сравнении соответствующего аппаратного обеспечения для майнинга - версии под scrypt (Litecoin и прочие) в тысячи раз медленнее, чем версии под SHA-256 (биткойн).

    Заключение

    SHA-256 неожиданно оказался настолько простым, что может быть вычислен даже вручную (алгоритм на эллиптических кривых, который используется для подписи биткойн-транзакции, был бы куда более мучительным, так как содержит кучу перемножений 32-байтных чисел). Расчет одного раунда SHA-256 занял у меня 16 минут, 45 секунд. С такой производительностью хэширование всего биткойн-блока (128 раундов ) займёт 1,49 суток, то есть получаем скорость хэширования в 0,67 хэшей в день (на самом деле, конечно же, с практикой процесс бы ускорился). Для сравнения, текущее поколение биткойн-майнеров производит несколько терахэшей в секунду, что примерно в квинтиллион раз быстрее меня. Думаю, очевидно, что ручной майнинг биткойнов не очень практичен.

    Читатель с reddit"a спросил о моих затратах энергии. Так как я не прилагаю каких-то серьезных физических усилий, то можно предположить что скорость метаболизма будет 1500 килокалорий в день, тогда получаем, что ручное хэширование требует почти 10 мегаджоулей за хэш. Типичное потребление энергии для железного майнера - 1000 магехэшей за джоуль. Таким образом, я менее энергоэффективен чем специализированная железка в 10^16 раз (10 квадриллионов). Другой вопрос в стоимости энергии. Дешевым источником питания являются пончики по 23 цента за 200 килокалорий. Электроэнергия у меня стоит 15 центов за киловатт-час, что дешевле пончиков в 6.7 раз. В итоге, стоимость энергии в пересчете на хэш для меня, как человека-майнера, в 67 квадриллионов раз выше. Да-а-а, понятно, что я не ухвачу удачу за хвост ручным майнингом биткойнов, и это еще не учитывая стоимость бумаги и ручек!

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

    Как происходит майнинг криптовалют?

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

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

    Осуществлять майнинг необходимо при помощи больших мощностей. Здесь действует следующее правило. Чем выше будет скорость вычисления информации, тем больше криптомонет вы заработаете. Именно поэтому майнить в гордом одиночестве – нецелесообразно. Зачастую домашние ПК не могут похвастаться большой мощностью. Чтобы майнить предельно эффективно, необходимо стать членом одного из специальных интернет-сообществ, которые еще называются пулами. Тогда вам удастся подключить свой ПК к другим компьютером и стать одним из участников мощной системы. Вот только вся прибыль между членами пула делится не поровну. Каждый зарабатывает пропорционально вложенным ресурсам.

    Неудивительно, что ажиотаж вокруг майнинга, который начался в последнее время, спровоцировал рост цен на видеокарты. Последние подорожали двукратно. К примеру, если хорошее устройство стоило весной текущего года примерно 18 тыс. руб., то теперь его стоимость увеличилась до 30 тыс. руб. и более.

    При этом количество майнеров заметно возросло. Во многом данному обстоятельству поспособствовал резкий скачок курсов криптовалют, который произошел в последнее время. В частности, сильно подорожала такая виртуальная валюта, как Ethereum. На протяжении последних шести месяцев ее стоимость выросла в 6 раз. Продемонстрировала уверенный рост и ZСash, другие криптовалюты.

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

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

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

    Рассмотрим подробнее некоторые самые распространённые алгоритмы майнинга криптовалют.

    Кратко и доступно об основных алгоритмах майнинга

    Алгоритм Scrypt

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

    Впрочем, сейчас майнинг «Scrypt» не так актуален. Тем не менее, получать профит на майнинге валют таким способом можно.

    Традиционный алгоритм «SHA-256»

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

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

    Но больше всего разочаровали разработчиков первых криптовалют «асики». Это устройства, которые были разработаны специально для работы с алгоритмом «SHA256». Их узкая направленность и высокая производительность позволили майнерам зарабатывать виртуальные монеты в разы быстрее. Ведь «асики» отличались высокой скоростью вычислений и оперативно находили «красивый хэш». По этой причине программисты разработали другие алгоритмы майнинга криптовалют.

    Алгоритм «X»

    Это передовая технология программирования коинов. На данный момент существуют такие алгоритмы, как «Х11», «Х13», а также «Х15». По большому счету они являются усовершенствованными версиями PoW. Что же касается числа, которое расположено после «Х», то оно означает количество функций, используемых для вычислений в блоке.
    Подобные алгоритмы применяют всевозможные математические формулы вычислений. С их помощью можно осуществлять эффективный майнинг коинов посредствам видеокарт. При этом определенный процент профита из пулов получают не только сами майнеры, но и владельцы основных сетевых узлов.

    С применением «Х11» был разработан такой форк, как Dash. Его капитализаций превышает 75 млн. долл. США.

    Другие алгоритмы

    Среди существующих алгоритмов шифрования стоит выделить «DaggerHashimoto». Он используется для майнинга криптовалюты Ethereum. Чтобы он эффективно функционировал, необходимо обладать видеокартой, которая имеет большой объем ОЗУ.
    Если же говорить о «X11», то он используется в монетку Dash. Его поддерживают все современные видеокарты. Но уже совсем скоро следует ожидать появления первых партий ASIC-майнеров для Dash.

    Что же касается алгоритма «Decred», то он является модифицированной версией «Blake256». Разработан для криптомонеты Decred. Поддерживает майнинг посредствам видеокарт. Зачастую для заработка Decred используется не только одноименный алгоритм, но и «DaggerHashimoto». Их необходимо запустить на программе «Claymore’s Dual Miner».

    Есть и «CryptoNight». На его основе функционирует Monero. Его отличительная особенность – неплохое вычисление на процессорах. К примеру, на Intel Xeon E3 он приносит примерно 0,25 долл. США ежедневно. Конечно, это небольшая сумма. Но все же.

    Наверняка, многие из Вас уже слышали о такой криптовалюте, как Zcash. Для ее майнинга используется алгоритм Equihash. А вот для получения Sibcoin, «сибирского червонца», применяется «X11Gost».

    Итоги

    Первые 3 вышеописанных алгоритма используются для майнинга 90% всех криптовалют. При этом каждый день находчивые люди предлагают более новые и хитроумные алгоритмы для заработка виртуальных монет. Так, относительно недавно появилась информация о скором появлении «Dagger». Данный алгоритм тут же окрестили «асикоустойчивым». Планируется, что на его основе будет функционировать криптовалютная платформа новой генерации Ethereum.
    Естественно, мы так и не успели перечислить все алгоритмы, предназначенные для майнинга криптовалют. Но при этом уделили внимание самым значимым из них. Теперь вы знаете, что творится внутри вашего майнинг-комбайна и на какие цели тратится электроэнергия.

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

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

    Майнинг биткоинов сам по себе очень быстро «перекочевал» из компьютерного процессора на графический GPU, а после — вовсе на FPGA (аппаратные устройства). Чуть позже программисты сумели запустить заточенные под таковые микросхемы ASIC.

    Сам по себе алгоритм Scrypt разрабатывался именно для того, чтобы существенно усложнить реализацию добычи биткоинов при помощи аппаратных средств. То есть, была увеличена сложность классического алгоритма SHA-256. За счет алгоритма Scrypt потребовались более внушительные мощности для добычи криптов.

    Реализация Scrypt-майнинга практически не отличается от классического:

    1. Подается блок информации;
    2. Происходит применение хэш-функции;
    3. Правильный хэш идет на выход (создается монета).

    Единственное отличие — подобрать правильный хэш намного сложнее.

    Алгоритм Scrypt для майнинга требует больше оперативной памяти, чем стандартный SHA-256.

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

    Какую особенность для увеличения эффективности Scrypt-майнинга отметить?

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

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

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

    1. SHA-256 делает акцент на технические характеристики обеспечения (эффективность майнинга равна его производительности);
    2. Scrypt требует для эффективного майнинга намного больше оперативной памяти (ОЗУ), а также мощную видеокарту. То есть, чем больше ОЗУ, чем мощнее видеокарта, тем больше криптовалюты будет получать майнер.

    Наибольший результат алгоритм Scrypt для майнинга показывает в добыче Litecoin.

    Если у Вас есть желание начать майнинг криптовалюты, стоит изначально понимать, какой ПК имеется в наличии. Возможно приобрести более дорогое оборудование, но как вариант: заменить ОЗУ и видеокарту для того, чтобы поработать с алгоритмом Scrypt для майнинга.

    Успейте воспользоваться трендом — майнинг криптовалюты только набирает обороты!


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

    С увеличением котировок и популярности Bitcoin, LTC, Ethereum, а также других цифровых активов, всё больше людей пытаются вникнуть в механизмы функционирования систем альткоинов, понять азы криптографии. Ведь открытый код Биткоина позволяет создать собственную криптовалюту, имеющую шанс (теоретически) стать трендом.

    Вторым альткоином, разработанным на коде , стал Лайткоин, алгоритм которого кардинально отличается от стандарта SHA-256, разработанного Сатоши Накамото.

    Особенности майнинга Лайткоина

    Созданный в 2011 году альткоин Litecoin отличается от BTC некоторыми особенностями добычи:

    • Прежде всего, Лайткоин является вторым в истории форком первой криптовалюты.
    • Известно, что будет сгенерировано в общей сложности 84 млн монет, в 4 раза больше по сравнению с Биткоином.
    • Параллельно с увеличением числа коинов, была уменьшена в 4 раза скорость создания блоков, которая составила всего 2,5 минут. Следует отметить, что это чисто теоретические показатели. Особенно это касается системы первой криптовалюты, у которой наблюдаются явные проблемы с масштабированием сети и продолжительностью транзакций. Лайткоин пока с такими вызовами не сталкивался.
    • Показатели сложности Сети определяются 2 раза в неделю.
    • Присутствует и феномен халвинга с аналогичной периодичностью в 4 года, как у BTC. Очередного уменьшения количества призовых монет до отметки 12,5 штук следует ожидать в 2019 году.

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

    Причины появления нового алгоритма Лайткоина


    SHA-256, в отличие от других компонентов программного обеспечения Биткоина, имеет простой функционал. Уже на раннем этапе становления цифровых стандартов взаиморасчётов стало очевидным, что благодаря «лёгкой» структуре, направление добычи с применением центрального процессора персонального компьютера (CPU) будет быстро терять рентабельность. Как итог, в 2010 году стал востребованным майнинг через GPU (графическая карта).

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

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

    В системе Биткоина данная проблема стоит весьма остро и сегодня, но в феномене Лайткоина она не так актуальна. По иронии судьбы, понадобилось всего 2 года, чтобы система Litecoin стала убежищем для майнеров с видеокартами, неспособных конкурировать с владельцами полных вычислительных узлов и крупными дата-центрами с тысячами ASIC-майнеров.

    Вызовы были решены путём создания нового алгоритма, нашедшего применение в феномене Litecoin. Какой он и чём отличается от стандарта SHA-256? Рассмотрим особенности более детально.

    Что такое алгоритм Scrypt?

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

    Механизм (функция хэширования) Scrypt был создан с целью усложнения аппаратного майнинга и подразумевал увеличение вычислительных показателей ASIC-майнеров. Благодаря этому была решена проблема возможной централизации сети Лайткоина.

    Основные принципы функционирования алгоритма Litecoin Scrypt и SHA-256 совпадают. Процесс генерации основан на создании блоков транзакций, каждый из которых состоит из двух компонентов:

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

    Алгоритм Лайткоина Scrypt - техническая сторона


    Функция хэширования Scrypt является сложной и требует гораздо больше оперативной памяти. В отличие от SHA-256, алгоритм LTC предназначен для обеспечения сохранности данных начального вектора, состоящего из случайных последовательностей. Генерация последних происходит сразу после запуска алгоритма. Процесс создания нового блока ознаменуется определением правильно решения сложных арифметических расчётов. Майнеры получают за это награду в 25 Лайткоин, стоимость которой сегодня варьируется в пределах 5–5,5 тыс. долларов.

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

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

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

    Алгоритм Scrypt часто путают с аналогом Scrypt-Jane, который был разработан для узконаправленного майнинга с применением только центральных процессоров. Однако, на фоне потери рентабельности генерацией на CPU, он не получил широкого распространения.

    Перспективы криптоалгоритма Лайткоина Scrypt

    Litecoin является самой известной из криптовалют, майнинг которой осуществляется с применением стандарта Scrypt. После появились много цифровых альткоинов на его основе: , Digitalcoin, Franco, Bottlecaps и многие другие. Особенно выросла востребованность подобной разновидности генерации после профессионализации сегмента добычи Биткоина (уже отмечалось выше).

    Увеличение популярности алгоритма майнинга Litecoin в последнее время обосновано резким ростом всего рынка криптовалют в 2017 году. Капиталовложения в покупку графических процессоров, в отличие от ASIC-майнеров, обходятся дешевле, а бонусом выступает наличие возможности добычи новых альткоинов, работающих на Scrypt. В качестве примера можно привести цифровой актив Auroracoin, цена которого выросла только за 30–31 декабря на 78,6 %, и составляет 2,35 долларов, а рыночная капитализация превысила 20 млн. долларов.

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

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

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

    Криптовалютный алгоритм – обобщённое понятие

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

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

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


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

    SHA 256 — алгоритм работы классического Биткоина

    Как мы уже говорили, данный алгоритм уже довольно старый. По сути, он стал использоваться задолго до того, как на его основе была построена криптовалюта Биткоин. Он присутствует в сертификатах SSl, которые используются для защиты вебсайтов, а также реализован в протоколах PGP и SSH. Только с 2009 года он был задействован в криптовалюте и с тех пор выступает неизменным атрибутом не только Биткоин, но и других валют, построенных по его прообразу.

    SHA 256 является криптографической хеш-функцией и была разработана агентством национальной безопасности США. Как и любая другая хеш-функция, SHA 256 превращает произвольный набор данных в значение с фиксированной длиной, или, другими словами, в дайджест или отпечаток. Это значение будет выступать некой подписью для набора исходных данных, однако извлечь последние уже будет невозможно.

    Как вы знаете, добывать биткоины на алгоритме SHA 256 можно при помощи процессоров, видеокарт, а также специального оборудования. При этом через интерфейс программы-майнера можно следить за этим процессом. Например, в мелькающем коде вы сможете увидеть такие строки – «Accepted 0aef41a3b», значение после «Accepted» и есть хеш. Данное значение представляет собой подпись для огромного набора информации, который может состоять из тысяч отдельных строк. Обычно так подписываются блоки транзакций с добавленными к ним случайными числами.

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

    Scrypt

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

    Отличие метода майнинга алгоритмов SHA 256 и Scrypt заключается в том, что для функционирования скрипт необходимо большое количество памяти. Будь-то оперативная память при майнинге процессором или видеопамять при майнинге видеокартой, но факт в том, что если памяти было недостаточно, то процесс нахождения нужного хеша занимал очень много времени. Это, несомненно, сильно отстрочило появление систем ASIC под алгоритм скрипт.

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

    Через некоторое время свет увидел и усовершенствованный алгоритм scrypt n. Основным его отличием от предыдущей версии стало наличие новой переменной, собственно «N», которая значительно усложняла внедрение специализированных систем. При расчёте каждого нового блока сложность вычислений и необходимое количество памяти повышается, что, несомненно, приводит к необходимости наращивать запоминающее устройство своей системы. Если большой объём видеопамяти не проблема для видеокарты, то про айсик-микросхемы такого сказать нельзя. Введение scrypt n стало серьёзным ударом по ASIC-майнерам и существенно повысило защиту от монополизации тех криптовалют, на которых использовался данный алгоритм.

    DaggerHashimoto – используется в криптовалюте Ethereum

    DaggerHashimoto во многом напоминает скрипт, но механизм шифрования которого работает на связных, направленных ацикличных графах. Алгоритм создаёт граф последовательных узлов, каждый из которых зависит от трёх до пятнадцати случайных узлов перед ним. Когда майнер найдёт узел, номер которого лежит между 2 22 и 2 23 , а хэш будет меньше, то алгоритм считается выполненным.

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

    Сейчас DaggerHashimoto переживает ребрендинг и официально был переименован в Ethash. Помимо высоких требований к памяти, к особенностям алгоритма можно отнести также сильную любовь к видеокартам в майнинге. Если говорить точнее, то именно к видеокартам компании AMD.

    Scrypt-Jane

    Описание алгоритмов криптовалют мы хотим закончить на довольно интересном алгоритме под названием Scrypt-Jane. Особенностью данного алгоритма является наличие сразу трёх механизмов шифрования, названных в честь латиноамериканских танцев – Salsa20, ChaCha20 и Salsa6420/8.

    Главной задачей функции Salsa20 является приём 192-байтной строки и преобразование её в 64-байтную строку. Другими словами, функция сжимает строку до состояния 64-байтной, хотя она, по сути, таковой не является, то есть, она может быть длиннее данного размера, но с 192-байтной строкой уже не сравняется. Происходит это не в последнюю очередь благодаря внутреннему алгоритму сжатия под красивым названием Rumba20.

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

    Последняя функция Salsa6420/8 является, по сути, улучшенной версией функции Salsa20 и позволяет работать с гораздо более высокобайтными блоками информации.

    Кроме основных трёх функций, Scrypt-Jane также позволяет работать с уже известными нам алгоритмами, такими как: SHA-256 и его улучшенной версией SHA-512, а также функциями BLAKE256/512, Skein512 и Keccak256/512.

    По функционированию Scrypt-Jane очень напоминает Scrypt-n и имеет аналогичные с ним особенности в плане усложнения нахождения блоков и увеличении потребляемой памяти, но является ещё более сложной системой. Основной задачей внедрения данного алгоритма было вернуть часть майнинга на центральные процессоры. И следует сказать, что частично данную задачу выполнить все же удалось. Майнинг Scrypt-Jane на видеокартах не приносит столь же большой выгоды, как на других алгоритмах, а процессоры более не выглядят абсолютно бесполезными.

    Таблица криптовалют с алгоритмами

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

    Название Год Сокращение Алгоритм Краткое описание
    Bitcoin 2009 BTC SHA-256 Настоящий флагман цифровых криптовалют. В настоящий момент признан большим количеством стран по всему миру.
    Ethereum 2015 ETH Dagger-Hashimoto Основная идея для внедрения данной валюты - это создание вычислительных мощностей для предоставления возможности реализации цифровых проектов.
    Steemit 2016 STEEM SHA-256 Созданная для распространения и внедрения мультимедийного контента на различных веб-хостингах.
    Ripple 2013 XRP ECDSA Валюта, предназначенная для банков, чтобы быстрее и лучше совершать транзакции.
    DigiByte 2014 DGB SHA256 Разработана для усовершенствования тех систем, где у Bitcoin & Litecoin наблюдались проблемы.
    Monero 2014 XMR CryptoNight Основной задачей данной валюты является обеспечение анонимных денежных переводов.
    Siacoin 2015 SC blake2b Разработана для анонимного хранения данных.
    Litecoin 2011 LTC Scrypt Один из главных конкурентов Биткоин, но с преимуществом в более быстрых транзакциях.
    EthereumClassic 2015 ETC Dagger-Hashimoto Представляет собой тот же Эфириум, но от других людей. Сейчас стоит дешевле основной версии.
    Dogecoin 2013 DOGE Scrypt Частично скопированный со всем известного Litecoin, но с добавлением некоторых изменений.
    NEM 2015 XEM blockchain Новая криптосистема, которая предлагает цифровую нотариальную подпись. Кроме того, обладает высочайшей скоростью проведения транзакций и обеспечивает надёжное хранение средств.
    Syscoin 2014 SYS Scrypt Ориентирован на децентрализованную торговлю.
    Augur 2015 REP Smart contract Использует вычислительные мощности клиентов для прогнозирования финансовых рынков.
    Dash 2014 DASH X11 Предлагает высокую анонимность транзакций. При использовании Dash конечного потребителя практически невозможно отследить.
    ByteCoin 2012 BCN CryptoNight Основная задача защитить деньги пользователя. Для этого система использует самые совершенные криптографические алгоритмы.
    BelaCoin 2014 BELA Scrypt Сервис, позволяющий получить оплату за публикацию фотографий.
    lbryCoin 2016 LBC LBRY С помощью lbry пользователи могут делиться своим контентом.
    Radium 2015 RADS Smartchain Задействует вычислительные мощности для предоставления возможности создания децентрализованных сервисов.
    Decred 2015 DCR Blake256 Представляет из себя гибрид систем POW и POS. Благодаря этому соблюдает тонкий баланс между майнерами и держателями монет.
    Einsteinium 2014 EMC2 Scrypt Некий kickstarter для научных проектов.
    Gridcoin 2013 GRC BOINC Данная система использует вычислительные мощности для оказания помощи различным секторам науки, таким как медицина, астрофизика и многим другим.
    VertCoin 2014 VTC Lyra2RE Криптовалюта, призванная полностью обезопасить себя от ASIC-майнеров, тем самым сохранив высочайшую степень децентрализации.
    Dashcoin 2014 DSH CryptoNight Анонимная криптовалюта нового поколения.
    Potcoin 2014 POT Scrypt Система, призванная работать в легальной индустрии марихуаны.
    Peercoin 2012 PPC SHA-256 Предоставляет возможность добычи новых монет не только с помощью майнинг ферм, но и с помощью монет, которые уже находятся в кошельке.
    Namecoin 2011 NMC SHA-256 Главным применением Namecoin является цензуро-устойчивый домен.
    Nautiluscoin 2014 NAUT NXT Цель – доказать, что криптовалюты могут являться хорошим вложением инвестиций.
    Expanse 2015 EXP Dagger-Hashimoto Идея данной валюты в том, чтобы использовать новейшую технологию blockchain для создания всего, что только может представить сообщество в плане децентрализованных систем.
    PinkCoin 2014 PINK X11 Криптовалюта, созданная на базе платформы Эфириум, имеет фиксированный актив цветных бриллиантов.
    FoldingCoin 2014 FLDC Stanford Folding Использует вычислительные мощности для моделирования процесса сворачивания белков в теле человека. Результаты, полученные в этом исследовании, будут использованы при изготовлении и получении новых медицинских препаратов.
    Navcoin 2014 NAV X13 Предлагает очень высокую анонимность клиента при покупках в сети интернет.
    ViaCoin 2014 VIA Scrypt Предоставляет пользователям возможность создавать новые децентрализованные торговые площадки.
    DNotes 2014 NOTE Scrypt DNotes – peer-to-peer децентрализованная криптовалюта. Данная система предоставляет возможность мгновенного перевода денег другому человеку в любой части мира, при этом транзакция будет надёжно защищена.
    Vcash 2014 XVC Blake256 Vcash очень перспективная криптовалюта, которая обладает высокой степенью децентрализации.

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