SegWit2x

A máme zde další z nekonečné řady článků o škálovacích řešeních v oblasti Bitcoinu. Tentokrát se zaměříme na to nejperspektivnější z nich – SegWit2x.

Jak se blíží (ať už přátelská, nebo nepřátelská) implementace dvou řešení škálovatelnosti, nejvíce pozornosti si v poslední době získává jedno z nich – SegWit2x. Poprvé byl představen v květnu tohoto roku (2017) a rychle si získal podporu mezi startupy (začínajícími firmami) v oblasti digitálních měn i mezi těžebními pooly. Díky specifickému technickému řešení a vlastním cílům je toto řešení vnímáno tak trochu sporně. Jaké jsou ale argumenty pro a proti?

SegWit2x chce upgradovat bitcoinový protokol dvěma způsoby:

  • Aktivací dlouho propírané optimalizace zdrojových kódů, známé jako Segregated Witness, neboli SegWit. Ten mění způsob, jakým jsou data v síti ukládána, respektive snižuje množství informací, které je třeba uložit do bloku v blockchainu.
  • Nastavuje odpočet pro zvětšení velikosti bloku v blockchainu z jednoho MB na dva na tři měsíce od aktivace SegWitu.

Rozumět dobře tomuto návrhu může být trochu problematické. Už jen proto, že návrh má jak technickou, tak politickou i filosofickou rovinu. Někteří dokonce tvrdí, že i osobní.

Celá debata se ale každopádně točí okolo základních faktů o současném designu sítě a jejího výkonu. A to jmenovitě:

  • Bitcoin má v současné době velké omezení v množství transakcí, které může zpracovat. Je to zhruba 2000 každých 10 minut, což plyne z omezení velikosti bloku na 1MB a velikosti průměrné transakce kolem 500 bajtů.
  • Během špičky tak může docházet k tomu, že se v mempoolu vrší validované transakce, které ale ještě nejsou umístěné v bloku. Posuďte v souvislosti s denním množstvím zpracovaných transakcí, které lze najít na hlavní stránce info.
  • Jelikož všichni uživatelé, kteří BTC posílají, za tyto transakce platí, tak rostou průměrné náklady na transakci. Ve špičce si musíte připlatit, aby těžaři zahrnuli do bloku zrovna vaši transakci, protože si vybírají ty s větším nastaveným poplatkem.
  • Díky velkému množství dat v bloku roste i velikost blockchainu – ten musí plnohodnotné uzly skladovat celý na svém počítači.

Základy

SegWit2x není první návrh na zlepšení škálovatelnosti a zvýšení kapacity. Již jsme psali o původním SegWitu a také Bitcoin Unlimited, oba z roku 2015. SegWit2x se ale liší v několika směrech:

  • Nebyl navržen, ani schválen jádrovými vývojáři z Bitcoin Core.
  • Nepředstavuje ani tak novou myšlenku, ale spíše kombinuje několik předchozích návrhů různých vývojářů.
  • Na rozdíl od původního SegWitu nebyl nikdy dlouhodobě testován a může tedy přinést velké porodní bolesti, pokud bude implementován.

SegWit2x tedy kombinuje následující přístupy:

  • SegWit: Optimalizace navržená jádrovým vývojářem Pieterem Wuillem na konci roku 2015. Jeho cílem je zvýšit množství transakcí, které lze uložit do bloku, aniž by se zvýšila jeho velikost. Na technické detaily se podívejte do našeho miniseriálu z dubna.
  • Zvětšení velikosti bloku: Tato dlouho prosazovaná změna by měla updatovat software tak, aby umožňoval akceptování bloků až do velikosti 2MB. Na toto téma vzniklo několik návrhů, za všechny jmenujme například Bitcoin XT, Bitcoin Classic a Bitcoin Unlimited. Žádný z nich ovšem nedosáhl potřebné podpory 95% hashrate, aby jej jádroví vývojáři zavedli.

Klient podporující SegWit byl oficiálně uvolněn v listopadu 2016. Z technických důvodů ale bylo potřeba, aby změnu aktivovaly těžební pooly, což se z různých důvodů nestalo.

SegWit2x bude spuštěn v testovacím režimu 14.7.2017 a ostrý start byl ohlášen na 21. července, kdy bude muset do prvního srpna získat podporu sítě. Pokud bude alespoň 80% kapacity sítě signalizovat návrhu podporu alespoň po dobu 672 bloků v kuse (tj. asi 4,5 dne), pak bude SegWit2 sítí schválen.

Kdo je pro a kdo proti?

