Bagaimana rantai blok mencegah pengeluaran ganda Bitcoin? – (Keuangan)

Salah satu perhatian utama dari setiap pengembang cryptocurrency adalah masalah pengeluaran ganda. Ini mengacu pada kejadian individu yang membelanjakan saldo mata uang kripto tersebut lebih dari sekali, secara efektif menciptakan perbedaan antara catatan pengeluaran dan jumlah mata uang kripto yang tersedia, serta cara pendistribusiannya.

Masalah pembelanjaan ganda adalah masalah yang tidak dimiliki uang tunai; jika Anda membayar sandwich dengan uang $ 10, menyerahkan tagihan itu kepada pembuat sandwich, Anda tidak dapat berbalik dan membelanjakan $ 10 yang sama di tempat lain. Namun, transaksi menggunakan mata uang digital seperti bitcoin terjadi sepenuhnya secara digital. Ini berarti bahwa dimungkinkan untuk menyalin detail transaksi dan menyiarkan ulang sedemikian rupa sehingga BTC yang sama dapat digunakan beberapa kali oleh satu pemilik. Di bawah ini, kita akan memeriksa bagaimana pengembang cryptocurrency telah mengasuransikan bahwa pengeluaran ganda tidak dapat terjadi.

Apa rantai blok mencegah pengeluaran ganda Bitcoin?

  • Masalah teknis yang muncul dengan gagasan mata uang digital adalah kemampuan seseorang untuk menggandakan uang digital dan membelanjakannya secara bersamaan di dua tempat atau lebih.
  • Masalah ‘pengeluaran ganda’ ini dicegah dalam cryptocurrency berbasis blockchain seperti Bitcoin dengan menggunakan mekanisme konsensus yang dikenal sebagai bukti kerja (PoW).
  • PoW ini dilakukan oleh jaringan ‘penambang’ terdesentralisasi yang tidak hanya mengamankan ketepatan transaksi masa lalu di buku besar blockchain tetapi juga mendeteksi dan mencegah pembelanjaan ganda.

Memahami Blockchain

Blockchain yang mendukung mata uang digital seperti bitcoin tidak dapat mencegah pengeluaran ganda dengan sendirinya. Sebaliknya, semua transaksi berbeda yang melibatkan cryptocurrency yang relevan diposting ke blockchain, di mana mereka diverifikasi dan dilindungi secara terpisah oleh proses konfirmasi. Dalam kasus bitcoin dan banyak mata uang kripto lainnya, transaksi yang telah dikonfirmasi dengan cara ini menjadi tidak dapat diubah; mereka diposting untuk umum dan dipertahankan untuk selamanya.

Bitcoin adalah mata uang digital besar pertama yang memecahkan masalah pengeluaran ganda. Itu dilakukan dengan menerapkan mekanisme konfirmasi ini dan mempertahankan sistem buku besar universal yang umum. Dengan cara ini, blockchain bitcoin menyimpan catatan transaksi dengan cap waktu sejak berdirinya cryptocurrency pada tahun 2009.

Dalam istilah Bitcoin, ” blok ” adalah file data yang direkam secara permanen. Semua transaksi terakhir ditulis ke dalam blok, seperti buku besar transaksi saham di bursa. Informasi dari blok ditambahkan ke buku besar setiap beberapa menit; semua node di jaringan menyimpan salinan buku besar blockchain. Pengguna dapat menavigasi blockchain untuk bitcoin dan meninjau transaksi hanya dari segi kuantitas. Detail tentang identitas pembeli dan penjual dalam transaksi apa pun dilindungi oleh enkripsi tingkat tinggi, yang juga melindungi buku besar dari gangguan oleh sumber luar. Ketika buku besar blockchain diperbarui, begitu juga semua dompet bitcoin.

Berurusan Dengan Pengeluaran Ganda

Bayangkan Anda memiliki 1 BTC dan Anda mencoba membelanjakannya dua kali dalam dua transaksi terpisah. Anda dapat mencoba melakukan ini dengan mengirimkan BTC yang sama ke dua alamat dompet bitcoin yang terpisah. Kedua transaksi ini kemudian akan masuk ke kumpulan transaksi yang belum dikonfirmasi. Transaksi pertama akan disetujui melalui mekanisme konfirmasi dan kemudian diverifikasi ke blok berikutnya. Namun, transaksi kedua akan dianggap tidak valid melalui proses konfirmasi dan tidak akan diverifikasi. Jika kedua transaksi ditarik dari kumpulan untuk konfirmasi secara bersamaan, transaksi dengan jumlah konfirmasi tertinggi akan dimasukkan ke dalam blockchain, sedangkan yang lainnya akan dibuang.

