Задържане на блокове: атаката, невидима в отделния дял
Миньор изпраща истински дялове и крие единствения, който би бил блок. Научете колко струва това, кой плаща, защо някой го прави и как се хваща.
Какво е атака със задържане на блок?
Това е миньор, който изпраща всеки обикновен дял, но крие единствения, който би бил блок. Пулът плаща за дяловете. Блокът така и не пристига.
Всеки дял, който изпращате на пула, е истинско решение, което не е достигнало целта на блока. Целта на блока е по-високата летва, която хешът трябва да премине, за да стане блок. От време на време едно решение преминава и нея, и този дял е цял блок.
Такъв дял изглежда като всеки друг, докато пулът не го провери.
Нападателят върши работата честно и изпраща всеки обикновен дял. Той тихо изхвърля единствения, който би бил блок. Пулът брои дяловете и плаща за тях. Блокът, който е трябвало да получи, така и не пристига.
Защо един дял не може да го издаде?
Нищо в нападателя не изглежда нередно в нито един отделен дял. Хардуерът е истински, хешрейтът също. Дяловете са валидни и пристигат с правилното темпо. Пулът може да разгледа един дял и да не види нищо.
Липсващото е отсъствие, а отсъствие се вижда само с времето. Миньор с даден дял от хешрейта на пула трябва да намира приблизително същия дял от блоковете му.
За един час това не казва нищо. Намирането на блокове е случайно, а тихите периоди са обичайни. За достатъчно дълъг прозорец обаче казва много.
Колко струва и кой плаща?
Пулът губи наградата за блок, която е трябвало да получи. Но загубата всъщност не пада върху пула. Това си струва да се разбере за всеки пул.
- При пропорционална схема рундът продължава, докато някой друг намери блок. Всички в рунда са работили по рунд, който е траял по-дълго, отколкото е трябвало. Така всеки печели малко по-малко на единица работа. Цената се разпределя между честните миньори.
- При схема с плащане за дял е по-лошо за оператора. Пулът вече е платил за всеки дял от собствения си джоб и разчита блоковете да пристигнат. Продължителната атака директно източва оператора. Исторически точно за този случай хората са се тревожили най-много.
Защо някой би направил това?
Нападателят изхвърля и наградата за блок. На пръв поглед това е чисто самоувреждане. Има смисъл само ако нападателят печели някъде, където пулът не вижда.
Обичайният мотив е конкуренцията. Някой със собствен пул може да наеме или насочи хешрейт към съперник и да потиска резултатите му. Тогава собственият му пул изглежда по-късметлийски в сравнение. Дяловете, които нападателят все пак прибира, плащат за саботажа.
При по-хитър вариант нападателят задържа блока, вместо да го изхвърли. Той продължава да копае върху него тайно и го изпраща по-късно, в удобен за него момент. Това е по-трудно за изпълнение. Нужен е голям дял от хешрейта, за да си струва опитът.
Как се открива?
Откриването е статистическо, защото няма друг сигнал. Сравнете блоковете, които даден участник е намерил, с блоковете, които според броя на дяловете му е трябвало да намери. Правете го в прозорец, достатъчно дълъг, за да се изравни късметът.
Прозорецът е трудната част.
- Ако е кратък, обикновеният лош късмет изглежда като атака. Честните миньори ще бъдат обвинявани постоянно.
- Ако е дълъг, истинският нападател действа известно време, преди числата да проговорят.
Няма хитър начин да се избегне този компромис. Той идва от случайността, а не от софтуера.
Затова сериозният детектор поставя въпроса пред човек, вместо да действа сам. Автоматична забрана, водена от статистика, един ден ще забрани някого, който просто е нямал късмет. Да изключиш легитимен миньор е по-лошо от самата атака.
Какво означава това за честния миньор?
Почти нищо, и си струва да се каже ясно.
Дяловете Ви се броят и плащат еднакво и в двата случая. Лошият късмет не е нарушение и не може да бъде. В който и да е кратък прозорец повечето миньори нямат късмет.
Поредица от рундове, в които сте допринесли много, а пулът не е намерил нищо, е нормална вариация. Показателят за късмет в статистиката на пула Ви показва колко нормално е това.
Тази атака е една от причините пуловете да се интересуват кой насочва хешрейт към тях. Тя е и причината пул, който честно публикува блоковете и късмета си, да е по-лесен за доверие. Всичко, което Ви трябва, за да проверите пула, е на страницата с блокове.