2016-yilda oq hujjatda taklif etilgan Lightning Network (LN) — Bitcoin ustiga qurilgan 2-qavat yechimidir. LN Bitcoinning masshtablash bilan bog‘liq muammolariga, ya’ni Bitcoin tranzaksiyalarining tezligi va narxiga javoban yaratildi.

Bitcoinning hozirgi nazariy maksimal tranzaksiya tezligi (TPS) 10 ta, ammo amalda bu ko‘rsatkich 3 dan 7 tagacha. Buni 2020-yilda o‘rtacha 6 000 TPSni qayta ishlagan VISA kabi an’anaviy to‘lov protsessorlari bilan taqqoslang (VISAning yiliga 188 milliard tranzaksiya haqidagi da’vosiga asoslangan).

Bitcoin tranzaksiya komissiyalari tarmoqdan foydalanishga bo‘lgan joriy talabga qarab keskin o‘zgarishi mumkin. Masalan, 2021-yil 20-aprelda o‘rtacha tranzaksiya komissiyasi 50 dollardan oshgan bo‘lsa, 2021-yil 9-avgustda o‘rtacha komissiya taxminan 2,50 dollarni tashkil etgan. Bank o‘tkazmalari yoki xalqaro pul jo‘natmalari kabi yirik tranzaksiyalar uchun Bitcoin’ning tezligi va narxi muqobil variantlar bilan taqqoslanadigan yoki ulardan yaxshiroq. Ammo Bitcoin kundalik to‘lovlar (mikrotranzaksiyalar deb ataladi, masalan, bir finjon qahva yoki yoqilg‘i uchun to‘lov) uchun ishlatilishi kerak bo‘lsa, tranzaksiya tezligini oshirish va xarajatlarini keskin kamaytirish lozim.

Lightning Network nazariyada

LN qanday ishlashini va u duch kelayotgan joriy muammolarni tushunish uchun Bitcoin haqida gaplashishimiz kerak. Bitcoin tarmog‘ining asosiy cheklovi shundaki, har bir tranzaksiya zanjirdagi yangi blokka kiritilishi shart. Bloklar zanjirga taxminan har 10 daqiqada qo‘shilgani sababli, Bitcoin protokolini sezilarli darajada o‘zgartirmasdan amalga oshirish mumkin bo‘lgan tranzaksiyalar soni qat’iy cheklangan.

Bitcoin protokolini tubdan qayta ishlash borasidagi bahslar ilgari ham bo‘lib o‘tgan va natijada “hard fork”lar, eng mashhuri Bitcoin Cash’ning yaratilishi, yuz bergan. Lightning Network yangi blokcheyn yaratish o‘rniga, ikkinchi qatlam yechimi hisoblanadi. Ya’ni u Bitcoin protokolini nisbatan o‘zgartirmay saqlash bilan birga, tubdan qayta ishlash berishi mumkin bo‘lgan afzalliklarni — hech bo‘lmaganda nazariy jihatdan — taqdim etadi.

LN ikki tomon o‘rtasida to‘lov kanalini ochish orqali ishlaydi. Bunda faqat birinchi va oxirgi tranzaksiya Bitcoin blokcheyniga yoziladi. Birinchi va oxirgi tranzaksiyalar orasidagi istalgan miqdordagi tranzaksiyalar zanjirdan tashqarida amalga oshadi, ya’ni ular Bitcoin protokoli bilan cheklanmaydi.

To‘lov kanalini ochish uchun ikkala tomon ham ma’lum miqdordagi Bitcoin’ni garovga qo‘yishi kerak. To‘lov kanali ochiq turgan paytda bu Bitcoin ushlab turiladi va uni yechib olib bo‘lmaydi. Kanal orqali o‘tkazilishi mumkin bo‘lgan Bitcoin’ning jami miqdori garovga qo‘yilgan Bitcoin’ning umumiy miqdoriga teng. Buni tushuntirish uchun bir misolni ko‘rib chiqamiz:

Alice va Bob o‘zaro to‘lov kanali ochmoqchi. Alice kanalga 10 BTC, Bob esa 5 BTC qo‘yadi. Alice va Bobning jami 15 BTC mablag‘ini ushlab turadigan kanalni ochish tranzaksiyasi Bitcoin blokcheyniga yoziladi. Bu tranzaksiya blokcheynga qo‘shilgach, bunga 10 daqiqa yoki undan ko‘proq vaqt ketishi mumkin, Alice va Bob istalgancha ko‘p marta, ancha tez va deyarli hech qanday xarajatsiz tranzaksiya amalga oshirishi mumkin. Quyida Alice va Bob o‘rtasidagi tranzaksiyalar keltirilgan:

  1. Alice Bobga 1 BTC yuboradi Alice: 9 BTC Bob: 6 BTC

  2. Alice Bobga 2 BTC yuboradi Alice: 7 BTC Bob: 8 BTC

  3. Bob Alice’ga 3 BTC yuboradi Alice: 10 BTC Bob: 5 BTC

  4. Bob Alice’ga 1 BTC yuboradi Alice: 11 BTC Bob: 4 BTC

