AssumeUTXO — оптимізація з тимчасовим припущенням, не заміна повної перевірки. Вміст має відповідати очікуваному хешу програми, а згодом і стану, обчисленому з історії.
Знімок описує невитрачені виходи в певному базовому блоці. Це не архів усіх транзакцій і не самостійний доказ перевірки всіх попередніх блоків. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — loadtxoutset RPC]
loadtxoutset перевіряє формат, базовий блок і підтримувані параметри. Bitcoin Core v29.0 також обчислює хеш завантаженого вмісту UTXO й порівнює з очікуваним перед активацією. [Bitcoin Core v29.0 — AssumeUTXO parameters] [Bitcoin Core — loadtxoutset RPC] [Bitcoin Core — validation]
Прийнятий стан знімка може обробляти наступні блоки й дійти до вершини. Нові блоки перевіряються за консенсусом; правила витрачання та емісії не мають винятку. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
Другий стан ланцюга обробляє історичні блоки від початку до бази знімка. Доступна активна вершина сама не означає завершення цієї незалежної роботи. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
Підтримувані базові блоки й очікувані хеші належать конкретній версії програми. До завершення історії користувач приймає явне припущення правильного стану; хеш не замінює історичного доказу. [Bitcoin Core v29.0 — AssumeUTXO parameters] [Bitcoin Core 28.0 release notes]
Довільні файли чи висоти не підтримуються автоматично. Неправильний вміст не проходить контроль хешу; постачальник усе ж може спричинити недоступність або затримку, а завантаження витрачає ресурси. [Bitcoin Core — loadtxoutset RPC] [Bitcoin Core — validation]
У базовому блоці хеш незалежно побудованого UTXO порівнюється з очікуваним. Розбіжність є помилкою і спричиняє зупинку, а не мовчазне підтвердження знімка. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — validation]
AssumeUTXO скорочує час до придатного стану, але не зводить загальну перевірку до нуля. Одночасні стани потребують процесора, дискового обміну й місця; обрізання має власні межі. [Bitcoin Core — AssumeUTXO design] [Bitcoin Optech — AssumeUTXO]
Знімок не містить приватних ключів і не відновлює Seed Phrase. Він не замінює копію гаманця й автоматично не надає старих блоків для його історичного сканування. [Bitcoin Core — AssumeUTXO design] [Bitcoin Core — loadtxoutset RPC]
AssumeUTXO починає із завантаженого UTXO й доповнює історію у фоні. assumevalid за власних умов може пропускати давні перевірки скриптів; це різні механізми й налаштування. [Bitcoin Core — AssumeUTXO design] [Bitcoin Optech — AssumeUTXO] [Bitcoin Core — validation]
Для повної картини прочитайте також Initial block download, Pruned node, Block propagation, Nakamoto consensus. На цю статтю також посилаються Initial block download.