#SmallBlockers vs. #BigBlockers

Újra felütötte a fejét itt a blog komment szekciójában az immáron közel 3 éves vallási harc, aminek célja a Bitcoin közösség megosztása és egymással szembe osztása. A jó öreg tézis: Small Blockers vs Big Blockers.

Egyből az elején kifejteném, hogy ez továbbra is személyes blog és a kérdésben természetesen elfogult vagyok, nem célom tudományos alapon igazolni vagy cáfolni bármit is, eleve nonszensz szerintem már a felvetés is, de azt hiszem időszerű újra feltenni a kérdés: vajon melyik megközelítés a követendőbb?

Egy kis kitekintés a téma kapcsán: A Bitcoin definíciója szerint egy önálló digitális termékosztály, ami kapcsán igen sokáig fel sem merült, hogy szükség lenne mellette “altcoinokra”. Eredendően Satoshi ráadásul eléggé rugalmasra is tervezte az egész protokollt. A 10 perces blocking time, az unlimited block size és persze a true 0-conf egy olyan settlement layert hozott létre, ahol a kis tranzakcióknál akár másodpercek alatt lehetett tranzaktálni, a nagy értékű tranzakcióknál pedig legfeljebb egy óra alatt el lehetett érni a teljesen jóváhagyott állapotot. Ahogy Satoshi ezt megálmodta: technológiailag adott volt az, hogy ez a rendszer simán block size szinten elérje a VISA szintű (akár 20k tx/sec) szintet amennyiben az internet és az asztali számítógépek teljesítménye abban az ütemben skálázódik, ahogy azzal az alkotó számolt.

Ezen nagy szabadságfokot azonban egyszer csak (mindenféle magyarázat nélkül) maga Satoshi Nakamoto húzta keresztbe az r103-as releassel 2010 július 15-én, amikor is implementálta a kódba a max block size paramétert, melyet akkor 1Mb-ra állított be. Többen is megkérdezték ezt követően, hogy mi volt ennek a célja és mi lesz vele később, melyre a szokásos szűkszavú módján Nakamoto csak ennyit válaszolt: “Később növelhetjük…”

Ez a limitáció Satoshi távozásával a kód szerves része maradt, ami végső soron a mai napig nem változott, bár a SegWit protokollnak köszönhetően mára a blokkok között nem ritka 1,5Mb-os darab sem.

Hogy mi volt Satoshi elképzelése az 1Mb/block limit kapcsán arról semmilyen evidencia nem ismert, bárki is állít erről bármit az a saját elképzelése, következtetése. Mindenesetre ez a változtatás végső soron az alkotó egyik leginkább megosztó döntésévé vált.

A BigBlockerek álláspontja szerint ez az érték a demand fényében bármikor állítható, hiszen miért ne lehetne az érték 8Mb, 32Mb vagy akár 1Gb/1Tb amennyiben ez kell a népnek. Tény, hogy a 1Mb-os block méret határ az egyik fontos oka annak, hogy ma nagyon sok “fast and cheap settlement” altcoin létezik, ami mind a Bitcoin lassú és “drága” értéktovábbító képességét hivatott megoldani. Ha annyi bitcoinom lenne, mint amennyi projekt indult az elmúlt 3 évben a “New Bitcoin” címkével… nos akkor nagyon sok bitcoinom lenne…

A BigBlocker (BB) kezdeményezés egyik nagy vezéralakja – Roger Ver – számos alkalommal kifejtette, hogy neki csak az a fontos, hogy a Bitcoinnal bármikor lehessen vásárolni kávét és erre a block size növelés lenne a megoldás, ám mivel ennek kapcsán nem született konszenzus (Ver szerint egy tudatos manipuláció eredményeként), ezért elveszítette a Bitcoin a “medium of exchange” képességét.

Ezen a ponton talán érdemes is rátérni a Small Blockers (SB) vonalra. Hiszen bárki számára logikus következtetés lehet, hogy a blokkok méretét növelni KELL, ha erre van szükség. Mit is mond a BB propaganda a SB-kről: felelőtlen tech idióták, akiket nem érdekel a bitcoin jövőve, csak az, hogy uralkodjanak a kódon, nem értenek az üzlethez és különben is a megvették őket a nagybankok és szándékosan ártanak a Bitcoinnak. Ja és a SegWit hülyeség és bug, a lightning network pedig vaporware… azt hiszem mindent leírtam.

Lesöpörve az asztalról a propaganda hamuját nézzük, hogy mi is a valódi motiváció a SB mögött:

A Small Blockerek fontosabbnak tartják a Bitcoin ideológiáját, mint annak az aktuális adott üzleti potenciálját. A Bitcoin eredendően egy szabad és független pénzügyi rendszerként jött létre, ami technológiai alapon biztosítja, hogy bárki tudjon önállóan validálni, tranzakciót közvetíteni vagy fogadni anélkül, hogy ehhez bármilyen függőségbe kerülne mások szolgáltatásaitól. Jelenleg erre a Bitcoin képes. Ahogy sokszor gúnyosan mondják: a Bitcoin nodet akár egy kávéfőzőn is bárki el tudja futtatni.

Aki a Bitcoinból csak annak árfolyamán látja és lelkesen hajtogatja, hogy “digitális bizbasz, nincs mögötte semmi csak spekuláció”, annak nehéz elmagyarázni, hogy mit is jelent a pénzügyi szuverenitás, az hogy nem függesz mástól, más jó szándékától, hogy rendelkezhess a vagyonod felett. A világnak azonban egyre nagyobb részén ez a fajta szuverenitás alapvetően sem adott. Számukra a Bitcoin maga a pénzügyi szuverenitás.

Márpedig ennek a szuverenitásnak az alap tézise, hogy megvan a jogod arra, hogy TE magad ellenőrizz mindent, amihez persze kell egy full node. Tehát mindenki kell, hogy rendelkezzen egy full nodeddal? Ha valaki NEM csak spekulációs céllal birtokol BTC-t… nos, akkor igen. Alapvető szemantikai hiba azt gondolni, hogy a bányász nodeok validálnak. A bányász nodeok CSAK confirmálnak és a peer-to-peer hálózati jelleg miatt semmi garancia nincs arra, hogy ha egy idegen nodehoz csatlakozol, akkor onnan valód tranzakciókat fogsz kapni. Ebben csak akkor lehetsz biztos, ha egy SAJÁT nodeon validálsz minden tranzakciót.

