Алгоритмы майнинга: сравнение и выбор лучшего. Монеты на SHA256

Для Windows Phone 14.07.2019
Для Windows Phone

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

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

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

Итак, начнём.

1. Введение

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

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

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

Система достаточно безопасна, пока дружественные узлы контролируют (одновременно!) большую вычислительную мощность, чем группа атаки.

2. Транзакции

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

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

3. Сервер временных меток

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

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

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

5. Сеть

Для работы сети предпринимаются следующие шаги:

  1. всем узлам широковещательно посылается новая транзакция;
  2. узел (каждый!) размещает новые транзакции в своем блоке;
  3. узел (каждый!) активизирует сложные вычисления для расчета «своего» блока;
  4. узел нашел решение «своего» блока и широковещательно рассылает этот блок всем остальным узлам;
  5. если все транзакции в блоке правильные (не просроченные), то узел принимает;
  6. подтверждение принятия узлом блока заключается в том, что данный узел начинает работу по генерации следующего блока в хэш-цепочке, учитывая хэш блока принятого как хэш предыдущий.

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

При этом начинается работа узла именно с более ранним блоком, а иная версия сохраняется на случай, если она потом «вырастет» в более длинную цепочку.

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

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

6. Стимул

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

Это добавление новых «монет» сродни промывке золотого песка в поисках самородка, только в этом случае тратится время процессора и электроэнергия.

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

Именно стимул заставляет узлы быть «честными». Если атакующий сумеет взять под контроль вычислительную мощность бОльшую, чем все «честные» узлы, то он встанет перед выбором: обманывать и воровать или самому эти новые «монеты» генерировать. И выгоднее играть по правилам и не уничтожать систему вместе со своим состоянием.

7. Использование дискового пространства

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

Заголовок блока «тянет» примерно 80 байт (без транзакций). Генерация блоков - каждые 10 минут, то есть:80байт×6×24×365=4.2MB в год. Закон Мура полагает прирост в 1.2Гб за год, то есть необходимое дисковое пространство - не проблема.

8. Упрощенная проверка платежей

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

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

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

9. Комбинирование и разделение суммы

передавать монеты можно по отдельности, бывает неудобно выполнять отдельную транзакцию для каждого цента. Именно для того, чтобы суммы можно было делить и комбинировать, в транзакции предусмотрено множество входов-выходов. Как правило, имеется или один вход от предыдущей транзакции (бОльшей!), или множество входов скомбинированных малых сумм, и хотя бы два выхода: 1 - для платежа и 1- для возврата сдачи (если она есть).

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

10. Конфиденциальность

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

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

11. Заключение

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

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

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

Узлы не нуждаются в самоидентификации, потому что сообщения идут не по заранее установленному маршруту, а по наиболее короткому (быстрому) пути.

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

Узлы присоединяют «голос», участвуя в общем процессе вычислительным временем, подтверждая свое согласие с корректностью блоков путем включения их в свою цепочку для продолжения работы или же – выталкиванием (игнорированием) неверных блоков.

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

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

Некоторые алгоритмы более популярны и используются для нескольких разных криптовалют (блокчейнов). Наиболее популярные криптографические алгоритмы шифрования на сегодняшний деть это: DaggerHashimoto, Scrypt, SHA256, ScryptNf, X11, X13, Keccak, X15, Nist5, NeoScrypt, Lyra2RE, WhirlpoolX, Qubit, Quark, Axiom, Lyra2REv2, ScryptJaneNf16, Blake256r8, Blake256r14, Blake256r8vnl, Hodl, Decred, CryptoNight, Skunk, Lbry, Equihash, Pascal, X11Gost, Sia, Blake2s.