Tomonlardan biri yoki ikkalasi kanalni yopmoqchi bo‘lganda, Alice va Bobning yakuniy balanslari ko‘rsatilgan yopish tranzaksiyasi blokcheynga yuboriladi. Bu holatda Alice’ning yakuniy balansi 11 BTC, Bobniki esa 4 BTC bo‘ladi.

Agar Alice Carol bilan tranzaksiya qilmoqchi bo‘lsa-chi? Bobning Carol bilan to‘lov kanali bor, shuning uchun Alice Bob bilan tranzaksiya qiladi, Bob esa tranzaksiyani Carolga uzatadi. Bu vaziyatda Bob tranzaksiyani uzatgani uchun kichik haq olishi mumkin. Vaqt o‘tishi bilan, olti darajali ajralish nazariyasiga ko‘ra, LN Alice’ga istalgan boshqa odam bilan tranzaksiya qilish imkonini beradi.

Lightning Network amalda

LN — hozircha sinov bosqichida bo‘lgan yangi protokol. Shu sababli u foydalanish qulayligidan tortib xavfsizlikkacha bo‘lgan ko‘plab muammolarga duch kelmoqda.

LN tugunini ishga tushirish qanchalik osonligi borasida xavotirlar mavjud. LN muvaffaqiyatli bo‘lishi uchun LN protokolida ishlaydigan Bitcoin tugunlarining mustahkam tarmog‘i kerak. LN tugunini ishga tushirish ancha qiyin bo‘lishi mumkin va kichikroq tugunlarni ishga tushirish uchun to‘lov rag‘batlari bilan bog‘liq muammolar ham yuzaga kelishi ehtimol. Biroq LN’ni ishga tushirish to‘liq Bitcoin tugunini ishga tushirishdan unchalik qiyin emas, deb ta’kidlash mumkin. Shunga qaramay, LN asosan mikrotranzaksiyalar uchun mo‘ljallanganligi sababli, undan kundalik foydalanish LN’ni qo‘llaydigan hamyonlar orqali amalga oshadi. LN’ni qo‘llaydigan hamyonlardan foydalanish unchalik qulay emas va ularning aksariyati hali ham ommaviy sinov bosqichida ekani sababli, ularga katta mablag‘ kiritmaslikni tavsiya qiladi. Ancha ommalashgan Bitcoin hamyonlaridan farqli ravishda, LN’ni qo‘llaydigan hamyonlarning yangiligi saqlash xizmati mavjud va bunday xizmatsiz versiyalar o‘rtasida murosa tanlovini keltirib chiqaradi. Saqlash xizmatisiz LN hamyonlaridan foydalanish biroz qiyinroq — ular chalkashroq va tushunish oson emas. Saqlash xizmati mavjud variantlardan foydalanish osonroq, ammo Bitcoin’ingizni uchinchi tomonga ishonib topshirishingiz kerak bo‘ladi.

Nihoyat, eng tashvishlanarlisi, LN bir qator zaifliklarga duch kelgan. Ular jumlasiga quyidagilar kiradi:

  • Jabrlanuvchini qiynash hujumlari: Mablag‘lar yo‘qolmaydi, ammo jabrlanuvchining Lightning mablag‘lari muzlatib qo‘yiladi va to‘lov kanali hech qanday tranzaksiyani amalga oshirolmaydi.

  • To‘fon va talon-toroj: Hujumchi ko‘plab jabrlanuvchilarni mablag‘larini bir vaqtning o‘zida blokcheyndan talab qilib olishga majbur qiladi (to‘fon). Hujumchi bu tirbandlikdan foydalanib, muddat tugashidan oldin talab qilib olinmagan mablag‘larni o‘g‘irlaydi (talon-toroj).

  • Vaqtni cho‘zish hujumlari: Hujumchi bloklarni yetkazib berishni kechiktirish orqali jabrlanuvchining yangi bloklardan xabardor bo‘lish vaqtini uzaytiradi.

  • Kanalni bloklab qo‘yish hujumlari: Hujumchi jabrlanuvchini LN kanalini noto‘g‘ri yopishga aldab, alohida tranzaksiyalarni o‘g‘irlaydi.