A bányászok confirmálnak… de a validációt mindenkinek magának kell elvégeznie a saját full nodejával.

Mielőtt bárkinél is elgurulna a gyógyszer az olvasokkal kapcsán: A validálás természetesen nem azt jelenti, hogy TE kézzel fogsz átnézni minden tranzakciót. Csak annyit jelent, hogy egy olyan full nodeot használsz, aminek kapcsán TE magad gondoskodsz annak az integritásáról.A full node integritásvédelmét az adja, hogy csatlakozva a peer-to-peer hálózathoz szépen elkéri az összes blokkot, amiket tételesen ellenőriz, így nem csak rögzíti a blokkláncot, de validálja is annak minden blokkját.

Ezen a pontos sikerült is feltárnom a BigBlocker vs SmallBlocker álláspont egyik legfontosabb valós ellentétét: A Small Blockerek szuverén pénzügyi rendszer akarnak, ahol nem teljesül a fiat pénzek annyira gyűlölt “system of control” tulajdonsága. A Big Blockerek viszont szívesen feladják ezt a szuverenitást azért cserébe, hogy bármikor ihassanak egy kávét…

Hogy mi az a system of control? Ez a modern pénzügyi rendszer egyik legfontosabb befolyásoló tulajdonsága. A világ fizetőeszközei mindig is birtokoltak bizonyos szintű ‘system of control’ tulajdonságot, de ez különösen felerősödött amikor a US dollár lett az egyetemleges világpénz és gyakorlatilag elkezdtünk mindent ahhoz képest mérni. Ezen tulajdonságot különösen felerősítette Nixon döntése, mely szerint leválasztották az US dollár értékét a fizikai biztosítékról. A döntés egyrészről nagyon fontos volt, hiszen így a világhatalom a fizikai erőfitogtatás szintjéről a gazdasági erőfitogtatás szintjére emelkedett, másrészről viszont brutálisan felerősítette a fiat pénzeken keresztül gyakorolható kontrollt. Ha egy ország nem úgy viselkedik, ahogy a vele szemben álló nagyhatalom diktál, akkor elég némi gazdasági szankció és máris jöhet a jobb belátás lényegében fegyveres konfliktus nélkül is. A fiat pénzeken keresztül gyakorolható drasztikus külső kontroll lehetőségét írjuk le a “system of control” tulajdonsággal. Ennek ellenpólusa a pénzügyi szuverenitás, ahol az adott nemzet, állam vagy akár magánszemély közvetlen módon nem kontrollálható.

Ezen a ponton azt hiszem kicsit ki kéne fejteni, hogy mi köze az 1Mb block size-nak a pénzügyi szuverenitáshoz. Jelen pillanatban egy átlagos 1,5 Mb-os block teljes validálása és abban a saját tranzakciók kikeresése nagyjából 1-2 másodpercet vesz igénybe egy átlagos szerveren. Ez egy gyengébb gép esetén (pl maradva a jó öreg raspberry pi-nél) sem lényegesen több. Egy tetszőleges RPC library használata esetén is a blokkok teljes validálása (mondjuk pythonból) bőven megvan 10 másodpercen belül. Ám minél komplexebb kódokat engedünk meg a blockchain szintjén annak az átfutási ideje annál inkább növekszik.

Nézzünk erre egy konkrét példát? Legyen az Ethereum… Aki hozzám hasonlóan rákényszerül arra, hogy saját Ethereum nodeot üzemeltessen mondjuk egy halom smartcontract folyamatos használata miatt (pl. token issuing), az pontosan tudja, hogy nagyon nehéz syncben tartani ma már egy saját nodeot. Az, hogy a nodehoz SSD kell ma már alap, de hogy egy mai felső kategóriás notebookon nem tud folyamatosan syncben maradni a parity node az több mint bosszantó. A 14,5 másodperces block time és az átlagos 20-30kB-os blokkok feldolgozásába még egy nagyon komoly, csak erre fenntartott node esetén is be-be csúszik néhány 1 másodperc feletti blokk validálás:

geth output egy 2 magos Xeon E5-2686 (2.3GHz), 8Gb ramos és SSD-s szerveren

Tehát az Ethereum komplexitású blockchain esetén 10 percenként átlagosan 40 blokk keletkezik, amik átlagosan ~6000 tranzakciót tartalmaznak. Egy komolyabb szerveren csak a blokk validálása 10 percenként fél percig tart.

Ugyanez az én saját notebookomon (i5/3.1GHz, 16Gbram, SSD) már átlagosan 57 másodpercbe kerül. Ami blokkonként átlagosan már majdnem 1,5 másodperc. Mindez 14,5 másodperces átlagos block kibocsátási idővel… Nem csoda, hogy a gépem időről-időre lemarad. Ha csak 24 óráig nem fut a gépemen a parity (mert végső soron azért nem csak erre tartom…), akkor akár 1-2 óráig is eltarthat amíg behozza a gép a lemaradást.

Jól látható, hogy amikor emberek azon problémáznak, hogy pl az Ethereumot vajon miért nem skálázzák onchain… akkor bizony itt az a magyarázat, hogy erre nem nagyon van lehetőség.

Csak, hogy ne legyen annyira egyoldalú a postban a véleményem, így megkérdeztem a hazai közösség egyik tagját, aki nagy mennyiségben futtat különböző nodeokat üzleti célokra (Fusion Solutions), hogy mégis ma mi kell ahhoz, hogy valaki fenn tudjon tartani egy ethereum nodeot. A válasz pedig a következő volt:

Az SSD jó, bár nvme szintű lenne a jobb. közepes asztali CPU és 8Gb ram elengedhetetlen. Az energiatakarékos eszközök, mint pl Rasberry PI, tablet, notebook nem ajánlott. A nodeok futtatása nemsokára központi feladattá válik. Egy gyengébb gépen ha az ember le van maradva egy nappal, annak a szinkronizálása akár több órába is telhet. […] Ja és a hddt mindenki felejtse el. A hybrid megoldások sem jöhetnek szóba.

