127 / 691WIT

Witness data

Witness data membawa bukti untuk membelanjakan input SegWit. Data ini bagian transaksi meskipun perhitungan txid asli tidak menyertakannya.

Witness adalah kolom item tumpukan untuk setiap input. Maknanya mengikuti versi dan syarat output yang dibelanjakan; bukan otomatis skrip yang dapat dieksekusi terpisah.

Setiap input memiliki daftar item sendiri dalam serialisasi witness. Verifikasi tanda tangan memakai pesan yang ditentukan versi skrip terkait; keberadaan data saja tidak membuktikan keabsahan. [BIP 141 — Segregated Witness] [BIP 143 — SegWit signature hashing]

txid dihitung dari serialisasi asli tanpa witness. wtxid mencakup serialisasi lengkap dengan witness; pada transaksi tanpa witness kedua pengenal sama. [BIP 141 — Segregated Witness]

Witness program adalah syarat berversi dalam output yang dibelanjakan. Witness diberikan transaksi berikutnya yang membelanjakan output itu; bukan kolom yang sama atau cadangan himpunan UTXO. [BIP 141 — Segregated Witness]

SegWit asli versi 0 mewajibkan scriptSig kosong. Pada bentuk terbungkus P2SH, scriptSig mendorong witness program ke tumpukan; bukti pembelanjaan tetap di witness. [BIP 141 — Segregated Witness]

P2WPKH menyediakan tanda tangan dan kunci publik. Pada P2WSH item terakhir adalah witnessScript yang hash-nya harus cocok dengan program; item sebelumnya membentuk tumpukan awal. [BIP 141 — Segregated Witness] [BIP 143 — SegWit signature hashing]

Setelah annex dihapus jika ada, Taproot membedakan satu item tanda tangan untuk jalur kunci dan jalur skrip dengan skrip serta blok kontrol. Aturan versi 0 tidak dapat diterapkan secara mekanis ke versi 1. [BIP 341 — Taproot]

BIP 141 mengikat witness lewat pohon wtxid dan komitmen coinbase. Coinbase memakai wtxid nol untuk pohon ini; komitmen menggabungkan akar dengan nilai cadangan 32 byte. [BIP 141 — Segregated Witness]

Mengubah witness saja tidak mengubah txid. Pemisahan tidak menjamin semua kolom lain atau semua kombinasi input tidak berubah; bukti yang diubah tetap harus lolos validasi. [BIP 141 — Segregated Witness] [Bitcoin Core — Segregated Witness benefits]

Byte tambahan serialisasi witness menyumbang 1 WU dibanding 4 WU untuk byte dasar. Full Node tetap memerlukannya untuk validasi terkait; ini bukan data gratis di luar rantai. [BIP 141 — Segregated Witness] [Bitcoin Core v29.0 — Script interpreter]

Witness dapat mengungkap tanda tangan, kunci publik atau cabang skrip yang dipakai secara terbuka. Bukan penyimpanan terenkripsi, bukan tempat menyimpan kunci privat, dan tidak menggantikan Seed Phrase atau cadangan dompet. [BIP 341 — Taproot] [Bitcoin Developer Reference — Transactions]

Untuk gambaran yang lebih utuh, baca entri ini bersama SegWit, Block weight, Bitcoin Script, Taproot. Entri ini juga dirujuk dari Virtual byte (vbyte), Block weight.

DOC · 001BIP 141 — Segregated WitnessSpesifikasi ↗DOC · 002BIP 143 — SegWit signature hashingSpesifikasi ↗DOC · 003BIP 341 — TaprootSpesifikasi ↗DOC · 004Bitcoin Developer Reference — TransactionsDokumentasi ↗DOC · 005Bitcoin Core v29.0 — Script interpreterDokumentasi ↗DOC · 006Bitcoin Core — Segregated Witness benefitsDokumentasi ↗
Utamakan sumber · Bukan nasihat investasi