36 / 691CHG

Output kembalian

Output pengembalian mengirimkan bagian dari input bitcoin yang dipilih yang tidak masuk ke penerima atau biaya ke skrip yang dikendalikan oleh pembayar. Ini adalah keluaran transaksi normal: blockchain tidak berisi tanda "perubahan", sehingga kepemilikan dompet diketahui dan hanya dapat ditebak oleh orang lain.

"Ubah alamat" adalah notasi alamat skrip untuk keluaran ini, namun secara teknis ini adalah scriptPubKey dan UTXO baru, bukan saldo akun. Dengan jumlah masukan I, keluaran ke penerima R dan biaya F, C = I − R − F benar. Jika terjadi penarikan tepat atau sisa non-ekonomi, dompet mungkin tidak menghasilkan perubahan sama sekali.

Bitcoin menghabiskan seluruh UTXO; hanya sebagian yang tidak dapat dikurangkan dari satu masukan. Jika dompet memilih masukan 120.000 sat untuk pembayaran 100.000 sat dan biaya 2.000 sat, maka dompet tersebut harus memasukkan sisa 18.000 sat ke keluaran berikutnya atau menyimpannya sebagai biaya. Output dan perubahan penerima memiliki posisi yang sama dalam serialisasi, dan urutannya tidak memiliki makna konsensus. Setelah dikonfirmasi, perubahan adalah UTXO baru dengan titik keluarnya sendiri, konfirmasi, dan harga pembelanjaan di masa mendatang. [Panduan Pengembang Bitcoin — Transaksi]

Pemilihan koin memilih input, biaya, dan kemungkinan perubahan secara bersamaan. Kombinasi yang tepat tidak akan menghasilkan keluaran; jika tidak, dompet membandingkan saldo dengan biaya pembuatan dan pengeluarannya nanti. Pendanaan RPC Bitcoin Core dapat mengisi paling banyak satu output perubahan dan mengembalikan posisinya, sedangkan send-all tidak memilikinya. Kontrol koin mengubah input yang digunakan, sehingga berubah, tetapi setiap input yang dipilih secara manual digunakan secara keseluruhan. Periksa entri akhir, jumlah penerima, biaya dan perubahan. [Bitcoin Core — Implementasi Pemilihan Koin] [Bitcoin Core RPC — transaksi penarikan dana] [Bitcoin Optech — Pemilihan Koin]

Dompet HD biasanya menerima skrip penerimaan di cabang eksternal dan perubahan di cabang internal. BIP44 menandai change=0 sebagai eksternal dan change=1 sebagai internal: misalnya m/84'/0'/0'/0/i dan m/84'/0'/0'/1/i untuk akun SegWit asli. Ini adalah konvensi penerapan, bukan konsensus; dompet deskriptor mungkin memiliki kebijakan yang berbeda. Alamat internal yang baru membatasi penggunaan kembali alamat, sedangkan kembali ke alamat asli adalah valid tetapi menghubungkan riwayat. [BIP 32 — Dompet deterministik hierarkis] [BIP 44 — Hierarki Multi-Akun]

