Decentralizace, č. Bezpečnostní předpoklad, že devatenáctiletý mladík v Chang-čou a někdo, kdo je možná ve Velké Británii a možná ne, se ještě nerozhodli vzájemně se dohodnout.
V uplynulém týdnu došlo k velkému množství zmatků ohledně problému centralizace těžby v bitcoinové síti. Viděli jsme jediný těžařský fond GHash.io, který po mnoho hodin nashromáždil více než 45 hashpower a v jednom okamžiku dokonce vyrostl na 51 celé sítě. Celá přední strana bitcoinového redditu byla v intenzivní diskusi a vzácném střetu s uspokojením a strachem, horníci se rychle mobilizovali, aby odebrali svou hashpower z GHash, a překvapivě chytré strategie byly použity ve snaze obnovit rovnováhu mezi různými fondy , až do a včetně jednoho horníka s těžbou „mezi 50 TH / sa 2 PH / s“ na GHash, ale odmítnutí předat platné bloky, v zásadě sabotovaly všechny miny v bazénu až do 4. Nyní situace poněkud ustoupila a GHash až 35 síťové hashpower a běžec, Discus Fish, až 16, a je pravděpodobné, že taková situace zůstane alespoň na krátkou dobu, než se situace znovu zahřeje. Je problém vyřešen? Samozřejmě že ne. Lze problém vyřešit? To bude hlavním předmětem tohoto příspěvku.
Těžba bitcoinů
Nejprve pochopme problém. Účelem těžby bitcoinů je vytvořit decentralizovaný systém časových razítek, který v podstatě používá mechanismus většinového hlasování k určení, v jakém pořadí přišly určité transakce, jako způsob řešení problému dvojího utrácení. Problém s dvojitým výdajem je jednoduché vysvětlit: pokud vám pošlu transakci, která vám posílá 100 BTC, a pak o den později pošlu transakci, která mi pošle stejných 100 BTC, obě tyto transakce samozřejmě nemohou současně zpracovat. Jeden ze dvou tedy musí „vyhrát“ a intuitivně správná transakce, která by měla získat tu čest, je ta, která byla na prvním místě. Neexistuje však žádný způsob, jak se na transakci podívat a kryptograficky určit, kdy byla vytvořena. Tady vstupuje těžba bitcoinů.
Těžba bitcoinů funguje tak, že uzly zvané „horníci“ agregují nedávné transakce a vytvářejí balíčky zvané „bloky“. Aby byl blok platný, musí být platné všechny transakce, které obsahuje, musí „ukazovat na“ (tj. Obsahovat hash) předchozího bloku, který je platný, a musí splňovat „podmínku dokladu o práci“ ( jmenovitě SHA2562 (block_header) <= 2190, tj. dvojitý hash záhlaví bloku musí začínat velkým počtem nul). Vzhledem k tomu, že SHA256 je pseudonáhodná funkce, jediným způsobem, jak takové bloky vytvořit, je opakovaně se je pokoušet vytvořit, dokud jeden nesplní podmínku. „Cíl“ 2190 je flexibilní parametr; automaticky se upraví tak, aby v průměru celá síť musela pracovat deset minut, než bude mít jeden uzel štěstí a úspěch; jakmile se to stane, nově vyrobený blok se stane „nejnovějším“ blokem a každý se začne pokoušet těžit blok, který na tento blok ukazuje jako na předchozí blok. Tento proces, který se opakuje jednou za deset minut, představuje primární provoz bitcoinové sítě a vytváří neustále se prodlužující řetězec bloků („blockchain“), který v pořadí obsahuje všechny transakce, ke kterým kdy došlo.
Pokud uzel vidí dva nebo více konkurenčních řetězců, považuje se za ten, který je nejdelší, tj. ten, který má nejvíce důkazů o práci, aby byl platný. V průběhu času, pokud jsou ve hře současně dva nebo více řetězců, je vidět, jak je zaručeno, že řetěz s více výpočetním výkonem, který je podporován, nakonec vyhraje; proto lze systém popsat jako „jeden cyklus CPU, jeden hlas“. Existuje však jedna zranitelnost: pokud má jedna strana nebo jedna tajná skupina stran více než 50 veškerého síťového výkonu, pak má tato entita sama většinovou kontrolu nad hlasovacím procesem a může překonat jakýkoli jiný řetězec. To dává této entitě některá oprávnění:
- Entita může pouze uznat bloky, které sama vyrobila, za platné, což brání komukoli jinému v těžbě, protože její vlastní řetězec bude vždy nejdelší. Postupem času to zdvojnásobí výnosy denominované v BTC horníka na náklady všech ostatních. Pamatujte, že slabá verze tohoto útoku, „sobecká těžba“, začíná být účinná přibližně při síle sítě 25.
- Účetní jednotka může odmítnout zahrnout určité transakce (tj. Cenzuru)
- Entita se může „vrátit zpět v čase“ a zahájit těžbu před N bloky. Když tato vidlice nevyhnutelně předběhne originál, odstraní se tím účinek všech transakcí, ke kterým došlo v původním řetězci po bodu rozvětvení. To lze použít k získání nezákonného zisku (1) odesláním BTC na burzu, (2) čekáním 6 bloků na potvrzení vkladu, (3) nákupem a výběrem LTC, (4) obrácením vkladové transakce a místo toho odesláním ty mince zpět útočníkovi.
Toto je obávaný „útok 51“. Zejména však ani 99 hashpower nedává útočníkovi privilegium přidělit si libovolný počet nových mincí nebo ukrást mince někoho jiného (kromě reverzních transakcí). Dalším důležitým bodem je, že k zahájení takových útoků není potřeba 51 sítě; pokud vše, co chcete, je podvést obchodníka, který přijímá transakce po čekání na N potvrzení (obvykle,
N = 3
nebo
N = 6
Pokud váš těžařský fond má část P sítě, můžete s pravděpodobností uspět:
(P / (1-P)) ^ N
při 35 hashpower a 3 potvrzeních to znamená, že GHash může v současné době ukrást altcoiny z burzy altcoinů s 15,6 pravděpodobností úspěchu – jednou za každých šest pokusů.
Bazény
Tady se dostáváme k bazénům. Těžba bitcoinů je obohacující, ale bohužel velmi proměnlivá aktivita. Pokud v aktuálním Síť 100 PH / s, provozujete ASIC s 1 TH / s, pak každý blok, který máte šanci na 1 ze 100 000, obdrží blokovou odměnu 25 BTC, ale dalších 99999 krát ze 100 000 nezískáte přesně nic. Vzhledem k tomu, že síťová hashpower se v současné době zdvojnásobuje každé tři měsíce (pro jednoduchost řekněme 12500 bloků), to vám dává pravděpodobnost 15,9, že vaše ASIC někdy vygeneruje odměnu, a 84,1 šanci, že celkové celoživotní výdělky ASIC nebudou přesně nic.
Těžařský fond funguje jako druh inverzního pojišťovacího agenta: těžební fond vás požádá, abyste těžili na jeho vlastní adresu místo vaší, a pokud vygenerujete blok, jehož důkaz o práci je téměř dost dobrý, ale ne tak docela, nazvaný „share“ , pak vám fond dá menší platbu. Například pokud obtížnost těžby pro hlavní řetězec vyžaduje, aby hash byl menší než 2190, pak požadavek na akcii může být 2190. Proto v tomto případě vygenerujete akcii zhruba každých sto bloků, obdržíte 0,024 BTC z fond a jednou z tisíců z nich těžební fond získá odměnu 25 BTC. Rozdíl mezi očekávanými 0,00024 BTC a 0,00025 BTC za blok je zisk těžební skupiny.
Těžařské bazény však slouží i jinému účelu. Právě teď je většina těžebních ASIC mocná v hašování, ale překvapivě slabá ve všem ostatním; Jediná věc, kterou často mají pro obecný výpočet, je malý Raspberry Pi, příliš slabý na to, aby stáhl a ověřil celý blockchain. Horníci to mohli opravit za cenu něčeho jako dalších 100 $ za zařízení pro slušnější CPU, ale neudělají to – ze zřejmého důvodu, že 0 $ je méně než 100 $. Místo toho požádají těžební fondy, aby pro ně generovaly data o těžbě. Dotčená „data těžby“ se týkají záhlaví bloku, několika stovek bytů dat obsahujících hash předchozího bloku, kořene stromu Merkle obsahujícího transakce, časové značky a některých dalších pomocných dat. Horníci vezmou tato data a pokračují v zvyšování hodnoty zvané „nonce“, dokud záhlaví bloku nesplňuje podmínku důkazu o práci. Horníci obvykle odebírají tato data z bloku, který nezávisle určí jako nejnovější blok; zde je však aktuální výběr toho, co je nejnovější blok, zařazen do fondů.
Co tedy máme? Právě teď, v podstatě toto:
Těžařský ekosystém se zpevnil do relativně malého počtu fondů a každý z nich má podstatnou část sítě – a samozřejmě minulý týden jeden z těchto fondů, GHash, dosáhl 51. Vzhledem k tomu, že pokaždé, když jakýkoli těžařský fond, ať už Deepbit v roce 2011 nebo GHash v roce 2013, dosáhl 51 došlo k náhlému masivnímu snížení počtu uživatelů, je zcela možné, že GHash ve skutečnosti dostal kdekoli až 60 hashpower sítě, a některé z nich jednoduše skrývá. Ve skutečném světě existuje spousta důkazů o velkých korporacích, které vytvářejí údajně vzájemně si konkurující značky, které působí dojmem volby a dynamiky trhu, takže taková hypotéza by neměla být vůbec opomíjena. I za předpokladu, že GHash je ve skutečnosti upřímný ohledně úrovně hashpower, kterou má, co tento graf doslovně říká, je, že jediným důvodem, proč proti Bitcoinu právě neprobíhá 51 útoků, je Discus Fish, těžební fond provozovaný devatenáctiletý v čínském Chang-čou a GHash, těžební skupina provozovaná údajně ve Velké Británii, ale může být kdekoli, se dosud nerozhodli navzájem se domluvit a převzít blockchain. Alternativně, pokud má někdo sklon věřit tomuto konkrétnímu devatenáctiletému mladíkovi v Chang-čou (koneckonců, když jsem ho potkal, vypadal docela pěkně), může Eligius nebo BTCGuild místo toho domlouvat s GHashem.
Co když se například GHash znovu dostane přes 51 a začne podnikat 51 útoků (nebo možná dokonce zahájí útoky proti burzám altcoinů na 40)? Co se potom stane?
Nejprve nechme z cesty jeden špatný argument. Někteří tvrdí, že nezáleží na tom, zda se GHash dostane nad 51 let, protože pro ně neexistuje motivace k útokům na síť, protože i jeden takový útok by zničil hodnotu jejich vlastních měnových jednotek a těžebního hardwaru. Tento argument je bohužel prostě absurdní. Chcete-li zjistit proč, zvažte hypotetickou měnu, kde těžební algoritmus je jednoduše ověřovač podpisu pro můj vlastní veřejný klíč. Pouze já mohu podepisovat bloky a mám veškerou motivaci k zachování důvěry v systém. Proč by bitcoinová komunita nepřijala můj jednoznačně nadřazený důkaz o práci, který neplytvá elektřinou? Existuje mnoho odpovědí: mohl bych být iracionální, mohl by mě donutit vláda, mohl bych začít pomalu vštěpovat kulturu, kde jsou přijatelné transakční zvraty pro určité „dobré účely“ (např. Blokování plateb za dětskou pornografii) a pak to pomalu rozšiřovat pokrýt všechny své morální předsudky, nebo bych mohl mít dokonce obrovský zkrat proti bitcoinu při 10násobném využití. Tyto prostřední dva argumenty nejsou šílené hypotetické látky; jsou skutečnými dokumentovanými akcemi implementace me-coinů, které již existují: PayPal. Proto je decentralizace důležitá; nespálíme miliony dolarů elektřiny ročně jen proto, abychom se přesunuli k měně, jejíž trvalá stabilita závisí na mírně odlišném druhu politické hry.
Kromě toho je důležité si uvědomit, že i samotný GHash má v minulosti zapojení do používání útoků obrácení transakcí proti webům s hazardními hrami; konkrétně si lze vzpomenout na epizodu zahrnující BetCoin kostky. GHash samozřejmě popírá, že by podnikl nějaké úmyslné kroky, a je pravděpodobně správný; spíše se zdá, že útoky byly chybou nepoctivého zaměstnance. Toto však není argument ve prospěch GHash; je to naopak empirický důkaz skutečného světa, který ukazuje společný argument ve prospěch decentralizace: moc kazí a stejně důležité je, že moc přitahuje ty, kteří již jsou zkorumpovaní. Teoreticky GHash od té doby zvýšil bezpečnost; v praxi, bez ohledu na to, co dělají, tento centrální bod zranitelnosti bitcoinové sítě stále existuje.
Existuje však další, lepší argument, proč těžařské bazény nejsou problémem: konkrétně skutečnost, že nejde o jednotlivé horníky, ale spíše o bazény, ze kterých mohou horníci kdykoli vstoupit a odejít. Z tohoto důvodu lze rozumně říci, že Nárok společnosti Ars Technica že bezpečnost bitcoinu „rozbila anonymní těžař s 51 síťovým výkonem“, je zcela nepřesná; neexistuje žádný horník, který by ovládal něco blízkého 51. Existuje skutečně jediná entita, zvaná CEX.io, která ovládá 25 GHash, což je samo o sobě strašidelné, ale přesto daleko od scénáře, který nadpis naznačuje. Pokud se jednotliví těžaři nechtějí podílet na rozvracení bitcoinového protokolu a nevyhnutelně snižovat hodnotu svých mincí o něco kolem 70, mohou jednoduše opustit fond a taková věc se nyní v historii bitcoinu stala třikrát. Otázkou však je, jak se bude bitcoinová ekonomika nadále profesionalizovat, a bude tomu tak i nadále? Nebo, vzhledem k poněkud „chamtivějším“ jednotlivcům, budou horníci pokračovat v těžbě v jediném fondu, který jim umožní pokračovat ve výdělku, a individuálně šetřit své vlastní zisky za cenu společného seskupení celého těžebního ekosystému bitcoinu dolů z útesu?
Řešení
Dokonce i nyní existuje jedna strategie, kterou mohou a mají horníci podniknout k rozvrácení GHash.io: těžba v bazénu, ale záměrné zadržení všech bloků, které zjistí, že jsou skutečně platné. Taková strategie je nezjistitelná, ale při těžbě minerů 1 PH / s tímto způsobem v podstatě snižuje zisky všech těžařů GHash asi o 2,5. Tento druh sabotáže bazénu zcela popírá výhodu používání nulového poplatku GHash nad jinými fondy. Tato schopnost potrestat špatné herce je zajímavá, i když její důsledky jsou nejasné; co když GHash začne najímat horníky, aby udělali totéž pro každý jiný fond? Namísto spoléhání se na sabotážní taktiku vigilante s neprozkoumanou ekonomickou koncovkou bychom se tedy měli v ideálním případě pokusit hledat jiná řešení.
Nejprve je tu stále přítomný P2P mining pool, P2Pool. P2Pool existuje už léta a funguje tak, že má svůj vlastní interní blockchain s 10sekundovým časem blokování, který umožňuje těžařům odesílat akcie jako bloky v řetězci a vyžaduje, aby se horníci pokoušeli vyrábět bloky odesílající na všech posledních několik desítek sdílení výrobci současně. Pokud by P2Pool měl 90 síťových hashpower, výsledkem by nebyla centralizace a benevolentní diktatura; spíše by limitujícím případem byla jednoduše replika obyčejného bitcoinového blockchainu. P2Pool má však problém: vyžaduje, aby horníci plně ověřovali uzly. Jak je popsáno výše, vzhledem k možnosti těžby, aniž by byl plně validujícím uzlem, je to nepřijatelné.
Jedním z řešení tohoto problému je mít těžební algoritmus, který nutí uzly lokálně ukládat celý blockchain. Jednoduchý algoritmus pro to v případě bitcoinu je:
def mine (block_header, N, nonce): o = [] pro i v rozsahu (20): o.append (sha256 (block_header + nonce + i)) n = [] pro i v rozsahu (20): B = ( o [i] / 2 ** 128)% N n.append (tx (B, o [i])) vrátit sha256 (block_header + str (n))
Kde tx (B, k) je funkce, která vrací kth transakci v bloku B, v případě potřeby zalamuje modulo počet transakcí v tomto bloku a N je číslo aktuálního bloku. Všimněte si, že se jedná o jednoduchý algoritmus a je velmi neoptimální; některé zjevné optimalizace zahrnují jeho vytvoření sériové (tj. o [i + 1] závisí na n [i]), vytvoření stromu Merkle z hodnot o [i], aby bylo možné je jednotlivě ověřit, a udržování dvou stromů Merkle v každý blok, jeden ukládá transakce a druhý ukládá všechny aktuální zůstatky, takže algoritmu stačí dotazovat aktuální blok.
Tento přístup ve skutečnosti řeší dva problémy současně. Nejprve odstraní pobídku k použití centralizovaného fondu namísto P2Pool. Zadruhé, v bitcoinu stále probíhá krize ohledně toho, jak je příliš málo plných uzlů; Důvod, proč tomu tak je, je ten, že udržování celého uzlu s jeho 20GB blockchainem je drahé a nikdo to nechce dělat. S tímto schématem by každý těžařský ASIC byl nucen uložit celý blockchain, stav, ze kterého by se provádění všech funkcí plného uzlu stalo triviálním.
Druhou strategií je další kryptografický trik: zajistit, aby těžba nebyla outsourcovatelná. Konkrétně jde o to vytvořit těžební algoritmus tak, že když horník vytvoří platný blok, vždy musí mít alternativní způsob publikování bloku, který pro sebe zajistí odměnu za těžbu. Strategií je použít kryptografickou konstrukci zvanou důkaz nulových znalostí, kryptograficky dokázat, že vytvořili platný blok, ale udržet data bloku v tajnosti, a poté současně vytvořit blok bez důkazu o práci, který pošle odměnu minerovi. Díky tomu by bylo triviální podvádět těžební fond, díky čemuž by těžařské bazény nebyly životaschopné.
Takové nastavení by vyžadovalo podstatnou změnu těžařského algoritmu bitcoinu a používá kryptografické primitivy mnohem pokročilejší než ty ve zbytku bitcoinu; Složitost je sama o sobě vážnou nevýhodou a ta, která možná stojí za to vyřešit vážné problémy, jako je škálovatelnost, ale ne implementovat chytrý trik, který by odradil těžební fondy. Znemožnění těžebních fondů navíc problém pravděpodobně ještě zhorší, ne zlepší. Důvodem, proč existují těžební fondy, je řešení problému rozptylu; horníci nejsou ochotni koupit investici, která má jen 15 šancí na návratnost. Pokud je možnost sdružování nemožná, těžební ekonomika se jednoduše centralizuje do menší sady větších hráčů – nastavení, od kterého se na rozdíl od teď nemohou jednotliví účastníci jednoduše přepnout. Předchozí schéma na druhé straně stále umožňuje sdružování, pokud má místní uzel plný blockchain, a tím podporuje druh sdružování (jmenovitě p2pool), který není systémově škodlivý.
Jiný přístup je méně radikální: neměňte vůbec algoritmus těžby, ale měňte algoritmy sdružování. Právě teď většina těžebních fondů používá výplatní schéma s názvem „pay-per-last-N-shares“ (PPLNS) – plaťte těžařům za akcii částku na základě výnosů z posledních několika tisíc akcií. Tento algoritmus v podstatě rozděluje vlastní rozptyl fondu mezi jeho uživatele, což nemá za následek žádné riziko pro fond a malé množství rozptylu pro uživatele (např. Při použití fondu s 1 hashpower je očekávaná standardní odchylka měsíčních výnosů ~ 15, daleko lepší než loterie pro sólovou těžbu, ale stále nezanedbatelná). Větší fondy mají menší rozptyl, protože těží více bloků (podle základních statistik má fond s 4x větší těžební silou dvakrát menší standardní odchylku v procentech). Existuje další schéma zvané PPS (pay-per-share), kde těžební fond jednoduše platí statickou částku za akcii těžařům; toto schéma odstraňuje veškerou odchylku od těžařů, ale za cenu zavedení rizika pro fond; proto to žádný důlní fond nedělá.
Multi-PPS společnosti Meni Rosenfeld se pokouší poskytnout řešení. Místo těžby do jednoho fondu se horníci mohou pokusit vyrobit bloky, které platí mnoha fondům současně (např. 5 BTC do jednoho fondu, 7 BTC do druhého, 11,5 BTC do třetího a 1,5 BTC do čtvrtého) a bazény budou plaťte minerovi za akcie proporcionálně (např. místo jednoho fondu platícího 0,024 BTC za akcii zaplatí první fond 0,0048, druhý 0,00672, třetí 0,01104 a čtvrtý 0,00144). To umožňuje velmi malým fondům přijímat pouze těžaře, kteří jim dávají velmi malé odměny, což jim umožňuje nést na sebe riziko odpovídající jejich ekonomickým možnostem. Například pokud je fond A 10x větší než fond B, pak fond A může přijímat bloky s výstupy do nich až 10 BTC a fond B může přijímat pouze 1 BTC. Pokud někdo provede výpočty, je vidět, že očekávaný výnos pro fond B je přesně desetkrát vyšší než zisk fondu A za každých okolností, takže fond B nemá žádnou speciální superlineární výhodu. Ve scénáři s jedním PPS by naopak menší B ve srovnání se svým bohatstvím čelilo 3,16x vyššímu riziku.
Problém je v tom, do jaké míry je problém skutečně kvůli rozptylu a do jaké míry je to něco jiného, například pohodlí? Jistě, 1 těžební fond uvidí 15 měsíční standardní odchylku ve svých výnosech. Všechny těžební fondy však ve svých výnosech vidí něco jako 40měsíční standardní odchylku jednoduše kvůli volatilní ceně BTC. Rozdíl mezi 15 směrodatnou odchylkou a 2 směrodatnými odchylkami se zdá velký a závažným důvodem pro použití největší skupiny; rozdíl mezi 42 a 55 není tolik. Jaké další faktory by tedy mohly ovlivnit centralizaci těžebního fondu? Dalším faktorem je skutečnost, že fondy nutně „slyší“ o svých vlastních blocích okamžitě a blocích všech ostatních po určitém zpoždění sítě, takže větší fondy budou méně často těžit na zastaralých blocích; tento problém je kritický pro blockchainy s časem deseti sekund, ale v bitcoinech je účinek menší než 1, a tedy nevýznamný. Třetím faktorem je pohodlí; to lze nejlépe vyřešit financováním snadno použitelného open-source řešení pro vlastní těžbu v podobném duchu jako software používaný mnoha malými poskytovateli VPS; pokud to bude považováno za důležité, můžeme nakonec částečně financovat síťově agnostickou verzi takového úsilí. Posledním faktorem, který stále zůstává, je to, že GHash nemá žádný poplatek; fond se spíše udržuje prostřednictvím svého připojení k cloudové těžební společnosti ASIC CEX.io, která ovládá 25 své hashpower. Pokud se tedy chceme skutečně dostat na konec problému s centralizací, možná se budeme muset podívat na samotné ASIC.
ASIC
Těžba bitcoinů měla být původně velmi rovnostářským pronásledováním. Miliony uživatelů po celém světě by všichni těžili bitcoiny na svých počítačích a výsledkem by byl současně distribuční model, který je vysoce rovnostářský a široce rozšiřuje počáteční nabídku BTC, a konsensuální model, který zahrnuje tisíce zúčastněných stran, což prakticky vylučuje jakoukoli možnost koluze. Zpočátku tento systém fungoval a zajistil, že prvních několik milionů bitcoinů se rozšířilo mezi tisíce uživatelů, včetně dokonce i běžně špatných studentů středních škol. V roce 2010 však přišel nástup těžařského softwaru pro GPU („jednotka grafického zpracování“), který využil masivní paralelizace GPU k dosažení 10–100násobného zrychlení a znemožnění těžby CPU během několika měsíců. V roce 2013 se specializace posunula s příchodem ASIC. ASIC nebo aplikačně specifické integrované obvody jsou specializované těžební čipy vyráběné za jediným účelem: vytáhnout co nejvíce výpočtů SHA256, aby bylo možné těžit bitcoinové bloky. Výsledkem této specializace je, že ASIC získají další 10 až 100násobné zrychlení oproti GPU, čímž se těžba GPU stane také nerentabilní. Jediným způsobem, jak těžit, je nyní založit společnost ASIC nebo koupit ASIC od existující.
Způsob, jakým společnosti ASIC fungují, je jednoduchý. Nejprve se společnost rozběhne, provede minimální nastavení a vyčíslí svůj plán a začne přijímat předobjednávky. Tyto předobjednávky se poté používají k financování vývoje ASIC a jakmile jsou ASIC připraveny, zařízení se odešlou uživatelům a společnost začne pravidelně vyrábět a prodávat další. Výroba ASIC se provádí v potrubí; existuje jeden typ továrny, která vyrábí čipy pro ASIC, a pak další, méně sofistikovaná operace, kde jsou čipy spolu se standardními součástmi, jako jsou desky s plošnými spoji a ventilátory, spojeny do kompletních krabic, které mají být odeslány kupujícím.
Kde nás to tedy opustí? Je zřejmé, že produkce ASIC je poměrně centralizovaná; tyto zařízení vyrábí asi 10–30 společností a každá z nich má značnou úroveň hashpower. Neuvědomil jsem si však, jak centralizovaná je produkce ASIC, dokud jsem nenavštívil tuto nenáročnou malou budovu v čínském Shenzhenu:
Ve třetím patře továrny vidíme:
Na prvním obrázku je asi 150 těžařů po 780 GH / s, což na jednom místě tvoří celkem 120 TH / s těžařů – více než 0,1 z celkové hashpower sítě. Druhý obrázek ukazuje pole obsahující dalších 150 TH / s. Továrna dohromady produkuje každý den o něco více než součet těchto dvou množství – asi 300 TH / s. Nyní se podívejte na tento graf:
Celkově bitcoinová síť každý den získá přibližně 800 TH / s. I když tedy přidáme některé bezpečnostní faktory a za předpokladu, že se továrna několik dní v týdnu vypne, máme jedinou továrnu, která produkuje více než čtvrtinu všech nových hashpowerů přidaných do bitcoinové sítě. Nyní je budova trochu velká, takže hádejte, co je v prvním patře? To je pravda, výrobní zařízení produkující Scrypt ASIC, které se rovná čtvrtině všech nových hashpower přidaných do sítě litecoinů. To promítá obraz děsivé koncovky pro bitcoiny: bitcoinová síť utrácí každoročně miliony dolarů elektřiny, jen aby nahradila těžařský algoritmus amerického dolaru „8 bílých mužů“ několika desítkami lidí v Shenzhenu.
Než však budeme příliš znepokojeni budoucností těžby, je důležité rozebrat a pochopit (1), co se děje s ASIC, (2) co je v pořádku s CPU, a (3) k čemu bude budoucnost těžby ASIC. vypadat jako. Otázka je složitější, než se zdá. Nejprve by se dalo položit otázku, proč je špatné, že ASIC vyrábí pouze několik společností a čtvrtina z nich prochází jednou továrnou? CPU jsou také vysoce centralizované; integrované obvody vyrábí jen malý počet společností a téměř všechny počítače, které používáme, mají alespoň některé komponenty od AMD nebo Intel. Odpověď je, že ačkoli AMD a Intel vyrábějí procesory, nekontrolují, co na nich běží. Jedná se o zařízení pro všeobecné účely a výrobci nemohou žádným způsobem převést jejich kontrolu nad výrobním procesem do jakékoli kontroly nad jejím použitím. „Důvěryhodné výpočetní moduly“ plné DRM existují, ale je velmi těžké si představit, že by se něco takového používalo k tomu, aby přinutilo počítač k účasti v útoku s dvojitým výdajem..
S ASIC horníky to teď není tak špatné. Ačkoli se ASIC vyrábí pouze v malém počtu továren, stále je kontrolují tisíce lidí na celém světě v různorodých datových centrech a domácnostech a jednotliví těžaři, z nichž každý má obvykle méně než několik terahash, mají schopnost nasměrovat svou hashpower kamkoli potřebují. Brzy se to však může změnit. Co za měsíc, co když si výrobci uvědomí, že pro ně nemá ekonomický smysl prodávat své ASIC, když mohou instovat jednoduše uschovat všechna svá zařízení v centrálním skladu a vydělat plné výnosy? Náklady na dopravu by klesly téměř na nulu, zpoždění při přepravě by klesla (zpoždění při odeslání za jeden týden odpovídá ~ 5,6 ztrátám na výnosech při současném tempu růstu hashpower) a nebylo by nutné vyrábět stabilní nebo hezké kryty. V tomto scénáři by to nebylo jen 25 všech ASIC, které vyrábí jedna továrna v Shenzhenu; bylo by to 25 ze všech hashpower vyčerpaných z jedné továrny v Shenzhenu.
Při návštěvě ústředí společnosti v Chang-čou, která se mimo jiné zabývá těžbou litecoinů, jsem položil zakladatelům stejnou otázku: proč neudržujete horníky jen interně? Poskytli tři odpovědi. Nejprve jim záleží na decentralizaci. Tomu se dá snadno porozumět a je velmi šťastné, že se to prozatím cítí tolik horníků, ale nakonec budou těžbu provádět firmy, kterým záleží trochu více na peněžním zisku a méně na ideologii. Zadruhé, potřebují předběžné objednávky k financování společnosti. Přiměřené, ale řešitelné vydáváním „těžebních smluv“ (v zásadě kryptoměny, které vyplácejí dividendy ve výši konkrétního počtu GH / s těžební síly). Za třetí, ve skladech není dostatek elektřiny a prostoru. Poslední argument, jakkoli se zdá být záludný, může z dlouhodobého hlediska jako jediný zadržet vodu; je to také uvedený důvod, proč ASICminer přestal těžit čistě interně a začal prodávat USB minery spotřebitelům, což naznačuje, že za takovým rozhodnutím je možná silné a univerzální zdůvodnění.
Za předpokladu, že strategie financování prodeje předobjednávek a prodeje těžebních smluv jsou ekonomicky ekvivalentní (což jsou), rovnice pro určení, zda má vlastní těžba nebo prodej větší smysl, je následující:
Na levé straně máme náklady na vlastní těžbu: elektřina, skladování a údržba. Na pravé straně máme náklady na elektřinu, skladování a údržbu externě (tj. V rukou kupujících), dopravu a pokutu za to, že budete muset provozovat ASIC později, a také negativní faktor, který vysvětluje skutečnost, že někteří lidé těží alespoň částečně ze zábavy a z ideologické touhy podporovat síť. Pojďme si teď tato čísla zanalyzovat. Použijeme Butterfly Labs Monarch jako mimo příklad a pro jednoduchost udržujte každý ASIC v provozu po dobu jednoho roku.
- Interní elektřina, skladování, údržba – podle stránky pokladny BFL stojí vnitřní elektřina, skladování a údržba 1512 $ ročně, což za předpokladu, že BFL bude mít nějaký zisk, označíme na 1000 $
- Externí elektřina – v Ontariu jsou ceny kolem 0,1 $ za KwH. Spustí se Monarch Butterfly Labs 600 GH / s při 350 W.; normalizovat to na per-TH, to znamená náklady na elektřinu 1,40 $ za den nebo 511 $ za celý rok
- Externí úložiště – doma lze považovat úložiště za bezplatné nebo si můžete přidat poplatek za pohodlí ve výši 1 $ za den; proto řekneme někde od 0 do 365 $
- Externí údržba – je těžké tuto hodnotu vyčíslit; pro technicky zdatné invididuals, kteří mají rádi výzvu, je nulová, a pro ostatní to může být těžké; můžeme tedy říci od 0 do 730 USD
- Cena poštovného – podle BFL, 38 $.
- Příjmy – v současné době vám 1 TH / s dává 0,036 BTC nebo 21,6 $ za den. Vzhledem k tomu, že v naší analýze se hashpower zdvojnásobuje každých 90 dní, takže účinnost ASIC se každých 90 dní sníží na polovinu, získáme 122 dní života nebo výnos 2562 $
- Dodací lhůta – podle mých čínských zdrojů jeden týden
- Čas zdvojnásobení hashpower – tři měsíce. Celý výraz pro pokutu za zpoždění odeslání je tedy 2562 * (1 – 0,5 ^ 0,0769) = 133,02
- Prémie pro fandy / ideologie – v současné době to velká část těžařů bitcoinů dělá z ideologických důvodů, takže můžeme říci kdekoli od $ 0 do $ 1000
Když to tedy všechno spočítáme, nalevo máme 1 000 $ a napravo máme 511 + 38 $ + 133 $ = 682 $, až plus 1095 $ a minus až 1000 $. Je tedy zcela nejednoznačné, který z nich je lepší; chyby v mé analýze a mlhavé proměnné toho, jak moc si lidé cení svého času, a estetika zdánlivě převažují nad určitými konečnými závěry. Co se ale stane v budoucnu? V zásadě lze očekávat, že elektřina, skladování a údržba by byly centrálně mnohem levnější než u každého spotřebitele jednoduše kvůli úsporám z rozsahu a přínosům ze specializace; navíc většina lidí v „reálném světě“ nejsou altruisté, fandové nebo obdivovatelé krásných obalů ASIC. Náklady na dopravu jsou nad nulou a pokuta za zpoždění při odeslání je nad nulou. Zdá se tedy, že ekonomika upřednostňuje centralizovanou těžbu…
… Až na jeden potenciální faktor: teplo. Právě teď jsou ASIC stále ve fázi rychlého vývoje, takže drtivá většina nákladů je na hardware; miner BFL použitý ve výše uvedeném příkladu stojí 2200 $, ale elektřina stojí 511 $. V budoucnu však bude vývoj mnohem pomalejší; nakonec můžeme očekávat konvergenci k Moorovu zákonu, kdy se hashpower zdvojnásobuje každé dva roky, a dokonce se zdá, že i samotný Mooreův zákon zpomaluje. V takovém světě se náklady na elektřinu mohou vrátit jako primární tlumivka. Kolik však stojí elektřina? V centralizovaném skladu, dost, a zákon čtvercové krychle zaručuje, že v centralizovaném prostředí bude třeba na chlazení vynaložit ještě více energie než doma, protože všichni horníci jsou na jednom místě a většina z nich je příliš hluboko uvnitř továrny, aby byli vystaveni chladnému čerstvému vzduchu. Pokud je však v domácnosti venkovní teplota nižší než přibližně 20 ° C, náklady na elektřinu jsou nulové; veškerá elektřina utracená horníkem se nutně nakonec promění v „odpadní“ teplo, které pak ohřívá domov a nahrazuje elektřinu, kterou by utrácel ústřední topení. Toto je jediný argument, proč decentralizace ASIC může fungovat: spíše než decentralizace probíhá proto, že každý má na svém notebooku určité množství nevyužitých a tedy volných jednotek výpočetního času, decentralizace probíhá proto, že mnoho lidí má určité množství poptávky po vytápění ve svých domovech.
Stane se to? Zdá se, že mnoho zastánců bitcoinů je přesvědčeno, že odpověď je ano. Nejsem si však jistý; jde o zcela empirickou otázku, zda náklady na elektřinu jsou či nejsou nižší než náklady na údržbu plus skladování plus přeprava plus zpoždění při přepravě a za deset let může rovnice dobře spadnout na jednu nebo druhou stranu. Já osobně nejsem ochoten jednoduše sedět a doufat v to nejlepší. To je důvod, proč mě osobně zklamaní, že tolik klíčových vývojářů bitcoinů (i když naštěstí ne téměř všichni) je spokojených s tím, že považují problém práce za „vyřešený“, nebo tvrdí, že pokus o řešení těžební specializace je věcí „Zbytečné přepracování“. Může se to ukázat, nebo nemusí, ale skutečnost, že v první řadě vedeme tuto diskusi, silně naznačuje, že současný přístup bitcoinu není zdaleka dokonalý.
Odpor ASIC
Nejčastěji nabízeným řešením problému ASIC je vývoj algoritmů těžby odolných vůči ASIC. Při vývoji těchto algoritmů doposud existovaly dvě myšlenkové linie. Prvním z nich je tvrdost paměti – snížení výkonu ASIC k dosažení obrovských zisků prostřednictvím paralelizace pomocí funkce, která zabírá velmi velké množství paměti. Prvním pokusem komunity byl Scrypt, který se ukázal jako nedostatečně odolný; v lednu jsem se pokusil vylepšit Scryptovu paměťovou tvrdost pomocí Daggera, algoritmu, který je paměťově těžko vypočítatelný (v rozsahu 128 MB), ale snadno ověřitelný; tento algoritmus je však citlivý na útoky sdílené paměti, kde řada paralelních procesů může přistupovat ke stejným 128 MB paměti. Aktuální nejmodernější paměťově odolný PoW je Kukačka, algoritmus, který v grafech hledá cykly délky 42. Efektivně najít takové cykly vyžaduje velké množství paměti, ale cyklus je velmi rychlý k ověření, vyžaduje 42 hashů a méně než 70 bajtů paměti.
Druhý přístup je poněkud odlišný: vytvořit mechanismus pro generování nových hashovacích funkcí a vytvořit prostor funkcí, které generuje, tak velký, že typ počítače, který je nejvhodnější pro jejich zpracování, je ze své podstaty zcela zobecněný, tj. CPU. Tento přístup se blíží tomu, aby byl „prokazatelně odolný vůči ASIC“, a tedy více odolný vůči budoucnosti, než aby se zaměřoval na konkrétní aspekty, jako je paměť, ale také je nedokonalý; vždy budou existovat alespoň některé části CPU, které se v takovém algoritmu ukáží jako nadbytečné a lze je kvůli účinnosti odstranit. Úkol však není o dokonalou odolnost ASIC; výzvou je spíše dosáhnout toho, co můžeme nazvat „ekonomický odpor ASIC“ – budování ASIC by nemělo stát za to.
To je ve skutečnosti překvapivě pravděpodobné, že bude dosažitelné. Chcete-li zjistit proč, nezapomeňte, že těžba za utracený dolar je pro většinu lidí sublimní. Výroba prvních N jednotek těžební energie je velmi levná, protože uživatelé mohou jednoduše využít stávající nevyužitý výpočetní čas na svých počítačích a platit pouze za elektřinu (E). Nad rámec jednotek N je však třeba platit jak za hardware, tak za elektřinu (H + E). Pokud jsou ASIC proveditelné, pokud je jejich zrychlení nad komoditním hardwarem menší než (H + E) / E, pak bude i v ekosystému obsahujícím ASIC výhodné, aby lidé utráceli těžbu elektrické energie na svých počítačích. To je cíl, o který se chceme snažit; zda se k němu dokážeme dostat, nebo ne, je zcela neznámé, ale protože kryptoměna jako celek je v každém případě masivním experimentem, neškodí to zkusit.