Toto je názorový úvodník od Shinobiho, samouka v oblasti bitcoinov a technologicky orientovaného hostiteľa bitcoinových podcastov.

Veľké prekvapenie, bitcoineri sa zúrivo dohadujú o navrhovanom zmena nastavená na zahrnutie do ďalšieho vydania bitcoinového jadra. Voliteľné nahradenie za poplatok (RBF) je funkcia zásad mempool, ktorá bola navrhnutá v roku 2015 s cieľom poskytnúť používateľom nástroj na riešenie rýchlych nárastov poplatkov, ktoré vedú k tomu, že ich transakcie uviaznu nepotvrdené v mempool na dlhé časové úseky.

Je zrejmé, že to bude problém pre akékoľvek použitie bitcoinu, ak objem transakcií v priemere narastie tak, aby bol konzistentne vyšší ako počet transakcií, ktoré je možné spracovať v blockchaine, takže pokiaľ si nemyslíte, že sa to nikdy nestane je to potrebná funkcia v sieti.

Nahradenie transakcie bolo skutočne zahrnuté a možné v pôvodnom vydaní softvéru predtým, ako Satoshi Nakamoto zmizol. Túto funkciu nakoniec zakázal, pretože spôsob, akým ju pôvodne implementoval, vytvoril vektor pre útoky odmietnutia služby proti uzlom. Jeho implementácia umožnila nahradenie akejkoľvek transakcie bez platenia vyššieho poplatku, čo by v podstate umožnilo používateľom odoslať transakciu a potom začať vysielať neobmedzené množstvo náhrad do siete. To by samozrejme umožnilo spamovanie uzlov s obrovským množstvom údajov, ktoré si nevyžadovali dôkaz o práci, a neúmerne by zvýšilo náklady na prevádzku uzla.

V priebehu rokov vzniklo niekoľko rôznych návrhov na vylepšenú a bezpečnejšiu náhradu transakcie schéme boli prediskutované. Rýchlo si to všetko prejdeme.

Plné RBF

Najjednoduchší variant RBF. Akákoľvek transakcia môže byť nahradená, pokiaľ sa pri náhrade pôvodnej transakcie platí vyšší poplatok ako za transakciu, ktorú nahrádza. Týmto spôsobom sú všetky transakcie zameniteľné, ale požiadavka zaplatiť vyšší poplatok pri každej výmene jednej zabraňuje nekonečnému spamu nových verzií uzlov preťažujúcich transakcie.

First-Seen-Safe RBF

Toto navrhovalo povoliť nahradenie všetkých transakcií v mempoole, s jedným špeciálnym upozornením; všetky výstupy v pôvodnej transakcii musia byť zahrnuté aj do náhradnej transakcie vrátane výstupu zmeny. Nahradenie transakcie stále vyžaduje zvýšenie poplatku, ale požiadavka na zachovanie rovnakých výstupov znamená, že musíte pridať nový vstup a druhý výstup zmeny, pretože žiadny z pôvodných výstupov nemožno zmeniť. Výsledkom sú väčšie transakcie, ktoré musia zaplatiť viac v celkových poplatkoch, aby sa zabezpečilo, že náhrada bude platiť vyššiu sadzbu poplatku.

Oneskorené RBF

Tu bol návrh povoliť výmenu akejkoľvek transakcie v mempoole, ale až po uplynutí určitého počtu blokov, odkedy uzol videl pôvodnú transakciu. Myšlienkou bolo, že by to umožnilo rýchlejšie nahradiť a potvrdzovať zaseknuté transakcie v prostrediach s vysokými poplatkami, ale časové oneskorenie v tom, ako skoro by sa to dalo nahradiť, by zabránilo pokusom o dvojité výdavky s nulovým potvrdením.

Opt-In RBF

Toto bolo implementované v roku 2016, ako je definované v BIP 125. Transakcie môžu byť nahradené iba vtedy, ak v transakcii nastavia špecifický príznak, ktorý sa prihlási na nahradenie, alebo ak to urobil jeden z ich predkov v prípade reťazca nepotvrdených transakcií, aby ľudia prijímajúci prostriedky vedeli, či bude alebo nebude nepotvrdená transakcia. vymeniteľné v mempoole.

Veľkou kontroverziou dnes je, že ďalšie vydanie Core, 0.24, má zaviesť úplný príznak politiky RBF mempool. Čo to znamená? Poskytne používateľom konfigurovateľnú možnosť zmeniť svoju lokálnu politiku mempool z opt-in RBF na plnú RBF; v predvolenom nastavení bude možnosť vynechaná (uzly budú používať plné RBF). Prečo sa teda ľudia búria kvôli tejto zmene? Podniky, ktoré akceptujú transakcie s nulovým potvrdením, závisia od veľkej väčšiny uzlových fondov, ktoré odmietajú nahradiť transakcie, ktoré sa neprihlásili do RBF, príznakom transakcie. Robia to tak, že svoj uzol takticky pripájajú k veľkému počtu ďalších uzlov rozmiestnených po celej sieti. To im umožňuje veľmi rýchlo zistiť prítomnosť transakcie s dvojitým výdavkom v sieti, pretože to musí byť vykonané takmer okamžite, ak transakcia nie je označená ako RBF, aby mali dobrú šancu dostať sa k baníkom. Za zmienku tiež stojí, že každá firma v sieti to nedokáže bez efektívneho sybilizácie siete. Tieto podniky tvrdia, že plné RBF „rozbíja“ ich obchodný model používania RBF. Niektorí dokonca kritizovali kľúčových vývojárov, ktorí „vynútili“ zmenu, ktorá negatívne ovplyvňuje tieto podniky.

