Kúzlo UTXO

V jednom z našich predchádzajúcich článkov sme hovorili o útoku „dvojitých výdavkov“. Dôležitú úlohu pri predchádzaní takémuto útoku hrá dokladový model vlastníctva – UTXO. Vďaka tejto štruktúre transakcií budovania umožňuje bitcoinový protokol kedykoľvek sledovať umiestnenie mincí.

V dnešnom článku sa zameriame na koncept UTXO, zvážime problémy spojené s týmto účtovným modelom a preskúmame možné riešenia týchto problémov..

Čo je to UTXO?

Skratka UTXO znamená „nevyčerpaný transakčný výstup“, inými slovami zvyšky alebo „zmena“, ktorá sa získa po použití niektorých finančných prostriedkov..

Uzly v bitcoinovej sieti udržiavajú blockchain, ktorý uchováva všetky sady UTXO dostupné na utrácanie. Každý z uzlov sleduje všetky UTXO a pri formovaní blockchainu kontroluje každú transakciu každého bloku. Sledovanie nevyčerpaných coinov je oveľa pohodlnejšie ako sledovanie každej transakcie osobitne.

Akákoľvek transakcia pozostáva zo vstupov a výstupov. Vstupy novej transakcie sú odkazmi na výstupy predchádzajúcich transakcií. Sumarizáciou hodnôt týchto odkazov ich možno použiť na výstupe novo generovanej transakcie. Na výstupe sú uložené mince a pokyny na ich utratenie.

Pri kontrole zostatku na vašej bitcoinovej peňaženke vidíte celú uloženú sumu. Ale v skutočnosti môže zostatok na základe histórie predchádzajúcich transakcií pozostávať z mnohých výstupov predstavujúcich rôzne sumy. Popremýšľajte o tom ako o mnohých účtoch v peňaženke. Zostatok adresy v ktoromkoľvek danom čase je súčtom všetkých UTXO, ktoré môže adresa v súčasnosti minúť. Sady výstupov predstavujú UTXO, to znamená súbor výstupov s rôznymi sumami, ktoré zodpovedajú zostatku.

Poďme si na príklade lepšie porozumieť princípu UTXO: 

Ak na svojom účte držíte 50 BTC a chcete vykonať platbu 0,5 BTC, je potrebné vytvoriť transakciu, v ktorej musí byť aspoň jeden vstup a jeden výstup. Povedzme, že existuje iba jedno UTXO s 50 BTC. Nie je možné rozdeliť UTXO; preto sa ako vstup používa 50 BTC. Odoslaním podpisu potvrdzujeme svoje vlastníctvo tohto vstupu. Vďaka tomu vzniknú dva výstupy s nominálnymi hodnotami 0,5 a 49,5 BTC. Zmena 49,5 BTC sa odošle späť do peňaženky majiteľa a stane sa z nej nové UTXO. 0,5 BTC sa odošle na adresu príjemcu. Stojí za zmienku, že poplatok za transakciu sa odpočítava od zmeny spoločnosti UTXO.

Dôležité vlastnosti použitia modelu výstupu transakcií:

  • Transakcie sa uskutočňujú „spotrebovaním“ existujúcich UTXO a vytvorením nových na ich mieste;
  • Nové UTXO je možné vytvoriť iba prostredníctvom transakcií;
  • Použité UTXO sa „minú“ a spotrebujú sa iba raz.

UTXO je jedným zo spôsobov, ako zaznamenať a uložiť stav blockchainu a zaznamenať dôkazy o vlastníctve mince niekým v sieti. Blockchain založený na UTXO je typom blockchainového protokolu. Princíp nevyčerpaných výstupov sa používa v blockchainoch všetkých bitcoinových forkov, ako aj v blockchainoch mnohých ďalších coinov, ako sú Monero, Cardano a Komodo. Hyperledger Fabric používa upravený model UTXO.

Ďalším spôsobom, ako usporiadať blockchain, je „model účtu“, ktorý sa používa v blockchaine Ethereum. Tento prístup sa implementuje prostredníctvom lokálneho účtovania tokenov v uzloch, a nie v samotných transakciách.

Problémy a riešenia modelu UTXO

Kryptomenový prach

Kryptomenový prach je pojem, ktorý označuje sumy v BTC, ktoré nepresahujú transakčné poplatky.