Na de térünk is vissza a Bitcoinra… Mit is szeretnének a Bitcoin Cash fan BigBlockerek:

  • 1GB-os, vagy akár terabyte méterű blokkokat, amikkel közel végtelenné növelhető  a másodpercenkénti tranzakció szám, mindehhez fenntartva a 1 satoshi méretű fee-t, sőt ha van már mód, akkor menjünk le subsatoshi szintre.
  • A jelenlegi 10 perces blocking time csökkentését 1 percre.
  • A jelenlegi erősen limitált opcode készletet feldúsítani számos számos komplexebb utasítással, ami fontos alapja lehet annak, hogy a Bitcoin Cash-en is lehessen olyan komplex smart contractokat futtatni, mint pl az Ethereumon.
  • Ha már egyszer near-infinite a blocksize és subsatoshi a fee, akkor pedig használjuk is ki ezt pl a memo.cash szintű szolgáltatásokkal, amikkel pl twittert lehet csinálni a blokkláncból.

A blokkok validálása idő és energia igényes feladat. Minél komplexebb a kód, minél több a tranzakció és minél gyorsabb a blocking time, annál több kell ezekből, amiket egyre inkább lehetetlen “otthoni” körülmények között megteremteni. Jól látszik ez az Ethereumnál is, ahol a fejlesztők nem mernek tovább onchain skálázni, helyette a sharding felé lépnek tovább.

A BigBlockerek szószólói azonban kvázi tudomást sem vesznek minderről. A Bitmain és a nChain egy perces blocking timeról és akár Terabyteos blokkokról álmodik… És kinek lesz ehhez erőforrása? Természetesen a Bitmainnek és az nChainnek. Ahogy a Bitmain az ASIC fejlesztésekkel szépen lassan kisajátította Satoshi álmát, mely szerint mindenki képes lesz a saját asztali gépvel blokkokat generálni és valódi játékelméleti verseny fog zajlani. A bányászat biznisz sikeres centralizálásával (1 db monopol gyártó) jogosan felmerül a kérdés, hogy mi a következő lépés? Ha már a Bitmain  és az – nChain partnere – a coingeeks birtokolja a hashing power nagy részét, akkor mégis miért ne ők birtokolhatnák (gyárthatnák és üzemeltethetnék) az összes olyan gépet is, ami képes elviselni azt a terhelést, amit a zárt ajtók mögött megálmodnak a BigBlocker promininsek?

Satoshi még 2008-ban ezt írta erről a trendről:

At first, most users would run network nodes, but as the network grows beyond a certain point, it would be left more and more to specialists with server farms of specialized hardware. A server farm would only need to have one node on the network and the rest of the LAN connects with that one node.

És majdnem napra pontosan 10 évvel később elmondhatjuk, hogy igaza lett: Tényleg arra tart a BigBlockerek hálózata, hogy eltűnjön a szuverenitás és eltűnjön a trustless a hálózatból. Ezeket pedig egy újabb pénzügyi nagyhatalom felé gyakorolt hamis bizalom váltja le. Csak ezúttal ezt a világhatalmat nem FED-nek, World Banknak vagy éppen jegybanknak nevezzük, hanem nChain-nek és Bitmainnek. (Akik ráadásul még össze is balhéztak a saját BigBlocker jövőképükön…)

Hogy miképpen működik a BigBlockerek jövőképe? Úgy, hogy mindenki használjon SPV walleteket, hiszen az SPV walletek is tudják validálni a saját tranzakciókat, igaz csak block headerből, ráadásul a legtöbb a saját full nodejára csatlakozik, nem is véletlenszerűen és semmilyen valós garanciád nincs arra, hogy az adott node tényleg azt a konszenzus ágat követi amit a legtöbben “Bitcoinnak” hisznek. Tavaly az év második felében már majdnem sikeresen lezajlott egy nagyon komoly SPV wallet támadás a hálózat ellen a SegWit2X kezdeményezés kapcsán, amit több tényező mellett az akadályozott meg, hogy közel egy év alatt jelentősen sikerült elterjeszteni a Bitcoin Core fejlesztőknek azt a szemléletet, hogy a full node az egyetlen komolyan vehető védelem a hardforkok ellen.

22-es csapda?

Röviden összefoglalva az eddigieket: A SmallBlocker megközelítés zsákutca, mert a blockméret limitálása erősen visszaveti az adaptációt és használhatatlanná teszi a networköt, míg a BigBlocker megközelítés tovább centralizálja a hálózatot annak erőforrás igénye szempontjából, amivel elveszítik az egyének a pénzügyi szuverenitásukat, amivel lényegében pont ugyanoda jutnak, ami elől elvileg menekülni akartak volna.

Tehát elmondható, hogy az egész crypto világ egy zsákutca? Elmondható, hogy Satoshi álma egy tévedés és végül “játszottunk egy jót?” Szó sincs erről. A Bitcoin mögött lényegében egy hatalmas fejlesztői bázis és egy még inkább komoly üzleti érdekkör tömörül, aminek egy része (Bitcoin Core devek főleg), hithűen próbálják megtalálni azt a középutat, ami megoldás lehet erre a 22-es csapdájára. Felismerve az onchain skálázás centralizálódó hatását – amit feltehetően (saját véleményem alapján) Satoshi is felismerhetett, amikor behúzta a kéziféket – inkább egyéb alternatívákat hoznak létre. Erre jó példa a napi szintű költések biztosítására egyre inkább alkalmas (bár még gyerekcipőben járó) lightning network. De ugyanúgy fontos mozaik a “Liquid network”, ami pont ellenkezőleg a “fizetőképes” nagyszereplők számára nyújt two-way pegged sidechain funkciót, amin keresztül pl az exchangek tudnak  egymás között néhány perc alatt Bitcoin cserélni oda-vissza. Mindezt fix monthly cost mellett. Mind a Liquid, mind a Lightning leválaszt egy-egy nagy terhelést a Bitcoin onchainről.

Hogy jó irány-e az, hogy a Blockstream kisajátítja a Liquiden keresztül a Bitcoin nagyvállalati forgalmát és saját üzletet épít rá? Egyértelműen nem, de az én szememben még mindig sokkal jobb mint az, hogy az nChain és a Bitmain az EGÉSZ blokkláncot ki akarja sajátítani azzal, hogy olyan feltételeket teremt, amiben hagyományos élő ember már képtelen saját full nodeot futtatni.

