Что такое сложность майнинга криптовалют и сложность сети?

    Что такое сложность майнинга криптовалют и сложность сети?
    0

    Сложность сети или целевая сложность (Target difficulty) – ключевое значение в формуле генерации новых хэшей при майнинге на алгоритме PoW (Proof-of-Work, Доказательство работы).

    Сложность растёт и снижается зависимо от скорости добычи блоков и нужна для того, чтобы обеспечить стабильную чеканку в необходимом временном интервале (например: новый блок примерно раз в 10 минут в сети Bitcoin).

    Что такое сложность сети в майнинге

    «Чтобы компенсировать рост суммарной вычислительной мощности оборудования в сети и изменяющийся интерес к запуску и поддержанию узлов, сложность в майнинге доказательством работы определяется скользящим средним значением, нацеленным на среднее количество блоков в час. Если они генерируются слишком быстро – сложность возрастает» – Сатоши Накамото.

    Вначале Bitcoin добывался на CPU (центральные процессоры), затем на GPU (видеокарты) и сейчас на ASIC (интегральные процессинговые схемы, заточенные под задачу). Если бы сложность не корректировалась, блоки бы начали добывать всё быстрее. Рано или поздно это увеличило бы вероятность атаки 51% и привело бы к коллапсу.

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

    Таргет постоянно меняется. Таргет и есть сложность. На примере известной сети Биткоин – каждые 2 недели (2016 блоков) алгоритм производит пересчёт. Используя записи о времени блоков, определяется, с какой частотой майнеры их находили. Если время уменьшается, сложность будет расти. И наоборот. 

    Средний уровень известен – 2016. Если майнеры добыли 2100 блоков (больше), то поделив 2100 на 2016 получим 1,04. А при 1900 (меньше) имеем 0,94. Отклонение полученного числа от 1 и есть коэффициент изменения сложности на следующие 2 недели. Так можно узнать сложность майнинга в сети.

    Что такое хэшрейт?

    Количество хэшей, что способно перебрать устройство (либо множество устройств).

    Возьмем для примера Bitmain Antminer S19 Pro (ASIC). Он может обработать 110 TH/s (110,000,000,000,000 вариантов простых чисел (nonce) в секунду). У хорошего процессора игрового компьютера (CPU) это значение в среднем 5-10 KH/s (от 5,000 до 10,000 вариантов соответственно).

    А в поддержании консенсуса всей сети Bitcoin участвуют более 140 EH/s вычислений (140,000,000,000,000,000,000 хэшей в секунду, подсказывает конвертер-калькулятор).

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

    В чём измеряется сложность майнинга

    Искомым хэшем. За его образование в первую очередь отвечает таргет. 

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

    Максимальная сложность майнинга

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

    Максимальный таргет начинается от 0x00000000FFFFFFFF...FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF. Почему не 0xFFFFFFFFFFFFFFFF...FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ? После появления генезис блока (самого первого в истории блокчейна BTC) должно было пройти 2 недели, до первого пересчёта. Чтобы избежать коллапса, когда даже базовый процессор смог бы чрезмерно быстро находить блоки, Сатоши Накамото прибавил к максимальному таргету 8 нулей. И последующие хэши, сгенерированные майнерами, должны иметь определённое количество ведущих нулей, поэтому он должен быть ниже шестнадцатеричного целевого значения.

    От чего зависит сложность майнинга

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

    Каждые 2 недели, после пересчёта сложности, сеть фиксирует, насколько больше или меньше добыто блоков, по сравнению со средним значением (2016 – потому что двухнедельный период – это 20160 минут, и цель – 10 минут на блок). Затем прибавляет нули к искомому таргету, и всё больше вариантов простого числа (nonce) требуется перебрать, чтобы найти следующий хэш.

    Как влияет сложность сети на майнинг

    Приходится перебирать больше хэшей, так как таргет снижается. Уменьшаются шансы найти блок. 

    Эмиссия от этого не уменьшается, она заложена в код и будет достигнута, если в сети есть хотя-бы 1 активный узел.

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

    Хэшрейт в Bitcoin всё ещё стабильно растёт по экспоненте. Майнеры видят перспективу, невзирая на сложность.

    Сложность разных криптовалют

    Каждая монета может использовать модифицированный или уникальный алгоритм. Изучим самые популярные.

    • Bitcoin Cash

    Изначально Bitcoin Cash использовал алгоритм пересчёта сложности Bitcoin, но майнеры начали переключаться между сетями после нахождения блока BTC, для большей прибыли, что образовало прыжки хэшрейта в BCH. Иногда на поиск блока уходил час, а пересчёт занимал более 2 недель (до месяца), потому что цель определяется не по временному штампу, а рассчитана на 2016 блоков. 

    Вместо классического Difficulty Adjustment Algorithm (DAA) в Bitcoin Cash ввели Emergency Difficulty Adjustment (EDA) с 1 августа 2017. Обновление снижало сложность добычи на 20%, если 6 успешных блоков добывались дольше, чем 12 часов.

    13 ноября 2017 EDA был заменён новым Difficulty Adjustment Algorithm (DAA), но отличным от того, что у Bitcoin. С этого дня сложность плавно меняется на каждом блоке. Для расчётов используется движущееся окно в 144 последних блока. Модель доказала свою эластичность и эффективность.

    • Bitcoin SV

    Сложность может быть снижена на 50% за 1 пересчёт, и вырасти на 100% (в сравнении с 75% и 400% оригинального Bitcoin). Форк Bitcoin SV произошёл после введения EDA в Bitcoin Cash. Новая монета BSV так и оставила алгоритм пересчёта сложности EDA (сбрасывает сложность добычи на 20%, если на чеканку 6 блоков ушло более 12 часов).

    • Litecoin

    Будучи форком Bitcoin, Litecoin унаследовал от него ретаргет каждые 2016 блоков. Но время блока у LTC – 2,5 минуты вместо 10. Пересчёт сложности выполняется каждые 3,5 дня вместо 2 недель.

    • Ethereum

    В версии до 2.0, Ethereum пока ещё использует PoW (Proof-of-Work), разработчики нацелены на постоянное увеличение сложности с помощью Difficulty Bombs («бомб сложности»). Каждые 100 тыс. блоков, что около 15 дней, повышается степень для экспоненциального роста. В конце концов Ethereum перейдёт с майнинга на стейкинг (PoS, Proof-of-Stake).

    Таргет меняется, если время между блоками увеличивается или уменьшается от целевой – 14 секунд.

    • Ethereum Classic

    29 мая 2018 сообщество проголосовало за «обезвреживание» «бомбы сложности» на высоте блока 5900000. Ethereum Classic аналогично PoW ETH пересчитывает сложность на плаву, стремясь к времени блока 14 секунд.

    • Dogecoin

    Ретаргетинг происходит каждую минуту после обновления 17 марта 2014. 

    До этого на протяжении года Dogecoin выпустили несколько обновлений: убрали параметр случайной награды за блок (между 0 и 500 тыс. DOGE), и снизили время на пересчёт сложности с 4 часов до 1 минуты.

    • Monero

    В сети Monero из последних 720 блоков исключаются 60 блоков, что добывались по времени дольше всего, и 60, что быстрее всего. Получается 600 блоков. Определяется среднее время их добычи. Затем таргет корректируется так, чтобы блоки продолжали находить раз в 120 секунд.

    от РЕДАКЦИЯ
    Регистрируясь, вы акцептуете Оферту
    Товарный знак Кошелёк.ру принадлежит
    ООО "Кошелёк.ру" (ИНН 7811454512)
    [email protected]
    8(800)55555-89 для звонков по РФ
    +7(900)55555-89 для международных звонков и мессенджеров