Apa itu Algoritma Konsensus?
Daftar Konten
Pengantar
Algoritma konsensus dan mata uang kripto
Jenis-jenis algoritma konsensus
Algoritme konsensus lainnya
Penutup
Apa itu Algoritma Konsensus?
BerandaArtikel
Apa itu Algoritma Konsensus?

Apa itu Algoritma Konsensus?

Pemula
Published Dec 13, 2018Updated Aug 18, 2021
7m


Daftar isi

www.binance.com/id

Pengantar

Algoritma konsensus merupakan mekanisme yang memungkinkan pengguna atau mesin untuk berkoordinasi dalam lingkungan terdistribusi. Perlu dipastikan bahwa semua pihak dalam sistem dapat menyetujui single source of truth, meskipun beberapa pihak gagal. Dengan kata lain, sistem harus bersifat fault-tolerant (lihat juga: Penjelasan mengenai Byzantine Fault Tolerance ).

Dalam lingkungan tersentralisasi, satu entitas berkuasa atas sistem. Dalam kebanyakan kasus, pihak ini dapat melakukan perubahan sesuka hati – tidak ada sistem tata kelola yang rumit untuk mencapai konsensus di antara banyak administrator. 

Tetapi dalam lingkungan terdesentralisasi, ceritanya berbeda. Katakanlah kita sedang bekerja dengan database terdistribusi – bagaimana kita mencapai kesepakatan mengenai entri apa yang bisa ditambahkan?

Mengatasi tantangan ini, di lingkungan di mana orang asing tidak percaya satu sama lain, mungkin merupakan pengembangan paling penting yang membuka jalan bagi blockchain. Dalam artikel ini, kita akan melihat bagaimana algoritma konsensus sangat penting dalam mata uang kripto dan ledger terdistribusi.


Algoritma konsensus dan mata uang kripto

Dalam mata uang kripto, saldo pengguna dicatat dalam database – blockchain. Sangat penting bahwa setiap orang (atau lebih tepatnya, setiap node) menyimpan salinan database yang identik. Jika tidak, Anda akan memiliki informasi yang saling bertentangan, yang justru akan merusak seluruh tujuan jaringan kripto.
Kriptografi Public-key memastikan bahwa pengguna tidak dapat menghabiskan koin milik orang lain. Namun, masih perlu ada single source of truth yang bisa diandalkan oleh peserta jaringan, untuk dapat menentukan apakah dana telah digunakan.
Satoshi Nakamoto, pencipta Bitcoin, mengusulkan sistem Proof of Work untuk mengoordinasikan peserta. Kita akan membahas cara kerja PoW sesaat lagi – untuk saat ini, kita akan mengidentifikasi beberapa ciri umum dari sejumlah algoritma konsensus yang ada.
Pertama-tama, kita mengharuskan pengguna yang ingin menambahkan blok (kita akan menyebutnya validator) untuk menyediakan stake. Stake merupakan semacam nilai yang harus diserahkan oleh validator di muka, yang mencegah mereka berbuat curang. Jika mencoba menipu, mereka akan kehilangan stake. Kerugian lainnya, daya komputasi, aset kripto, atau bahkan reputasi mereka akan terbuang dengan cuma-cuma. 
Mengapa mereka repot-repot mempertaruhkan sumber daya sendiri? Well, karena juga tersedia reward. Biasanya terdiri dari aset kripto asli dari protokol, berasal dari biaya yang dibayarkan oleh pengguna lain, atau dari unit kripto yang baru diterbitkan, atau keduanya.
Hal terakhir yang kita butuhkan adalah transparansi. Kita harus dapat mendeteksi ketika seseorang berbuat curang. Idealnya, harus mahal bagi pengguna untuk menghasilkan blok, tetapi murah bagi siapa pun untuk memvalidasinya. Cara ini akan memastikan bahwa validator tetap dipantau oleh pengguna biasa.


Jenis-jenis algoritma konsensus

Proof of Work (PoW)

Proof of Work (PoW) merupakan figur godfather bagi algoritma konsensus blockchain. Walaupun pertama kali diterapkan dalam Bitcoin, namun, konsep ini sebenarnya sudah ada selama beberapa waktu. Dalam Proof of Work, validator (disebut sebagai penambang) melakukan hash terhadap data yang ingin mereka tambahkan, sampai mereka menghasilkan solusi tertentu.
Hash merupakan serangkaian huruf dan angka yang tampaknya acak, yang dibuat saat Anda menjalankan data melalui fungsi hash. Namun, jika menjalankan data yang sama lagi melalui fungsi ini, Anda akan selalu mendapatkan output yang sama. Jika Anda mengubah bahkan satu detail saja, maka hash Anda akan sangat berbeda.

Melihat outputnya, Anda tidak akan tahu informasi apa yang dimasukkan ke dalam fungsi. Karena itu, fungsi berguna untuk membuktikan bahwa Anda mengetahui sepotong data sebelum waktu tertentu. Anda dapat memberikan hash suatu data kepada seseorang, dan ketika nanti Anda mengungkapkan datanya, orang itu dapat menjalankannya melalui fungsi, untuk memastikan outputnya sama.