A Blockstream/BitcoinCore vízióban legalább megmarad a pénzügyi szuverenitás lehetősége és az, hogy mindenki maga döntheti el, hogy mi a valid és mi nem az.

Lesz valaha 1Mb-nál nagyobb Bitcoin block?

Egyrészt már most is van, de ez ugye a SegWit trükközésnek köszönhető. Viszont, ha a base blockokat nézzük, akkor erre elvileg minden lehetőség megvan a Bitcoin blokkláncon is. Bár az elmúlt 9 hónap ezt sehol sem indokolja. A Bitcoin Core csapat nem a MA problémáira fókuszál, hanem a holnapra. Ez persze baromi aggasztó azoknak, pl tavaly évvégén belefutottak a hatalmas mining feekbe, ellenben jól látszik, hogy 9 hónappal később csak-csak kijönnek már azok a fejlesztések, amik akkor még csak “vaporware” álomnak tűntek. Ráadásul a SegWit tx-ek aránya is már karcolgatja a 50%-ot blokkonként.

Mindazonáltal bármennyire is ódzkodnak a CoreDev-ek; a blokkok méretének növelése hosszabb távon elengedhetetlen. Hiszen mind a Lightning Network, mind a Liquid Network esetében nagyon fontos, hogy az onchain tx-ek tervezhető módon kerüljenek bele a soron következő blokkba, ellenkező esetben az egész modell sérül. Ehhez viszont szükséges, hogy valóban indokolt esetben növelni lehessen a blokkok méretét.

Konklúzió?

Aki BigBlocker az a MA problémájával foglakozik és azt nyers erővel akarja megoldani figyelmen kívül hagyva, hogy ennek milyen hosszútávú veszélyei vannak. Fontosabb az, hogy ma meg lehessen venni a kávét Bitcoinból, mint az, hogy 15-30 év múlva ennek oltárán már csak 20-30 full node lesz a világon, amik ugyanúgy 3-4 szereplő kezében lesznek, ahogy most a bányászat is lényegében ugyanennyi szereplő kezében összpontosul. Viszont lássuk be azt is, hogy az erősen centralizált bányászat kevésbé jelent komoly veszélyt, hiszen a bányászok incentívája sokkal inkább indokolj a tisztességet magatartást, mivel számukra ez a kifizetődőbb, ráadásul egy esetlegesen átengedett double-spending vagy inflation szinte azonnal kiderül a független full nodeok validálása során. Ezzel szemben ha valóban ‘halandó ember’ számára már képtelenség lesz full nodeot futtatni, akkor lényegében megszűnik a decentralizált blockchain értelme: a decentralizáció és a független validálás. A BigBlockerek a mai hálózatot egy végleges valaminek tekintik, amin már nem kell fejleszteni, elég azt skálázni. Jó az úgy ahogy van…

A SmallBlockerek ezzel szemben figyelmen kívül hagyják a MA problémáit és görcsösen ragaszkodnak a szuverenitáshoz valamint ahhoz, hogy előbb legyen kész a jövő problémáira reflektáló technológia, majd utána nyúljunk esetleg a skálázáshoz. A decentralizáció jegyében meghozzák azokat a kompromisszumokat, hogy a gyors tranzakciókat layer2-re kell terelni, az üzleti hasznosítást pedig sidechainekbe. A SmallBlockerek a mai hálózatot egy bétának tekintik, ami egyfajta spekulatív játékszer, de látják azt a távoli jövőt, ahol ez valóban egy komoly pénzügyi rendszer lehet, amihez azonban még nagyon sok fejlesztés szükséges.

Ez a két út áll a Bitcoin és annak közössége előtt…

Beszélgessünk még egy kicsit a Lightning Networkről…

Tudom sokatoknak már a könyökén jön ki az LN, de a jelek szerint mégis szükséges és érdemes is beszélni róla. Főleg, ha azzal szembesülök, hogy a blog egyik legrégebbi aktív követője is a sötétben tapogatózik. Ezek szerint messze nem végeztem még teljes munkát a LN evangelizációja kapcsán. Az alábbi (minap) született hozzászólás ösztönzött, hogy elkészüljön ez a post:

Lightning Network:
Jól értem, hogy igazából már működik, megy, használható?

Amit össze tudok rakni infót:
– Mainneten kint van, bárki futtathatja – ha van bátorsága
– Bátorság kell hozzá, mert nincs még agyontesztelve, így simán benyelheti a rajta levő pénzt
– Nem egy implementáció van, hanem három – ezt nem értem, hogyan lesz akkor “egy” LN. Vagy mindegy? Egymással kompatibilisek? Aztán mindenki azt használja, amelyik szimpatikusabb?
– Nincs “hivatalosa release date”, hiszen már kint van és szép lassan elkezd terjedni.

Izgalmas év lesz az idei (is).

