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

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

Сеть Bitcoin использует алгоритм SHA-256, но Scrypt — это нечто иное. Вы можете с легкостью майнить Bitcoin, используя майнинг-платформу ASIC, однако с токенами, основанными на Scrypt, так не получится. Экосистемы криптовалют вроде Bitcoin, которые с легкостью создаются с помощью платформ ASIC, уже столкнулись с рядом проблем — дело в том, что люди, располагающие существенными средствами и ресурсами, могут приобрести множество майнинг-платформ ASIC, изменив тем самым баланс сил и снизив, как следствие, степень децентрализованности криптовалюты.

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

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

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

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

Майнинг токенов, основанных на алгоритме Scrypt

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

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

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

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

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

Какие токены используют алгоритм Scrypt?

Первым токеном, где нашел свое применение майнинг-алгоритм Scrypt, стал Litecoin. И все последующие форки Litecoin также стали использовать алгоритм Scrypt algorithm. Другим популярным токеном, основанным на Scrypt (хотя и уступающим в популярности Litecoin), стал Dogecoin. Также в этом ряду можно назвать CashCoin, Mooincoin и ProsperCoin.

Параметры алгоритма

Работа Scrypt управляется целым рядом параметров, список которых приведен ниже:

  • Пасс-фраза (passphrase) — какая-то конкретная строка, которая будет захэширована.

  • Соль (salt) — специальная последовательность символов, используемая для модификации хэша в целях защиты от атак, нацеленных на таблицыRainbow

  • N — параметр, обозначающий «стоимость» памяти видеокарты

  • p — параметр параллелизации, представляющий собой положительное числовое значение, отвечающее определенному условию:
    p ≤ (232− 1) * hLen / MFLen

  • Ожидаемая длина выводного значения произведенного ключа, записанная в октетах, – dkLen, – должна отвечать следующему условию:
    dkLen ≤ (232− 1) * hLen

  • r — параметр, обозначающий размер блока; его можно использовать для настройки производительности памяти и размера считывания. Чаще всего этот параметр задают равным 8.

  • Длина хэш-функции в октетах определяется параметром hLen. Как правило, при работе с SHA256 его задают равным 32.

  • MFlen — это длина выводного значения миксинг-функции, указанная в октетах, см. SMix ниже. Она определяется в RFC7914 как r * 128.

Обратите внимание, что Salsa 20/8 — это почти то же самое, что и Salsa20, просто это версия типа 8-round.

You buy
{{ algoconfig.unit }}
You pay
{{ priceold }} USD {{ price }} USD
Buy {{ algoconfig.unit }}
Contract details
  • Algo: {{ algoconfig.name }}
  • Power: {{ power }} {{ algoconfig.unit }}
  • Bonus: +{{ bonus }} {{ algoconfig.unit }}
  • Price: {{ price }} USD
  • Average price per {{ algoconfig.min }} {{ algoconfig.unit }}: {{ avgprice }} USD
  • Duration: 1 year 2 years 5 years lifetime
  • Maintenance fee: {{ algoconfig.fee }}$ / {{ algoconfig.min }} {{ algoconfig.unit }} -
Payout forecast *
  • Daily: {{ forecast('daily') }} $
  • Weekly: {{ forecast('weekly') }} $
  • Monthly: {{ forecast('monthly') }} $
  • Yearly: {{ forecast('yearly') }} $
Hashrate Sold:
{{ algoconfig.sold }}%

Bronze

Bronze account features:
  • {{ level.name }}
  • {{ level.min }} {{ level.unit }} = {{ level.bronze }}$ {{ level.bronze_new }}$
  • Maintenance fee: {{ level.fee.bronze }}$ / {{ level.min }} {{ level.unit }} / 24h
  • Payouts - every day
  • Min. contract: {{ level.mincalc }} {{ level.unit }}

Silver

Silver account features:
(from {{ level.minsilver }} {{ level.unit }})
  • {{ level.name }}
  • {{ level.min }} {{ level.unit }} = {{ level.silver }}$ {{ level.silver_new }}$
  • Maintenance fee: {{ level.fee.silver }}$ / {{ level.min }} {{ level.unit }} / 24h
  • Payouts - every day
  • Min. contract: {{ level.minsilver }} {{ level.unit }}

Gold

Gold account features:
(from {{ level.mingold }} {{ level.unit }})
  • {{ level.name }}
  • {{ level.min }} {{ level.unit }} = {{ level.gold }}$ {{ level.gold_new }}$
  • Maintenance fee: {{ level.fee.gold }}$ / {{ level.min }} {{ level.unit }} / 24h
  • Payouts - every day
  • Min. contract: {{ level.mingold }} {{ level.unit }}

diamond-decor
Diamond

Same as Gold
With extra features
(from {{ level.mindiamond }} {{ level.unit }})
  • +5% Extra hashrate (revenue)
  • Latest iPhone as a gift
  • x2 Monthly Giveaway tickets
  • Personal manager
  • Up to 35% discount
  • +48h discounts extended
More features