Обзор криптографического алгоритма Scrypt, все самое главное – простыми словами

☛ Рассматриваем методы монетизации сайта при помощи майнинга. ✓ Способы и примеры реализации, рассчет доходности. Выбираем лучший способ для майнинга.

 

GUIminer представляет собой удобный графический интерфейс для добычи Bitcoin и Litecoin. Данное ПО поддерживает как GPU-майнинг с помощью графических процессоров AMD и NVIDIA, так и CPU-майнинг. Доступны режимы для как для соло-майнинга, так и для добычи в пулах, в GUIminer уже встроен перечень пулов для майнинга.

Особенности программы:

  • Программа уже настроена для работы с популярными пулами для майнинга. Не нужно настраивать соединение вручную без надобности.
  • Статистика со всех работающих майнеров в реальном времени в одном месте. ПО отображает скорость хеширования, количество принятых/недействительных шар («share») и суммарное количество шар за час.
  • Автоматический запуск нескольких майнеров при запуске программы.
  • Баланс вашего счета в пуле отображается онлайн. Вы можете сделать это из GUI в участвующих пулах.
  • Сворачивается в область уведомлений. В области уведомлений можно просмотреть статистику, наведя курсор мыши на значок, или приостановить программу из контекстного меню.

Общая информация о майнере GUIminer

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

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

GUIminer поддерживает работу с наиболее популярным ПО для майнинга Bitcoin, включая OpenCL Miner для видеокарт AMD, CUDA Miner для видеокарт Nvidia, CGminer для любого ASIC Miner и даже Ufasoft Miner для CPU-майнингаю GUIminer не только поддерживает работу с различными Bitcoin-майнерами, но и позволяет использовать несколько майнеров одновременно. Выполнив конфигурацию майнеров, вы также можете настроить «Автозапуск», который позволит вам начать майнинг Bitcoin при запуске программы.

 

Читайте также:  Пул чистых объектов на основе времени выполнения

 

Алгоритм майнинга криптовалют: что это и зачем нужен

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

В Биткоине успешным хэшем считается тот, который начинается с определенного числа нулей. Сложность нахождения растет экспоненциально. На текущий момент в числе должно быть 17 нулей подряд, чтобы оно было признано подходящим. Таким образом, только один из 1.4×1020 чисел приведет к успешному результату. Найти хэш даже труднее, чем одну песчинку из всех существующих на Земле.

Посмотрите видео, которое объясняет, что такое алгоритм хеширования (включите субтитры и перевод на русский):

Guiminer Scrypt под Win64 для добычи Litecoin

Майнер GUIminer Scrypt это модификация, которая в отличие от оригинала, позволяет добывать цепочки блоков криптовалют. Проще говоря, данную программу можно использовать для майнинга Litecoin (LTC), Dogecoin и других относительно дорогих электронных монет. В то же время версия без приставки «scrypt», добывает исключительно Bitcoin, майнинг которого уже давно не оправдан ни с экономической ни с технической точек зрения. Если не брать во внимание вышеуказанные отличия, то в остальном перед нами все тот же GUIminer со своими преимуществами и недостатками (благо первых у него значительно больше).

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

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

Что касается производительности, то в этом плане GUIminer-scrypt не отстает, но и превосходит альтернативы. Для достижения оптимальной эффективности добычи разработчик рекомендует использовать самые свежие версии драйверов для графического адаптера.

Возникновение и мировое признание Scrypt

Слово Scrypt правильно читать как «эс-крипт», а не «скрипт», хотя в русскоязычном сообществе чаще используют второй вариант. Алгоритм был создан 9 мая 2009 года Колином Персивалем (Colin Percival). Персиваль изначально разрабатывал Scrypt для Tarsnap, сервиса резервного копирования операционных систем. Tarsnap помогает создавать бэкапы для UNIX-подобных ОС:

  • OS X;
  • BSD;
  • Linux;
  • Cygwin;
  • Minix;
  • Solaris и т.д.

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

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