Előbb gyorsan tisztáznám a félreértéseket:

  • A Lightning Network már nagyon régóta a mainneten volt teszt jelleggel és most is leginkább ilyen állapotban van kint, azonban senki és semmi nem tudja befolyásolni annak a terjedését, tehát nem meglepő hogy néhány lelkes pioneer már elkezdett rá éles szolgáltatásokat építeni.
  • A cikk írásának a pillanatában 48 aktív LN node található a mainneten, melyek között 76 csatorna létezik. Ezek összesített kapacitása 0.881 Bitcoint (kb 10k dollár jelenlegi árfolyamon)
  • Nem három implementáció létezik csak, hanem ennél sokkal több. Az implementációk alapja a LN whitepaperből készült specifikáció: Basis of Lightning Network (BOLT), mely egy 11 fejezetes részletes specifikáció, hogy miként kell LN implementációt készíteni.
  • A három leginkább elterjedt implementáció (lnd, c-lightning és a eclair) teljes mértékben interoperábilis, tehát ezek képesek egymással stabil kapcsolatokat létesíteni. A mainneten jelenleg mindhárom implementáció stabilan működik egymással.
  • A különböző implementációk oka nagyon egyszerű: független fejlesztőcsapatok kezdték el anno implementálni a saját LN elképzelésüket. Ez a fajta függetlenség a garancia arra, hogy nem egy centralizált maszlagot kapunk amit tetszőleges pillanatban tud bárki befolyásolni, hanem mindig megmarad a garancia arra, hogy az LN egy ugyanolyan független és érdek nélküli rendszer marad mint maga a Bitcoin.
  • Az LN underlying technológiái már régóta benne vannak a Bitcoin protokollban, a szükséges funkciók (HTLC, multisig wallet, stb.) már évek óta használt technológia, nagyon sok aktív payment channel létezett már eddig is. A technológiához szükséges utolsó mozaik maga a segwit protokoll volt. Most, hogy végre bekerült a hivatalos bitcoin core implementációba is a segwit támogatás, így teljesen logikus, hogy pillanatok alatt elkezd gyarapodni a mainnet LN hálózat.
  • Az LN olyan szinten van agyontesztelve, ahogy kb eddig semmi nem volt agyontesztelve a Bitcoin történelmében. Talán csak a SegWit tesztelése összemérhető az LN-nel. Mindkét technológia nagyon durván nyúl bele a settlement layerbe, így ezek tesztelése létszükséglet, hiszen itt szó szerint pénzzel játszunk.
  • Benyelni semmilyen pénzt nem tud az LN hálózat. A kockázat más rétű ennek kapcsán. A felek felépítik a csatornáikat, majd azokat karbantartják, de annak változásait nem küldik be a blokkláncra (onchain). A pénzbeli kockázat ezen offchain karbantartásban rejlik csak jelenleg. Ugyanaz a kockázat létezik jelenleg, mint amilyen kockázattal maga a Bitcoin rendelkezett 2009-ben. Akkor még senki nem bízott abban, hogy itt valóban nem tudnak coinok elkeveredni, avagy valóban nem lehet double-spendingelni. Voltak is bőven korai bakik, amikből akár anyagi károk is keletkeztek. Ugyanezen anyagi kockázat létezik az LN kapcsán is. Előbb pici szereplők fognak megjelenni az LN-en és árulják majd a filléres portékáikat, ahol nincs lényei nagy veszteség egy tech probléma miatt, majd ahogy bizonyít (és fejlődik a technológia) úgy fognak megjelenni az egyre nagyobb szereplők is.

Némi resource azoknak, akiket a leírásomon túl is érdekel mindez:

Most, hogy ezeken túl vagyunk egy régebbi adósságomat is törleszteném. Ígértem, hogy megosztom a néhány hete megtartott Lightning Network Unchained előadásom prezentációját és ha már megteszem, akkor hozzáfűznék némi magyarázatot is a slideokhoz:

Folytatás…

Post-mortem: A nagy Bitcoin flippening hétvége

source: -link-

Ígértem egy összefoglalót az előző hétvége kapcsán, mivel számos érdekes és értékes tanulság vonható le abból. Kezdeném is egyből egy gyors összefoglalóval:

  • November 8-án hivatalosan is felfüggesztették a SegWit2X kezdeményezést, amit a Bitcoin közösség BSCore pártoló része hatalmas győzelmi #nerdrage mellett ünnepelt. Bár már akkor is gyanús volt, hogy a történetet azért nem ússzuk meg ennyivel.
  • November 10-én reggel már beindult egy érdekes retorikai harc twitteren és egyéb csatornákon, amit akkor nehéz volt hova tenni, de kora délutánra teljesen nyilvánvalóvá vált, hogy valamiféle hatalomátvétel körvonalazódik, ahol minden létező csatornán az az információ csöpögött, hogy itt a Bitcoin világvége és ömlik át a pénz a Bitcoin Cash-ba. Még aznap számos korábbi Bitcoin prominens nyílt közleményben jelezte, hogy innentől a Bitcoin Cash a Bitcoin és pont. Ugyanezen a napon közzétett cikkemben felvázoltam egy BTC->BCH pump-n-dump forgatókönyvet, ami egyébként majdnem pontosan be is jött. Én egy maximum 0.2-es csúcsot vizionáltam a pump/dump fordulóra, amit jócskán alul is becsültem, hiszen a pumpa egészen a 0.5 BTC/BCH szintig elment vasárnap hajnalra.
  • A hétvége további részében folytatódott a hatalomátvételi retorika, aminek az egyik csúcspontja az ominózus 25k BTC megmozgatása volt, amiből sokan arra következtettek, hogy a Bitcoin.com betolja a pénzét a Bitfinexre, hogy “végső csapást mérjen” a Bitcoinra.
  • Vasárnap délelőttre összeomlott a pumpa és hatalmasat zakózott az árfolyam. 0.5 BTC-ről első körben gyakorlatilag percek alatt zuhant be 0.25-re, majd azóta is folyamatosan csordogál lefelé.

Sokszor kifejtettem már a blogon azon véleményemet, hogy milyen szinten tartom ellenszenvesnek a Bitcoin Cash-t, különösen akkor, amikor azt valamiféle Bitcoin jövőképként próbálják beállítani. A közelebbi ismerőseim pontosan tudják, hogy számomra a BCH tabutéma, nem nagyon szeretek róla beszélni. Mindazonáltal ez egy jó pillanat, hogy tisztázzunk egy nagyon fontos tényt:

Folytatás…

Az okos Bitcoin – a tx scriptek jelentősége

Sokszor kapom meg kérdésként, hogy miért is annyira jó a Bitcoin, miért nem döngölte még a földbe az Ethereum; ami ugye sokkal jobb, sokkal gyorsabb, lehet vele smart contractolni, sőt még valós életbeli javak tokenizálására is tökéletes. Mint evolúciós lépés az idő előre haladtával jogosan elvárható lenne, hogy egy sokkal fejlettebb, gyorsabb és biztonságosabb termék nyugdíjazza az elődjét. Persze ha az evolúció ennyire logikus elvek mentén szelektálna, akkor ma nem élnének kacsacsőrű emlősök és lássuk be, hogy a koalamackó is furán tekinthetne az együgyű életére…

A tegnap(-előtti…) estémet sikerült egy kifejezetten prominens hazai blockchain szakértői körben eltöltenem, ahol legnagyobb meglepetésemre előkerült a fentebbi alapkérdés (nem… nem a koalás meg a platipusos…). A téma kitárgyalása során vetődött fel bennem, hogy talán időszerű lenne erről egy blogpostot is írni.

