Diusulkan dalam buku putih pada tahun 2016, Lightning Network (LN) adalah solusi lapisan-2 yang dibangun di atas Bitcoin. LN diciptakan sebagai respons terhadap masalah skalabilitas Bitcoin, yaitu kecepatan dan biaya transaksi Bitcoin.

Transaksi per detik (TPS) maksimum teoritis Bitcoin saat ini adalah 10, meskipun kenyataannya berkisar antara 3 dan 7. Bandingkan dengan pemroses pembayaran tradisional seperti VISA, yang menangani rata-rata 6.000 TPS pada tahun 2020 (berdasarkan klaim VISA atas 188 miliar transaksi per detik). tahun).

Biaya transaksi Bitcoin dapat sangat bervariasi tergantung pada permintaan saat ini untuk menggunakan jaringan. Misalnya, pada tanggal 20 April 2021 biaya transaksi rata-rata melebihi $50, sedangkan pada tanggal 9 Agustus 2021, rata-rata biaya transaksinya sekitar $2,50. Untuk transaksi besar, seperti transfer bank atau pengiriman uang internasional, kecepatan dan biaya Bitcoin sebanding atau lebih unggul dibandingkan alternatif lainnya. Namun jika Bitcoin ingin digunakan untuk pembayaran sehari-hari (yang disebut transaksi mikro, misalnya secangkir kopi, bensin), kecepatan transaksi harus meningkat dan biaya transaksi harus turun drastis.

Jaringan Petir secara teori

Untuk memahami cara kerja LN, dan tantangan LN saat ini, kita perlu membicarakan tentang Bitcoin. Faktor pembatas jaringan Bitcoin adalah setiap transaksi harus dimasukkan ke dalam blok rantai baru. Karena blok ditambahkan ke rantai kira-kira setiap 10 menit, terdapat batasan ketat pada jumlah transaksi yang mungkin dilakukan tanpa mengubah protokol Bitcoin secara signifikan.

Perdebatan mengenai pengerjaan ulang protokol Bitcoin secara besar-besaran telah terjadi sebelumnya dan mengakibatkan 'hard fork', terutama penciptaan Bitcoin Cash. Lightning Network, alih-alih membuat blockchain baru, adalah solusi lapisan-2. Ini berarti bahwa hal ini memungkinkan protokol Bitcoin untuk tetap relatif tidak berubah, namun memberikan manfaat yang dapat diperoleh dari pengerjaan ulang besar-besaran -- setidaknya secara teori.

LN bekerja dengan menyiapkan saluran pembayaran antara dua pihak, di mana hanya transaksi pertama dan terakhir yang dimasukkan ke dalam blockchain Bitcoin. Sejumlah transaksi antara yang pertama dan terakhir akan terjadi secara off-chain, yang berarti transaksi tersebut tidak dibatasi oleh protokol Bitcoin.

Untuk memulai saluran pembayaran, kedua belah pihak harus menyetorkan sejumlah Bitcoin. Bitcoin tersebut ditahan dan tidak dapat dilepaskan selama saluran pembayaran tetap terbuka. Jumlah total Bitcoin yang dapat ditransfer melalui saluran ini adalah jumlah total Bitcoin yang dikomit. Mari kita lihat contoh untuk menggambarkan hal ini:

Alice dan Bob ingin membentuk saluran pembayaran satu sama lain. Alice memberikan 10 BTC dan Bob memasukkan 5 BTC ke saluran pembayaran. Transaksi pembukaan yang menampung 15 BTC gabungan Alice dan Bob dimasukkan ke dalam blockchain Bitcoin. Setelah transaksi tersebut ditambahkan ke blockchain, yang dapat memakan waktu 10 menit atau lebih, Alice dan Bob dapat bertransaksi dalam jumlah yang tidak terbatas dengan kecepatan yang jauh lebih cepat dan secara efektif tanpa biaya. Di bawah ini adalah transaksi antara Alice dan Bob:

  1. Alice mengirimkan Bob 1 BTC Alice: 9 BTC Bob: 6 BTC

  2. Alice mengirimkan Bob 2 BTC Alice: 7 BTC Bob: 8 BTC

  3. Bob mengirimkan Alice 3 BTC Alice: 10 BTC Bob: 5 BTC

  4. Bob mengirimkan Alice 1 BTC Alice: 11 BTC Bob: 4 BTC

Ketika salah satu atau keduanya ingin menutup saluran, transaksi penutupan dikirim ke blockchain dengan saldo akhir Alice dan Bob. Dalam hal ini, saldo akhir Alice adalah 11 BTC dan saldo Bob adalah 4 BTC.

Bagaimana jika Alice ingin bertransaksi dengan Carol? Kebetulan Bob mempunyai saluran pembayaran dengan Carol, jadi Alice bertransaksi dengan Bob, dan Bob meneruskan transaksi tersebut ke Carol. Perhatikan bahwa dalam skenario ini, Bob mungkin mengambil sedikit pembayaran untuk meneruskan transaksi. Seiring berjalannya waktu, berdasarkan teori enam derajat pemisahan, LN mengizinkan Alice untuk bertransaksi dengan orang lain.

Jaringan Petir dalam praktiknya

LN merupakan protokol baru yang masih dalam tahap pengujian. Oleh karena itu, ia dihadapkan pada banyak tantangan mulai dari kegunaan hingga keamanan.

Ada kekhawatiran tentang betapa mudahnya menjalankan node LN. Agar LN berhasil, diperlukan jaringan node Bitcoin yang kuat yang menjalankan protokol LN. Menjalankan node LN bisa jadi cukup sulit dan bisa jadi terdapat masalah insentif pembayaran untuk menjalankan node yang lebih kecil. Dapat dikatakan bahwa menjalankan LN tidak jauh lebih sulit daripada menjalankan node bitcoin secara penuh. Namun, karena LN sebagian besar ditargetkan pada transaksi mikro, pengalaman sehari-hari dengan LN akan dilakukan melalui dompet yang mendukung LN. Dompet yang mendukung LN tidak terlalu ramah pengguna, dan sebagian besar dompet ini memperingatkan bahwa karena masih dalam tahap pengujian publik, disarankan untuk tidak menyetor dana terlalu banyak. Berbeda dengan beberapa dompet Bitcoin yang lebih mapan, kebaruan dompet yang mendukung LN ini berarti ada trade-off antara versi kustodian dan non-penahanan. Dompet LN non-penahanan agak sulit digunakan -- lebih membingungkan dan kurang jelas. Opsi kustodian lebih mudah digunakan, tetapi Anda harus bergantung pada pihak ketiga dengan Bitcoin Anda.

Terakhir, dan yang paling mengkhawatirkan, LN dihadapkan pada sejumlah kerentanan. Ini termasuk:

  • Serangan duka: Dana tidak hilang, namun menyebabkan dana Lightning korban dibekukan sehingga saluran pembayaran tidak dapat memproses transaksi apa pun.

  • Banjir dan penjarahan: Seorang penyerang memaksa banyak korban untuk mengklaim dana mereka dari blockchain pada saat yang bersamaan (banjir). Penyerang memanfaatkan kemacetan ini untuk mencuri dana yang tidak dapat diklaim sebelum batas waktu (penjarahan).

  • Serangan pelebaran waktu: Penyerang memperpanjang waktu korban menyadari adanya blok baru dengan menunda pengiriman blok.

  • Menyematkan serangan: Penyerang menipu korban agar menutup saluran LN mereka secara tidak benar dan mencuri transaksi individual.