- Desentralisasi: Prinsip yang mendistribusikan blockchain di berbagai komputer dalam jaringan alih-alih menyimpannya di satu lokasi terpusat.
- Keamanan: Kemampuan blockchain menghadapi serangan atau perubahan tanpa izin. Umumnya, blockchain yang semakin terdesentralisasi akan semakin aman.
- Skalabilitas: Kemampuan blockchain menanggung lebih banyak beban kerja.
Untuk mengembangkan dua faktor, satu faktor lainnya harus dikurangi atau dikorbankan. Skalabilitas jadi masalah besar di blockchain, sebab untuk meningkatkan skalabilitas, keamanan atau desentralisasi harus dikurangi.
Solusi Layer 1 dan Layer 2 untuk Skalabilitas Blockchain
Sebagai solusi skalabilitas blockchain, muncul konsep Layer 1 dan Layer 2.
Layer 1
Layer 1 adalah sebutan untuk jaringan blockchain utama. Layer ini memfasilitas transaksi dan aktivitas di blockchain. Contoh blockchain Layer 1 adalah Bitcoin, Ethereum, Algorand, Cardano, dan lain-lain.
Agar bisa memfasilitasi jumlah transaksi yang lebih banyak, blockchain layer 1 menerapkan solusi skalabilitas blockchain seperti:
- Mengubah Mekanisme Konsensus: Beberapa mekanisme konsensus di blockchain tidak efisien untuk meningkatkan skalabilitas, sehingga harus diganti. Misalnya, Ethereum berganti dari konsensus proof-of-work menjadi proof-of-stake untuk mengurangi penggunaan energi sampai 99,95%.
- Blockchain Fork: Meng-upgrade atau mengatur ulang blockchain. Terbagi menajadi soft fork (perubahan dalam protokol blockchain yang masih kompatibel dengan node chain lama) dan hard fork (perubahan dengan mode operasi baru yang tidak kompatibel dengan node lama jika tidak diperbarui).
- Sharding: Data dipartisi jadi porsi-porsi kecil agar bisa diproses dengan lebih cepat.
Layer 2
Layer 2 adalah lapisan yang dibangun di atas blockchain utama untuk meningkatkan performa jaringan utama. Layer 2 mengelompokkan transaksi jadi bundle kecil, memprosesnya di luar jaringan utama, lalu mengirimnya kembali ke layer 1. Contoh blockchain layer 2 adalah Optimism, Polygon, Arbitrum, dan Loopring.
Solusi skalabilitas blockchain layerr 2 antara lain:
- State Channel: Sebagian transaksi dikirim ke wallet multi-signature di luar blockchain. Partisipan di state channel akan bertransaksi secara langsung menggunakan kontrak multi-signature tanpa melibatkan miner untuk verifikasi.
- Rollups: Solusi skalabilitas blockchain layer 2 yang mengelompokkan transaksi dari jaringan utama, memprosesnya di luar blockchain, lalu mengirim transaksi yang sudah diproses kembali ke jaringan utama.
- Optimistic Rollups: Mengasumsi semua transaksi valid kecuali disanggah. Siapa saja bisa menantang validitas transaksi selama periode sanggahan.
- Zero-Knowledge (ZK) Rollups: Membuktikan validitas transaksi menggunakan bukti kriptografi yang disebut validity proof. Hanya transaksi yang sudah valid yang bisa berjalan di layer blockchain utama.
- Nested Blockchain: Solusi skalabilitas blockchain layer 2 yang terdiri atas chain induk dan chain cabang. Chain induk akan mendelegasi transaksi ke cabang-cabangnya. Transaksi akan diproses di chain cabang sebelum dikirim kembali ke chain induk. Kemudian, chain induk melengkapi layer 1 dengan hasil transaksi.
- Sidechain: Solusi skalabilitas blockchain layer 2 yang berjalan paralel dengan chain utama untuk mengoptimasi performa. Sidechain bersifat independen, dan serangan terhadap side chain tidak akan memengaruhi chain utama.
Baca Juga: Apa Itu Layer-2 Blockchain? Cara Kerja & Keunggulannya Dibanding Layer-1
Sharding
Sharding adalah salah satu solusi skalabilitas blockchain yang berlangsung di layer 1. Data dibagi jadi bagian-bagian kecil yang disebut “shards”. Kemudian, semua shards diproses secara paralel.
Cara Kerja Sharding
- Pembagian Jaringan: Jaringan blockchain dibagi jadi beberapa segmen atau shards. Masing-masing shard memiliki subset dari data keseluruhan jaringan, tetapi unik dan independen dari shard lain.
- Proses Paralel: Setiap shard memproses transaksi secara paralel dengan shard lain.
- Komunikasi Antar Shard: Tiap shard masih bisa membagi informasi ke shard lain, sehingga datanya masih bisa diakses oleh semua pengguna untuk mempertahankan desentralisasi.
Keuntungan Sharding
- Meningkatkan Skalabilitas: Sharding meningkatkan TPS (transaksi per detik) sebuah blockchain karena beban pemrosesan distribusikan di antara banyak shard.
- Mengurangi Beban Kerja: Sharding mengurangi latency jaringan karena pada dasarnya teknik ini memecah suatu jaringan ke bagian-bagian kecil.
- Meningkatkan Efisiensi dan Kecepatan: Transaksi berlangsung lebih cepat dan efisien karena diproses secara paralel di berbagai shard.
Kekurangan Sharding
- Risiko Keamanan: Sharding membuka potensi serangan baru, misalnya dengan memanfaatkan celah keamanan pada shard atau koordinasi serangan antar shard.
- Fragmentasi Data: Data dibagi ke berbagai shard, sehingga mengakses riwayat lengkap sebuah blockchain atau memvalidasi transaksi di berbagai shard lebih kompleks.
- Partisi Jaringan: Jika sebuah shard terisolasi atau sedang offline, bisa berdampak ke ketersediaan dan fungsi shard tersebut atau bahkan seluruh jaringan.
Rollups
Rollups adalah solusi skalabilitas blockchain yang berlangsung di layer 2 yang mengelompokkan beberapa transaksi menjadi satu batch, lalu memprosesnya di luar blockchain utama.
Cara Kerja Rollups
- Optimistic Rollups
- Periode Sanggahan: Semua transaksi dianggap valid dan dikirim ke chain utama tanpa perlu bukti. Setelah itu, ada rentang waktu agar partisipan bisa menyanggah validitas suatu transaksi.
- Fraud Proof: Jika ditemukan transaksi yang tidak valid, maka fraud proof dikumpulkan. Jika fraud proof diterima, batch transaksi yang tidak valid akan ditolak.
- Kelebihan:
- Throughput Lebih TInggi: Transaksi diproses di luar chain, sehingga mengurangi kemacetan di layer utama.
- Hemat Biaya: Komputasi di Layer 1 berkurang, sehingga biaya transaksi lebih sedikit.
- Kekurangan:
- Finalisasi Lebih Lambat: Optiistic rollups melibatkan periode sanggahan sebelum transaksi difinalisasi di Layer 1.
- Keamanan Kurang: Keamanan optmistic rollups bergantung pada validator jujur yang punya insentif mendeteksi transaksi palsu dan mengajukan fraud proof.
- Zero-Knowledge (ZK) Rollups
- Zero-Knowledge (ZK) Proof: Bukti validitas yang dikirim ke protokol utama. Sistem ini terbagi jadi dua kelas utama:
- zk-SNARK (Zero-Knowledge Succinct Non-interactive Argument of Knowledge): Bersifat non-interaktif, yang berarti tidak ada komunikasi lebih lanjut antara pihak validator dan pihak yang dibuktikan setelah bukti dibuat.
- zk-STARK (Zero-Knowledge Scalable Transparent Argument of Knowledge): Menggunakan fungsi hash untuk membuat bukti, sehingga meningkatkan keamanan, skalabilitas, dan transparansi.
- Kelebihan:
- Finalisasi Lebih Cepat: ZK-Rollups tidak punya periode sanggahan, sehingga transaksi bisa difinalisasi di Layer 1 lebih cepat.
- Lebih Aman: ZK-Rollups dilindungi oleh keamanan dan desentralisasi blockchain Layer 1 serta bukti kriptografi untuk memvalidasi transaksi.
- Kekurangan:
- Lebih Kompleks: Perlu pengetahuan mendalam dan pengembangan infrastruktur kompleks sebelum ZK-Rollups bisa diterapkan di ekosistem blockchain.
Kesimpulan
Skalabilitas adalah bagian dari trilema blockchain. Untuk meningkatkan skalabilitas blockchain, keamanan atau desentralisasi blockchain harus dikurangi. Untuk mengatasi masalah ini, muncul berbagai solusi skalabilitas blockchain, seperti sharding dan rollups.
Bahkan, jaringan tambahan dibentuk untuk meningkatkan skalabilitas blockchain. Pelajari megnenai Layer 2 sebagai solusi skalabilitas blockchain di artikel Memahami Layer 2 Blockchain: Solusi Skalabilitas untuk Web3.