Jelen cikkel nem kisebb kihívást próbálok teljesíteni, minthogy egyrészt meggyőzzem arról az olvasót, hogy a Bitcoin protokolljában ugyanúgy megtalálható a smart-contracting funkció (még ha nem is oly komplex módon). Hogy miért fontos ez? Nagyon sokszor találkozom azzal, hogy neves közgazdászok egyszerűen csak pénzként definiálják a Bitcoin. Egy pénznek (pillanatnyi) értéke van, míg egy árucikknek (commodity) funkciója, mellyel képes értéket kifejezni. Az alábbi cikk reményeim szerint mindenkit meggyőz arról, hogy a puszta pénzben kifejezhető értéken túlmenően a Bitcoin valóban képes commodity jellegű funkciókat is ellátni.

Főleg azok számára lehet érdekes ez a cikk, akik nem csak birtokolni/kereskedni akarnak, hanem akár üzleti vállalkozásokat, lehetőségeket is akarnak erre építeni. Talán már tudjátok néhányan, hogy előadóként meghívást kaptam egy hazai szakmai konferenciára novemberben, ahol lehetőségem lesz az okos szerződések jelentőségét bemutatni, az alábbi cikk (és ennek későbbi folytatásai) háttéranyagként szolgálnak majd az előadáshoz (is).

Kezdjünk is bele: a Bitcoin protokoll tervezésének korai fázisában már ráébredt Nakamoto, hogy komoly limitációkat fog elszenvedni a technológia, ha a tranzakciók küldése során kizárólagosan csak megadott publikus kulcsokra (addressekre) lehetne küldeni bitcoint. Bár a legtöbb felhasználó számára kétségtelenül elégséges lehet a konkrét címre történő utalás, de valós igény van arra, hogy egy-egy tranzakció fedezetének és jogosultságának vizsgálata túlmutasson egy egyszerű publikus kulcs (address) ellenőrzésen. Ennek megfelelően már a korai állapotban számos tranzakciót kezdeményező utasítás is implementálásra került, ezek közül kettőt emelnék ki: P2PKH s és a P2SH.

Folytatás…

Bitcoin skálázási vita: az utolsó kapcsolja le a villanyt…

Az előző postokban ([1], [2]) megpróbáltam kifejteni, hogy mi is várható a bányászok részéről a november 18-ai hard-forkot követően. Bár hosszan próbáltam elemezni az egyes scenariokat, azonban egy konkrét szempontot teljességében figyelmen kívül hagytam eddig, ez pedig a vitát végérvényesen eldöntő kérdés: nevezetesen, hogy mit is fognak csinálni a Bitcoin felhasználók, pontosabban a Bitcoin SPV walletek. Akinek nem mond semmit az SPV: Ez a Simple Payment Verification rövidítése, mely annyit takar, hogy egy nagyon lebutított wallet, ami a privát kulcsok ismeretében képes a Bitcoin hálózattal anélkül kommunikálni, hogy ehhez bármilyen közvetítő alkalmazást vagy szolgáltatást használna. Népszerűbb walletek (Breadwallet, Jaxx, Multibit, BreezeWallet, stb.) mindegyike ezt a technológiát használja. Persze ha már felsorolás, akkor nem illik kihagyni a HiddenWalletet sem, amit hazánk fia @nopara73 keze munkája.

Az SPV walleteket nem szabad összekeverni az “API walletekkel”. Utóbbiakra egy példa az Electrum. Ezek a walletek nem direktben a Bitcoin hálózathoz kapcsolódnak, hanem egy saját alkalmazásszerverhez, ami közvetít a bitcoin hálózat felé, ennek megfelelően nem a wallet dönti el, hogy mit tekint Bitcoin hálózatnak, hanem az alkalmazásszerver, mely utóbbiban ez tetszőlegesen befolyásolható.

Az SPV walletek a Bitcoin hálózat forgalmának igen nagy részét adják. Aki napi szinten használja költéseihez is a Bitcoint az biztosan használ valamilyen SPV walletet. Bár tudom ez a napi költés dolog sok olvasó számára még gondolat szinten is hihetetlen, de tény hogy a világ más részein ez nem csak, hogy teljesen természetes, de bizonyos helyeken konkrétan nem is lehet mással fizetni, mint cryptopénzekkel. Az előző hétvégén egy prágai konferencián volt szerencsém ezt kipróbálni…

Az SPV walletek egyébként nem újszerű találmányok, maga a protokoll már a Satoshi által kiadott Bitcoin whitepaperben is szerepelt 2008-ban. Szóval aki hithű Satoshi vízionistának tartja magát, annak kutya kötelessége SPV walleteket (is) használni! Az SPV pénztárcák működése egyébként pofonegyszerű:

  • Felcsattannak a legközelebbi Bitcoin node szerverre, megkeresik a leghosszabb láncot, majd syncelik onnan a lánc fejléceket. Ja és természetesen teljesen hidegen hagyja őket a a blockméret és bármilyen egyéb olyan limitáció, ami a konszenzus szabályokból származik. Az SPV walletek egyetlen lényegi funkciója egy nagyon gyors blockchain-hálózat elérés és a double-spending védelem biztosítása.

Mi a franc is az a node? A node egy önálló Bitcoin szerver, amely tárolja a teljes blockláncot és képes azt folyamatosan karban is tartani. Emellett képes tranzakciókat továbbítani a hálózat felé. A “minek ez?” kérdést, most nem szeretném kifejteni részleteiben, ezért csak maradjunk annyiban, hogy egy decentralizált peer-to-peer hálózatban a nodeok azok a szereplők akik az egész hálózatot fenntartják. Ha egy tranzakció eljut egy nodeig, akkor az nagyon-nagy valószínűséggel blockba is lesz foglalva. Vagyis egészen novemberig ez így lesz… Novemberben valami olyasmi fog (várhatóan) történni, amit követően a legkevésbé sem lehetünk abban biztosan, hogy ha egy tranzakciót (pl. SPV walleten keresztül) eljuttatunk egy nodehoz, akkor azzal mi fog történni… A post hátralévő része ezen kialakuló anomáliát próbálja megértetni az olvasóval.