Как видите список алгоритмов весьма велик, мы расскажем подробнее о самых востребованных и надежных из них :

  • SHA256 – именно на этом алгоритме построен , для работы с ним видеокарт уже давно не достаточно, так как для него наши братья-китайцы изобрели специальное оборудование – АСИКи (от английской аббревиатуры ASIC ( – интегральная схема специального назначения). На этом же алгоритме основано и множество копирующих биткоин криптовалют, например, недавно появившийся BitcoinCash.
  • Scrypt – на этом алгоритме работает «цифровое серебро» — . В своё время этот алгоритм был отличной альтернативой, когда АСИКи были разработаны только для SHA256. Но времена идут, появились Scrypt-ASIC и этот алгоритм большинству майнеров тоже недоступен.
  • Ethash (DaggerHashimoto) – алгоритм шифрования, нашедший применение в . Для эффективной работы требуется иметь и желательно на основе микропроцессоров AMD, хотя и Nvidia 10-й серии неплохо справляется с DaggerHashimoto.
  • X11 – применяется в , доступен для современных видеокарт. Однако в конце 2017 — начале 2018, появились первые партии ASIC-майнеров для Dash.
  • Decred – модификация алгоритма Blake256, применяется в криптомонете Decred. Можно майнить на видеокартах. Майнинг Decred чаще всего запускается параллельно с DaggerHashimoto на .
  • CryptoNight – на основе данного алгоритма работает . Алгоритм примечателен тем, что относительно неплохо вычисляется на процессорах. Конкретно в данную минуту процессор Intel Xeon E3 даёт мне около четверти доллара в сутки (сопоставимые цифры и для Intel Core I7). Смешной заработок, но у криптоинвестора любая машина должна майнить хотя бы в фоновом режиме.
  • Equihash – лежит в основе валюты , довольно популярной в наше время среди майнеров на видеокартах, в силу того что сложность сети Ethereum (лидера у ) сильно возросла.
  • X11Gost – алгоритм лежит в основе криптомонеты Sibcoin, которая еще называется « ». По сути это форк, российский аналог валюты Dash. Не буду вдаваться в криптографию, но отмечу, что в основе алгоритма лежит хеш-функция в соответствии с ГОСТ Р 34.11-2012.

Расширенная таблица алгоритмами шифрования криптовалют

В этой таблице мы перечислили все значимые алгоритмы для майнинга криптовалют, с годом их выхода и кратким описанием:

Наименование Год Тикер Алгоритм Ключевые особенности
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 Litecoin по большому счету клон Биткоин, только быстрее транзакции проходят
EthereumClassic 2015 ETC Dagger-Hashimoto В принципе тот же эфир просто ребята чего-то не поделили и разделились, но стоит гораздо дешевле
Dogecoin 2013 DOGE Scrypt Полностью скопированный алгоритм с Litecoin с некоторыми изменениями. Популярность обусловлена большими вложениями в рекламу и символом-картинкой с изображением знаменитой собаки известным и почитаемым в узких кругах
NEM 2015 XEM blockchain есть сервис нотариального заверения плюс позволяет вам осуществлять мгновенные платежи и денежные переводы по всему миру, не опасаясь высоких комиссий. Все кошельки надежно защищены и исключают шанс несанкционированного доступа.
Syscoin 2014 SYS Scrypt Имеет необычный алгоритм шифрования и ориентирован на децентрализованную торговлю. Syscoin — это не криптовалюта плюс платформа, это платформа, встроенная в криптовалюту.
Augur 2015 REP Smart contract Augur использует мощностя для прогнозирования финансовых рынков
Dash 2014 DASH X11 Позволяет почти полностью исключить отслеживание отправителя. По желанию пользователя можно не использовать и проводить трензакции напрямую.
ByteCoin 2012 BCN CryptoNight Ззащищает деньги пользователя самыми безопасными и современными криптографическими алгоритмами. Их невозможно взломать. Сама попытка взлома потребует огромного количества дорогостоящей электроэнергии и вычислительной мощности суперкомпьютера. Вы единственный, кто может получить доступ к вашему кошельку. По крайней мере так утверждают разработчики
BelaCoin 2014 BELA Scrypt Позволяет вам получать оплату за фотографии, которые вы публикуете
lbryCoin 2016 LBC LBRY С помощью lbry пользователи могут создавать и делиться своим контентом, таким как музыка, фильмы, живопись и т.д. В процессе загрузки контента на платформу пользователь может требовать плату за доступ
Radium 2015 RADS Smartchain Цель — задействовать возможности блокчейна для предоставления различных 100% децентрализованных сервисов.
Decred 2015 DCR Blake256 По сути это гибридная proof-of-work proof-of-stake (PoW/PoS) консенсусная система, которая направлена ​​на баланс между PoW майнерами и PoS избирателями что бы создать более надежное понятие консенсуса
Einsteinium 2014 EMC2 Scrypt Наподобие kickstarter только для научных проектов
Gridcoin 2013 GRC BOINC система, которая путем объединения вычислительных мощностей помогает решать задачи в медицине, биологии, математике, климатологии, астрофизике и других науках
VertCoin 2014 VTC Lyra2RE Позиционирует себя как форк полностью защищенный от ASIC майнеров. Выступает против монополизации майнинга.
Dashcoin 2014 DSH CryptoNight Анонимная криптовалюта следующего поколения так как сетевой код всегда обновляется с минимальными затратами на разработку и близкими к 0% ошибками протоколов
Potcoin 2014 POT Scrypt Представляет легальную индустрию марихуаны
Peercoin 2012 PPC SHA-256 Интересен возможностью получения монет не только майнингом видеокарты, но еще и генерацией новых монет — монетами уже имеющимися в кошельке
Namecoin 2011 NMC SHA-256 Главным применением Namecoin является цензура-устойчивый домен верхнего уровня.bit, который функционально похож на.com или.net домены, но не зависит от ICANN, главного руководящего органа для доменных имен.
Nautiluscoin 2014 NAUT NXT Цель — доказать, что электронные валюты могут быть хорошим классом инвестиционных активов.
Expanse 2015 EXP Dagger-Hashimoto Идея состоит в том, чтобы использовать новейшую технологию blockchain для создания всего, что может представить сообщество и команда, используя децентрализованную автономную организацию с самофинансируемым дизайном, чтобы сохранить ее по-настоящему децентрализованной
PinkCoin 2014 PINK X11 Валюта созданна на базе платформы Ethereum и обеспеченна фиксированным активом цветных бриллиантов
FoldingCoin 2014 FLDC Stanford Folding Использует ваш компьютер для моделирования процесса сворачивания белков в теле человека. Результаты полученные в этом исследовании будут использованные на изготовление и получение новых медицинских препаратов, способов лечение а также возможно с вашей помощью будут открыты новые открытия в медицине и исследовании белка в частности, а также лечение смертельно-опасных заболеваний
Navcoin 2014 NAV X13 При дополнительном использовании NAVTech и Tor вы можете защитить свою личность при совершении частных покупок в Интернете.
ViaCoin 2014 VIA Scrypt
DNotes 2014 NOTE Scrypt DNotes — peer-to-peer децентрализованная криптовалюта, передаваемая через Интернет, которая позволяет осуществлять мгновенную оплату любому человеку в мире. Это быстро и безопасно с минимальной комиссией как утверждают разработчики
Vcash 2014 XVC Blake256 Vcash был спроектирован как инновационный и перспективный. Он предотвращает подслушивание и цензуру, способствует децентрализованным, энергоэффективным и мгновенным сетевым транзакциям.

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

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

Многие из вас наверняка еще с самого начала задались вопросом «А как там оно все таки работает?». Я постараюсь максимально подробно и доступно ответить на этот вопрос. Не зря алгоритмы, да и все что связано с данной темой, имеет приставку крипто-. Это не спроста. Так как для того чтобы докопаться до сути – придется пробираться через дебри криптографических терминов типа SHA-256, Scrypt, RIPMD-160, base58check и т.д. Я не зря решил собрать все в одну статью. Так как материала будет не много и он хорошо усваивается. А так же можно будет сравнить и выявить слабые и сильные стороны каждого метода.

Сразу скажу вам одну интересную вещь. Вы даже не задумывались, но вы каждый день, лазая по просторам интернета, пользуетесь этим алгоритмом. Каждый раз заходя на сайт, который защищен сертификатом SSL, используется алгоритм SHA-256. Так же этот алгоритм используют протоколы SSH, PGP и многие другие. Но нас интересует какую роль он выполняет в майнинге.

Немного истории

SHA-256 - это криптографическая хэш-функция. Разработало ее Агенство национальной безопасности США.

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

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

При майнинге криптомонет, SHA-256 решает поставленную задачу при помощи процессоров (CPU), видеокарт (GPU) или специализированных устройств типа ASIC. Итак, как происходит решение этой задачи: Итак пулл (место где собираются майнеры чтобы объединить свои мощности в одну большую, для скорейшего и более эффективного майнинга монет) выдает нам новый блок, который состоит огромного набора данных. Из тысяч или даже миллионов строк. Но блок этот представлен всего одной строкой. Его «цифровой подписью» – очередным блоком транзакций с добавленным к нему случайным числом. Это строка называется ХЭШ.

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

Естественно что для того чтобы повысить свои шансы, вам необходимо располагать мощным оборудованием. Но всегда есть те у кого больше. Это не значит что у вас нет шансов. Нет, они есть. Например на «молодых» криптовалютах: таких как peercoin, namecoin, zetacoin, ocoin, tekcoin и еще десятки других. Или в кооперации с пулом.

На этом пожалуй все о SHA-256 и мы переходим к следующему алгоритму.

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

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

В принципе Scrypt-манинг мало чем отличается от привычного биткоин-майнинга (SHA-256):

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

Таким образом созданная искусственная сложность и требования к памяти приводят к тому, что специализированные устройства для майнинга стали сильно уступать CPU и GPU устройствам (хотя уже и это рубеж постепенно преодолевают). Т.е. в идеале добыча монет должна осуществляться исключительно на компьютерах. Если вы уже задумались о то какую конфигурацию собрать себе для майнинга – то не торопитесь. В сети вы найдете массу информации о том что ATI видеокарты превосходят Nvidia в плане практичности. Т.е. соотношение цена/килохэши лежит на стороне ATI видеокарт. Но так было еще год назад. Теперь ситуация стремительно меняется и по сути большой разницы нет. Хотя ATI лидирует так же по некоторым другим параметрам, но это тема для отдельного разговора.

Итак мы подводим итог. По сути и SHA-256 и Scrypt созданы для одной цели – путем перебора получить красивый хэш, удлинить тем самым блокчейн и таким образом получить за это вознаграждение. Но решают поставленную задачу каждый по разному. SHA-256 старается использовать по максимуму аппаратные возможности любого устройства которое для этого было создано – чем выше производительность, тем лучше результат. Ну а Scrypt требует большой объем памяти и как результат этого, производительность ОЗУ (оперативно запоминающего устройства) и видеокарт, которые установлены в компьютере/компьютерах.

Самые известные монетки которые добываются при помощи Scrypt алгоритма: Litecoin, dogecoin, digitalcoin, franco, bottlecaps и еще много других. Популярность таких монет сильно возрасла когда биткоин-манинг мигрировал на ASIC устройства и все те майнеры которые честно майнили валюту видеокартами остались не у дел, так как их оборудование не может конкурировать в следующих категориях как цена, энергозатраты, размеры, шум (т.е. в принципе во всем). Таким образом все кто вложился в оборудование и еще не успел его окупить перешли на Scrypt-майнинг.

Описанные алгоритмы заняли более 90% среди всех добываемых валют. Хотя есть и другие, но они на мой взгляд пока не заслуживают внимания. Так как каждую неделю очередной умник предлагает все более хитроумный алгоритм, так что за ними и не успеть. О самых интересных я буду рассказывать вам в следующих статьях.

Техническая основа криптовалюты на данный момент вызывает интерес у многих, кто интересуется таковыми. Не все знакомы с таким понятием, как «криптография». Понять суть в том, что происходит в так называемом 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 является сложной для понимания, поэтому идеальный вариант — сконцентрироваться на способах/эффективных стратегиях добычи криптовалюты, чем пытаться анализировать алгоритм и понимать, как он работает.



Рекомендуем почитать

Наверх