Čo je to UTXO? | Vysvetľovač začiatočníka o výstupoch transakcií

Čo je to UTXO?

UTXO znamená Výstup nevyčerpaných transakcií (TX). V zásade je to množstvo zvyšných zmien kryptomeny, ktoré získate z každej transakcie. Na ďalšie vysvetlenie by sme si však mali v prvom rade rozobrať, ako funguje typická krypto transakcia. Použime pre náš príklad bitcoin, pretože ide o najznámejšiu kryptomenu používajúcu UTXO.

Príklad transakcie UTXO

Keď sa pozriete na svoju bitcoinovú peňaženku, uvidíte rovnováhu. V tomto príklade nastavíme hodnotu 100 bitcoinov. Aj keď pozorujete len jeden zostatok, vaše prostriedky v skutočnosti pozostávajú z niekoľko UTXO. Môžete mať štyri UTXO v hodnote 25 bitcoinov, dve UTXO v hodnote 50 alebo sadu UTXO v hodnote 37, 18, 40 a 5 bitcoinov. Na konkrétnych sumách nezáleží, ale musia sa pridať k vášmu celkovému zostatku, v tomto prípade 100.

V ďalšom príklade predpokladajme, že nakupujete nové auto. Pracuješ tvrdo; zaslúžiš si to. Vzpierajúc sa Lambo stereotypu sa rozhodnete pre verandu, ktorá stojí 35 bitcoinov. Vaša peňaženka obsahuje iba UTXO, ktoré sa rovnajú 15, 17, 28 a 40 bitcoinom. Nemáte žiaden, ktorého hodnota je presne 35 bitcoinov.

Nie je možné rozdeliť UTXO, takže neexistuje spôsob, ako zaplatiť presných 35 bitcoinov, ktoré dlhujete.

Namiesto toho miniete 40 bitcoinov UTXO. Na jeho miesto sieť ťaží dva nové UTXO: jeden v hodnote 35 bitcoinov, druhý v hodnote 5 bitcoinov. Predajca automobilov dostane 35 bitcoinových UTXO, zatiaľ čo vy dostanete 5 bitcoinových UTXO ako zmenu.

Môžete tiež minúť 17 a 28 bitcoinových UTXO a získať 10 bitcoinov ako svoju zmenu. Transakcia môže používať ľubovoľnú kombináciu UTXO; nad ktorými však nemáte kontrolu.

Rovnako ako môžete rozdeliť UTXO na samostatné inštancie, môžete ich tiež skombinovať do väčších transakcií a vytvoriť ich menej v sieti..

A čo transakčné poplatky?

Transakčné poplatky sú tiež zahrnuté v transakciách a odpočítavajú sa od UTXO, ktoré dostanete ako zmenu. Rovnica vyzerá asi takto:

Nové UTXO = (Súčet UTXO v transakcii) – (Suma transakcie) – (Transakčný poplatok)

Pokračujeme v našom najnovšom príklade s poplatkom za jednu bitcoinovú transakciu:

Nové UTXO = (17 + 18) – (35) – (1) = 9 bitcoinov


Dôležitosť a potenciálne problémy UTXO

Implementácia UTXO výrazne zjednodušuje účtovné metódy blockchainu. Namiesto toho, aby sme museli sledovať a ukladať každú jednu transakciu, aby sme dosiahli menej, stačí sledovať nevyčerpané mince, známe tiež ako UTXO.

Ako vidíte, každú mincu v bitcoinovom ekosystéme je možné minúť iba raz. Takže každý bitcoin v peňaženke práve teraz nie je vyčerpaný, pretože:

  1. Baník to dostal ako odmenu za ťažbu, príp
  2. Bolo vyťažené počas transakcie. (Pamätáte si náš príklad z minulosti?)

UTXO sú rozhodujúce pri predchádzaní útokom s dvojitým výdajom a bránia vám minúť mince, ktoré neexistujú. Sieťové uzly zaznamenávajú a udržiavajú databázu, ktorá obsahuje všetky UTXO (tj. Nevyčerpané mince), ktoré sú k dispozícii na útratu. Ak sa pokúsite odoslať transakciu s mincou, ktorá sa v tejto databáze nenachádza, uzly ju odmietnu.

Potenciálne problémy s ukladaním

