Kdo ten Bitcoin vlastně řídí?

Se zprávami o vyšetřování manipulace s cenou bitcoinu na centralizovaných kustodiálních trzích (kryptoměnových burzách) americkým ministerstvem spravedlnosti se opět vyrojil kopec konspiračních teorií o tom, kdo ten Bitcoin vlastně řídí – od amerických tajných služeb, iluminátů přes zákeřnou umělou inteligenci, čínské těžaře až po core vývojáře. Tak jak to je, řídí jej opravdu někdo?

Když hovoříme o řízení Bitcoinu, můžeme mít na mysli dvě věci. Za prvé je tu řízení chování bitcoinové sítě. Ta je řízena matematicky, sadou pravidel, která můžeme nalézt v dokumentu Bitcoin: A Peer-to-Peer Electronic Cash System, a je zajištěna chytrou kombinací asymetrické kryptografie, chytrých incentiv a mechanismem, který se nazývá proof of work. Ten vynucuje, aby každý, kdo se chce aktivně podílet na výběru transakcí do blockchainu, vynaložil nejprve určitou energii (doslova), kterou vkládá do systému jako zástavu své poctivosti. Pokud se později ukáže, že poctivý nebyl (například při pokusu zanést do blockchainu již utracenou transakci), nebo se jen nešťastnou náhodou nestane součástí nejdelšího řetězce (například, když dva těžaři vytěží jeden blok ve stejný čas), riskuje, že o vynaložené náklady přijde. Těžaři za vynaložení zdrojů, které vkládají do své aktivity jako zástavu, přidávají transakce a jsou za to v rámci sítě odměňováni, uživatelské nody (volba nodu má navíc ještě hlasovací funkci) ověřují zachování integrity blockchainu. Vzniká tak komunitně řízený konsensus, který řadě lidí stále připadá trochu jako sci-fi. Důvodem je jednoduše to, že většina z nás je stále zvyklá uvažovat spíše hierarchicky, a máme tudíž sklon důvěřovat autoritám, což je mimochodem jedno z populárních kognitivních zkreslení, které nám brání fungovat čistě na logické nebo alespoň racionální bázi.

Správně vás ale možná napadlo, že nad takovým systémem má neuvěřitelnou moc ten, kdo daná pravidla určuje. A tím se dostáváme k druhému bodu a tady to opravdu začíná být zajímavé. O bitcoinu se tvrdí, že jej nespravuje žádná centrální autorita, je to ale přeci jen kus softwaru a software vždycky někdo vytváří. Ten někdo má za normálních okolností enormní moc a je lhostejno, jestli jde o software proprietární nebo otevřený – Linus Torvalds má například coby benevolentní diktátor dodnes právo veta, pokud jde o nové příspěvky do Linuxového jádra. Přestože se v případě Bitcoinu jeho tvůrce (nebo tvůrci) prozíravě stáhl do pozadí, mnoho lidí přisuzuje podobnou moc vývojářskému týmu okolo Bitcoin Core. To je ale ve skutečnosti jen hrubé nepochopení toho, jak vlastně Bitcoin funguje. Jak bylo řečeno výše, Bitcoin je řízen jen dvěma skupinami lidí: uživateli a těžaři, a to na základě společného konsenzu.

Jeden Bitcoin, různé implementace

Bitcoin sám vlastně ani není plnohodnotná aplikace, je to jen protokol – jazyk, který mezi sebou počítače sdílí, aby se domluvily. Není to přitom protokol ledajaký, ale protokol otevřený, nejsou zde žádní strážci brány (což neplatí například pro napojení na tradiční finanční systém skrze bankovní účet), kteří určují pravidla, za jakých je možné být součástí sítě. Jediné, co je potřeba, je řídit se protokolem. Každý může vytvořit nový software (nový full nod/peněženku), a ten se dokonce může v řadě ohledů od původního protokolu odchylovat. Pokud jej akceptuje většina uživatelů a těžařů, vznikne fork sítě, do té doby se ale vyplatí fungovat podle pravidel, která akceptuje většina. Přestože Bitcoin core, software, který se odvíjí od původní implementace Satoshiho Nakamota, dnes tvoří přes 94 % bitcoinové sítě, nalezneme v síti i jiné implementace – Libbitcoin, loňský uživatelský vzdoro fork Bitcoin UASF, Bitcoin XT a Bitcoin Classic a mnohé další. Některé jsou jen elegantnější alternativou k Bitcoin Core implementaci, jiné připomínají podmořskou minu, která po většinu času dělá jakoby nic (řídí se stejnými pravidly jako okolí), ale pokud dojde k naplnění určitých podmínek, tak exploduje a dokáže v síti způsobit pěkné vlny. Jakmile se pak moře zase uklidní, už nikdy nebude jako dřív. Všechny tyto implementace ale musí (než přijde jejich čas) sledovat většinou akceptovanou podobu protokolu a soupeřit o uživatelskou přízeň. Dokud se tak děje, celkem nerušeně koexistují vedle sebe. V principu tudíž jde o nejdemokratičtější možný proces řízení, jaký si lze vůbec představit.

Kdo řídí vývoj

Princip a praxe jsou pochopitelně dvě různé věci, a tak při bližším pohledu zjistíme, že každá jednotlivá implementace nebo fork jsou ve skutečnosti řízeny jejich respektovanými developery nebo iniciátory. Ti mohou být benevolentní a řídit vývoj na základě crowdsourcingu, (Bitcoin Classic) nebo více či méně diktátorsky. Nevýhody obou přístupů jsou zřejmé na první pohled, a proto se zde o nich nebudu zbytečně rozepisovat. Zajímavý kompromis je přístup, který zvolil právě tým okolo Bitcoin Core. Zde je celý proces řízen volným meritokratickým procesem (forma správy, ve které jsou funkce rozdávány dle skutečných schopností) skupinového posuzování a hrubým konsensem mezi nejaktivnějšími přispěvateli. Co to znamená? Kdokoli z venku může podat návrh na nové vylepšení nebo optimalizaci bitcoinové implementace prostřednictvím tzv. BIP – Bitcoin Improvement Proposal. Nejaktivnější již prověření vývojáři pak návrh posuzují a pokud se shodnou na jeho začlenění, je vyhráno. Na nezávislost procesu dohlíží momentálně Core vývojář Wladimir van der Laan se skupinou další vývojářů.

Přes relativně rozumný přístup řady vývojářských týmů je potřeba si přiznat, že na úrovni jednotlivých implementací je to již s tou nezávislostí trochu horší. Co je ale důležité si zároveň uvědomit, je fakt, že způsob řízení jednotlivých implementací a způsob řízení Bitcoinové sítě jako takové jsou dvě zcela odlišné věci. Vývojáři mohou sice teoreticky změnit jakoukoli část Bitcoin kódu, ale pokud s těmito změnami nebude souhlasit většina uživatelů, budou to pořád jen změny v jejich aplikacích, ne v Bitcoin síti jako takové. Součástí sítě se taková aplikace stává teprve tehdy, když se uživatelé rozhodnou si ji stáhnout a začít danou implementaci používat na svých počítačích. A moc nad tím, jaký software na svých počítačích provozujeme, vývojáři zatím naštěstí nemají. Každý si může zvolit preferovanou implementaci zcela dobrovolně a pokud je dostatečně technicky zručný, může se dokonce pokusit přijít s vlastní. Velká moc nad podobou Bitcoinu tak leží na samotných jeho uživatelích. Ti hlasují tím, jaký software na svých počítačích provozují. Vývojáři naopak jen dávají různé možnosti, připomínají tak ze všeho nejvíce asi poradce. Vývojáři jsou samozřejmě uživateli také, ale to je již úplně odlišná role.

Nedává tak například příliš smysl provozovat aplikaci, která se radikálně odchyluje od v současnosti uznávaných pravidel protokolu, pokud se nám na svoji stranu nepodaří získat většinu uživatelů sítě, a to včetně těžařů. V opačném případě hrozí, že nám ostatní v síti přestanou rozumět a nikdo se s námi nebude bavit. Jinými slovy, uplatňování a prosazování stávajících pravidel protokolu je snadné. Změna pravidel protokolu Bitcoinu je ale mnohem obtížnější. To je také důvod, proč Bitcoin Core development preferuje pouze takové změny v protokolu, které chce většina. Jejich implementace navíc většinou neprobíhá násilně (formou hard forku), ale tak, aby všichni mohli přepnout až tehdy, když budou připraveni nebo alespoň bude změny akceptovat většina současné sítě (soft fork). Takové změny sice rozšiřují současné možnosti bitcoinové sítě, ale z počátku neomezují konzervativnější uživatele, kteří si přejí používat protokol tak, jak jsou zvyklí. Nové bloky jsou tedy například stále přijímány starými nody, ale bloky, které byly vytěženy starými verzemi minerů, začínají být novými nody odmítány. V momentě, kdy většina těžařů upgaduje svůj těžební software, stane se řetězec s bloky podle nových pravidel nejdelším řetězcem, a tím pádem jediným platným bitcoinovým blockchainem. Těžaři, kteří stále těží postaru, zjistí, že těží na umírajícím chainu, což pro ně není výhodné a také upgradují svůj software. Dojde tak k postupné autokorekci celého systému.

Protože nové verze bloků jsou akceptovány starými i novými nody, ale staré jen těmi původními, nová verze bloku časem zvítězí. Důležité je si uvědomit, že vývojáři mohou takové změny pouze navrhovat, nikoli již vynucovat jejich používání. To je věcí uživatelů.

Těžaři a ti druzí

Další silou, která má právo do procesu mluvit vedle uživatelů, jsou samozřejmě těžaři. Tím, že vybírají transakce, které budou zahrnuty do nových bloků, musí s každou větší změnou ve způsobu užívání protokolu souhlasit také většina (95 %) současné hashing power. Těžaři mají podobnou moc jako uživatelé, svým způsobem možná dokonce větší. Pokud se většina těžařů dohodne, mohou si vynutit aktivaci soft-forku, aniž by k tomu potřebovali podporu developerů Bitcoinu a uživatelů. Vzhledem k relativní centralizaci minigových operací okolo levných zdrojů elektřiny je to dokonce snazší než změny prosazované z druhé strany barikády. Uživatelé na to ale nemusí přistoupit. Pokud se tak nestane, vývojáři mohou na základě uživatelského konsensu přijít s novým algoritmem, který udělá ze současného vysoce specializovaného těžebního hardware jen drahé topení. Obě strany se tak drží do jisté míry v šachu a realizované změny jsou zpravidla výsledkem rozumného kompromisu.

Specifickou formou změn v bitcoinové síti jsou pak hard forky – zpětně nekompatibilní změny, které vyžadují, aby všichni uživatelé souhlasili se změnou pravidel k přesně stanovenému datu a uznali novou sadu pravidel jako nový Bitcoin. Pokud by se tak nestalo, došlo by k permanentnímu rozdělení sítě a obě by si mohly nárokovat dědictví Bitcoinu. Skutečnou výzvou je v takovém případě přesvědčit obě strany k přepnutí na novou sít a uznat ji za nový Bitcoin. Vždy se totiž najde někdo, pro koho bude existence na staré síti výhodnější, a proto se ji pokusí udržet. V minulosti docházelo k hardforkům prakticky jen tehdy, když se objevila závažná bezpečnostní chyba ohrožující samotnou podstatu celé sítě.

Uživatelé mají ale ještě jinou moc a ta již není rozdistribuována tak demokraticky. Bitcoin je užitečný jen tehdy, dokud je aktivně využíván jako platidlo nebo jiný druh používaného aktiva. Uživatelé, kteří akceptují více plateb a pracují s největšími hodnotami transakcí, tak mají v praxi větší vliv na podobu Bitcoinu než ostatní.

Šest plus jedna populární lež o Bitcoinu. První část.

Šest plus jedna populární lež o Bitcoinu. Druhá část

Newsletter