Jednoduchá realita je taká, že dvojité míňanie je a vždy bude možné, opt-in RBF alebo plná RBF na tom nič nezmení. Okrem toho, jednoduché vytvorenie možnosti zmeniť svoju vlastnú lokálnu politiku mempoolu (ktorá je predvolene vypnutá) v žiadnom prípade nikomu nediktuje zmenu, je to možnosť daná používateľom, aby si sami vybrali. Na konci dňa, keď príde na to, ktoré transakcie budú skutočne zahrnuté do nasledujúceho bloku, jedinými mempoolmi, na ktorých záleží, sú ťažiari. Mempooly jednotlivých užívateľských uzlov nie sú nič iné ako reťazec ukladania pamäte s konečným cieľom propagovať všetky tieto nepotvrdené transakcie baníkom, aby mohli byť nakoniec zahrnuté do bloku.

Politika Mempool sa používa ako druh mäkkého bezpečnostného mechanizmu na zabránenie útokom odmietnutia služby na uzly a na ochranu používateľov pred streľbou do nohy komplikovanými transakciami a skriptami. Mnoho typov transakcií je platných na základe konsenzu, môžu byť zahrnuté do bloku, ale nebudú prenášané predvolenou politikou mempool uzlov. To však vôbec nič nezabráni rozhodnutému používateľovi odovzdať transakciu, ktorú by uzly v sieti ignorovali, priamo baníkovi.

To je jadro veci. Stačí, keď si baníci nastavia API, aby im priamo odosielali transakcie, čo už mnohí majú a na obmedzeniach zásad mempool v celej sieti nezáleží. Môžete jednoducho zadať transakciu priamo ťažiarom a obísť každé pravidlo o tom, kedy sa dá niečo nahradiť v mempoole iných uzlov. Zamyslite sa nad tým, aké sú stimuly – ak sa dajú zarobiť peniaze ťažbou určitej triedy transakcií, ale mempooly v sieti ich neprenesú, čo by ste ako baník robili? Stačí ich priamo prijať. Čím viac sa dotácia znižuje a transakčné poplatky rastú ako percento príjmov baníkov, tým nevyhnutnejšie sa stáva, že ťažiari budú priamo akceptovať náhrady, ktoré platia vyššie poplatky, ak ich uzly v sieti nebudú prenášať nepriamo. Je to neprehliadnuteľné.

Táto zmena nemení predvolenú politiku mempool pre bitcoinové jadro, jednoducho predstavuje možnosť pre jednotlivého operátora uzla zmeniť svoju lokálnu politiku mempool, ak sa tak rozhodne.

A mohol by som dodať, že toto je voľba, ktorá bola vždy k dispozícii, ak sa používatelia rozhodli upraviť svojho klienta. Všetko, čo robí, je urobiť voľbu, ktorá bola vždy dostupná pre používateľov, jednoduchšie. Stimuly nevyhnutne vedú k stavu, že všetky transakcie budú nahraditeľné, ak budú baníci konať ekonomicky racionálnym spôsobom – tomu sa nedá vyhnúť. Jedinou otázkou je, či by mal softvér odrážať tieto stimuly tak, aby sa jednotliví používatelia sami rozhodli, akú politiku použijú pre svoj mempool, alebo by ľudia mali len sedieť a nechať šírenie transakcií centralizovať okolo priameho podriadenia sa ťažiarom. seba?

Konečný výsledok je rovnaký, ale čakanie, kým ťažiari pritiahnu k priamemu zadávaniu transakcií, bude mať veľmi negatívne dôsledky. Malo by to dôsledky na súkromie pre ľudí vysielajúcich transakcie do siete a mohlo by to mať veľmi negatívne dôsledky na schopnosť používateľov rozhodnúť sa, aký poplatok za transakciu zaplatiť. Ak veľké časti nevybavených transakcií už nie sú verejne vysielané v sieti, používatelia nebudú mať úplný prehľad o tom, proti komu sa uchádzajú o zaradenie do bloku. Baníci by mohli dokonca klamať o rozdelení poplatkov, aby motivovali používateľov, aby platili viac, ako musia.

Jedinou skutočnou nevýhodou sprístupnenia tejto možnosti je, že úplné RBF nemusí fungovať konzistentne, ak sa len malá časť siete vrátane baníkov rozhodne povoliť plnú RBF. V zásade sa to však z hľadiska prechodu nelíši od upgradu na SegWit. Počas tohto prechodného obdobia by neaktualizované uzly neprenášali transakcie SegWit, pretože ich neboli schopné overiť, takže počas tohto obdobia bola rovnaká dynamika šírenia nekonzistentná, kým neupgradoval dostatočný počet používateľov. Ale v konečnom dôsledku to nič nezmenilo na skutočnosti, že o inovácii rozhodovali jednotliví používatelia.

V konečnom dôsledku boj s plným RBF len popiera realitu stimulov v sieti. Nikomu nie je nič diktované, možnosť konfigurácie jednoducho ponúka jednotlivým používateľom možnosť voľby. Pripadá mi čudné, že zároveň toľko ľudí ignoruje realitu stimulov, aby tvrdili, že neistý spôsob prijímania platieb možno udržať v bezpečí napriek stimulom, rovnako ako ľudia tvrdia, že používatelia softvéru by nemali mať možnosť voľby spôsobu na konfiguráciu vlastného softvéru.

Môj uzol, moje pravidlá, však?

Toto je príspevok hosťa od Shinobi. Vyjadrené názory sú úplne ich vlastné a nemusia nevyhnutne odrážať názory BTC Inc alebo Bitcoin Magazine.

Categories: IT Info