Academy
Penjelasan Mengenai Byzantine Fault Tolerance
Byzantine Fault Tolerance (BFT) adalah salah satu konsep mendasar dalam dunia komputasi terdistribusi yang menjadi sorotan utama dalam menghadapi tantangan sistem dengan partisipan yang tidak dapat dipercaya. Dalam lingkungan komputer terdistribusi, ada risiko kegagalan pada beberapa komponen, baik karena gangguan jaringan, kegagalan perangkat keras, atau karena adanya partisipan yang bertindak tidak jujur (terdistribusi secara Byzantine).
Istilah ini merujuk pada “The Byzantine Generals Problem,” sebuah analogi teoretis yang menggambarkan masalah koordinasi di antara komandan tentara Byzantine yang dapat bertindak tidak dapat diandalkan atau bahkan musuh. Konsep BFT berusaha menemukan solusi untuk masalah ini dengan membangun mekanisme konsensus yang dapat tahan terhadap partisipan yang jahat, sehingga memungkinkan sistem terdistribusi untuk berfungsi secara andal bahkan dalam kondisi yang tidak dapat dipercaya.
Penerapan Byzantine Fault Tolerance memiliki peranan penting dalam berbagai industri dan sistem yang mengandalkan komputasi terdistribusi, seperti teknologi blockchain, sistem keuangan, jaringan sensor terdistribusi, dan lainnya. Salah satu tantangan utama dalam mencapai BFT adalah bagaimana mencapai konsensus di antara node-nodenya, terutama ketika sebagian dari node tersebut berperilaku tidak dapat diandalkan atau bahkan berusaha menyebabkan kekacauan dalam jaringan.
Dalam mencari solusi, telah dikembangkan beberapa protokol BFT, seperti Practical Byzantine Fault Tolerance (PBFT), HoneyBadgerBFT, dan lainnya. Meskipun protokol-protokol ini dapat memberikan keamanan dan keandalan dalam sistem terdistribusi, namun sering kali memerlukan biaya komputasi yang tinggi dan kompleksitas implementasi. Karena itu, penelitian terus dilakukan untuk meningkatkan efisiensi dan skalabilitas dari Byzantine Fault Tolerance dalam menghadapi tantangan masa depan dalam pengembangan sistem terdistribusi.
Apa itu Masalah Umum Byzantine?
Secara ringkas, Masalah Umum Byzantine lahir pada tahun 1982 sebagai dilema logis yang mengilustrasikan bagaimana sebuah kelompok umum Byzantine dapat menghadapi masalah komunikasi untuk mencapai kesepakatan pada langkah-langkah berikutnya.
Dilema ini berasumsi bahwa setiap jendral memiliki pasukannya masing-masing dan semua kelompok ditempatkan di lokasi yang berbeda di dalam kota yang hendak mereka serang. Para jendral harus mencapai kesepakatan apakah akan menyerang atau mundur. Tantangan di sini bukanlah keputusan untuk menyerang atau mundur, selama para jendral mencapai konsensus, misalnya setuju untuk mengambil keputusan tertentu dan melaksanakannya sesuai perintah.
Karena itu, beberapa hal harus ditentukan:
- Setiap jendral harus memutuskan untuk menyerang atau mundur (ya atau tidak).
- Setelah keputusan diambil, keputusan tersebut tidak dapat diubah.
- Setiap jendral harus setuju dengan keputusan yang sama dan melaksanakannya sesuai dengan aturan yang telah disepakati bersama.
Masalah komunikasi yang dijelaskan di atas berhubungan dengan fakta bahwa satu jendral hanya dapat berkomunikasi dengan yang lain melalui pesan yang dikirimkan oleh kurir. Ini menyulitkan Masalah Umum Byzantine karena pesan-pesan dapat terhambat, rusak, atau hilang.
Lebih lanjut lagi, meskipun pesan berhasil terkirim, satu atau lebih jendral dapat memilih (dengan alasan apa pun) untuk bertindak jahat dan mengirimkan jawaban yang bertujuan untuk membingungkan jendral-jendral lainnya, yang dapat menyebabkan kegagalan penyerangan.
Jika kita menerapkan dilema ini dalam konteks blockchain, setiap jendral merepresentasikan sebuah node dalam jaringan dan node tersebut harus mencapai konsensus tentang keadaan sistem saat ini. Dengan kata lain, mayoritas peserta dalam jaringan terdistribusi harus setuju dan melaksanakan tindakan yang sama untuk mencegah kegagalan total.
Karena itu, satu-satunya cara untuk mencapai konsensus dalam jenis sistem terdistribusi seperti ini adalah dengan memiliki ⅔ atau lebih dari node jaringan yang jujur dan dapat diandalkan. Ini juga berarti bahwa jika mayoritas peserta jaringan memutuskan untuk bertindak jahat, sistem akan sangat rentan terhadap kegagalan dan serangan (seperti serangan 51%).
Pengertian Byzantine Fault Tolerance (BFT)
Secara sederhana, Byzantine Fault Tolerance adalah kemampuan suatu sistem untuk menangani kegagalan yang disebabkan oleh permasalahan Masalah Umum Byzantine. Artinya, sistem BFT mampu tetap beroperasi meskipun beberapa node mengalami kegagalan atau bertindak tidak benar.
Terdapat beberapa solusi untuk Masalah Umum Byzantine, dan beberapa pendekatan untuk membangun sistem BFT. Selain itu, ada berbagai cara pendekatan blockchain untuk mencapai BFT, yang pada akhirnya membawa kita ke algoritma konsensus.
Algoritma Konsensus Blockchain
Algoritma konsensus adalah mekanisme di mana jaringan blockchain mencapai kesepakatan. Dua implementasi paling umum adalah Proof of Work (PoW) dan Proof of Stake (PoS). Sebagai contoh, mari kita lihat Bitcoin.
Protokol Bitcoin menentukan aturan utama untuk sistemnya, dan algoritma konsensus PoW menentukan bagaimana aturan-aturan tersebut diikuti untuk mencapai kesepakatan, misalnya, dalam memverifikasi dan memvalidasi transaksi.
Meskipun konsep Proof of Work sudah digunakan sejak lama dalam mata uang digital, Satoshi Nakamoto mengembangkan modifikasi yang memungkinkan proses pembuatan Bitcoin digunakan sebagai sistem BFT.
Namun, perlu diingat bahwa algoritma PoW tidak sepenuhnya toleran terhadap Byzantine Fault. Namun, karena proses penambangan yang memakan biaya tinggi dan teknik kriptografi yang digunakan, PoW telah terbukti sebagai implementasi jaringan blockchain yang paling aman dan andal. Dalam konteks ini, algoritma konsensus Proof of Work yang dirancang oleh Satoshi Nakamoto dianggap oleh banyak orang sebagai solusi brilian untuk masalah Byzantine Fault.
Kesimpulan
Masalah Umum Byzantine adalah dilema menarik yang menginspirasi lahirnya sistem BFT, yang sekarang diterapkan secara luas dalam berbagai skenario. Selain di industri blockchain, sistem BFT juga digunakan di industri lain seperti penerbangan, antariksa, dan energi nuklir.
Dalam konteks mata uang digital, memiliki komunikasi jaringan yang efisien, bersama dengan mekanisme konsensus yang solid, sangat penting untuk ekosistem blockchain mana pun. Keamanan sistem ini adalah usaha yang terus menerus dilakukan, dan algoritma konsensus saat ini masih memiliki beberapa batasan yang perlu diatasi, seperti masalah penskalaan. Namun, baik PoW maupun PoS adalah pendekatan yang menarik dalam mencapai sistem BFT, dan potensinya telah menginspirasi berbagai inovasi.
Jika kamu ingin mengetahui lebih dalam mengenai aset kripto atau cryptocurrency, bisa baca artikel “Belajar Crypto untuk Pemula Mulai Dari Sini.”
Sumber: Binance Academy Indonesia