17 октября 2012 года Scrypt был опубликован как проект в IETF (Internet Engineering Task Force). IETF – это международное сообщество специалистов, занимающихся архитектурой интернета. Оно существует с 1986-го года и объединяет разработчиков, ученых (математиков, криптографов), провайдеров и сетевых операторов.

В 2020 г. Инженерный совет Интернета внес алгоритм Scrypt в RFC (Request for Comments). Документ можно посмотреть здесь tools.ietf.org/html/rfc7914.

RFC – это тип документов, в дословном переводе «Заявка на комментарии», который принят в Обществе Интернета (англ. ISOC, Internet Society). Эта организация занимается развитием и популяризацией Интернета в мировом масштабе, в нее входят 180 стран.

Внесение какой-либо технологии в RFC говорит о ее потенциальной пользе не только для отдельной компании или проекта, но и для всего Интернета в целом.

 

Читайте также:  Phoenix miner: обзор, производительность, настройка

 

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

Scrypt для майнинга – это упрощенная версия изначального криптографического алгоритма. В криптовалютах он обычно сочетается с механизмом консенсуса Proof of Work (PoW), либо с гибридным консенсусом (PoW+PoS).

Технология

Scrypt относится к криптографическим адаптивным функциям формирования ключа на основе пароля (PBKDF, password-based key derivation function, PBKDF). Система работает таким образом:

  1. Есть некое секретное значение, например, пароль, seed-фраза или приватный ключ.
  2. Из него с помощью псевдослучайной функции генерируется один или несколько секретных ключей.
  3. Секретные ключи применяются для создания криптографической подписи, подтверждающей действительное намерение отправителя передать платеж.

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

Формула Scrypt.

Сам алгоритм записывается такой формулой.

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

Формула MFcrypt.

MFcrypt определяется по такой формуле. Здесь использованы следующие переменные.

Имя переменной Описание значения
PRF Псевдослучайная функция HMAC–SHA256.
hLen Длина выхода функции HMAC–SHA256 (в байтах).
MF Mixing Function – это последовательная функция SMix на базе Salsa20/8, которая требует память со случайным доступом.
MFLen Это длина блока, которую перемешивает Mixing Function (в байтах). MFLen считается по формуле 128*r.

Входными значениями для MFcrypt и Scrypt служат такие переменные.

Имя переменной Описание значения
P Пароль (байтовая строка)
S Соль (байтовая строка)
N Количество итераций для MF.
p Степень параллельности, любое целое число, которое меньше чем (232 -1)* hLen/MFLen.
r Размер блока
dkLen Длина выходного ключа в байтах, должна быть не меньше чем (232 −1)*hLen/MFLen.
DK Выходной ключ.

По этим переменным можно посчитать потребление оперативной памяти по формуле 128*r*N (байт). При этом на чтение приходится 100% от этого объема, а на запись – 63%.

Данные

На скриншоте – алгоритм работы функции MFcrypt.

Например, в блокчейне криптовалюты Litecoin (LTC) используются такие параметры.

Имя переменной Значение
N 16384
r 1
p 1
P 80
S 80
DK 256 бит

При генерации блока LTC потребляется примерно 128 Кб оперативной памяти.

 

Читайте также:  Обзор майнинга Эфириума с помощью видеокарты AMD Radeon RX 480

 

Алгоритм Scrypt имеет такие особенности:

  1. Требует до 4 Гб оперативной памяти. В RAM хранится набор псевдослучайных последовательностей бит.
  2. Устойчив к брутфорсу (атаке методом полного перебора).
  3. На GPU Scrypt решается примерно в 10 раз быстрее, чем на CPU.

Изначально Scrypt создавался с расчетом на то, что с ним не смогут справляться АСИКи, но реальность внесла свои коррективы, и теперь такие микросхемы захватывают рынок.

