121 / 691IBD

Initial block download

IBD adalah sinkronisasi pertama node baru dengan sejarah Bitcoin. Prosesnya mencakup memperoleh data, memvalidasi blok, dan membangun keadaan keluaran belum terpakai, melebihi transfer berkas.

IBD lebih dari mengunduh berkas. Full Node membangun himpunan UTXO tervalidasi dari sejarah; pemeriksaan skrip lama juga bergantung pada assumevalid.

Node menemukan alamat rekan dan menyinkronkan kepala blok. Kepala menghubungkan sejarah serta memuat Proof of Work, tetapi sendiri tidak membuktikan keabsahan semua transaksi dalam blok. [Bitcoin Developer Guide — Initial Block Download] [Satoshi Nakamoto — Bitcoin whitepaper]

Kerja terkumpul menentukan cabang kandidat untuk diperiksa. Jumlah kepala terbanyak atau pernyataan rekan tidak menggantikan kerja dan pemeriksaan blok lengkap. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — validation] [Satoshi Nakamoto — Bitcoin whitepaper]

Blok dapat diunduh paralel dari beberapa rekan. Menghubungkannya ke rantai sah mengikuti keadaan sebelumnya: keluaran tidak dapat diperiksa tanpa sejarah yang diperlukan. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — validation]

Full Node memeriksa struktur, Merkle root, aturan pembelanjaan dan batas penerbitan, antara lain. Aturan konsensus berlaku menurut tinggi dan aktivasi; kepala bukan validasi lengkap. [Bitcoin Core — validation] [Bitcoin Core — chainstate]

Menghubungkan blok menghapus keluaran terpakai dan menambahkan UTXO baru. Basis data ini mewakili kemungkinan pembelanjaan saat ini, bukan semua transaksi historis atau buku saldo alamat. [Bitcoin Core — validation] [Bitcoin Core — chainstate]

Dengan syarat sejarah dikenal yang cukup dalam, assumevalid dapat melewati pemeriksaan skrip lama. Ini tidak menerima sembarang sejarah tanpa pemeriksaan; assumevalid=0 mematikan optimasi itu. [Bitcoin Core — validation]

Pemangkasan menghapus berkas blok lama setelah diproses dan menyimpan UTXO serta metadata perlu. Ini menghemat penyimpanan permanen, bukan kebutuhan memperoleh dan memproses sejarah pada IBD biasa. [Bitcoin Core — validation] [Bitcoin Core — chainstate]

Bitcoin Core v29.0 memakai usia ujung rantai, kerja minimum dan status pemuatan; setelah selesai, penanda tidak kembali ke true dalam proses itu. Ini heuristik operasional, bukan bukti ujung global terkini. [Bitcoin Core — validation] [Bitcoin Core — getblockchaininfo]

Durasi bergantung pada CPU, memori, disk, jaringan dan ketersediaan rekan. verificationprogress dari getblockchaininfo memperkirakan kerja verifikasi, bukan tenggat pasti atau sekadar bagian byte yang diunduh. [Bitcoin Developer Guide — Initial Block Download] [Bitcoin Core — getblockchaininfo]

AssumeUTXO dapat memakai snapshot UTXO yang didukung untuk operasi di ujung lebih awal. Sejarah diverifikasi di latar dan hasilnya dibandingkan dengan snapshot; kesiapan awal bukan selesainya validasi sejarah. [Bitcoin Core — validation] [Bitcoin Core — AssumeUTXO design]

Untuk gambaran yang lebih utuh, baca entri ini bersama Pruned node, AssumeUTXO, Block propagation, Compact block relay. Entri ini juga dirujuk dari Pruned node, AssumeUTXO.

DOC · 001Bitcoin Developer Guide — Initial Block DownloadDokumentasi ↗DOC · 002Bitcoin Core — validationDokumentasi ↗DOC · 003Bitcoin Core — chainstateDokumentasi ↗DOC · 004Bitcoin Core — AssumeUTXO designDokumentasi ↗DOC · 005Bitcoin Core — getblockchaininfoDokumentasi ↗DOC · 006Satoshi Nakamoto — Bitcoin whitepaperSumber primer ↗
Utamakan sumber · Bukan nasihat investasi