Mining Pool dan Penjelasannya

Hal pertama yang perlu kita ingat, bahwa dalam pertambangan Bitcoin, dilakukan dengan proses random (acak). Penambang tidak akan pernah bisa tahu, kapan dirinya akan bisa menemukan blok berikutnya. Jika penambang tidak bisa menemukan blok berikutnya, maka penambang pun tidak mendapat apa-apa.

Jika seorang penambang melihat pada distribusi blok, dan ingin melihat berapa blok yang ingin dan bisa ditemukan di tahun pertama, maka akan ada varian yang tinggi. Sementara jumlah blok yang mungkin bisa ditemukan juga rendah. Sehingga, jika kita membayangkan sebagai seorang penambang kecil. Kemungkinan-kemungkinan akan hal tersebut seakan membuat penambang kecil menjadi tidak punya banyak pilihan tersedia.

Apa itu Mining Pool?

Berawal dari banyaknya kesulitan yang dihadapi oleh para penambang kecil, sekaligus dengan beragam resiko yang dihadapi, lalu banyak diantara mereka yang kemudian saling bekerja sama dan membentuk sebuah perusahaan asuransi untuk meringankan resiko tersebut.

Awalnya sebuah mining pool terbentuk karena pola kerjasama tersebut. Sehingga sekelompok penambang bergabung bersama dan membentuk sebuah pool yang berfungsi untuk bisa melakukan penambangan Bitcoin secara bersama-sama. Dengan menentukan satu penerima coinbase yang telah ditunjuk sebelumnya. Penerima itu, disebut dengan istilah Pool Manager.

Jadi, dengan penambangan secara bersama ini, tidak perduli siapa yang menemukan sebuah blok, manager pool itulah yang nantinya akan menerima imbalan reward blok. Selanjutnya dari hasil yang diterima oleh manager pool atas reward block yang ditemukan, akan didistribusikan kepada masing-masing peserta. Dan pool tersebut, mungkin memotong beberapa dari jumlah itu sebagai fee untuk layanan pool yang dipakai masing-masing penambang.

Asumsinya ketika seorang penambang bergabung ke dalam pool mining, maka penambang juga mempercayai manager pool mining tersebut. Sehingga dengan pola pool mining, para penambang kecil pun menjadi mempunyai peluang untuk tetap bisa menambang Bitcoin.

Yang menjadi pertanyaan, bagaimana manager pool tersebut mengetahui secara pasti jumlah daya komputasi masing-masing penambang, dan berapa banyak yang telah dihasilkan oleh masing-masing penambangnya? Lalu bagaimana manager pool tersebut bisa membagi pendapatan tersebut secara sepadan di tiap-tiap penambang?

Kontribusi Daya Komputasi Sebagai Saham Menambang Bitcoin

Untuk menjawab beberapa pertanyaan diatas, ada solusi yang bisa menjawabnya. Penambang, bisa membuktikan berapa banyak peran yang telah dikontribusikan didalam pool saat melakukan penambangan. Pembuktian ini dapat dilakukan dengan menghitung hasil output saham, atau blok valid terdekat.

Mari kita perjelas tentang hal ini.

Misalkan target adalah sebuah angka yang diawali dengan 67 angka nol. Hash sebuah blok haruslah dibawah angka dari target agar blok itu menjadi blok yang valid. Di dalam mencari sebuah blok tersebut, penambang akan mencari hash blok dengan banyak angka nol di depan, namun tidak sampai berjumlah 67, karena target harus dibawahnya. Penambang bisa memulai untuk mencari blok valid yang terdekat untuk membuktikan bahwa mereka memang telah bekerja dalam pencarian tersebut. Sedangkan sebuah saham mungkin akan membutuhkan pembagian sekitar 40 atau 50 angka nol. Itupun tergantung pada penambang di pool.

Sementara, penambang pun akan terus mencari blok baru dengan hash blok yang berada di bawah target. Di dalam proses pencarian itu, mungkin mereka akan menemukan blok lain yang hash bloknya berisi angka nol lebih sedikit. Namun masih cukup sulit untuk bisa membuktikan bahwa mereka telah benar-benar bekerja.

Manager pool menjalankan node bitcoin atas nama peserta. Lalu mengumpulkan transaksi dan merakitnya kedalam blok. Manager pool juga menyertakan alamat mereka dalam transaksi coinbase dan mengirimkan untuk semua peserta yang tergabung di pool. Untuk membuktikan bahwa semua peserta telah bekerja, mereka mengirimkan saham. Saat anggota di pool menemukan blok yang valid, peserta tersebut mengirimkan ke manager pool.

Dalam hal ini, peserta yang telah menemukan blok baru tersebut tidak diberikan bonus khusus. Sehingga jika penambang lain melakukan lebih banyak pekerjaan dari penambang lain di pool, maka penambang itu akan dibayar lebih. Meskipun penambang itu bukanlah yang menemukan blok baru dan valid tadi.