A cikk ezen pontjáig megpróbáltam tudományosan megközelíteni a kérdést, innentől viszont átkapcsolok a full-kretén-blogger módba és jön a fantasztikus rész. A cikk folytatását mindenkinek csak saját felelősségre javaslom… Azt garantálom, hogy a bejegyzés végére le fog verni a víz… Különösen annak fényében lesz talán nehezen emészthető, ha abból indulok ki, hogy a BTC már megint ATH-ban van és várhatóan egy darabig már nem is nagyon akarja elhagyni az 5000 USD-s árfolyam tartományt.

Folytatás…

Bitcoin: Fut, robog a kicsi kocsi?

A Wall Street feladta hogy farkast kiabáljon, a nagy szereplők sorra jelentik be, hogy miként vélekednek a szuperpénzről. A hétvége enervált forgalma mellett összehozott folyamatos árfolyamemelkedés mögött igen valószínű, hogy olyan bennfentes információk állhatnak, mikről mi majd csak a hét elején fogunk hallani és nem hiszem, hogy nagyon mellélőnék azzal a feltételezéssel, hogy ezen hírek egyenesen a Wall Street közeléből fognak érkezni… Mielőtt azonban kitérnék a mai okfejtésemre hadd kezdjem egy közhasznú gondolattal: A crypto világban EGYETLEN értékkel rendelkezel, ez pedig a privát kulcsod. Amely assethez/termékhez nincs privát kulcsod, az valójában nem a tiéd, hanem másé (ami lehet pl. egy exchange), amivel szemben bizalmat táplálsz, hogy odaadja neked, ha szépen kéred.

Mondanám, hogy a privát kulcs másnak megadása olyan, mintha a lakáskulcsodat osztogatnád, de valójában a helyzet még rosszabb. Jobb esetben a lakáskulcsodra legalább nincs ráírva a pontos címed, azonban a privát kulcsod az EGYETLEN értéked, melyből egyből deriválható a publikus kulcsod és abból a pontos egyenleged. SOHA semmilyen okból kifolyólag nem adod meg senkinek és semminek a privát kulcsodat, még akkor sem, ha arra valaki vagy valami olyan kér, akiben nagyon megbízol. Ha például én beírom ide a blogra, hogy lécci küld el a privát kulcsaidat az info[kukac]variance[pont]hu-ra, akkor mit csinálsz? Nem, nem küldöd el. Sőt ha valaki azt mondta, hogy egy előre preparált üzenetet írj alá a privát kulcsoddal, mely üzenetbe rakd be a privát kulcsodat, akkor ilyesmit sem teszel meg! Még akkor sem, ha ezért cserébe a világ – majdnem – minden kincsét ígéri, vagy éppen egy kamu bitcoin goldnak látszó airdropot ígér cserébe…

Ezzel le is zárom a közszolgálati perceket és térjünk át az aktuális témára. Biztos sokatoknak feltűnt, hogy a hétvégi lagymatag forgalom ellenére is igen  pozitív a (crypto) piaci kilátás. Hosszan lehetne elemezni, hogy mi minden lehet ennek az oka, ám ezt most nem teszem, helyette inkább leírok néhány konkrét történést, ami akár lehet is ezen jó hangulatnak a forrása:

Folytatás…

Bitcoin: Kiürült a mempool

Az elmúlt napok darálása és az éjszaka bekövetkezett bitcoin árfolyam korrekció miatt fellépő csökkenő volumen miatt a bányászok szépen ledolgozták a mempool teljes hátralékát. A bitcoinfees.21.co kalkulációja szerint perpillanat 241 sat/B-on utalási költségen már garantáltan be lehet kerülni a következő blockba, de akinek ennyire nem sűrgős, az akár már 30-60 sat/B-on is tud utalni egy órán belüli blockba foglalással. Szóval egy átlagos tranzakció költsége perpillanat 32 cent és $2 között mozog. Az ilyen pillanatok mindig jól jönnek Roger Ver-nek, hogy egy kis FUD-ot gerjesszen, holott kora reggel óta újra igen csak elritkultak a tele blokkok:

Meg lesz persze mindennek a böjtje is. A fork.lol statisztikái szerint (különösen a POW-hashrate-en) tetemes mennyiségű új bányász erőforrás kapcsolódott be a termelésbe. A két hálózat (BTC, BCH) összesített teljesítménye már majdnem eléri a 10 exahasht másodpercenként, ennek ráadásul a döntő többsége (90+%) a Bitcoin hálózaton dolgozik éppen. Már most jól látható, hogy a 3,5 nap múlva esedékes difficulty adjustment közel 10%-kkal fogja növelni a bitcoin lánc nehézségi szintjét. Ez a jelenlegi tempót elnézve addig akár jelentősebben is növekedhet, ami lényegében egyet fog jelenteni azzal, hogy a bányászok nagy része következő hét szerdán újra visszatér a BCH láncra. Mindez újabb hálózati feltorlódásként jelentkezhet a (legacy) Bitcoin láncon.

Hogy legyen viszont valami jó hír is: szépen lassan, de tovább folyik a SegWit adaptálása a bitcoin felhasználók körében. A 144 blockos mozóátlag immáron közel kerül az 1%-os szinthez, ami ugye annyit jelent, hogy a készülő blockok tranzakcióinak 1%-a már SegWit protokollokkal készül.Ez persze még mindig édes kevés, de jó jel, hogy a trend stabilan növekvő:

Nem bírja a digitális paraszt a szántást

Kemény a digitális nomádok élete, különösen áram nélkül… Lassan 8 órája nincs áram, mivel az M0-M1 közös szakaszán egy sportrepülős akció keretei közben sikerült elszakítani az egyik nagyfeszültségű távvezetéket. Az első órában még hangulatos volt, a második órában lemerült a riasztó központi moduljában az aksi (amit egyébként pont holnap jönnek cserélni… rohadj meg Murphey…), onnantól két órán keresztül hallgatam, ahol üvölt a szabotázs riasztás miatt a sziréna, ami mostanra már annyira berekedt, hogy csak halk kopogtatással jelzi, hogy “ő bizony még küzd”. Lassan az utolsó bumperből is kifogy az áram, ami még táplálja a LTE kapcsolatot biztosító mobilt, mely az utolsó szalmaszálam a crypto világhoz. Mire az lemerül talán a notebookból is kifut az aksi és onnantól már csak a gyertyák maradnak:

