Daftar Isi

Poin Utama

  • Bitcoin menggunakan buku besar terdistribusi untuk mencatat semua transaksi di jaringan secara publik.
  • Buku besar terdistribusi memungkinkan siapa saja untuk melihat seluruh riwayat setiap koin, dan membuktikan bahwa tidak ada koin yang dihabiskan dua kali.
  • Blockchain berbasis Proof of Work menyediakan cara objektif bagi anggota jaringan untuk menentukan validitas dan urutan transaksi.
  • Transaksi Bitcoin yang tidak dicatat di blockchain tidak benar-benar aman dari double spend.

Masalah Double Spend

Masalah Double Spend menjelaskan kesulitan dalam mengendalikan atau mencegah duplikasi konten digital, terutama berkaitan dengan uang digital. Sistem finansial tradisional memecahkan masalah ini dengan mempekerjakan pihak ketiga yang dipercaya, seperti bank dan prosesor pembayaran, dan mengandalkan pemerintah untuk menjaga kejujuran pihak ketiga yang dipercaya ini.

Ada beberapa pendahulu mata uang digital sebelum Bitcoin, tetapi tidak ada yang mampu memecahkan Masalah Double Spend tanpa otoritas yang dipercaya. Satoshi Nakamoto mengutip otoritas yang dipercaya ini sebagai cacat kritis di setiap pendahulu Bitcoin. Memecahkan Masalah Double Spend dengan cara yang tidak memerlukan kepercayaan (trustless) adalah salah satu inovasi terbesar Bitcoin.

Bagaimana Bitcoin Memecahkan Masalah Double Spend

Bitcoin menggunakan Buku besar (ledger) yang terdistribusi untuk mencatat semua transaksi dalam jaringan. Buku besar (ledger) ini berbentuk blockchain, yang merupakan sebuah basis data besar. Basis data ini terdiri dari batch transaksi yang diberi waktu, disebut blok.

Buku besar (Ledger) Terdistribusi

Blockchain adalah ledger terdistribusi, dan disimpan secara independen oleh puluhan ribu komputer, disebut node, di seluruh dunia. Setiap node menyimpan seluruh riwayat transaksi, dan semua node secara kolaboratif memperbarui satu sama lain dengan transaksi baru dan blok saat mereka diproduksi.

Node dapat meninggalkan dan bergabung kembali ke jaringan sesuai keinginan, menerima rantai Proof of Work terpanjang sebagai bukti apa yang terjadi saat mereka pergi.

Satoshi Nakamoto memperkenalkan Bitcoin dalam whitepaper. – 31 Oktober, 2008

Karena setiap node menyimpan salinan blockchain mereka secara independen, harus ada cara bagi node untuk setuju pada keadaan valid dari blockchain dan kepemilikan setiap bitcoin. Aturan jaringan Bitcoin menentukan metode objektif untuk menentukan kejadian valid dari blockchain.

Karena setiap node mempertahankan riwayat lengkap transaksi Bitcoin, mereka dapat memverifikasi bahwa tidak ada koin yang dihabiskan dua kali, dan bahwa semua koin dicetak sesuai dengan jadwal emisi Bitcoin. Seorang pengguna yang menjalankan node dapat memverifikasi kepemilikan bitcoin mereka tanpa bergantung pada pihak ketiga mana pun.

Time Stamps

Sebuah blockchain terdiri dari blok, dan setiap blok diberi cap waktu (time stamps). Dengan demikian, urutan blok secara ketat adalah linier dan kronologis. Jika dua transaksi mencoba untuk menghabiskan dua kali bitcoin yang sama, desain ini memungkinkan semua node untuk secara objektif memutuskan mana dari dua transaksi yang valid. Di jaringan Bitcoin, tidak seperti dengan sistem pembayaran tradisional, tidak ada perselisihan tentang transaksi mana yang valid dan mana yang tidak. Dengan demikian, tidak ada kebutuhan untuk otoritas atau penengah yang dipercaya untuk menyelesaikan perselisihan.

Jika suatu transaksi termasuk dalam blok di blockchain, itu secara objektif valid. Setiap transaksi masa depan yang mencoba menghabiskan dua kali bitcoin yang sama akan ditolak oleh semua node di jaringan Bitcoin.

Konfirmasi

Transaksi Bitcoin dianggap final dan tidak dapat diubah setelah diselesaikan. Namun, transaksi Bitcoin tidak segera tidak dapat diubah setelah disiarkan ke jaringan. Pertama, ditambahkan ke mempool, yang merupakan suatu daftar transaksi yang tertunda.

Transaksi di mempool dapat dihabiskan dua kali atau ditimpa, jadi mereka tidak boleh dipercaya.

Setelah transaksi ditambahkan ke blok, transaksi tersebut dianggap “terkonfirmasi”. Setiap blok yang datang setelah blok yang berisi transaksi tadi, akan dihitung sebagai konfirmasi untuk transaksi tersebut. Meskipun transaksi Bitcoin resmi setelah memiliki satu konfirmasi, biasanya tidak dianggap final hingga mencapai enam atau lebih konfirmasi.

Reorganisasi

Kebanyakan pengguna Bitcoin menunggu enam konfirmasi karena blok terbaru dapat dihapus dari blockchain jika tidak lagi menjadi bagian dari rantai terpanjang. Dalam hal ini, semua transaksi yang termasuk dalam blok yang dihapus, disebut blok orphan, akan dikembalikan ke mempool dan harus menunggu konfirmasi lagi. Ini disebut reorganisasi, dan ini adalah kejadian yang jarang terjadi.

Reorganisasi dapat menyebabkan Masalah Double Spend. Sebagai contoh, bayangkan Alice membuat transaksi mengirim Bob 1 BTC. Sementara transaksi ini berada di mempool menunggu konfirmasi, Alice membuat transaksi lain mengirimkan 1 BTC yang sama ke Charlie. Transaksi Alice ke Bob kemudian dimasukkan dalam blok. Namun, secara kebetulan, atau oleh niat jahat Alice, penambang yang berbeda menambang dua blok dalam rentang waktu yang singkat, salah satunya termasuk transaksi Alice ke Charlie. Transaksi Bob akan tidak dikonfirmasi dan transaksi Charlie akan dikonfirmasi.

Untuk menghindari risiko yang disebabkan oleh reorganisasi, pengguna Bitcoin biasanya menunggu 2-6 konfirmasi untuk menganggap transaksi final. Kemungkinan bahwa enam blok akan di-reorganisasi keluar dari blockchain Bitcoin sangat minim. Dalam contoh di atas, jika Bob menunggu enam konfirmasi, dia akan melihat transaksinya tiba, tetapi kemudian segera tidak dikonfirmasi. Dia akan dengan aman tahu bahwa Alice belum membayarnya.