Ada dua platform yang paling menarik perhatian jika ingin membangun blockchain sendiri saat ini. Keduanya adalah Substrate (yang digunakan untuk membuat Polkadot), dan Tendermint (yang digunakan untuk membuat Cosmos). Belakangan Tendermint telah dilengkapi banyak modul yang terpaket dalam Cosmos SDK.
Substrate
Substrate adalah platform blockchain open-source yang memungkinkan pengembang untuk membangun aplikasi blockchain sendiri dengan cepat dan mudah. Platform ini dirancang untuk menjadi modular dan fleksibel, sehingga Anda dapat menyesuaikannya dengan kebutuhan spesifik Anda.
Substrate digunakan untuk membangun berbagai macam aplikasi berbasis blockchain, seperti bursa terdesentralisasi (DEX/Decentralized Exchange), pasar prediksi, sistem identitas, dan sistem manajemen rantai pasokan. Substrate dapat digunakan untuk membuat blockchain publik dan privat, dan memiliki sejumlah fitur yang membuatnya sangat cocok untuk membangun sistem desentralisasi yang terukur dan aman.
Beberapa fitur utama Substrate meliputi:
- Pustaka modul runtime, yang memungkinkan pengembang untuk dengan mudah membangun logika khusus untuk blockchain mereka
- Algoritma konsensus yang cepat dan efisien (Aura)
- Lapisan jaringan yang fleksibel dan dapat disesuaikan
- Dukungan untuk tata kelola on-chain, yang memungkinkan para pemangku kepentingan untuk membuat keputusan tentang pengoperasian blockchain
- Alat untuk menguji dan men-debug aplikasi blockchain
Cosmos SDK
Cosmos SDK dibangun atas dasar Tendermint. Cosmos SDK adalah kit pengembangan perangkat lunak (SDK) yang digunakan untuk membangun aplikasi terdesentralisasi (DApps) di atas jaringan Cosmos. Ini menyediakan seperangkat alat, perpustakaan, dan kerangka kerja yang dapat digunakan pengembang untuk membangun dan menyebarkan DApps di jaringan Cosmos.
Tendermint adalah algoritma konsensus BFT yang digunakan sebagai mesin konsensus untuk jaringan Cosmos. Dia bertanggung jawab untuk memastikan keamanan dan skalabilitas jaringan Cosmos dengan memungkinkan terciptanya sistem terdesentralisasi dan tanpa kepercayaan (trustless) untuk mencapai konsensus pada blockchain.
Secara keseluruhan, Cosmos SDK difokuskan untuk memungkinkan pengembangan dan penyebaran DApps di jaringan Cosmos, sementara Tendermint difokuskan untuk menyediakan mekanisme konsensus yang mendasari yang memastikan keamanan dan skalabilitas jaringan. Baik Cosmos SDK dan Tendermint adalah komponen penting dari jaringan Cosmos dan bekerja sama untuk memungkinkan pembuatan aplikasi yang terdesentralisasi dan memfasilitasi komunikasi antar rantai dan interoperabilitas.
Cosmos SDK vs Substrate
Kelebihan dari Cosmos SDK
- Komunikasi antar rantai: Cosmos SDK mencakup protokol Inter-Blockchain Communication (IBC), yang memungkinkan blockchain dalam jaringan Cosmos untuk berkomunikasi dan bertukar informasi satu sama lain. Hal ini memungkinkan berbagai kasus penggunaan dan aplikasi potensial.
- Desain modular: Cosmos SDK dirancang agar modular dan fleksibel, memungkinkan pengembang untuk dengan mudah menyesuaikan dan memperluas blockchain mereka sesuai kebutuhan.
- Skalabilitas: Jaringan Cosmos dirancang agar dapat diskalakan (ditingkatkan atau diturunkan), dengan kemampuan untuk memproses ribuan transaksi per detik.
Kekurangan dari Cosmos SDK
- Interoperabilitas terbatas: Sementara Cosmos SDK mendukung komunikasi antar-rantai dan interoperabilitas dalam jaringan Cosmos, mungkin tidak cocok untuk interoperabilitas dengan blockchain di luar jaringan.
- Kurva pembelajaran yang curam: Cosmos SDK dapat memiliki kurva pembelajaran yang curam bagi pengembang yang baru membangun sistem blockchain. Banyak istilah dan konsep baru yang harus dipelajari.
Kelebihan Substrate
- Interoperabilitas: Substrate dirancang untuk memungkinkan interoperabilitas antara sistem blockchain yang berbeda, memungkinkan pengguna untuk dengan mudah membangun jembatan antara jaringan yang berbeda.
- Konsensus yang dapat disesuaikan: Substrate memungkinkan pengembang untuk menyesuaikan algoritma konsensus blockchain mereka, memungkinkan penciptaan mekanisme konsensus baru dan inovatif.
- Komunitas pengembangan aktif: Substrate memiliki komunitas pengembangan aktif, dengan sejumlah besar pengembang dan kontributor yang mengerjakan proyek.
Kekurangan Substrate
- Skalabilitas terbatas: Substrate tidak dioptimalkan untuk skalabilitas tinggi dan mungkin tidak dapat memproses transaksi per detik sebanyak beberapa platform blockchain lainnya.
- Kurva pembelajaran yang curam: Seperti Cosmos SDK, Substrate dapat memiliki kurva pembelajaran yang curam bagi pengembang yang baru membangun sistem blockchain.
- Komunikasi antar blockchain yang terbatas: Sementara Substrate mendukung interoperabilitas antara sistem blockchain yang berbeda, Substrate tidak menyertakan mekanisme built-in untuk komunikasi antar blockchain dan mungkin memerlukan pekerjaan tambahan untuk memungkinkan komunikasi antara jaringan yang berbeda.
Kesimpulan
Menurut saya Substrate lebih low level, banyak modifikasi di level blockchainnya. Ibaratnya kita bisa memodifikasi operating systemnya. Sementara Cosmos SDK, lebih di atasnya. Tendermint sebagai satu blockchain terpisah, hanya menyediakan mekanisme konsensus. Sedangkan aplikasi dan modifikasi, dilakukan di atasnya, dengan berkomunikasi ke sistem operasi (tendermint) lewat ABCI (Application Blockchain Interface).