Reward Menambang

Misalkan dalam pool mining ada tiga peserta yang sama-sama mengerjakan di blok yang sama. Ketiganya diberikan reward yang sepadan dengan jumlah pekerjaan yang telah dilakukan masing-masing dari ketiga perserta tersebut. Meskipun salah satu peserta tersebut menemukan blok yang valid. Salah satu penambang dibayar karena telah melakukan banyak pekerjaan. Dan biasanya juga tidak ada bonus khusus bagi yang berhasil menemukan blok yang valid.

Ada sedikit opsi yang bisa dilakukan oleh manager pool dalam mengkalkulasi berapa besar reward yang diberikan kepada peserta berdasarkan saham yang mereka kirimkan. Secara umum, kita akan mempunyai dua pilihan yang sederhana:

1. Pay Per Share

Pada model yang ini, manager pool akan membayar peserta secara flat pada tiap kali mengirimkan saham atas kesulitan tertentu yang telah dikerjakan pada sebuah blok. Sehingga para penambang dapat mengirim saham mereka kepada manager pool dan langsung dibayar tanpa menunggu pool untuk menemukan sebuah blok.

Dalam beberapa hal, model pay per share ini merupakan model terbaik untuk para penambang sebagai peserta di dalam pool mining. Sehingga para penambang akan dijamin atas uang yang bisa didapat setiap kali peserta menemukan saham dari hasil pekerjaannya. Sementara manager pool akan menyerap semua resiko yang ada untuk membayar imbalan tersebut, bahkan jika blok tidak ditemukan.

Oleh karena itu, sebagai akibat atas resiko tadi, pada model pay to share, pool mining akan mengenakan biaya yang lebih tinggi jika dibandingkan dengan model lainnya. Sedangkan masalah yang mungkin bisa timbul pada model ini, para penambang tidak sepenuhnya memiliki insentif untuk mengirim blok yang valid.

Artinya, peserta di pool bisa membuang blok valid yang ditemukan, tapi masih harus membayar imbalan yang sama, dan hal ini bisa merugikan bagi pool mining. Potensinya, manager pool yang kurang bisa dipercaya bisa saja menyerang pool untuk bersaing, dan mencoba mengusir peserta keluar dari bisnis pool ini.

2. Proporsional

Dalam model proporsional, tidak membayar peserta secara flat per saham. Jumlah pembayaran yang diterima peserta bergantung pada apakah pool telah menemukan blok yang valid. Jika pool berhasil menemukan blok yang valid, maka hasilnya baru akan didistribusikan kepada anggota, sebanding dengan seberapa banyak pekerjaan yang telah benar-benar dilakukan.

Pada model proporsional, para penambang kadang masih menanggung resiko yang dialami pool mining secara umum. Namun jika pool cukup besar dan banyak para penambangnya, maka varian beberapa sering pool bisa menemukan blok akan cukup rendah, sehingga resiko juga menjadi rendah bagi manager pool. Karena mereka hanya membayar ketika berhasil menemukan blok yang valid saja.

Model proporsional juga akan mengalami masalah seperti halnya di pola pay per share. Insentif penambang untuk mengirim blok valid yang ditemukan, akan memicu pendapatannya. Sehingga dalam model ini, manager pool akan bekerja lebih banyak untuk memverifikasi, mengkalkulasi, dan mendistribusikan upahnya. Selain dua model umum yang ada di pool ada sebuah pola lainnya, yakni pool hopping.

3. Pool Hopping

Para penambang mungkin bisa saling berpindah tempat pool di waktu yang berbeda. Katakanlah bahwa pool seara proporsional bisa efektif untuk membayar jumlah per saham jika sebuah blok berhasil ditemukan dalam waktu yang cepat. Lalu akan membayar hasil dari reward bloknya, tidak harus peduli berapa lama blok selanjutnya akan bisa ditemukan.

Sementara, seorang penambang yang pintar, mungkin akan mencoba menambang di pool proporsional ini di awal siklus sebelum blok bisa ditemukan. Sedangkan imbalan sahamnya relatif tinggi untuk beralih (hop) kepada pool pay per share di siklus selanjutnya. Ketika imbalan yang diharapkan dari menambang bitcoin di pool proporsional relatif lebh rendah.

Akhirnya, pool yang menjalankan pola proporsional tidak sepenuhnya bisa berjalan praktis. Pada skema yang lebih rumit seperti pool dengan pay per share, sejumlah saham baru dikirimkan. Ini sifatnya cukup umum, namun pada hal ini, dalam pool ini peserta juga akan sering saling berpindah. Sehingga menjadikan skema pool menjadi rentan atas berbagai jenis manipulasi.