Uzly ukladajú databázu UTXO do pamäte RAM, takže je dôležité udržiavať množinu údajov v zvládnuteľnej veľkosti. Postupným rastom spolu s ním rastú aj náklady na prevádzku celého uzla. Ak by prevádzka celého uzla bola príliš nákladná, mohli by sme vidieť ďalšiu centralizáciu v bitcoinovej sieti medzi niekoľkými málo bohatými, ktorí si môžu dovoliť ich prevádzkovanie.

Veľkosť databázy bitcoinových UTXO v priebehu času prostredníctvom blockchainu

Veľkosť databázy bitcoinových UTXO v priebehu času prostredníctvom blockchainu

Toto riziko centralizácie je jedným z hlavných argumentov proti zväčšeniu veľkosti bitcoinového bloku. Vývojár bitcoinov Gavin Andresen to najlepšie popisuje jeho článok UTXO uh-oh…:

„Jeden megabajtový blok predstavuje priestor pre asi 100 miliónov 500-bajtových transakcií ročne. Keby každý z nich zvýšil sadu UTXO o 500 bajtov, zvýšilo by to sadu UTXO o 50 gigabajtov ročne. “

Veľkosť megabajtového bloku nastavuje hornú hranicu rozsahu, v akom by sa mohla databáza UTXO každý rok zväčšovať. Ďalej pokračuje:

„Povolenie väčšieho počtu transakcií bez ďalších zmien by s najväčšou pravdepodobnosťou urýchlilo rast množiny UTXO, čo by spôsobilo drahšie a rýchlejšie spustenie plne validujúceho uzla.“

Len preto, že nebudeme mlieť Andresenove slová: Jeho článok je v skutočnosti za zväčšenie veľkosti bloku. Tvrdí, že vplyv na veľkosť súpravy UTXO nie je drastický, ako si ostatní myslia. A vzhľadom na zložitosť riešení škálovania druhej vrstvy musíme z krátkodobého hľadiska implementovať väčšie bloky skôr, ako budú tieto riešenia z dlhodobého hľadiska zavedené..

Riešenia

Našťastie existuje niekoľko riešení možných problémov s úložiskom. Po prvé, uzly nemusia ukladať celú databázu UTXO do pamäte RAM. Môžu sa rozhodnúť uložiť časť z nej na lacnejší disk SSD (Solid-State Disk) alebo na pevnom disku s pevným diskom. Aj keď tieto typy úložiska vedú k pomalším časom overenia pre každý uzol, nemal by nastať problém, pokiaľ sú stále pod desaťminútovým priemerným časom blokovania.

Vývojári bitcoinu navyše neustále zlepšujú mechanizmy transakcií s cieľom optimalizovať databázu UTXO.

Nakoniec Segregated Witness (Segwit) a podobné riešenia zmeny mierky nepriamo spomaľujú rast databázy UTXO. Tiahnutie priamo z Bitcoinová základná dokumentácia:

„Segwit tu zlepšuje situáciu tým, že podpisové dáta, ktoré nemajú vplyv na veľkosť súpravy UTXO, stoja o 75% menej ako dáta, ktoré majú vplyv na veľkosť súpravy UTXO. Očakáva sa, že to povzbudí používateľov, aby uprednostňovali použitie transakcií, ktoré minimalizujú vplyv na množinu UTXO, aby sa minimalizovali poplatky, a povzbudia vývojárov, aby navrhovali inteligentné zmluvy a nové funkcie spôsobom, ktorý tiež minimalizuje vplyv na množinu UTXO. “

Záver: Alternatívy UTXO?

V našom dnešnom príklade sme dôsledne používali bitcoin, ale existuje veľa ďalších kryptomien, ktoré implementujú UTXO, okrem iných Bitcoin Cash, Litecoin a Komodo..

Existuje tiež mnoho ďalších kryptomien, ktoré využívajú iné mechanizmy účtovníctva. Napríklad Ethereum má model transakcie založený na účte. Tento mechanizmus všeobecne poskytuje lepšiu úsporu miesta a prácu s jednoduchším kódom; Stratíte však úroveň ochrany súkromia transakcií a narazíte na potenciálne problémy so škálovateľnosťou.

Ak sa spýtate miestnosti desiatich vývojárov kryptomien na najlepšie účtovné metódy, pravdepodobne dostanete desať rôznych odpovedí. Je to veľmi diskutovaná téma v celej komunite, ktorá stále nemá dokonalé riešenie. A vzhľadom na zložitosť to pravdepodobne nikdy nebude.

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