﻿---
title: "Model UTXO"
description: "Pelajari cara Bitcoin merepresentasikan nilai yang dapat dibelanjakan sebagai keluaran transaksi yang belum terpakai, memvalidasi pengeluaran, membuat kembalian, serta menyeimbangkan pemilihan koin, biaya, dan privasi."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Model UTXO

> Materi ini hanya untuk tujuan edukasi dan bukan saran investasi. Investasi dapat menimbulkan kerugian.

<a id="answer"></a>

## Jawaban langsung

Model keluaran transaksi yang belum terpakai (UTXO) merepresentasikan nilai yang dapat dibelanjakan sebagai keluaran terpisah, bukan sebagai satu saldo yang dicatat pada sebuah akun. Di Bitcoin, input transaksi biasa menunjuk keluaran sebelumnya melalui pengenal transaksi dan indeks keluaran. Keluaran tersebut mencatat jumlah dan skrip pengunci. Saldo yang ditampilkan dompet adalah jumlah turunan dari keluaran yang dapat dibelanjakannya, bukan kolom saldo yang disimpan di dalam satu alamat.

Sebuah keluaran dibelanjakan seluruhnya. Jika input terpilih melebihi nilai pembayaran dan biaya, transaksi harus secara eksplisit membuat keluaran kembalian; protokol tidak mengembalikan kembalian secara otomatis. Satu transaksi dapat mengonsumsi beberapa UTXO lama dan membuat beberapa UTXO baru, masing-masing dengan jumlah dan syarat pengeluaran tersendiri.

<a id="mechanism"></a>

## Cara kerja

Agar transaksi biasa non-coinbase sah, setiap keluaran yang dirujuk harus ada dan belum terpakai, setiap input harus memenuhi syarat penguncian keluaran yang dirujuk, dan nilai total keluaran tidak boleh melebihi nilai total input. Selisihnya tersedia sebagai biaya transaksi:

`fee = sum(inputs) - sum(outputs)`

Saat menerima blok, node menghapus keluaran yang sudah dikonsumsi dari himpunan UTXO saat ini dan menambahkan keluaran yang baru dibuat. Riwayat blok tetap diperlukan untuk memverifikasi dan membangun kembali keadaan tersebut. Reorganisasi rantai dapat mengganti blok terbaru, sehingga keluaran di dekat ujung rantai dapat kembali menjadi belum terkonfirmasi atau hilang dari riwayat yang diterima.

Dalam satu riwayat rantai yang diterima, keluaran tertentu hanya dapat dikonsumsi sekali. Transaksi belum terkonfirmasi yang saling bertentangan dapat bersaing membelanjakan keluaran yang sama, tetapi penerimaan dan penggantian di mempool adalah kebijakan node, bukan aturan yang mengesahkan pembelanjaan ganda di rantai. BIP 125 menetapkan sinyal dan kebijakan penggantian opsional; menerima transaksi yang belum terkonfirmasi bukanlah penyelesaian final.

Ruang blok Bitcoin dihargai terutama berdasarkan bobot transaksi dan tarif biaya, bukan jumlah yang ditransfer. BIP 141 mendefinisikan `virtual size = ceil(weight / 4)`. Input umumnya menambah lebih banyak data transaksi daripada keluaran, sehingga membelanjakan banyak UTXO kecil dapat lebih mahal daripada satu UTXO besar pada tarif yang sama. Ukuran persisnya bergantung pada jenis skrip dan witness yang digunakan.

Transaksi yang membelanjakan UTXO berbeda memiliki ketergantungan input terpisah, sehingga validasi dan penyusunan transaksi dapat lebih mudah diparalelkan. Namun, transaksi itu tidak otomatis independen dalam setiap implementasi atau aplikasi: dua transaksi yang memilih keluaran sama akan bertentangan, sedangkan transaksi turunan bergantung pada induknya yang belum terkonfirmasi. Pemilihan koin dompet harus mengoordinasikan ketergantungan tersebut.

UTXO tidak memberikan anonimitas. Menggabungkan input dapat mengisyaratkan kendali bersama, sedangkan pola pendeteksian kembalian atau penggunaan ulang alamat dapat menghubungkan aktivitas. Itu merupakan heuristik, bukan bukti kriptografis, tetapi konsolidasi dapat mengungkap hubungan yang tidak terlihat dalam pembelanjaan terpisah.

Dibandingkan model berbasis akun, model UTXO memperlihatkan setiap objek yang dapat dibelanjakan dan jalur konsumsinya. Sistem akun biasanya memperbarui keadaan akun bersama, seperti saldo dan nonce. Tidak ada model yang selalu lebih unggul; keduanya memiliki kompromi berbeda dalam representasi keadaan, kemampuan pemrograman, konkurensi, dan desain dompet.