Problém prachu z kryptomeny sa stal relevantným počas rally Bitcoinu k jeho historickému ATH v roku 2017. Uchovávanie značného počtu nerentabilných UTXO je zbytočné, pretože ich utratenie nie je potrebné, ako by mali hodnotu.

Vývojári sa snažia vyriešiť problém krypto prachu na rôznych úrovniach. Binance sa stala prvou burzou, ktorá umožnila premenu prachu kryptomeny na BNB tokeny.

Kryptomenový prach sa dá použiť aj na priradenie rôznych adries patriacich jednému vlastníkovi. Pretože vstupy sa pri uskutočňovaní transakcie nekombinujú, útočníci môžu poslať krypto prach, ktorý sa má zmiešať s inými UTXO, a priradiť rôzne adresy obetí..

Ukladá sa UTXO

Pretože blockchain ukladá všetky sady UTXO prítomné v sieti, čím vyšší je počet takýchto sád, tým viac miesta zaberajú.

Plné uzly ukladajú databázu nevyčerpaných transakcií do pamäte RAM a s nárastom množstva uložených údajov sa náklady na údržbu uzla iba zvyšujú. Jednou z diskutovaných možností riešenia problému ukladania nevyčerpaných transakcií je prenos časti uložených údajov na HDD alebo SSD zariadenia.

Implementácia segregovaného svedka

Databáza UTXO je udržiavaná a kontrolovaná všetkými uzlami v sieti na kontrolu platnosti transakcií. Pre rýchlejšiu prevádzku siete by sa takáto kontrola mala vykonať čo najskôr. Z tohto dôvodu sa databáza uchováva v pamäti RAM. S nárastom počtu používateľov a počtu peňaženiek rastie objem dát UTXO, čo vedie k problému škálovania siete. Za účelom zvýšenia ochrany osobných údajov alebo podpory platobných kanálov Lightning Network vytvárajú používatelia viac záznamov UTXO.

Jedným z vylepšení po zavedení SegWitu bolo zníženie rastu UTXO vytváraním záznamov UTXO, ktoré neovplyvňujú jeho objem. Pri tomto prístupe je vhodnejšie používať transakcie s menším dopadom na UTXO z dôvodu nižších provízií.

Riešenie UTreeXo

S rastom zdrojov potrebných na udržanie úplného uzla používatelia čoraz viac prechádzajú na monitorovanie siete na takzvaných „ľahkých klientov“ a uzly tretích strán. Ľahkí klienti neukladajú databázu UTXO a neoverujú transakcie, ale používajú SPV, čo je skratka pre „Overenie zjednodušenej platby“. Túto metódu overenia popísal v bielej knihe o bitcoinoch samotný Satoshi Nakamoto. Z dôvodu mnohých významných nedostatkov v ochrane súkromia je používanie klientov SPV v porovnaní s úplnými uzlami nezabezpečené. Problém udržania plných uzlov je možné vyriešiť implementáciou protokolu uTreeXo

Protokol uTreeXo je dynamický akumulátor, ktorý zmenšuje veľkosť UTXO v blockchaine na niekoľko kilobajtov. Riešenie uTreeXo umožňuje úplným uzlom vyhnúť sa ukladaniu všetkých údajov blockchainu a sledovaniu množiny všetkých UTXO. Namiesto toho akumulátory poskytnú dôkaz o správnosti údajov.

So zavedením protokolu uTreeXo bude možné na mobilných zariadeniach prevádzkovať plné uzly.

Záver

Model UTXO, ktorý sa objavil spolu s bitcoinom, zjednodušil spôsob účtovania finančných prostriedkov a dal podnet na vývoj riešení v oblasti dosiahnutia súkromia v transakciách. Zmiešaním rôznych UTXO môže používateľ na vykonávanie transakcií využívať rôzne adresy, čo komplikuje spôsoby vytvárania odkazov medzi adresami..

Tradičný model UTXO má pri používaní inteligentných zmlúv množstvo obmedzení, vývojári spoločnosti Cardano však opísali koncept Extended UTXO (EUTXO) – rozšírený model UTXO na zavádzanie inteligentných zmlúv do svojej siete..

Napriek existujúcim nedostatkom je tento prístup jedným z najpoužívanejších v blockchainoch iných kryptomien a intenzívna práca na riešení týchto nedostatkov iba zvýši popularitu modelu UTXO v iných blockchainových systémoch.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
map