Dalam Proof of Work, protokol menetapkan persyaratan agar blok disebut valid. Misalnya, hanya blok yang hashnya dimulai dengan 00 akan valid. Satu-satunya cara bagi penambang untuk medapatkan yang cocok adalah dengan memasukkan sebanyak mungkin input. Mereka dapat mengubah parameter dalam data untuk menghasilkan outcome yang berbeda pada setiap tebakan, hingga mereka mendapatkan hash yang tepat. 
Dalam blockchain besar, persaingan dibuat sangat ketat. Untuk bersaing dengan penambang lain, Anda akan membutuhkan gudang yang penuh dengan perangkat hashing khusus (ASIC) agar dapat menghasilkan blok yang valid.
Saat menambang, stake Anda adalah biaya mesin-mesin hashing tersebut dan listrik yang diperlukan untuk menjalankannya. ASIC dibangun hanya untuk satu tujuan, jadi, mesin ini tidak akan berguna jika diterapkan di luar penambangan mata uang kripto. Satu-satunya cara untuk mendapatkan kembali investasi awal Anda adalah dengan menambang, yang menghasilkan reward yang cukup besar jika Anda berhasil menambahkan blok baru ke blockchain.

Sangat gampang bagi jaringan untuk memverifikasi bahwa Anda memang telah membuat blok yang tepat. Meskipun Anda sudah mencoba triliunan kombinasi untuk mendapatkan hash yang cocok, jaringan hanya perlu menjalankan data Anda satu kali melalui fungsi. Jika data menghasilkan hash yang valid, data tersebut akan diterima, dan Anda akan mendapat reward. Jika tidak, jaringan akan menolaknya, Anda sudah membuang-buang waktu dan listrik dengan percuma.


Proof of Stake (PoS)

Proof of Stake (PoS) diusulkan sebagai alternatif Proof of Work di hari-hari awal Bitcoin. Dalam sistem PoS, tidak ada konsep penambang, perangkat keras khusus, atau konsumsi energi besar-besaran. Yang Anda butuhkan hanyalah PC biasa.
Well, Anda masih perlu memberikan sesuatu. Di PoS, Anda tidak mengorbankan sumber daya eksternal (seperti listrik atau perangkat keras), tetapi sumber daya internal – mata uang kripto. Aturan berbeda dalam setiap protokol, tetapi umumnya ada jumlah minimum dana yang harus Anda kunci agar memenuhi syarat dalam staking.
Anda mengunci dana di wallet (tidak dapat dipindahkan saat staking berlangsung). Pada umumnya, Anda akan setuju dengan validator lain mengenai transaksi apa yang akan masuk ke blok berikutnya. Ini dapat diartikan seperti Anda bertaruh pada blok yang akan dipilih oleh protokol.
Jika blok Anda dipilih, Anda akan menerima sebagian dari biaya transaksi, tergantung pada besarnya stake. Semakin banyak dana yang dikunci, semakin banyak keuntungan yang Anda peroleh. Tetapi jika mencoba menipu dengan mengajukan transaksi yang tidak valid, Anda akan kehilangan sebagian (atau semua) stake Anda. Oleh karena itu, mekanisme ini mirip dengan PoW – bertindak jujur lebih menguntungkan daripada berbuat curang.
Umumnya, tidak ada koin baru yang diterbitkan sebagai bagian dari reward bagi para validator. Mata uang asli blockchain harus dikeluarkan dengan cara lain. Ini dapat dilakukan baik melalui pendistribusian awal (seperti ICO atau IEO), atau dengan meluncurkan protokol dengan PoW sebelum kemudian beralih ke PoS.

Sampai saat ini, Proof of Stake hanya benar-benar digunakan dalam mata uang kripto berskala kecil. Oleh karena itu, belum jelas apakah sistem ini dapat berfungsi sebagai alternatif yang layak. Meskipun secara teori tampak sehat, dalam praktiknya bisa sangat berbeda. 

Saat PoS diluncurkan pada jaringan dengan nilai yang besar, sistem menjadi arena bermain bagi game theory dan insentif finansial. Siapa pun yang memiliki pengetahuan untuk “meretas” sistem PoS, kemungkinan akan melakukannya jika memang menguntungkan – oleh karena itu, satu-satunya cara untuk mengetahui apakah sistem ini layak, adalah dengan mengujinya langsung pada jaringan live.
Kita akan segera melihat PoS diuji dalam skala besar – Casper akan diimplementasikan sebagai bagian dari serangkaian peningkatan jaringan Ethereum (yang dikenal sebagai Ethereum 2.0).


Algoritme konsensus lainnya

Proof of Work dan Proof of Stake merupakan algoritma konsensus yang paling banyak dibahas. Tetapi ada banyak variasi lainnya, semuanya dengan kelebihan dan kekurangan masing-masing. Anda dapat memeriksa artikel berikut:


Penutup

Mekanisme dalam mencapai konsensus sangat penting bagi berfungsinya sistem terdistribusi. Banyak yang yakin bahwa inovasi terbesar Bitcoin adalah penggunaan Proof of Work yang memungkinkan pengguna menyetujui serangkaian fakta bersama.

Algoritma konsensus saat ini mendukung tidak hanya sistem uang digital, tetapi juga blockchain, memungkinkan pengembang untuk menjalankan kode di jaringan terdistribusi. Algoritma ini sekarang menjadi landasan teknologi blockchain, sangat penting bagi kelangsungan jangka panjang dari berbagai jaringan yang ada.

Dari semua algoritma konsensus, Proof of Work masih menjadi yang dominan. Belum ada yang mengusulkan alternatif yang lebih andal dan aman. Namun, saat ini terdapat sejumlah besar penelitian dan pengembangan yang dilakukan untuk mendapatkan pengganti PoW, kemungkinan besar, kita akan melihat lebih banyak bermunculan di tahun-tahun mendatang.