Zůstatek je součet vypočtený peněženkou
Představte si, že jste přijali tři platby: 20 000, 30 000 a 50 000 satoshi. Síť pro vás nevede řádek „zůstatek 100 000“. Existují tři samostatné neutracené výstupy a peněženka zjistí, které z nich dokážou její klíče utratit. Jejich součet zobrazí jako srozumitelný zůstatek.
UTXO má původ v konkrétní transakci, přesnou hodnotu a uzamykací podmínku. Když jej platná pozdější transakce použije jako vstup, stane se utraceným a už jej nelze použít znovu. Místo něj vzniknou nové výstupy. Plné uzly udržují aktuální množinu neutracených výstupů, aby mohly účinně odhalit dvojí utracení.
Výstup nelze odtrhnout jen napůl
Máte-li UTXO v hodnotě 50 000 satoshi a chcete zaplatit 18 000, transakce spotřebuje celý původní výstup. Může vytvořit 18 000 satoshi pro příjemce, například 31 500 satoshi jako drobné zpět do vaší peněženky a 500 satoshi ponechat jako poplatek.
Adresa pro vrácení drobných může v průzkumníku vypadat jako druhý příjemce, ačkoli patří odesílateli. Peněženka ji zpravidla vytvoří automaticky. Kdyby drobné vynechala, celý rozdíl mezi vstupy a ostatními výstupy by mohl být považován za poplatek těžaři. Bez znalostí proto není bezpečné sestavovat surové transakce.
- vybraná UTXO se spotřebují celá
- platba a drobné vzniknou jako nové samostatné výstupy
- poplatek není zvláštní výstup; tvoří jej rozdíl mezi součtem vstupů a výstupů
Výběr mincí ovlivňuje cenu i soukromí
Peněženka musí rozhodnout, která UTXO použije. Více vstupů obvykle znamená větší transakci, a tedy při stejné sazbě vyšší celkový poplatek. Mnoho velmi malých výstupů může být v době drahého blokového prostoru neekonomické utratit, protože jejich vstup zabere více dat, než odpovídá jejich hodnotě.
Spojení několika UTXO v jedné transakci také veřejně naznačuje, že je mohl ovládat stejný plátce. Není to matematický důkaz totožnosti, ale běžně používaná analytická heuristika. Kvalitní peněženka proto vyvažuje okamžitý poplatek, soukromí, velikost drobných a budoucí použitelnost výstupů.
Model UTXO umožňuje nezávislé ověření
Když uzel přijme transakci, u každého vstupu vyhledá označené UTXO, zkontroluje podmínku utracení a ověří, že součet výstupů nepřekračuje povolenou hodnotu vstupů. Po přijetí bloku odstraní utracené položky ze své množiny UTXO a přidá nové výstupy, které lze utratit.
Uzel nemusí věřit zůstatku oznámenému cizí peněženkou. Stav si odvodí z vlastní ověřené historie. Cenou za tento model je méně intuitivní rozhraní a nutnost rozumné správy výstupů. Peněženka podrobnosti skrývá, ale při vysokých poplatcích či ochraně soukromí se znovu stanou důležitými.