Настройка Wi-Fi

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

Все алгоритмы майнинга криптовалют. Причины появления нового алгоритма Лайткоина
  • Ненормальное программирование ,
  • Платежные системы
    • Перевод

    В один прекрасный момент мне захотелось прикинуть, насколько быстро можно майнить биткойны вручную. Оказалось, что для майнинга используется хеширование 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 квадриллионов раз выше. Да-а-а, понятно, что я не ухвачу удачу за хвост ручным майнингом биткойнов, и это еще не учитывая стоимость бумаги и ручек!

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

    Разделить программы майнинга криптовалют можно на 3 вида, в зависимости от оборудования, которое они используют.

    Алгоритмы для ASIC

    Биткоин, Litecoin и Dogecoin - популярные монеты, имеющие большую сложность добычи. Эти монеты можно добывать только на специальном ASIC оборудовании, которое гораздо быстрее, чем обычные процессоры. А также потребляют меньше электроэнергии.

    • SHA256 - криптографическая программа или математическая операция, которая уникальна и обеспечивает зашифрованную строку данных. Второй аспект такой операции - необратимость. SHA - это сокращение от «secure hash algorithm» (безопасный алгоритм хеширования), а «256» - длина хеш-алгоритма в битах. Это очень популярный метод, который реализован в более чем 100 монетах.

    Какие валюты майнить на алгоритме sha256?

    На этом варианте поддерживается майнинг Биткоин, а также ему подобных криптовалют. Это криптовалюты, у которых подтверждение транзакций происходит методом “доказательства работы”. Наиболее известные криптовалюты на sha256:

    Bitcoin, Bitcoin Cash, NameCoin, EmerCoin, Peercoin, ATB и Ghost.

    • Scrypt - метод шифрования более простой и быстрый, в сравнении с sha256. Был создан Персивалем, как ответ на доминирование ASIC устройств в майнинге криптовалют. Он может выполняться на процессорах или видеокартах, но с появлением Асиков для домашнего майнинга стал не актуален. Лежит в основе криптовалют:

    Litecoin, DOGE, NetCoin, BitConnect, Novacoin, DigitalCoin, SysCoin.

    • X11 - был разработан для преодоления некоторых существенных недостатков предыдущих способов шифрования. Фактически он объединяет в себе 11 других алгоритмов, соединенных вместе. Один из недостатков, который должен был устранить новый метод - возможность зарабатывать криптовалюту простым пользователям, не имеющим специального оборудования. Появление специальных Асик устройств для майнинга, в которых использовались методы SHA256 и Scrypt, привело к тому, что майнинг стал контролироваться крупными майнерами, имеющими фермы. Созданный способ X11 позволил вновь использовать майнинг с помощью процессоров и видеокарт обычными пользователями. Положительное свойство этого алгоритма - значительно меньшее использование электроэнергии.

    Что можно майнить используя алгоритм Х11?

    Dash, Pura, Startcoin, AutumCoin.

    Алгоритмы для майнинга на видеокартах

    Современные видеокарты (графические адаптеры GPU) являются программируемыми микросхемами. Такие видеоадаптеры могут использоваться для вычислительных операций, кроме встроенных решений, таких как Intel Graphics.

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

    Наиболее популярные алгоритмы для видеокарт:

    • Ethash (Dagger Hashimoto) - криптографический метод, который лежит в основе Ethereum. Главная особенность работы Ethash - это интенсивное использование видеопамяти. Этот метод криптографического шифрования до сих пор можно использовать для майнинга на видеокартах NVIDIA GTX 1070/1080.

    Криптовалюты: Эфир (ETH), Классик эфир (ETC), Expanse (EXP).

    • Groestl - в настоящее время ASIC не существует для Groestl, и маловероятно, что в ближайшее время он будет разработан для этого метода.

    Майнинг криптовалют: Groestl и Diamond.

    • Nist5 - новый алгоритм шифрования для создания валюты Wyvern.
    • Blake/Blake-256 - метод шифрования криптомонет BlakeCoin, NETCO и TRUMP
    • Lyra2 - криптовалютный метод валюты VertCoin, которая является вилкой Litecoin. Принцип метода - все, у кого есть персональный компьютер, должны быть в состоянии присоединиться к сети.

    Какой алгоритм лучше майнить на NVIDIA?

    Nvidia, одна из популярных видеокарт у майнеров. На сегодняшний день на ней лучше всего майнить ZCash (ZEC).

    Алгоритмы для майнинга на процессоре

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

    Для этого подойдут следующие алгоритмы:

    • Yescrypt - хеш-алгоритм валюты GlobalBoost, созданной в 2014 году.
    • CryptoNight присутствует в шифровании 15 криптовалют. Метод был разработан для майнинга криптовалют на процессоре компьютера. Он был реализован в открытом протоколе, который позволяет повысить конфиденциальность в транзакциях с криптовалютами.

    В отличие от Scrypt, Cryptonight зависит от всех предыдущих блоков при создании нового.

    Используется в майнинге валют: Monero, Bytecoin, Dashcoin, Quazarcoin и других.

    Заключение

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

    Какой алгоритм хеширования лучший для майнинга на вашем оборудовании можно рассчитать, используя калькулятор .

    • Подпишись на Email-рассылку от журнала BitExpert: Актуальные новости на Email
    • Подборки криптоновостей 1 раз в день в Телеграме: BitExpert
    • Инсайды, прогнозы обсуждения важных тем у нас в Телеграм чате: BitExpert Chat
    • Вся лента криптоновостей журнала BitExpert у вас в Телеграме: BitExpert LIVE

    Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

    Многочисленный интерес к криптовалюте вызывается ежедневно со стороны простых пользователей интернета. Они не могут понять сути: почему цифровые монеты пользуются таким огромным спросом; почему курс на них стабильно растет; почему инвесторы тратят тысяч долларов для того, чтобы приобрести биткоины, а не акции ведущих мировых корпораций либо не вкладывают деньги интенсивно развивающиеся банки. В итоге люди доходят до того, что начинают интересоваться даже алгоритмами майнинга. Один из таковых — алгоритм 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-протоколе очень сложно. Но мы все-таки попытаемся сделать это. Для начала рассмотрим алгоритм SHA-256 для майнинга.

    SHA-256 — классический алгоритм
    Отметим: каждый пользователь, который работает с интернетом, даже понятия не имеет, что работает с этим алгоритмом ежедневно, ежесекундно. Каждый интернет-ресурс защищается сертификатом SSL, и посещение такового возможно только при работе с алгоритмом SHA-256.

    Классический алгоритм SHA-256 выстраивает весь Биткоин-майнинг. Отсюда происходит и майнинг других криптографических валют (альткоинов).

    ОПРЕДЕЛЕНИЕ: SHA-256 — криптографическая хэш-функция. Разработана «Агентством национальной безопасности США».

    Основная задача: хэширование данных (произвольный набор) в определенное значение длины («отпечатка» или другое значение — «дайджест»).

    Используя майнинг SHA-256 криптовалюты, задача решается при помощи специализированного процессора либо CPU/GPU. При помощи интерфейса программы пользователи следят за преобразовательными процессами. Фактически алгоритм подбирает правильное значение хэша.

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

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

    Чем больше задействовано вычислительных мощностей, тем больше вероятность/скорость добычи цифровых монет в любом сервисе облачного майнинга.

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

    Алгоритм SHA-256 в майнинге реализуется на каждом ASIC-майнере. А вот ASIC-оборудование для остальных алгоритмов, которые на данном сайте мы также отметим, только разрабатывается.

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

    Очень активно сегодня набирают популярность криптовалюты, реализованные на основе алгоритма SHA-256: Tekcoin, Ocoin, Zetacoin.

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

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

    Bitcoin

    1. стоимость: $16 564.70;
    2. капитализация: $277 203 413 279;
    3. торгуется на биржах: На всех;

    Думаю какие либо комментарии излишни, биткоин он и в Африке биткоин, только ленивый о нем не слышал.

    Peercoin

    1. стоимость: $3.44;
    2. капитализация: $84 219 271;
    3. торгуется на биржах: WEX, Bit-Z, Bittrex, Poloniex, YoBit, Cryptopia, HitBTC, LiteBit.eu;

    Peercoin — одна из действительно уникальных валют. Ее код создан на основе цифрового золота Bitcoin, но сама она использует эту технологию немного иным способом. Так система Proof of Stake используется для защиты всей сети монеты. Также Proof of Work применяется в Peercoin, в роли механизма справедливого распределения монет.

    Namecoin

    1. стоимость: $3.00;
    2. капитализация: $44 142 739;
    3. торгуется на биржах: WEX, Poloniex, Livecoin, Cryptopia, YoBit, Coingi;

    Namecoin — экспериментальная технология с открытым исходным кодом, которая улучшает децентрализацию, безопасность, защиту от цензуры, конфиденциальность и скорость определенных компонентов инфраструктуры Интернета, таких как DNS и идентификационные данные.
    По сути, Namecoin — это система регистрации и передачи пары ключей / ценностей, основанная на технологии Bitcoin.

    Если Биткоин освобождает деньги — Namecoin освобождает DNS, удостоверение личности и другие технологии.

    Unobtanium

    1. стоимость: $89.32;
    2. капитализация: $17 677 687;
    3. торгуется на биржах: Cryptopia, C-CEX, Bleutrade, CoinExchange;

    Unobtanium — это криптовалюта созданная на алгоритме SHA256, уникальная для низкой инфляции, дефицита, справедливого запуска и распространения. Только 250 000 Uno когда-либо будут добыты в течение следующих 300 лет. Unobtanium объединяется с Bitcoin, что приводит к созданию надежной блокировки с высоким уровнем сложности, которая в 3 раза быстрее, чем биткоин. Uno редко встречается не только для выпускаемых монет, но и для его честного запуска и распространения. Uno не был предварительно запрограммирован. Запуск был предварительно объявлен Bitcointalk и, бесспорно, справедливо, с первых 1000 блоков, добытых при низкой награде, чтобы обеспечить майнерам время для настройки оборудования.

    Deutsche eMark

    1. стоимость: $0.047230;
    2. капитализация: $1 530 697;
    3. торгуется на биржах: Cryptopia, YoBit, CoinExchange;

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