Meskipun ini secara efektif menangani masalah pengeluaran ganda, ini bukannya tanpa masalah. Misalnya, penerima yang dituju dari transaksi kedua (gagal) tidak akan memiliki bagian dalam transaksi itu sendiri yang gagal, namun orang tersebut tidak akan menerima bitcoin yang telah mereka antisipasi. Banyak pedagang menunggu setidaknya 6 konfirmasi transaksi (artinya enam blok transaksi berikutnya ditambahkan ke blockchain setelah transaksi tersebut). Pada titik ini, pedagang dapat dengan aman menganggap bahwa transaksi tersebut valid.

Masih ada kerentanan lain dalam sistem ini yang memungkinkan terjadinya serangan pembelanjaan ganda. Misalnya, jika penyerang entah bagaimana dapat mengontrol setidaknya 51% dari kekuatan jaringan, mereka dapat melakukan pembelanjaan ganda. Jika penyerang entah bagaimana bisa mendapatkan kendali atas kekuatan komputasi sebesar ini, mereka dapat membalikkan transaksi dan membuat blockchain pribadi yang terpisah. Namun, pertumbuhan bitcoin yang cepat secara virtual memastikan bahwa jenis serangan ini tidak mungkin dilakukan.

Bukti Kerja & Penjelasan ‘Penambangan’

Sekarang mari kita sedikit lebih teknis. Cara pengguna mendeteksi gangguan seperti upaya pembelanjaan ganda dalam praktik adalah melalui  hash , rangkaian angka panjang yang berfungsi sebagai bukti kerja (PoW). Letakkan kumpulan data tertentu melalui fungsi hash (bitcoin menggunakan SHA-256), dan itu hanya akan menghasilkan satu hash. Karena “efek longsoran”, bagaimanapun, bahkan sedikit perubahan pada bagian mana pun dari data asli akan menghasilkan hash yang sama sekali tidak dapat dikenali. Berapa pun ukuran kumpulan data asli, hash yang dihasilkan oleh fungsi yang diberikan akan memiliki panjang yang sama. Hash adalah fungsi satu arah: tidak dapat digunakan untuk mendapatkan data asli, hanya untuk memeriksa apakah data yang menghasilkan hash cocok dengan data asli.

Menghasilkan sembarang hash untuk satu set transaksi bitcoin akan menjadi hal yang sepele untuk komputer modern, jadi untuk mengubah proses menjadi “kerja”, jaringan bitcoin menetapkan tingkat “kesulitan” tertentu. Pengaturan ini disesuaikan sehingga blok baru ” ditambang ” – ditambahkan ke blockchain dengan menghasilkan hash yang valid – kira-kira setiap 10 menit. Kesulitan pengaturan dicapai dengan menetapkan  “target” untuk hash : semakin rendah target, semakin kecil kumpulan hash yang valid, dan semakin sulit untuk membuatnya. Dalam praktiknya, ini berarti hash yang dimulai dengan string panjang nol: hash untuk blok # 429818, misalnya, adalah 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Blok itu berisi 2.012 transaksi yang melibatkan lebih dari 1.000 bitcoin, serta header dari blok sebelumnya. Jika pengguna mengubah satu jumlah transaksi dengan 0,0001 bitcoin, hash yang dihasilkan tidak akan dapat dikenali, dan jaringan akan menolak penipuan.

Karena sekumpulan data tertentu hanya dapat menghasilkan satu hash, bagaimana penambang memastikan bahwa mereka menghasilkan hash di bawah target? Mereka mengubah masukan dengan menambahkan bilangan bulat, yang disebut  nonce  (“nomor yang digunakan sekali”). Setelah hash yang valid ditemukan, itu disiarkan ke jaringan, dan blok tersebut ditambahkan ke blockchain.

Menambang adalah proses yang kompetitif, tetapi ini lebih merupakan lotre daripada perlombaan. Rata-rata, seseorang akan menghasilkan bukti kerja yang dapat diterima setiap sepuluh menit, tetapi siapa yang akan menjadi tebakan siapa pun. Penambang berkumpul bersama untuk meningkatkan peluang mereka untuk menambang blok, yang menghasilkan biaya transaksi dan, untuk waktu yang terbatas, hadiah bitcoin yang baru dibuat.

Bukti kerja membuatnya sangat sulit untuk mengubah aspek apa pun dari blockchain, karena perubahan seperti itu akan membutuhkan penambangan ulang semua blok berikutnya. Ini juga menyulitkan pengguna atau kumpulan pengguna untuk memonopoli daya komputasi jaringan, karena mesin dan daya yang diperlukan untuk menyelesaikan fungsi hash mahal.

Artikel terkait

  1. Blockchain: Semua yang perlu Anda ketahui
  2. Bitcoin
  3. Bitcoin Cash
  4. Target Hash
  5. Penambangan Bitcoin
  6. Hash.
  7. Root merkle (cryptocurrency)
  8. Mengapa Bitcoin Memiliki Nilai?
  9. Nonce.
  10. Blok Header (Cryptocurrency)