<a id="example"></a>

## Contoh perhitungan

Alice mengendalikan UTXO senilai `0.08 BTC`, `0.12 BTC`, dan `0.50 BTC`. Untuk membayar Bob `0.15 BTC`, dompetnya memilih dua input pertama dengan total `0.20 BTC` dan memperkirakan biaya `0.0002 BTC`. Dompet membuat keluaran berikut:

- Bob: `0.15 BTC`
- Kembalian Alice: `0.0498 BTC`

Perhitungannya adalah `0.20 - 0.15 - 0.0002 = 0.0498 BTC`. Setelah terkonfirmasi, keluaran `0.08 BTC` dan `0.12 BTC` telah terpakai; keluaran Bob dan kembalian Alice menjadi UTXO baru; keluaran `0.50 BTC` tetap tidak tersentuh.

Jika transaksi hanya membuat keluaran Bob sebesar `0.15 BTC`, sisa `0.05 BTC` akan menjadi biaya, bukan pengembalian otomatis. Dompet juga dapat memilih kumpulan input lain, menggabungkan beberapa pembayaran, atau mengonsolidasikan keluaran kecil ketika tarif lebih rendah. Pilihan tersebut menyeimbangkan biaya saat ini dan masa depan, keandalan konfirmasi, serta privasi.

<a id="risks"></a>

## Risiko dan pengendalian

- **Risiko biaya:** UTXO yang terfragmentasi menambah bobot input; perkirakan transaksi yang sudah ditandatangani dan tarifnya sebelum disiarkan.
- **Risiko privasi:** konsolidasi input dan kembalian yang mudah dikenali dapat menghubungkan alamat; alamat baru tidak menjamin keterputusan hubungan.
- **Risiko konfirmasi:** transaksi yang bertentangan, kebijakan penggantian, dan reorganisasi rantai membuat penerimaan yang belum terkonfirmasi dapat dibatalkan.
- **Risiko pemulihan:** rantai menyimpan UTXO, sedangkan dompet menyimpan atau menurunkan kunci dan data penemuan untuk mencari dan membelanjakannya; cadangkan setiap faktor pemulihan yang diperlukan.

<a id="misconceptions"></a>

## Kesalahpahaman umum

### Alamat adalah akun permanen

Alamat menyandikan atau merepresentasikan syarat pengeluaran. Dompet dapat mengendalikan keluaran yang dikirim ke banyak alamat penerimaan dan kembalian, sehingga satu alamat bukan keadaan lengkap dompet.

### Biaya sebanding dengan jumlah pembayaran

Biaya terutama bergantung pada bobot transaksi dan tarif yang dipilih. Pembayaran bernilai besar dengan sedikit input dapat lebih kecil dan murah daripada pembayaran bernilai rendah yang dirangkai dari banyak input.

### Protokol membuat kembalian secara otomatis

Kembalian adalah keluaran biasa yang sengaja dibuat oleh dompet pembayar. Setiap nilai input yang tidak dialokasikan ke keluaran tersedia bagi penambang sebagai biaya.

### Belum terkonfirmasi berarti sudah selesai

Mempool adalah pandangan sementara sebuah node, bukan buku besar konsensus. Kebijakan penerimaan, penggantian, dan penghapusan dapat berbeda; risiko konfirmasi berkurang seiring waktu, bukan hilang ketika transaksi disiarkan.

<a id="related"></a>

## Topik terkait

- [Model berbasis akun](/id/crypto/account-based-model/)
- [Bitcoin](/id/crypto/bitcoin/)
- [Konfirmasi blok](/id/crypto/block-confirmation/)
- [Mempool](/id/crypto/mempool/)
- [Serangan dust](/id/crypto/dust-attack/)

<a id="sources"></a>

## Sumber

- [Bitcoin: A Peer-to-Peer Electronic Cash System](https://bitcoincore.org/bitcoin.pdf) - Satoshi Nakamoto (diakses: 2026-08-22)
- [Transactions — Bitcoin Developer Guide](https://developer.bitcoin.org/devguide/transactions.html) - Bitcoin.org (diakses: 2026-08-22)
- [Block Chain — Bitcoin Developer Guide](https://developer.bitcoin.org/devguide/block_chain.html) - Bitcoin.org (diakses: 2026-08-22)
- [BIP 141: Segregated Witness (Consensus layer)](https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki) - Bitcoin Improvement Proposals (diakses: 2026-08-22)
- [BIP 125: Opt-in Full Replace-by-Fee Signaling](https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki) - Bitcoin Improvement Proposals (diakses: 2026-08-22)

Source: https://wiki.fcontext.com/id/crypto/utxo-model/index.mdx
