Block Withholding Attack je útok, při kterém těžař posílá poolu běžné doklady o práci, ale záměrně neodevzdá nalezené řešení platného bloku. Pool tak může započítávat jeho práci, aniž by od něj dostával odpovídající příležitosti k získání blokových odměn.
Mining Pool sdružuje těžaře a podle dohodnutých pravidel rozděluje odměny. Nemůže však čekat, až každý malý účastník najde celý blok. Jak vysvětluje Bitcoin Developer Guide, používá proto shares: výsledky splňující jednodušší podmínku, které průběžně dokládají vykonanou práci. Vzácný výsledek splní i přísnější podmínku bitcoinové sítě. Útočník běžné shares odevzdává, ale tento cennější nález zahodí. Stroj přitom skutečně počítá a spotřebovává elektřinu; nejde o bezplatné předstírání těžby. [3]
Odpověď závisí na výplatním modelu. Meni Rosenfeld rozlišuje Pay Per Share (PPS), kde provozovatel platí za přijaté shares, a Pay Per Last N Shares (PPLNS), kde se skutečné blokové odměny rozdělují podle nedávno přijatých shares ve vymezeném rozsahu. U PPS tedy schodek z chybějících bloků nese provozovatel, pokud dodržuje slíbené platby. U PPLNS je méně peněz k rozdělení mezi účastníky, včetně útočníka. Stejný zahozený nález proto může připravit o příjem různé účastníky. Rozhodující jsou konkrétní pravidla poolu, nikoli jen nápis „těžba“ v přehledu. [1]
Samotné zahazování nálezů může být nákladnou sabotáží. Útočník platí za stroje a elektřinu a vzdává se části výnosu, který mohl získat poctivě. Ittay Eyal zkoumá také složitější případ: konkurenční pool nechá část výkonu poctivě těžit a část nasadí proti jinému poolu. Za určitých předpokladů může takové rozdělení zvýšit jeho celkový příjem. Výsledek matematického modelu ale není příslib zisku po všech nákladech. Ztráta oběti sama neříká, zda útočník na celé operaci vydělal. [2]
U obou názvů se setkáme s nezveřejněným blokem, ale jeho osud je jiný. Eyal a Emin Gün Sirer popisují Selfish Mining jako těžbu na neveřejné větvi řetězce a strategické zveřejňování jejích bloků. Útočník chce prosadit vlastní větev a získat za ni odměny. Klasický Block Withholding Attack uvnitř poolu naproti tomu nalezené bloky zahazuje; nepotřebuje budovat vítěznou soukromou větev. Existují i varianty, které odevzdání jen odkládají. Při čtení analýzy proto potřebujeme vědět, kterou strategii autor skutečně zkoumá. [4]
Představme si období, v němž by poctivý těžař podle výkonu a obtížnosti našel v průměru 1 blok. Poissonův model, který používá také Rosenfeld, popisuje nezávislé náhodné nálezy při stálém očekávaném tempu. Dává přibližně 37% šanci, že nenajde žádný. Při očekávaných 3 blocích je tato šance asi 5%. To není pravděpodobnost viny: počítáme možnost nulového výsledku za předpokladu poctivé těžby, nikoli pravděpodobnost podvodu po pozorování nuly. Příklad předpokládá odpovídající stabilní podmínky a předem vymezené období. Průměr není termín, do kterého musí blok přijít. [1]
Eyal upozorňuje na obtížnost přiřazení útoku konkrétnímu malému těžaři. Nestačí ukázat účet bez nalezeného bloku. Potřebujeme porovnat přijaté shares s bloky za stejné období a zohlednit obtížnost shares, tedy množství práce, které zastupují. Hashrate označuje rychlost výpočtů; jeho odhad z těchto dokladů také kolísá. Prověřit je třeba i výpadky, chybějící záznamy a změny podmínek. Pool může mít důvod problém vyšetřit, aniž by měl dost podkladů k obvinění konkrétního člověka. [2]
Eyal probírá bonus za nalezený blok, budování reputace i zkušební úlohy se známým řešením. Každý návrh ale něco mění. Bonus přesouvá více odměny k nálezci, a může tak zvýšit kolísání příjmů malých těžařů. Reputační pravidla ztěžují přechod mezi pooly; zkušební úlohy potřebují údržbu a spolehlivé vyhodnocení. Není to univerzální ochrana, kterou stačí zapnout. Provozovatel musí posoudit účinek i vedlejší dopady a poctivě říct, co jeho opatření dokáže rozpoznat. [2]
Bitcoin Developer Guide odděluje hledání bloku od jeho ověření sítí. Zatajený nález nemění pravidla platnosti transakcí a sám neumožní utratit cizí mince ani přepsat potvrzenou historii. Poškozuje hlavně ekonomiku a důvěru uvnitř těžební spolupráce. Pro čtenáře je proto užitečné držet se tří otázek: co se zatajilo, kdo podle smluvených pravidel přišel o peníze a jaké důkazy skutečně máme. Popsaný mechanismus není obviněním žádného současného poolu. [3]
Pro nejúplnější obraz čtěte toto heslo společně s Mining Pool, Pay Per Last N Shares, Hashrate, Selfish Mining.