AssumeUTXO je optimalizace s dočasným předpokladem, ne náhrada plné validace. Obsah snapshotu musí odpovídat očekávanému hashi v programu a následně také stavu vypočtenému z historie.
Snapshot popisuje neutracené výstupy k určitému základnímu bloku. Není archivem všech transakcí ani samostatným důkazem, že všechny předchozí bloky byly ověřeny. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — loadtxoutset RPC]
loadtxoutset kontroluje formát, základní blok a podporované parametry. Bitcoin Core v29.0 také vypočte hash načteného UTXO obsahu a porovná jej s očekávanou hodnotou před aktivací. [Bitcoin Core v29.0 — AssumeUTXO parameters] [Bitcoin Core — loadtxoutset RPC] [Bitcoin Core — validation]
Po přijetí snapshotu může jeho stav zpracovávat následující bloky a dojít ke špičce. Nové bloky se dále kontrolují podle konsenzu; snapshot není výjimkou z pravidel utrácení či emise. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
Druhý stav řetězce postupuje historickými bloky od začátku směrem k základu snapshotu. Dostupnost aktivní špičky sama neznamená dokončení této nezávislé práce. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
Podporované základní bloky a očekávané hashe jsou součástí konkrétní verze programu. Před dokončením historie uživatel přijímá tento výslovný předpoklad správného stavu; hash není náhradou historického důkazu. [Bitcoin Core v29.0 — AssumeUTXO parameters] [Bitcoin Core 28.0 release notes]
Libovolný soubor ani libovolná výška nejsou automaticky podporovány. Nesprávný obsah neprojde očekávaným hashem; dodavatel může přesto způsobit nedostupnost či zdržení a načítání spotřebuje prostředky. [Bitcoin Core — loadtxoutset RPC] [Bitcoin Core — validation]
Ve výšce základního bloku se hash nezávisle vytvořeného UTXO setu porovná s očekávaným hashem. Neshoda je chyba a vede k zastavení, ne k tichému prohlášení snapshotu za ověřený. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
AssumeUTXO zkracuje dobu k použitelnému stavu, nikoli na nulu celkovou validační práci. Souběžné stavy vyžadují procesor, vstup a výstup disku i úložiště; pruning má vlastní omezení. [Bitcoin Core — AssumeUTXO design] [Bitcoin Optech — AssumeUTXO]
Snapshot neobsahuje soukromé klíče a neobnoví Seed Phrase. Nenahrazuje zálohu peněženky ani automaticky nedodává staré bloky potřebné pro její historické prohledání. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — loadtxoutset RPC]
AssumeUTXO začíná z načteného UTXO stavu a historii doplňuje na pozadí. assumevalid může za vlastních podmínek vynechat staré skriptové kontroly; jde o odlišné mechanismy a nastavení. [Bitcoin Core — AssumeUTXO design] [Bitcoin Optech — AssumeUTXO] [Bitcoin Core — validation]
Pro nejúplnější obraz čtěte toto heslo společně s Počáteční stažení bloků, Ořezaný uzel, Šíření bloků, Nakamotův konsensus. Opačným směrem na něj odkazují také Počáteční stažení bloků.