IBD — більше, ніж завантаження файлів. Full Node будує перевірений набір UTXO з історії; перевірки давніх скриптів залежать також від assumevalid.
Вузол знаходить адреси інших вузлів і синхронізує заголовки. Заголовок пов’язує історію та містить Proof of Work, але сам не доводить дійсності всіх транзакцій блока. [Bitcoin Developer Guide — Initial Block Download] [Satoshi Nakamoto — Bitcoin whitepaper]
Накопичена робота визначає гілку-кандидата для перевірки. Ні найбільша кількість заголовків, ні твердження іншого вузла не замінюють роботу та повні перевірки блоків. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — validation] [Satoshi Nakamoto — Bitcoin whitepaper]
Блоки можна завантажувати паралельно від кількох вузлів. Приєднання до дійсного ланцюга враховує попередній стан: виходи не перевірити без потрібної історії. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — validation]
Full Node перевіряє, зокрема, структуру, Merkle root, правила витрачання та межі емісії. Правила консенсусу застосовуються відповідно до висоти й активацій; заголовки не є повною валідацією. [Bitcoin Core — validation] [Bitcoin Core — chainstate]
Приєднання блоків прибирає витрачені виходи й додає нові UTXO. База відображає поточні можливості витрачання, а не всі історичні транзакції чи баланси адрес. [Bitcoin Core — validation] [Bitcoin Core — chainstate]
За умов достатньо глибокої відомої історії assumevalid може пропускати давні перевірки скриптів. Це не прийняття довільної історії без контролю; assumevalid=0 вимикає оптимізацію. [Bitcoin Core — validation]
Обрізання видаляє старі файли блоків після обробки, зберігаючи UTXO й потрібні метадані. Воно заощаджує постійне місце, але не скасовує отримання й обробки історії за звичайного IBD. [Bitcoin Core — validation] [Bitcoin Core — chainstate]
Bitcoin Core v29.0 враховує вік вершини, мінімальну роботу й стан завантаження; після завершення ознака не повертається до true в цьому процесі. Це робоча евристика, не доказ найновішої глобальної вершини. [Bitcoin Core — validation] [Bitcoin Core — getblockchaininfo]
Тривалість залежить від процесора, пам’яті, диска, мережі й доступних вузлів. verificationprogress із getblockchaininfo оцінює роботу перевірки, а не гарантований час завершення чи лише частку завантажених байтів. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — getblockchaininfo]
AssumeUTXO може використати підтримуваний знімок UTXO для раннього переходу до роботи на вершині. Історія перевіряється у фоні, а результат порівнюється зі знімком; рання придатність не є завершеною історичною валідацією. [Bitcoin Core — validation] [Bitcoin Core — AssumeUTXO design]
Для повної картини прочитайте також Pruned node, AssumeUTXO, Block propagation, Compact block relay. На цю статтю також посилаються Pruned node, AssumeUTXO.