شبکه لایتنینگ (Lightning) چیست؟
شبکه لایتنینگ برای تسریع در انجام تراکنشها و انجام مبادلات بیت کوین در خارج از بلاک چین آن ساخته شده است. برای مثال اگر من و شما هر روزه مبادلاتی را با یکدیگر داریم که این انتقالات در شبکه بلاک چین زمان و هزینه زیادی را برای ما به وجود میآورد، میتوانیم با استفاده از شبکه لایتنینگ تراکنشهای روزانه خود را سریعتر و ارزانتر انجام دهیم. لایتنینگ بر همین اساس ساخته شده است و میخواهد مقیاسپذیری شبکه بیت کوین را افزایش دهد.
شبکه لایتنینگ برای چیست؟
شبکه بلاک چین کند است و بنابراین هزینه فعالیت در آن گران تمام میشود. اگر من برای شما مقداری بیت کوین بفرستم شما آن را بعد از چندین ساعت دریافت میکنید و همچنین باید کارمزد سنگینی هم برای انجام تراکنش بپردازید. چگونه با چنین اعتباری بلاک چین دنیا را خواهد گرفت؟
هر ایدهای که مقیاسپذیری بلاک چینها را حل کند ارزش توجه، زمان و تلاش بر روی آن را دارد و شبکه لایتنینگ (Lightning) یکی از این ایدههاست، اما قبل از اینکه راه حل را درک کنیم باید ابتدا مشکل را بشناسیم. اگر شما قبل از خواندن این مطلب از این مشکل اطلاعات دارید، میتوانید از این قسمت صرف نظر کرده و به قسمت بعدی بروید.
چرا بلاک چینها کند هستند؟
به بلاک چین مانند یک دفتر ثبت نگاه کنید. این دفتر ثبت چندین صفحه (بلوک) دارد، که در هر صفحه چندین تراکنش وجود دارد. به محض اینکه یک صفحه با تراکنش پر شد، قبل از اینکه تراکنشها بخواهند در صفحه بعد ثبت شوند؛ باید آنرا به دفتر ثبت اضافه کنید و در نتیجه قبل از اینکه یک صفحه (بلوک) بتواند به یک دفتر ثبت (زنجیر)اضافه شود، تعدادی پردازش باید انجام شود تا مطمئن شویم که همه با محتوای آنها موافق هستند که این پردازشها برای هر بلوک تقریباً ۱۰ دقیقه (برای بلاک چین بیت کوین) طول میکشد.
فرض کنید که شما یک بیت کوین را برای دوستتان فرستادید، تراکنش چیزی شبیه این است:
یک تراکنش شامل اطلاعاتی درباره فرستنده و گیرنده، مقدار آن و هزینه کارمزد تراکنش است.
یک لحظه صبر کنید، کارمزد تراکنش چیست!؟
بله، این یک هزینه اضافی است. شما این هزینه را برای انگیزه دادن به استخراجکننده پرداخت میکنید تا در صورت امکان، تراکنش شما را در یک بلوک قرار دهد و هیچ قیمت از قبل تعیین شدهای وجود ندارد و این مساله کاملاً وابسته به این است که شما چه مقدار میخواهید هزینه بپردازید تا پردازش سریعتر انجام شود و در نتیجه پرداخت هزینه بیشتر باعث میشود تراکنش شما سریعتر انجام شود.
در هر لحظه، چندین تراکنش میتوانند در صفحه فعلی ثبت شوند و استخراجکنندگان، یعنی کامپیوترهایی که در شبکه بلاک چین کار میکنند، تصمیم میگیرند که چه تراکنشی باید وارد بلوک فعلی شود.
برای کمک به تصمیمگیری، آنها نگاه میکنند تا ببینند کدام تراکنش بیشترین پاداش را برای آنها دارد و به این معنی است که تراکنشهایی که کارمزد بیشتری دارند در اولویت قرار میگیرند.
اگر تعداد زیادی تراکنش با کارمزدی بالاتر از تراکنش شما وجود داشت که باید در یک بلوک پر شود، تراکنش شما در یک صف به حالت انتظار قرار خواهد گرفت و این انتظار میتواند از چند دقیقه تا چند ساعت و گاهی اوقات تا چند روز باشد و درنتیجه هرچه هزینه بیشتری را برای کارمزد تراکنش بپردازید، تراکنشتان خیلی سریعتر پردازش میشود.
به همین دلیل است که بلاک چین کند است و برای هر کس که شروع به کار با آن کند، گران تمام میشود. به صورت ایدهآل پذیرش بلاک چین با روی دادن تراکنشهای بیشتر بالاتر میرود، اما از طرفی دیگر هرچه تعداد تراکنشها بالا برود شبکه کندتر میشود و این خود مانعی برای پذیرش آن میشود؛ و این مساله یک پارادوکس است!
شبکه لایتنینگ (LN) یک راه حل بالقوه برای این مشکل است.
شبکه لایتنینگ چیست؟
ایده LN این است که احتیاجی به ثبت همه تراکنشها در بلاک چین نیست. تصور کنید که من و شما میخواهیم چندین بار بین خودمان داد و ستد انجام بدهیم؛ در این مورد ما میتوانیم ثبت تراکنشها در بلاک چین را دور بزنیم و آنها را به بیرون از زنجیر انتقال بدهیم.
در سادهترین صورت، میخواهیم ببینیم این شبکه چطور کار میکند.
ما یک کانال پرداخت بین خودمان باز میکنیم سپس آن را در بلاک چین ثبت خواهیم کرد، اکنون من و شما میتوانیم هر بار که میخواهیم از طریق این کانال پرداخت با هم دادوستد انجام دهیم، میتوانیم کانال را برای هر ساعت، روز، هفته، یا سالها باز نگه داریم؛ تنها موقعی که با بلاک چین سروکار داشته باشیم باید کانال را ببندیم تا آخرین وضعیت تراکنشی که در این کانال اتفاق افتاده است روی بلاک چین ثبت شود.
با استفاده از ایده کانال پرداخت، میتوانیم شبکهای از کانالهای پرداخت ایجاد کنیم که به ندرت نیاز به انجام تراکنش روی بلاک چین باشد.
تصور کنید که سه شخصیت به نامهای زان (Xan)، یلنا (Yelena)، زکا (Zeka) وجود دارند.
اگر Xan و Yelena یک کانال پرداختی بین خود باز کنند و Yelena و Zeka بین خودشان یک کانال پرداخت باز کنند، آنگاه Xan میتواند به Zeka از طریق Yelena پول ارسال کند. فرض کنید Xan میخواهد دو بیت کوین به Zaka ارسال کند، Yelena دو بیت کوین به Zeka ارسال میکند و سپس Xan دو بیت کوین را به Yelena بر میگرداند.
این ایده شبکه لایتنینگ است. چون شما نمیخواهید اغلب با بلاک چین کار کنید، تراکنشها در شبکه Lightning میتواند با سرعت نور انجام شود. همان طور که احتمالاً تا الان حدس زده اید، همه این کارهای خارق العاده میتواند در کانال پرداخت انجام شود. بیایید درباره این تکنیکهای خارق العاده بیشتر یاد بگیریم.
کانالهای پرداخت چیست؟
این کانال شبیه یک صندوق امانت امن است، جایی که دو نفر مقدار مساوی پول را در آن امانت میگذارند و هر کدام یک قفل روی آن قرار میدهد.
این کار یعنی امانت گذاشتن مقدار مساوی پول در صندوقی که روی بلاک چین ثبت شده است به منزله شروع یک تراکنش است.پس از آن یک کانال پرداخت بین دو نفر باز میشود.
ایده پشت قفل کردن پول در یک صندوق این است که هر فردی نتواند بدون اجازه فرد دیگر پول را خرج کند. پول داخل صندوق برای دادوستد بین یکدیگر استفاده میشود.
فرض کنید Xan و Yelena هر کدام ۱۰ بیت کوین را داخل یک صندوق سرمایهگذاری میکنند و اکنون اگر Xan بخواهد دو بیت کوین به Yelena ارسال کند، چطور باید این کار را انجام دهد؟
برای انجام این کار، او تعهد مالکیتی برای دو عدد از بیت کوینهایش در صندوق فعلی را به Yelena انتقال میدهد. بعد از انتقال این تعهد، اگر صندوق باز شود، Xan تعداد ۸ بیت کوین را میتواند از صندوق بردارد و Yelena میتواند ۱۲ بیت کوین را درخواست کند.
اما آنها نمیخواهند صندوق را باز کنند چون آنها میخواهند داد و ستد بین خودشان را ادامه بدهند. این یکی از زیباییهای این طرح است.
حال اگر روز بعد Yelena یک بیت کوین را به Xan بفرستد، او هم همین کار را انجام میدهد و تعهد مالکیت یکی از بیت کوینهایش را به Xan انتقال میدهد.
بعد از این دو تراکنش، اگر صندوق باز شد، Xan میتواند درخواست ۹ بیت کوین بکند و Yelena هم میتواند ۱۱ بیت کوین را درخواست کند.
برای اینکه ببینید که تراکنشها چطور بیرون از زنجیر اجرا میشوند، شکل زیر را ببینید.
بطور خلاصه، کانال پرداخت چیزی به جز جمع آوری پول در یک صندوق نیست، منتقل کردن تعهد مالکیت پولها، شکلی از یک توافق است و هرکدام از دو شخص Xan یا Yelena اگر بخواهند کانال را ببندد، میتوانند اینکار را انجام دهند.
بستن یک کانال به این معنی است که یک صندوق را باز کرده و مقداری پول از آن برداشتهایم، باز کردن صندوق روی بلاک چین انجام میشود و مبلغی که هر شخص مالکیت آن را در صندوق دارد، برای همیشه بر روی دفتر عمومیبلاک چین ثبت خواهد شد.
کانالهای پرداخت چطور کار میکنند.
اما این تعریف نمیتواند قابلیتهای واقعی این کانالها را نشان دهد. قدرت واقعی آنها وقتی است که دو یا چند کانال پرداخت برای ایجاد یک شبکه Lightning با هم کار میکند.
کلیت آن را درک کردید، پس حالا بیایید کارکرد واقعی آن را با هم بررسی کنیم
LN با استفاده از تعهد انتقال مالکیت، ارزشها را از شخصی به شخص دیگر منتقل میکند. این مفهوم کمیپیچیده است، به همین دلیل مثل همیشه از یک مثال برای درک این مفهوم استفاده میکنیم. فرض کنید سه نفر به نامهای Xan ،Yelena ،Zeka وجود دارند، به طوری که یک کانال پرداخت بین Xan و Yelena باز شده و کانال دیگری بین Yelena و Zeke باز شده است. دقت کنید که بین Xan و Zeke هیچ کانال پرداختی باز نشده است؛ در چنین شرایطی اگر Xan بخواهد ۲ بیت کوین را به Zeke انتقال دهد، میتواند از کانال پرداختی که بین Yelena باز است برای انجام اینکار استفاده کند. این کار چگونه انجام میشود؟
Xan از Yelena تقاضای انتقال تعهد ۲ بیت کوین را به Zeke روی کانال پرداخت Zeke-Yelena میکند و سپس او به Yelena روی کانال پرداخت Xan-Yelena، دو بیت کوین را بر میگرداند.
با استفاده از چنین شبکه ای از کانالهای پرداخت، مقدار زیادی از تراکنشها میتوانند از بلاک چین خارج و روی زنجیر انتقال پیدا کنند، بنابراین پهنای باند زنجیرها آزاد میشود. با استفاده از شبکهای از کانالهای پرداخت، میلیونها تراکنش میتوانند اتفاق بیافتند و همچنین تراکنشها میتوانند بدون دریافت کارمزد سنگین انجام شود و این مفهوم شبکه لایتنینگ است.