Untuk memahami Bitcoin, seseorang harus pertama kali meninggalkan gagasan koin digital yang tersimpan di brankas virtual. Di dunia perbankan tradisional, uang didefinisikan oleh saldo rekening. Jika Anda memiliki uang di bank, database pusat menyimpan angka tertentu di samping nama Anda. Bitcoin beroperasi sepenuhnya berbeda. Tidak ada koin fisik, juga tidak ada file digital yang mewakili koin individual. Juga tidak ada akun di lapisan protokol yang hanya mencantumkan saldo pengguna.
Sebaliknya, seluruh sistem bergantung pada riwayat transaksi. Apa yang kita sebut "bitcoin" pada dasarnya adalah rantai tanda tangan digital yang mencerminkan riwayat transfer nilai. Kepemilikan ditetapkan bukan dengan memegang objek statis, melainkan dengan kemampuan untuk membuat entri baru di buku besar ini. Saat pengguna memeriksa saldo dompet mereka, perangkat lunak sebenarnya memindai seluruh blockchain untuk menghitung jumlah semua transaksi yang belum dibelanjakan yang dapat diakses oleh kunci mereka.
Perbedaan arsitektur ini mendasar bagi cara jaringan tetap terdesentralisasi. Tanpa bank pusat untuk memperbarui buku besar master saldo, jaringan bergantung pada rantai hak milik yang transparan dan dapat diverifikasi. Setiap transaksi menunjuk kembali ke transaksi sebelumnya, menghubungkan sepenuhnya kembali ke saat koin pertama kali dicetak oleh penambang. Struktur ini memastikan bahwa nilai tidak dapat diciptakan dari udara kosong dan bahwa riwayat setiap pecahan bitcoin dapat dilacak dan tidak dapat diubah.
Dasar Kepemilikan: Kriptografi Kunci Publik
Memahami Pasangan Kunci
Di jantung mekanisme transaksi Bitcoin terletak kriptografi kunci publik. Kerangka matematis ini memungkinkan pengguna untuk menghasilkan identitas digital yang aman tanpa mendaftar ke otoritas pusat. Kepemilikan didefinisikan oleh kepemilikan pasangan kunci: kunci privat dan kunci publik. Kunci privat adalah rahasia yang dihasilkan secara acak, mirip dengan kata sandi, tetapi jauh lebih kompleks. Ia memberikan otoritas untuk memindahkan dana.
Kunci publik diturunkan secara matematis dari kunci privat. Ia dapat dibagikan secara terbuka tanpa mengorbankan keamanan. Dari kunci publik ini, jaringan menghasilkan alamat Bitcoin, yang berfungsi sebagai tujuan dana. Jalan searah ini sangat penting. Anda dapat dengan mudah menghasilkan kunci publik dari kunci privat, tetapi tidak mungkin untuk membalikkan proses dan menurunkan kunci privat dari kunci publik.
Asimetri ini memungkinkan jaringan berfungsi tanpa kepercayaan. Saat pengguna ingin menerima dana, mereka membagikan alamat mereka. Saat mereka ingin membelanjakan dana, mereka menggunakan kunci privat untuk menandatangani pesan secara kriptografis. Tanda tangan ini membuktikan bahwa mereka memiliki kunci privat yang terkait dengan alamat yang memegang dana, tanpa pernah mengungkapkan kunci privat itu sendiri ke jaringan atau penerima.
Peran Tanda Tangan Digital
Transaksi Bitcoin secara efektif adalah pesan yang menyatakan, "Saya sedang memindahkan bitcoin spesifik ini ke alamat baru ini." Untuk membuat pesan ini valid, ia harus ditandatangani secara digital. Tanda tangan digital dibuat dengan menerapkan kunci privat pengirim ke data transaksi. Proses ini menghasilkan string data unik yang spesifik untuk transaksi tepat itu.
Jika bagian apa pun dari detail transaksi diubah—seperti jumlah atau alamat tujuan—tanda tangan tidak lagi cocok. Ini memastikan bahwa setelah transaksi ditandatangani dan disiarkan, ia tidak dapat diubah oleh pihak ketiga. Peserta jaringan, atau node, dapat menggunakan kunci publik pengirim untuk memverifikasi tanda tangan secara matematis.
Jika matematika cocok, jaringan tahu bahwa transaksi sah dan diotorisasi oleh pemilik sebenarnya. Jika gagal, transaksi ditolak segera. Verifikasi ini terjadi secara otomatis di ribuan komputer secara global, mengamankan jaringan tanpa campur tangan manusia.
| Komponen | Fungsi | Visibilitas |
|---|---|---|
| Kunci Privat | Menandatangani transaksi untuk membuktikan kepemilikan | Rahasia (Hanya Pemilik) |
| Kunci Publik | Memverifikasi tanda tangan terhadap alamat | Publik (Jaringan) |
| Alamat | Tujuan untuk menerima dana | Publik (Siapa saja) |
Model Output Transaksi yang Belum Digunakan (UTXO)
Cara Bitcoin Menangani Nilai
Kebanyakan orang terbiasa dengan model "berbasis akun" yang digunakan oleh bank dan kartu kredit. Dalam sistem itu, jika Anda memiliki $100 dan membelanjakan $20, bank hanya memperbarui entri database Anda menjadi $80. Bitcoin menggunakan logika berbeda yang dikenal sebagai model Output Transaksi yang Belum Digunakan (UTXO). Dalam sistem ini, tidak ada saldo tetap, hanya potongan bitcoin yang telah diterima tetapi belum dibelanjakan.
Bayangkan UTXO ini sebagai uang tunai digital atau nugget emas dengan ukuran berbeda. Jika Anda menerima transaksi 0.5 BTC dan satu lagi 0.3 BTC, Anda memegang dua UTXO berbeda di dompet Anda. Mereka tidak bergabung menjadi satu "koin" 0.8 BTC di blockchain, meskipun perangkat lunak dompet Anda menampilkan jumlah total untuk kenyamanan. Mereka tetap sebagai catatan nilai berbeda yang menunggu untuk digunakan.
Saat Anda memulai transaksi, dompet Anda memilih cukup UTXO untuk menutupi jumlah yang ingin Anda kirim. Anda tidak dapat memecah UTXO menjadi dua tanpa membelanjakannya sepenuhnya. Ini mirip dengan cara kerja uang tunai fisik. Anda tidak dapat merobek lembaran $20 untuk membayar barang $10. Anda harus menyerahkan seluruh lembaran dan menerima kembalian.
Input, Output, dan Kembalian
Setiap transaksi Bitcoin terdiri dari input dan output. Input adalah referensi ke UTXO sebelumnya yang sekarang Anda belanjakan. Output adalah tujuan baru untuk nilai tersebut. Saat Anda menyusun transaksi, Anda mengonsumsi UTXO yang ada sebagai input dan membuat UTXO baru sebagai output.
Misalnya, jika penambang memperoleh hadiah blok 6.25 BTC, itu adalah satu UTXO. Jika penambang ingin mengirim 1 BTC ke Alice, mereka tidak bisa hanya mengirim 1 BTC. Mereka harus menyusun transaksi yang mengambil UTXO 6.25 BTC sebagai input. Transaksi kemudian akan memiliki dua output.
Output pertama mengirim 1 BTC ke Alice. Output kedua mengirim sisa 5.25 BTC kembali ke alamat penambang sendiri. Output kedua ini dikenal sebagai "output kembalian." Di blockchain, UTXO 6.25 BTC asli ditandai sebagai sudah dibelanjakan dan tidak lagi valid untuk transaksi masa depan. Menggantikannya, dua UTXO baru (1 BTC dan 5.25 BTC) dibuat dan dicatat. Rantai input dan output ini menciptakan riwayat mata uang yang tak terputuskan.
Bitcoin Script: Bahasa Transaksi
Eksekusi Berbasis Stack
Transaksi Bitcoin bukan hanya transfer nilai sederhana; mereka adalah instruksi yang dapat diprogram. Instruksi ini ditulis dalam bahasa yang disebut Bitcoin Script. Tidak seperti bahasa pemrograman kompleks yang digunakan untuk pengembangan perangkat lunak umum, Script sengaja sederhana. Ia "berbasis stack," artinya memproses data dengan mendorong item ke daftar (stack) dan melakukan operasi pada item teratas.
Script juga bukan Turing-complete. Ini berarti ia kekurangan kemampuan untuk membuat loop atau logika kompleks yang bisa berjalan tanpa batas. Pilihan desain ini adalah fitur keamanan yang disengaja. Dengan membatasi kompleksitas bahasa, jaringan mencegah loop tak terhingga yang bisa merusak node atau memungkinkan penyerang menyumbat sistem dengan perintah yang mahal secara komputasi.
Skrip menentukan kondisi yang harus dipenuhi untuk membelanjakan UTXO. Saat transaksi dibuat, pengirim melampirkan "Locking Script" (ScriptPubKey) ke output. Skrip ini pada dasarnya mengatakan, "Dana ini hanya bisa dipindahkan oleh seseorang yang bisa menyediakan tanda tangan yang cocok dengan hash kunci publik spesifik ini."
Membuka Kunci dan Validasi
Untuk membelanjakan dana tersebut nanti, pemilik membuat transaksi baru yang berisi "Unlocking Script" (ScriptSig). Skrip ini berisi tanda tangan digital dan kunci publik. Saat node memvalidasi transaksi, ia menjalankan kedua skrip bersama. Ia menempatkan skrip pembuka kunci di stack diikuti oleh skrip pengunci dari transaksi sebelumnya.
Node mengeksekusi instruksi secara berurutan. Jika hasil akhir adalah "True," transaksi valid, dan dana bisa dipindahkan. Jika hasilnya "False," transaksi tidak valid. Mekanisme ini memungkinkan kondisi lebih kompleks daripada kepemilikan sederhana.
Misalnya, skrip bisa ditulis untuk memerlukan beberapa tanda tangan (Multi-Sig), di mana dua dari tiga kunci yang ditunjuk harus menandatangani sebelum dana bergerak. Skrip juga bisa memberlakukan penguncian waktu, mencegah dana dibelanjakan sampai ketinggian blok tertentu tercapai. Kemampuan pemrograman ini adalah dasar untuk fitur lanjutan seperti Lightning Network dan sidechain, yang menggunakan skrip kompleks untuk memungkinkan penyelesaian off-chain yang lebih cepat dan murah.
Siklus Hidup Transaksi: Dari Dompet ke Blockchain
Pembuatan dan Penyiaran
Perjalanan transaksi Bitcoin dimulai di perangkat lunak dompet pengguna. Dompet mengumpulkan input yang diperlukan dari UTXO yang tersedia pengguna dan menentukan output. Ia menghitung selisih antara input dan output, yang menjadi biaya transaksi. Setelah detail ditetapkan, dompet menggunakan kunci privat untuk menghasilkan tanda tangan digital.
Paket data yang ditandatangani ini kemudian disiarkan ke jaringan. Node pengguna mengirim pesan ke rekan-rekannya, yang pada gilirannya menyebarkannya ke seluruh dunia. Setiap node yang menerima transaksi melakukan pemeriksaan awal. Mereka memverifikasi bahwa tanda tangan digital valid, bahwa input belum dibelanjakan, dan bahwa nilai transaksi non-negatif.
Jika transaksi lolos pemeriksaan ini, node menambahkannya ke area penyimpanan sementara sendiri yang dikenal sebagai "mempool" (memory pool). Mempool bukan antrean pusat tunggal melainkan kumpulan lokal transaksi valid yang belum dikonfirmasi yang disimpan oleh setiap node individual. Pada tahap ini, transaksi dikenal oleh jaringan tetapi belum menjadi bagian dari riwayat blockchain permanen.
Pasar Biaya dan Prioritisasi
Karena blok di blockchain Bitcoin memiliki kapasitas ukuran terbatas, tidak setiap transaksi di mempool bisa masuk ke blok berikutnya. Kelangkaan ini menciptakan pasar biaya. Penambang, yang menyusun blok, termotivasi secara finansial untuk memasukkan transaksi yang membayar biaya tertinggi per byte data.
Biaya tidak ditentukan oleh nilai bitcoin yang dikirim tetapi oleh ukuran data transaksi. Transaksi yang memindahkan $10 juta mungkin sangat kecil dalam ukuran data jika hanya menggunakan satu input dan satu output. Sebaliknya, transaksi yang memindahkan $100 mungkin besar dalam ukuran data jika mengumpulkan debu dari lima puluh input kecil untuk melakukan pembayaran.
Pengguna yang ingin transaksi mereka dikonfirmasi dengan cepat harus melampirkan biaya yang kompetitif untuk menarik penambang. Selama periode kemacetan jaringan tinggi, mempool terisi dengan transaksi yang belum dikonfirmasi. Penambang secara alami memilih penawar tertinggi. Transaksi dengan biaya rendah mungkin menunggu di mempool selama berjam-jam atau hari sampai lalu lintas mereda atau pengirim meningkatkan biaya.
Penambangan dan Konsensus
Penambang memainkan peran terakhir dalam memperkuat mekanisme transaksi. Seorang penambang memilih sekumpulan transaksi dari mempool mereka untuk membentuk blok kandidat. Mereka kemudian terlibat dalam Proof of Work (PoW), proses intensif komputasi di mana mereka bersaing untuk memecahkan teka-teki matematis berdasarkan data di blok tersebut.
Proses ini memerlukan hashing header blok berulang kali dengan angka acak yang disebut nonce sampai hash hasilnya berada di bawah kesulitan target spesifik. Kesulitan menyesuaikan secara otomatis setiap 2.016 blok untuk memastikan blok baru ditemukan sekitar setiap 10 menit, terlepas dari seberapa banyak daya komputasi yang bergabung ke jaringan.
Setelah penambang menemukan solusi valid, mereka menyiarkan blok baru ke jaringan. Node lain menerima blok dan memverifikasi solusi. Mereka juga memverifikasi ulang setiap transaksi yang disertakan di blok itu untuk memastikan tidak ada aturan yang dilanggar. Setelah divalidasi, node memperbarui salinan lokal blockchain mereka, menghapus transaksi yang disertakan dari mempool mereka. Transaksi sekarang dikonfirmasi.
Mengatasi Masalah Double-Spend
Tantangan Duplikasi Digital
Di alam digital, informasi mudah disalin. Jika Anda mengirim foto melalui email, Anda masih mempertahankan file asli. Untuk mata uang digital, ini menimbulkan kerentanan kritis yang dikenal sebagai masalah double-spend. Tanpa mekanisme untuk mencegahnya, pelaku jahat bisa menandatangani transaksi yang mengirim 1 BTC ke pedagang dan secara bersamaan menandatangani transaksi lain yang mengirim 1 BTC yang sama itu ke diri mereka sendiri atau pihak lain.
Dalam sistem terpusat, bank mencegah ini dengan mempertahankan buku besar master. Di jaringan terdesentralisasi, tidak ada otoritas pusat yang mengatakan transaksi mana yang datang lebih dulu. Bitcoin menyelesaikannya melalui kombinasi buku besar blockchain publik dan Proof of Work.
Karena setiap node penuh mempertahankan salinan lengkap blockchain, seluruh jaringan memiliki konsensus tentang UTXO mana yang saat ini valid. Jika pengguna mencoba menyiarkan dua transaksi yang bertentangan, node akan menerima yang pertama yang mereka lihat dan menolak yang kedua sebagai upaya membelanjakan input yang sudah direferensikan.
Ketidakbatalan Melalui Proof of Work
Namun, perbedaan waktu bisa menyebabkan node berbeda menerima versi kebenaran yang berbeda secara sementara. Di sinilah penambangan menjadi penentu. "Kebenaran" di Bitcoin didefinisikan oleh rantai terpanjang dengan Proof of Work yang paling banyak terakumulasi. Setelah transaksi disertakan dalam blok, ia menjadi bagian dari riwayat resmi ini.
Untuk membalik atau double-spend transaksi yang sudah dikonfirmasi dalam blok, penyerang perlu menambang ulang blok itu dan semua blok berikutnya lebih cepat daripada seluruh jaringan gabungan. Ini dikenal sebagai serangan 51%. Biaya energi dan perangkat keras yang sangat besar yang diperlukan untuk mencapainya membuat buku besar praktis tidak dapat diubah.
Semakin banyak blok yang ditambahkan di atas blok yang berisi transaksi spesifik, keamanan meningkat secara eksponensial. Transaksi dengan satu konfirmasi umumnya aman, tetapi yang dengan enam konfirmasi dianggap secara matematis tidak mungkin dibalik dalam kondisi jaringan normal. Mekanisme ini mengubah data digital, yang biasanya mudah disalin, menjadi aset digital unik dan terbatas.
Peran Node dalam Integritas Jaringan
Validasi vs. Penambangan
Ada kesalahpahaman umum bahwa hanya penambang yang mengamankan jaringan. Meskipun penambang mengurutkan transaksi dan menghasilkan blok, "node" adalah auditor yang menegakkan aturan. Node adalah komputer apa pun yang menjalankan perangkat lunak Bitcoin yang menyimpan blockchain dan memvalidasi lalu lintas.
Node penuh mengunduh setiap blok dan transaksi. Mereka memeriksa tanda tangan digital, memverifikasi bahwa jumlah input menutupi jumlah output, dan memastikan tidak ada koin yang double-spent. Yang penting, node juga memverifikasi pekerjaan yang dilakukan oleh penambang. Jika penambang menghasilkan blok yang melanggar aturan protokol mana pun—seperti memberi diri mereka terlalu banyak bitcoin atau menyertakan transaksi tidak valid—node akan menolak blok itu segera.
Penolakan ini terjadi terlepas dari seberapa banyak energi yang dikeluarkan penambang untuk membuat blok. Keseimbangan kekuatan ini memastikan bahwa penambang tidak bisa mengubah aturan sistem atau mencetak uang ekstra. Mereka adalah pelayan protokol, dijaga oleh jaringan terdesentralisasi node yang dijalankan oleh individu dan bisnis di seluruh dunia.
Desentralisasi dan Keandalan
Kekokohan mekanisme transaksi Bitcoin bergantung pada keragaman dan jumlah node ini. Semakin terdistribusi node, semakin sulit bagi entitas apa pun untuk menyensor transaksi atau mematikan jaringan. Node berkomunikasi peer-to-peer, menyebarkan data transaksi seperti rumor yang menyebar di kerumunan.
Tidak ada server pusat untuk diretas. Jika bagian internet mati, node yang tersisa terus beroperasi. Saat node yang terputus kembali, mereka sinkron dengan jaringan untuk mengunduh riwayat yang hilang. Arsitektur ini memastikan bahwa buku besar tetap konsisten dan tersedia secara global, 24/7, tanpa downtime.
Pengguna dapat menjalankan node mereka sendiri untuk memperoleh kedaulatan finansial. Dengan memverifikasi transaksi mereka sendiri daripada bergantung pada layanan dompet pihak ketiga, mereka menghilangkan kebutuhan untuk mempercayai orang lain tentang status keuangan mereka. Ini selaras dengan etos inti Bitcoin: "Jangan percaya, verifikasi."
Biaya Jaringan dan Bobot Data
Menghitung Biaya
Biaya transaksi Bitcoin sering disalahpahami. Ia bukan persentase dari jumlah yang dikirim, seperti biaya pemrosesan kartu kredit. Sebaliknya, ia adalah pembayaran ketat untuk ruang blok. Ruang blok adalah komoditas langka, terbatas pada kapasitas spesifik per blok (konseptual 1MB, meskipun ditingkatkan oleh penimbangan SegWit).
Karena sistem menggunakan model UTXO, ukuran data transaksi bergantung pada kompleksitas input dan outputnya. Transaksi yang mengkonsolidasikan sepuluh input kecil menjadi satu output berisi lebih banyak data tanda tangan digital daripada transaksi yang menggunakan satu input. Akibatnya, ia mengonsumsi lebih banyak byte di blok.
Penambang membebankan biaya per unit data, biasanya diukur dalam satoshi per byte (sat/vB). "Satoshi" adalah unit terkecil Bitcoin (0.00000001 BTC). Jika tarif pasar saat ini 50 sats/byte, transaksi sederhana mungkin biayanya $2, sementara yang kompleks mungkin $10, meskipun mereka mentransfer nilai yang sama.
| Faktor | Dampak pada Biaya | Alasan |
|---|---|---|
| Jumlah Input | Meningkatkan Biaya | Setiap input memerlukan skrip tanda tangan digital |
| Jumlah Output | Meningkatkan Biaya | Setiap output menambahkan data untuk alamat baru |
| Kemacetan | Meningkatkan Tarif | Permintaan tinggi mendorong naik harga pasar sat/byte |
Mengatasi Kemacetan
Biaya jaringan berfluktuasi liar berdasarkan permintaan. Saat mempool kosong, pengguna bisa membayar biaya minimum dan tetap dikonfirmasi di blok berikutnya. Saat jaringan sibuk, pengguna harus bersaing. Dompet biasanya memperkirakan biaya yang diperlukan dengan melihat antrean saat ini di mempool.
Bagi pengguna yang menetapkan biaya terlalu rendah, transaksi tidak hilang; ia hanya menggantung di mempool. Akhirnya, jika tidak pernah diambil oleh penambang, ia akan dikeluarkan dari memori node, dan dana secara efektif tetap di dompet pengirim. Dalam situasi mendesak, pengguna dapat menggunakan akselerator transaksi atau protokol "Replace-by-Fee" (RBF) untuk meningkatkan biaya transaksi yang macet, secara efektif menyiarkannya ulang dengan insentif lebih tinggi untuk penambang.
Kesimpulan
Mekanisme transaksi Bitcoin mewakili pergeseran dari sistem keuangan berbasis kepercayaan ke sistem kriptografis berbasis verifikasi. Dengan mengganti saldo akun dengan model UTXO, Bitcoin memperlakukan nilai sebagai rantai hak milik digital yang bisa diaudit oleh siapa saja. Kriptografi kunci publik memastikan bahwa hanya pemilik kunci privat yang bisa memulai transfer ini, memberikan tingkat keamanan yang tidak bergantung pada brankas bank atau pemeriksaan identitas.
Sistem ini diikat oleh interaksi node, penambang, dan aturan spesifik Bitcoin Script. Bahasa skrip, meskipun sengaja terbatas dalam ruang lingkup, menyediakan logika yang diperlukan untuk memvalidasi kepemilikan dan memungkinkan kondisi pengeluaran kompleks tanpa mengorbankan stabilitas jaringan. Pasar biaya kompetitif dan mempool memastikan bahwa sumber daya terbatas ruang blok dialokasikan secara efisien, sementara Proof of Work menyediakan keamanan termodinamis yang membuat buku besar tidak dapat diubah.
Memahami mekanisme ini mengungkapkan mengapa Bitcoin digambarkan sebagai buku besar terdesentralisasi. Ia bukan hanya mata uang tetapi sistem akuntansi otomatis yang ketat yang dipelihara oleh konsensus global. Setiap aspek, dari matematika kunci hingga input dari set UTXO, dirancang untuk memungkinkan orang asing menukar nilai tanpa perantara, menyelesaikan masalah double-spend melalui kode daripada otoritas.
Bitcoin menggantikan kepercayaan pada institusi dengan bukti kriptografis, memastikan transfer nilai diverifikasi, tidak dapat diubah, dan ketat dimiliki oleh pemegang kunci.