Deskriptor keluaran menggabungkan jenis skrip, kunci, asal, dan karakter pengganti derivasi yang menentukan kepemilikan. Pasangan yang dijelaskan wpkh([fingerprint/84h/0h/0h]xpub…/0/*) dan …/1/* menerima perubahan; BIP389 memungkinkan penulisan multipath. Bendera internal memilih deskriptor untuk diubah, tidak mengubah skrip itu sendiri. Seed tanpa informasi akun, jenis skrip, dan kebijakan derivasi mungkin membuat perubahan valid tidak terlihat setelah penyegaran, meskipun kuncinya ada. [BIP 380 — Deskriptor Skrip Output] [BIP 389 — Ekspresi Kunci Deskriptor Multipath] [Bitcoin Core — Deskriptor Output]

Blok tersebut berisi nilai dan scriptPubKeys, bukan label pembayar, penerima pembayaran, atau perubahan. Dompet mengenali perubahannya sendiri dari catatan turunan, penjelajah hanya menebaknya. Urutan keluaran atau aturan "keluaran kedua" tidak dapat diandalkan. Suatu transaksi tidak boleh memiliki perubahan, satu, beberapa keluaran yang dikendalikan sendiri, atau keluaran dari beberapa peserta. Oleh karena itu, perubahan merupakan klasifikasi relatif dompet, bukan properti yang ditulis oleh protokol. [Panduan Pengembang Bitcoin — Transaksi]

Heuristik umum ditetapkan sebagai perubahan keluaran dari jenis skrip yang sama dengan masukan, jumlah pembulatan yang tidak menarik, alamat baru, atau nilai yang sesuai dengan aritmatika masukan. Mereka sering bekerja untuk pembayaran biasa dengan dua keluaran, namun masing-masing memiliki contoh tandingan. BIP78 Payjoin dengan sengaja merusak heuristik input umum dan tipe skrip serta jumlah bulat; CoinJoin, batching, dan transfer mandiri menambah ambiguitas. Hasilnya dimaksudkan untuk mendapatkan tingkat kepastian dan dukungan, bukan status bukti protokol. [BIP 78 — Payjoin] [Meiklejohn dkk. — Segenggam Bitcoin]

Debu adalah kebijakan relai node yang dihitung dari jenis keluaran, perkiraan besarnya pengeluaran di masa mendatang, dan tarif relai debu yang dapat disesuaikan; ini bukan penghitungan satoshi universal atau larangan konsensus. Sebuah dompet mungkin menolak perubahan jauh di atas debu ketika biaya pembuatan dan pembelanjaan selanjutnya lebih besar daripada nilainya. Batas ekonomi tergantung pada tarif saat ini dan jangka panjang serta ukuran skrip. Menekan perubahan akan meningkatkan biaya hari ini, perubahan yang terlalu sedikit dapat menyebabkan kemacetan. [Bitcoin Core — Kebijakan Relai Transaksi]

Dalam PSBT, derivasi output BIP32 memungkinkan perangkat keras atau penandatangan offline untuk mendapatkan output yang diusulkan dan memverifikasi pengembalian ke kebijakan dompet yang sama. BIP174 menjelaskan deteksi untuk kunci tunggal dan multisig; untuk multisig, mencocokkan satu kunci lokal saja tidak cukup. Koordinator jahat dapat mengganti perubahan dengan keluarannya sendiri atau menyembunyikan sisanya dengan biaya selangit. Penandatangan harus memverifikasi penerima, total biaya dan setiap perubahan yang dinyatakan pada tampilan tepercaya. [BIP 174 — Format Transaksi Bitcoin yang Ditandatangani Sebagian]

Penggantian demi biaya mengubah keekonomian transaksi yang belum dikonfirmasi. bumpfee di Bitcoin Core dapat membayar biaya yang lebih tinggi dengan mengurangi perubahan, menambahkan masukan, atau membuat perubahan; setelah berada di bawah perubahan kebijakan atau mekanisme ekonomi, maka hal tersebut akan hilang. Perubahan pembelanjaan yang belum dikonfirmasi menciptakan ketergantungan turunan pada penggantian induk, dan CPFP menggunakan keluaran yang dikontrol dompet untuk meningkatkan biaya paket. Jangan mempertimbangkan final txid/outpoint yang belum dikonfirmasi sebelum penggantian diselesaikan. [Bitcoin Core RPC — biaya tambahan]

Pemulihan penuh memerlukan kunci benih atau penandatanganan serta deskriptor penerimaan/internal, asal kunci, akun, jaringan, kebijakan skrip, rentang derivasi, dan permulaan pemindaian yang cukup lama. /1/* yang hilang biasanya memotong saldo karena perubahan tidak ditemukan. Untuk multisig, simpan semua xpub cosigner, ambang batas, dan pemesanan di kedua cabang. Uji pemulihan dengan mencocokkan skrip penerimaan/perubahan yang diketahui, merekonstruksi UTXO, membuat PSBT, dan memverifikasi perubahan pada setiap penandatangan. [BIP 32 — Dompet deterministik hierarkis] [BIP 380 — Deskriptor Skrip Output] [BIP 389 — Ekspresi Kunci Deskriptor Multipath]

Untuk gambaran yang lebih utuh, baca entri ini bersama Alamat Bitcoin, UTXO, Coin Control, Dompet, Coin Selection, HD Wallet. Entri ini juga dirujuk dari Alamat Bitcoin, Coin Control, Privasi Bitcoin, Pseudonimitas.

DOC · 001Bitcoin Developer Guide — TransactionsDokumentasi ↗DOC · 002BIP 32 — Hierarchical Deterministic WalletsSpesifikasi ↗DOC · 003BIP 44 — Multi-Account HierarchySpesifikasi ↗DOC · 004BIP 78 — PayjoinSpesifikasi ↗DOC · 005BIP 174 — Partially Signed Bitcoin Transaction FormatSpesifikasi ↗DOC · 006BIP 380 — Output Script DescriptorsSpesifikasi ↗DOC · 007BIP 389 — Multipath Descriptor Key ExpressionsSpesifikasi ↗DOC · 008Bitcoin Core — Output DescriptorsDokumentasi ↗DOC · 009Bitcoin Core — Coin Selection ImplementationDokumentasi ↗DOC · 010Bitcoin Core RPC — fundrawtransactionDokumentasi ↗DOC · 011Bitcoin Core RPC — bumpfeeDokumentasi ↗DOC · 012Bitcoin Core — Transaction Relay PolicyDokumentasi ↗DOC · 013Bitcoin Optech — Coin SelectionDokumentasi ↗DOC · 014Meiklejohn et al. — A Fistful of BitcoinsDokumentasi ↗
Ditinjau 1 Agustus 2026Utamakan sumber · Bukan nasihat investasi