S implementací SegWit2x souhlasí velká část důležitých lidí a podniků v oblasti kryptoměn. Většina z nich je s Bitcoinem spojována již od začátku:

  • Většina velkých těžebních poolů
  • Bitcoinové společnosti jako Coinbase, BitPay, nebo Blockchain
  • Vlivní vývojáři včetně bývalého hlavního vývojáře Bitcoin Core Gavina Andressena.
  • Kompletní seznam lze najít na stránkách s původním návrhem

Existují nicméně také vlivní odpůrci návrhu:

  • Několik podniků včetně Bitrated a Bitonic
  • Téměř všichni jádroví vývojáři zodpovědní za udržování zdrojového kódu Bitcoinu.
  • Aktivně udržovaná stránka na Bitcoin Wiki nabízí delší seznamy těch, kteří jsou pro i proti.

Co je v sázce?

Při bližším pohledu zjistíme, že úspěch SegWit2x stojí a padá se signalizací podpory návrhu uživateli. Jde v podstatě o volby, kdy ale vyhrává podpora přes 80% a nikoli přes 50%. Může se tedy stát následující:

  • Těžební pooly skutečně návrhu budou signalizovat podporu a pak bude prvního srpna aktivován SegWit – hardfork s rozšířením velikosti bloku na 2MB bude následovat za další tři měsíce. Jelikož je v současnosti podpora návrhu na 87 procentech, je jeho ostré spuštění pravděpodobné.
  • Podpora vyjádřena nebude a to v nejhorším případě může vést až k rozdělení Bitcoinu na dvě různé měny.

Jak lze očekávat, v takto velkém ekosystému budou existovat různé strany s různými názory na nejlepší směřování této měny.

Je třeba zdůraznit, že SegWit2x není jediným návrhem, který v současnosti přitahuje pozornost. Několik jich v dalších měsících může být taktéž aktivováno.

SegWit2x hlavně soutěží s konkurenčním návrhem BIP148. Tyto dva návrhy byly programovány jako kompatibilní, takže pokud dostatek poolů zasignalizuje podporu SegWitu2x do prvního srpna, pak se vyhneme forku. Pokud tomu tak nebude a prvního srpna bude aktivován BIP148, můžeme se rozdělení na dvě měny dočkat. V tom případě bude na místě vaše BTC držet na lokálním stroji, kde máte přístup k soukromému klíči, a ne na online peněžence.

Právě rozdělení na dvě měny se obává velká část uživatelů – to je také důvodem toho, že BTC nedokázal prorazit hranici 3000$ a proč v současnosti přešlapuje na místě a vyčkává. Pokud bude SegWit2x implementován a ukáže se jako stabilní, pak dojde ke skokovému nárůstu investic do BTC jak od opatrných uživatelů, tak hlavně od institucionálních investorů, kteří čekají na vyřešení situace s velikostí bloku. To pošle Bitcoin znovu na růstovou trajektorii.

Ve světle popsaných obav může rozdělení dopadnout přímo na uživatele dvěma způsoby:

  • S dostatečnou podporou pro SegWit2x bude po jeho aktivaci síť fungovat normálně a uživatelé si nevšimnou žádného problému se sítí.
  • Pokud SegWit2x díky malé podpoře aktivován nebude, pak mohou při následném rozdělení na dvě měny uživatelé přijít o své Bitcoiny. Jak se na tuto situaci připravit jsme již psali detailněji zde. Základem je neposílat žádné transakce v nejistém období od prvního srpna do uklidnění situace, tj. až několik dní.

Dalším problémem je nutnost updatovat svůj software na verzi podporující SegWit2x a 2MB velikost bloku. Ti, kteří tak neučiní, dělají v podstatě aktivní krok k tomu, aby se Bitcoin rozdělil na starý a nový.

Jak lze sledovat vývoj situace?

Detailní a pravidelně obnovované informace o „jízdním řádu“ aktivace různých verzí lze nalézt v angličtině zde. Jde o aktivně updatovaný článek, takže jej na našem serveru nebudeme překládat.

SegWit2x se začne testovat zítra, 14. července, a období pro vyjádření podpory začíná 21. července. Z tohoto důvodu budou chtít uživatelé bedlivě sledovat vývoj situace. Naštěstí existuje dostatek míst, kde to lze provést – žel bohu jen pokud umíte dobře anglicky.

Zde najdete mailing list SegWitu2x. Je sice veřejný, ale přispívat do něj mohou jen pozvaní uživatelé.

Zde se dá sledovat postup implementace SegWitu2x. Označen je jako BTC1.

Přehled uzlů sítě, které už upgradovaly na klienta s podporou SegWit2x se dá nalézt zde. Stejná statistika pro těžební pooly je zde – tam se budete chtít dívat, jestli návrh získal dostatek podpory.

Související

PŘIDEJTE SE DO DISKUZE