Poin-Poin Utama
Toleransi kesalahan Byzantine (BFT) adalah sifat yang memungkinkan sistem terdistribusi, termasuk blockchain, untuk tetap berjalan meskipun beberapa node gagal atau bertindak tidak jujur.
Konsep ini berasal dari Masalah Jenderal Byzantine, sebuah eksperimen pemikiran tentang bagaimana pihak-pihak independen dapat mencapai kesepakatan ketika beberapa mungkin tidak dapat diandalkan.
Kebanyakan blockchain menggunakan algoritma konsensus seperti proof-of-work atau proof-of-stake untuk mencapai BFT dan menjaga keamanan jaringan.
Secara umum, jaringan membutuhkan setidaknya dua pertiga dari para pesertanya untuk jujur agar BFT dapat berjalan.
Pendahuluan
Sejak Bitcoin diluncurkan pada 2008 sebagai sistem uang elektronik peer-to-peer, blockchain telah bergantung pada satu sifat kunci: kemampuan untuk mencapai kesepakatan di antara banyak peserta independen tanpa mempercayai siapa pun di antara mereka. Ini lebih sulit daripada yang terdengar, terutama ketika beberapa peserta mungkin berperilaku tidak terduga atau tidak jujur.
Konsep yang mengatasi tantangan ini disebut toleransi kesalahan Byzantine. Memahaminya membantu menjelaskan mengapa jaringan blockchain dapat berfungsi dengan aman bahkan ketika ada aktor jahat atau kegagalan perangkat keras.
Apa Itu Masalah Jenderal Byzantine?
Masalah Jenderal Byzantine pertama kali dijelaskan pada tahun 1982. Ia menggunakan eksperimen pemikiran militer untuk menggambarkan kesulitan dalam mencapai kesepakatan dalam sistem terdistribusi ketika beberapa peserta tidak dapat dipercaya.
Bayangkan sekelompok jenderal, masing-masing memimpin pasukan yang berbeda, mengelilingi sebuah kota. Mereka harus menyepakati rencana: menyerang bersama atau mundur bersama. Jika mereka bertindak secara independen, mereka kalah. Masalahnya, mereka hanya bisa berkomunikasi melalui perantara (utusan), dan beberapa jenderal mungkin pengkhianat yang mengirim pesan yang saling bertentangan atau palsu.
Tantangan utamanya adalah: bagaimana jenderal yang setia bisa mencapai kesepakatan mengenai sebuah rencana ketika mereka tidak dapat mengidentifikasi siapa yang berbohong? Dalam konteks blockchain, setiap jenderal mewakili sebuah node jaringan, dan keputusan "menyerang atau mundur" digantikan oleh kesepakatan tentang transaksi mana yang valid.
Kesimpulan dari penelitian aslinya adalah bahwa sistem BFT membutuhkan setidaknya dua pertiga peserta untuk bersikap jujur. Jika sepertiga atau lebih bersifat cacat atau berbahaya, mencapai konsensus yang andal menjadi mustahil.
Toleransi Kesalahan Byzantine (BFT)
Toleransi kesalahan Byzantine adalah sifat dari sebuah sistem yang dapat terus beroperasi dengan benar meskipun sebagian komponen gagal atau berperilaku jahat. Sistem BFT dapat menoleransi sejumlah node yang bermasalah tanpa mengorbankan integritas seluruh jaringan.
Dalam praktiknya, ini berarti blockchain BFT dapat menangani skenario ketika node mengalami crash, kehilangan konektivitas, mengirim pesan duplikat, atau dengan sengaja mencoba memanipulasi jaringan. Sistem akan mencapai hasil yang benar selama proporsi node yang bermasalah tetap berada di bawah ambang batas yang dapat diterima.
Ada beberapa cara untuk membangun sistem BFT. Pendekatan yang digunakan blockchain bergantung pada prioritas desainnya, seperti kecepatan, desentralisasi, dan keamanan. Hal ini mengarah pada pengembangan berbagai algoritma konsensus.
Algoritma Konsensus Blockchain
Algoritma konsensus adalah mekanisme yang digunakan blockchain untuk menyepakati keadaan (state) dari buku besar. Pendekatan yang paling umum adalah proof-of-work (PoW) dan proof-of-stake (PoS).
Bitcoin menggunakan PoW, yang diadaptasi oleh Satoshi Nakamoto menjadi apa yang dikenal sebagai konsensus Nakamoto. Dalam model ini, node bersaing untuk memecahkan teka-teki yang mahal secara komputasi untuk menambahkan blok baru. Biaya dari pekerjaan tersebut membuatnya secara ekonomi tidak praktis bagi aktor jahat untuk menulis ulang rantai tanpa menguasai lebih dari setengah total daya komputasi. Jenis serangan ini disebut serangan 51%.
PoW tidak sepenuhnya kebal terhadap kesalahan Byzantine, tetapi biaya penambangan dan keamanan kriptografis dari rantai membuatnya sangat andal dalam praktik.
PoS mencapai tujuan yang serupa dengan cara berbeda. Alih-alih pekerjaan komputasi, validator menyetorkan mata uang kripto sebagai jaminan (kolateral). Perilaku tidak jujur dapat mengakibatkan hilangnya jaminan tersebut, sehingga menciptakan insentif ekonomi yang kuat untuk berpartisipasi secara jujur.
Ethereum beralih ke PoS pada 2022, dan mekanisme finalitasnya mengambil prinsip BFT yang digunakan dalam protokol seperti Tendermint. Protokol-protokol ini memungkinkan sebuah jaringan mengonfirmasi blok sebagai final setelah cukup banyak validator memberikan persetujuan, sehingga meningkatkan kecepatan dan keamanan dibanding finalitas probabilistik pada rantai PoW.
FAQ
Apa yang dimaksud dengan toleransi kesalahan Byzantine?
Toleransi kesalahan Byzantine berarti sebuah sistem dapat terus berfungsi dengan benar meskipun beberapa komponennya berperilaku tidak terduga atau tidak jujur. Dalam blockchain, ini berarti jaringan dapat mencapai konsensus atas transaksi yang valid meskipun beberapa node mengirim informasi palsu atau saling bertentangan.
Mengapa disebut toleransi kesalahan Byzantine?
Nama tersebut berasal dari Masalah Jenderal Byzantine (Byzantine Generals' Problem), sebuah eksperimen pemikiran dari tahun 1982 yang menggunakan cerita tentang jenderal militer untuk menggambarkan tantangan dalam mencapai kesepakatan ketika beberapa peserta tidak dapat dipercaya. Dalam komputasi, istilah "Byzantine" merujuk pada kegagalan yang sewenang-wenang atau bersifat jahat, berbeda dari sekadar crash.
Berapa banyak dari suatu jaringan yang harus jujur agar BFT dapat bekerja?
Secara umum, sistem BFT memerlukan setidaknya dua pertiga dari para peserta untuk berperilaku jujur. Jika sepertiga atau lebih dari jaringan bertindak secara berbahaya atau gagal, sebagian besar protokol BFT tidak lagi dapat menjamin hasil yang benar. Ambang batas ini sedikit bervariasi tergantung protokol konsensus spesifik yang digunakan.
Apakah proof-of-work (PoW) toleran kesalahan Byzantine?
Proof-of-work tidak sepenuhnya toleran kesalahan Byzantine, tetapi memberikan ketahanan praktis melalui biaya penambangan yang tinggi. Seorang penyerang perlu menguasai lebih dari 50% dari total daya komputasi jaringan untuk secara konsisten memanipulasi rantai, sehingga serangan seperti ini menjadi mahal dan sulit dipertahankan.
Pemikiran Penutup
Toleransi kesalahan Byzantine adalah konsep dasar dalam desain blockchain. Konsep ini menjelaskan mengapa jaringan seperti Bitcoin dan Ethereum dapat berfungsi secara andal meskipun para partisipannya anonim dan beberapa mungkin mencoba berbuat curang. Baik melalui proof-of-work, proof-of-stake, maupun protokol BFT yang lebih baru yang digunakan dalam rantai modern, tujuan akhirnya sama: memungkinkan node-node yang independen menyepakati kebenaran tanpa perlu saling mempercayai secara individual.
Bacaan Lanjutan
Apa Itu Algoritma Konsensus Blockchain?
Apa Itu Proof of Work (PoW)?
Apa Itu Proof of Stake (PoS)?
Apa Itu Serangan 51%?
Disclaimer: Konten ini disajikan kepada Anda atas dasar "apa adanya" untuk informasi umum dan tujuan edukasi saja, tanpa representasi atau jaminan dalam bentuk apa pun. Konten ini tidak boleh ditafsirkan sebagai nasihat keuangan, hukum, atau nasihat profesional lainnya, dan juga tidak dimaksudkan untuk merekomendasikan pembelian produk atau layanan tertentu. Anda sebaiknya mencari nasihat Anda sendiri dari penasihat profesional yang sesuai. Jika konten ini disumbangkan oleh pihak ketiga, mohon perhatikan bahwa pandangan yang diungkapkan adalah milik kontributor pihak ketiga tersebut, dan tidak harus mencerminkan pandangan Binance Academy. Harga aset digital bisa sangat fluktuatif. Nilai investasi Anda dapat turun atau naik, dan Anda mungkin tidak mendapatkan kembali jumlah yang Anda investasikan. Anda sepenuhnya bertanggung jawab atas keputusan investasi Anda, dan Binance Academy tidak bertanggung jawab atas kerugian apa pun yang mungkin Anda alami. Untuk informasi lebih lanjut, lihat Ketentuan Penggunaan kami, Peringatan Risiko, dan Ketentuan Binance Academy.