Bár a hangulat kétségtelenül csodás, sőt már-már nyugtató, de fura hiányérzettel és nyugtalansággal tölt el, hogy nem hallom felszűrődni a pincéből a bányapark halk morajlását. Mondjuk ez a 8 óra (+ ki tudja mennyi még) szünet nem vágja különösebben földhöz a mining profitabilitást, de ettől még valahol benne van az emberben a ‘csessze-meg-a-hülye-repülőjét‘ érzés.

Olyan lesz, ami régen volt: Alszom végre egy jót? Rám férne… De addig is néhány érdekesség, ha már tollat ragadtam:

Folytatás…

SegWit: Kis lépések

Mint az alábbi ábrán is látható, szépen lassan de beindult a SegWit adaptáció, immáron a blockok tranzakció tartalmának majd 0.3%-a SegWit tranzakció. Ezen túlmenően a növekvő trend egyértelműen kiolvasható az ábrából:

A statisztikát egyébként ezen az oldalon bármikor tudjátok követni: -link-

Hogy mennyit számít a SegWit? Alábbi példa jól mutatja, hogy mennyivel rövidebb egy segwit nélküli és egy segwites input script:

 

 

Bitcoin: A világvége közkívánatra elmarad?

Alig két óránk marad a Bitcoin Cash blocklánc következő retargeting (difficulty adjustment) időpontjáig, ami úgy egyébként alig két és fél nappal az előző retargeting után lép életbe… Az egyébkénti normál ütemű két hét helyett. Ennyit a Satoshi vízió követéséről. Nakamoto, ha halott lenne (és isten adja, hogy nehogy az legyen…), akkor most biztos forgolódna a sírjában. Az már most egyértelmű, hogy ennek hatására megkapja a maximális (+300%) szorzót a BCH blocklánc aminek pillanatában a profitabilitása mélyen a bitcoin alá zuhan és beindul az a hop-on, hop-off spirál, amit a tegnap éjszakai postomban már részletesen kifejtettem. Nem túlságosan komoly meglepetés, de időközben a BTC.top is belépett a BCH-BTC flipflop mining bizniszbe és egyből le is villantotta az utolsó 144 block 29%-át. Ezzel Mr. Unknown már a szinte csekélynek nevezhető 15% hashing powerre zuhant a Bitcoin Cash láncon.

Egyébként a mai napon két nagy kínai tőzsde is hivatalosan elkezdte listázni a Bitcoin Casht. Nevezetesen: OkCoin és Huobi. A lépés egyébként nem meglepő. Várható volt, hogy első körben az igazán nagyhalak kezdik el implementálni a Bitcoin Cash-t, hiszen esetükben a leginkább kritikus a tranzakciós költségek kérdése. Márpedig perpillanat teljesen reális scenarió az, ha át akarok juttani egy tőzsdéről egy másikra bitcoint-t, akkor azt előbb beváltom bitcoin cash-é, majd fillérekért villámgyorsan átutalom a másik tőzsdére, ahol azt visszaváltom BTC-re. A nagy tőzsdék után másodvonalként várható, hogy az egyéb arbitrázs tevékenységgel foglalkozó intézmények is hamarosan tömegesen jelentik be szinkron szolgáltatásaikat a Bitcoin Cash láncon.

Ebben a pillanatban a Bitcoin blockláncon közel 90.000 függő tranzakció fürdik a mempoolban, így most legalább 350-400 sat/B-ot kell fizetni egy olyan tranzakcióért ami el is utalódik egy blockon belül. Két órán belül várhatóan azonban ez a probléma kezelődni fog azáltal, hogy kifut a BCH retargetingje és a bányászok automatikusan visszatérnek a bitcoin láncra. Bár a mostani ütem szerint még 1 nap és 13 óra kellene ahhoz, hogy a Bitcoin láncon is megtörténjen a retargeting és ezzel együtt a SegWit aktiválása, de a hírtelen visszatérő bányászok miatt ez sokkal hamarabb is megtörténhet (fejszámolásom alapján akár még holnap hajnalban vagy kora reggel). A Bitcoin blocklánc retargetingje (diff adjustment) várhatón 8.5%-kkal fogja csökkenteni a difficulty-t, így amennyiben Mr. Unknown kivételével mindenki visszamegy a főláncra, akkor holnap délutántól átlagosan akár 8-9 block is készülhet a Bitcoin blockláncon.

Ez negatív scenario esetén (amennyiben 0%-os SegWit protokoll adoptáció várható az első néhány napban) azt jelenti, hogy 24 óra alatt eltakarítható a mempool közel 70%-a, míg ha azzal számolunk, hogy a bitcoint üzleti célokra használó vállalkozások valóban felkészültek a SegWitre és holnaptól már jellemzően a P2WPKH és P2WSH trazakciós kódokat használják, akkor ez akár nullára is kiürülhet még az előtt, hogy a bányászok újra vissza tudnának állni a BCH láncra. Több nagyobb szereplő (pl. Trezor) is bejelentette, hogy felékszült a támogatásra, mellettük számos kereskedelmi platform is aktívan dolgozik az implementáláson.

Azt gondolom, hogy az elmúlt napokban mérhetetlen mennyiségű erőforrást költöttek arra emberek, hogy létrejöjjön akár egy flippening, akár egy hatalomátvétel. Tetemes mennyiségű cikket olvastam, amelyek rendre a “Will The Real Bitcoin Please Stand Up” jeligére már hosszasan azt magyaráták, hogy miért a Bitcoin Cash az új Bitcoin. Miközben jómagam is tetem mennyiségű megalapozott és részletes kutatásokkal alátámasztott bizonyítékát hoztam annak, hogy miért is várható itt és most armegeddon, szóval eközben a Bitcoin árfolyama töretlenül tartotta magát a 4000 USD körül hol néhány százalékkal alá beszaladva, hol felszaladva kicsivel fölé. Szóval a jelek szerint (velem ellentétben…) a bitcoin közösséget sokkal keményebb fából faragták, mithogy egy kis miner flip-flop miatt komolyabb katasztrófa történhetne.

Folytatás…