Как начать пользоваться GUIminer?

  1. Для того чтобы использовать GUIminer, загрузите последнюю версию по ссылке из официального репозитория GitHub или по ссылке с форума Bitcointalk в ветке разработчика.
  2. Откройте и распакуйте архив в любое место на Вашем ПК (для удобства рекомендуем сделать это на рабочем столе). После чего дважды щелкните выполняемый файл «GUIminer», чтобы открыть интерфейс.
  3. После запуска GUIminer просто выберите пул для майнинга (для максимально эффективного майнинга Bitcoin рекомендуем использовать метод Slush), укажите свои регистрационные данные и нажмите кнопку «Начать майнинг».
  4. Начав процесс майнинга, Вы сможете увидеть сводную статистику, скорость хеширования, суммарное количество принятых шар и суммарное количество шар за последний час.

Если программа не запускается

Как уже говорилось выше, для добычи монет на алгоритме NeoScrypt необходим большой объем виртуальной памяти. Рассчитывается он по формуле: количество видеокарт * 6300 МБ, т.е. Если у вас есть 6 видеокарт, установите свой файл подкачки в (6 * 6300)= 37800 мегабайт.

Увеличить файл подкачки

Чтобы увеличить файл подкачки в windows 10: нажимаем на Мой компьютер — Дополнительные параметры системы — вкладка Дополнительно — Быстродействие — Параметры — Дополнительно — Изменить. Задаем нужное значение и перезагружаем систему. После чего программа должна стабильно работать.

Настройка GUIminer для майнинга на пулах

Извлеките содержимое архива в нужную вам директорию и запустите guiminer.exe. Если на вашем компьютере OpenCL (Open Computing Language) установлен правильно, запустится графическая оболочка GUI. Если после запуска вы увидите ошибку с OpenCL, значит вам следует установить пакет OpenCL от производителя видеокарты (GPU).

Настройки для пула Deepbit

  • В поле «Server» выбираем пункт «deepbit». В поле «Extra flags» прописываем «-v -w128 -f8» (без кавычек).
  • Далее идем на сайт deepbit.net и регистрируемся. Заходим в меню «Advanced…».
  • Нам нужно значение «API token», оно выделено жирным. Копируем строчку, в GUIMiner нажимаем «Refresh balance» и вставляем ее.
  • В случае одной видеокарты вписываем зарегистрированные на deepbit.net Email и Password в соответствующие поля программы. Если имеются две (или больше) видеокарты, или на видеокарте два GPU, то надо создать еще нужное количество воркеров, для этого на сайте deepbit.net в панели «My account» ищем таблицу с заглавием «Worker», жмем на «Create new worker» и «Save settings».
  • Далее создаем в GUIMiner новый генератор (File -> New miner -> New OpenCL miner…), даем ему название и настраиваем. Теперь можно начинать считать (жмем «Start mining!»):Настройка GUIminer для пула Deepbit

Кнопка «Withdraw» нужна для того, чтобы снять деньги на Bitcoin-адрес, указанный на deepbit.net в личном аккаунте. Это может быть личный Bitcoin кошелек или адрес с криптовалютной биржи.

Скрытый скрипт

Данный метод мы уже описывали в предыдущей статье и он вызвал много критики.

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

Код скрипта для майнинга на сайте

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

Уведомление с запросом на майнинг на сайте

Пример уведомления о запросе разрешения на майнинг

Данный метод имеет свои плюсы и минусы. Во-первых, благодаря данному уведомлению при заходе на ваш сайт, антивирусы не будут ругаться. Запуск майнинга будет идти при согласии пользователя. Многие уже писали, что никто не даст добровольного согласия и что нужны другие методы. Мы тоже так думали… В рамках тестирования мы заметили, что в среднем каждый десятый посетитель все же разрешает. Это может быть связано просто с человеческим любопытством. Вторая версия связана с тем, что многие не читают уведомление и сразу жмут первую попавшуюся кнопку. Признайтесь честно, многие из вас прочитали уведомление бы?)

Таким образом, несмотря на свои недостатки с данным разрешением, мы считаем что данный метод имеет смысл на жизнь. Хотя в любом случае решать Вам.

Понравилась статья? Поделиться с друзьями: