431 / 736CAP

Jan Čapek

Spoluzakladatel Braiins a spolutvůrce Stratum V2

Spoluzakladatel Braiins, který pomáhá těžařům lépe ovládat jejich stroje. Jeho práce sahá od Braiins OS až ke společnému návrhu Stratum V2, pravidel pro komunikaci mezi těžaři a pooly.

Jan Čapek je český inženýr a spoluzakladatel Braiins s Pavlem Moravcem. U těžby Bitcoinu nestačí koupit výkonný stroj: software mu musí předávat práci a řídit jeho chod. Právě této vrstvě se Čapek věnuje. Podílel se na Braiins OS, softwaru uvnitř těžebních zařízení, a s Moravcem a Mattem Corallem navrhoval Stratum V2. Ten určuje, jak se zařízení a další těžební služby dorozumívají. Jeho příběh tak ukazuje, jak může software změnit to, co má majitel stroje skutečně pod kontrolou.

Čapek s Pavlem Moravcem založil Braiins jako firmu zaměřenou na vestavěný software, tedy programy běžící uvnitř zařízení. Vedle toho už existoval Bitcoin.cz Mining Pool, který v roce 2010 vytvořil Marek Palatinus, známý jako Slush. Pool umožňuje těžařům spojit práci a dělit se o výnosy podle jeho pravidel, místo aby každý čekal na vlastní nalezený blok. Tyto dvě historie se později spojily: Čapek je spoluzakladatelem firmy, která pool převzala, zatímco jeho původním zakladatelem zůstává Palatinus. [1]

V roce 2013 Braiins získaly většinový podíl a převzaly celý provoz poolu. Palatinus tím získal prostor věnovat se Trezoru. Zbývající podíl firma získala prvního září 2020. Oznámení na webu nese datum publikace 29. prosince 2021, ale v samotném textu uvádí starší datum transakce. Pro čtenáře historie je to důležitý rozdíl: později zveřejněný článek neznamená, že firma začala pool provozovat až tehdy. Převzetí provozu a dokončení vlastnické změny byly dva samostatné kroky. [1]

Představte si Antminer S9: jeho čipy opakovaně provádějí výpočty, ale program jim musí práci připravit a řídit jejich chod. Takovému softwaru uvnitř zařízení se říká firmware. Firemní historie popisuje, jak tým pod Čapkovým vedením ověřil podporu AsicBoost, způsobu efektivnějšího využití těžebních výpočtů, a vyvinul otevřený Braiins OS uvedený v roce 2018. Otevřený zdrojový kód dává vývojářům možnost zkoumat, co program dělá. Čapkův doložený přínos se zde týká softwaru; neznamená autorství samotného čipu. [1] [2]

Čapek v rozhovoru zveřejněném v roce 2020 vysvětluje autotuning: automatické hledání vhodné frekvence a napětí pro jednotlivé čipy při zvoleném příkonu. Frekvence souvisí s tempem jejich práce, napětí s elektrickým provozem; cílem je využít dostupnou energii účelněji. Těžaři tak nejde jen o co nejvyšší číslo výkonu, ale také o to, kolik ho provoz stojí. Čapek tehdy zvažoval placenou proprietární vrstvu nad otevřeným základem Braiins OS. Rozhovor vysvětluje tento tehdejší obchodní záměr; nedokládá licenci ani cenu každé dnešní verze. [2]

Vedle programu ve stroji je potřeba společný jazyk pro předávání práce a výsledků. Tímto jazykem je těžební protokol: dohodnutá pravidla zpráv, kterým obě strany rozumějí. Na návrhu Stratum V2 pracovali Jan Čapek, Pavel Moravec a Matt Corallo. Oficiální web jeho údržbu připisuje nezávislé otevřené komunitě. Čapkův příspěvek tedy pokračuje i za hranice vlastního výrobku Braiins. Jde o společný standard, podle něhož mohou různí vývojáři vytvářet spolupracující programy, nikoli o protokol vlastněný jedinou firmou. [3]

Když těžař posílá výsledky přes internet, nechce, aby je někdo cestou četl nebo pozměňoval. Stratum V2 proto používá šifrování s kontrolou neporušenosti zpráv a ověření identity serveru. Specifikace vyžaduje bezpečné navázání vzdáleného spojení k nadřazeným službám; v místní síti, například mezi strojem a místním prostředníkem, připouští výjimku pro tento postup navázání. Taková ochrana řeší cestu zprávy. Sama však neprověřuje účetnictví poolu ani nezaručuje, že pool později vyplatí odměnu. Bezpečný přenos a důvěryhodný provozovatel zůstávají dvě odlišné otázky. [4]

Další otázka je, kdo sestaví návrh příštího bloku včetně jeho transakcí. Tento návrh se nazývá bloková šablona. Job Declaration umožňuje klientovi, tedy programu na straně těžaře, koordinovat vlastní práci se spolupracujícím poolem. Navazující Template Distribution mu dodává šablony a Mining Protocol přenáší těžební práci a výsledky. Názvy popisují části jedné sestavy, které musí spolupracovat. Samotný nápis Stratum V2 na firmwaru proto ještě neříká, zda těžař v daném zapojení skutečně vybírá transakce. Rozhodující jsou zapnuté a podporované součásti. [5]

Specifikace počítá i s odmítnutím: odpověď DeclareMiningJob.Error označuje odmítnutou deklaraci těžební úlohy. Klient se pak má přepnout k jinému poolu se službou JDS, tedy Job Declarator Server, nebo v krajním případě na solo mining. Při samostatné těžbě se už výnos nesdílí stejným způsobem jako v poolu. Přechod zároveň potřebuje funkční náhradní nastavení; samotný název protokolu nezajistí nepřetržitý chod. Smyslem návrhu je dát těžaři možnost odejít a dál používat zvolenou šablonu. Zda to jeho zařízení opravdu zvládne, záleží na celé sestavě. [5]

Pro nejúplnější obraz čtěte toto heslo společně s Braiins, Stratum V2, Mining Firmware. Opačným směrem na něj odkazují také Stratum V2.

DOC · 001Braiins — Remaining pool stake acquisitionPrimární zdroj DOC · 002Jan Čapek — Mining software interview, 2020Primární zdroj DOC · 003Stratum V2 — Designers and independent maintenancePrimární zdroj DOC · 004Stratum V2 — Protocol SecuritySpecifikace DOC · 005Stratum V2 — Job Declaration ProtocolSpecifikace
Revidováno: Primární zdroje · Nejde o investiční doporučení