Какво всъщност значи «трудност»
За да добави блок, миньорът отново и отново хешира заглавната част на блока, като променя стойност, наречена nonce, и търси резултат, който да падне под числов праг, наречен цел. По-ниска цел означава, че съществуват по-малко валидни хешове, тоест средно са нужни повече опити — точно това прави добива «по-тежък».
Трудността е просто четим за човек начин да се изрази колко ниско стои тази цел, измерена спрямо най-лесната цел, която протоколът някога е допускал (трудност 1). Трудност от, да речем, няколко трилиона означава, че сегашната цел е трилиони пъти по-малка от онази отправна точка. Възлите извеждат целта направо от трудността, така че двете са само два погледа към едно и също число.
Ритъмът от 2016 блока
Биткойн не се настройва след всеки блок, а преизчислява веднъж на епоха от 2016 блока. При десет минути на блок 2016 блока би трябвало да отнемат точно две седмици (20 160 минути) — затова промяната на трудността обикновено се описва като двуседмична.
Тъй като интервалът се брои в блокове, а не в календарно време, реалното разстояние между две настройки се разтяга, когато мрежата добива бавно, и се свива, когато добива бързо. Всеки пълен възел прави същата сметка самостоятелно и стига до същата нова стойност, тъй че няма какво да се гласува и какво да се съгласува.
Сметката зад всяка настройка
В края на епоха мрежата сравнява колко наистина са продължили последните 2016 блока с това колко е трябвало да продължат. По същество: нова трудност = стара трудност × (очаквано време ÷ действително време). Ако блоковете са идвали по-бързо от очакваното, действителното време е по-малко от очакваното и трудността се вдига; ако са идвали по-бавно, тя пада.
Промяната е ограничена: една настройка може най-много да учетвори трудността или да я свали до една четвърт. Тази граница пречи на диви люлеения след кратък прилив или срив на изчислителна мощ. Има и стара, безобидна неточност с единица: времевият отрязък се мери през 2015 интервала, но се третира като 2016 — затова средното време на блок стои с косъм над десет минути.
Защо десет минути и защо това има значение
Целевото разстояние между блоковете е компромис. Много по-бързи блокове биха се разпространявали по-ненадеждно в световна мрежа, умножавайки пропиляната работа и краткотрайните разклонения; много по-бавни блокове биха направили потвържденията мъчително бавни. Десет минути са избрани като предпазлива средна мярка, която дава на блока време да се разнесе по целия свят, преди вероятно да бъде намерен следващият.
Именно устойчивостта на този интервал прави графика на емисията на биткойн предвидим. Тъй като на всеки две седмици се добиват около 2016 блока, халвингът, който намалява наградата за блок, пада близо до заложения четиригодишен такт, а общото предлагане се приближава към тавана от 21 милиона по предвидим път.
Трудност, хешрейт и обратната връзка
Когато нови машини за добив влязат в действие, блоковете се намират по-бързо от всеки десет минути; следващата настройка вдига трудността и отново ги забавя. Когато миньори изключват — заради цени на енергията, бракуван хардуер, сезонно положение с тока или регионални правила —, блоковете се забавят, а следващата настройка сваля трудността, за да ги ускори. Системата се поправя със задна дата; тя не гледа напред.
Струва си да се отбележи, че хешрейтът не се измерва пряко: мрежата не вижда колко машини работят. Публикуваните числа за хешрейт са оценки, изведени от трудността и от наблюдаваните времена на блоковете, и тъкмо затова са неспокойни в кратки отрязъци и се четат най-добре като тенденция.
Гранични случаи и какво трудността не казва
Резките сътресения в реалния свят показват механизма в работа. Когато в средата на 2021 г. голям добивен регион отпадна от мрежата, тя преживя най-голямата си дотогава настройка надолу (около 28 %), която върна нормалните времена на блоковете още през следващата епоха. Правилата за времевите отпечатъци и границата от четирикратно изменение пазят освен това от миньори, които биха искали да повлияят на преизчислението чрез часовника.
Трудността измерва вложеното усилие за сигурността на мрежата и икономиката на добива — тя не е ценови сигнал и не е пазарен показател. Движи се на бавни, скокообразни стъпки и реагира на минали времена на блокове, тъй че казва малко за търсенето, ликвидността или оценката. Инструменти като BIKENZO се намират в съвсем друг слой и представят по-широк пазарен контекст, например глобален индекс на ликвидността срещу цената на биткойн; това е макро и пазарен контекст, отделен от on-chain механиката на трудността. И двата погледа са полезни и отговарят на различни въпроси.