شبکه لایتنینگ چیست و چطور کار میکند؟
وقتی ساتوشی ناکاموتو وایت پیپر بیت کوین را ارائه داد ایده روشی برای پرداخت الکترونیک همتا به همتا و بدون نیاز به اعتماد به شخصی ثالث را در ذهن داشت. با وجود پیشرفتهای چشمگیر شبکه بیت کوین در طی این سالها، وجود برخی مشکلات سبب شده تا آرزوی ناکاموتو تماما جامه عمل نپوشد. شبکه لایتنینگ (Lightning Network) به عنوان راه حلی برای حل این مشکلات پا به میدان نهاد. اگرچه شبکه لایتنینگ نتوانسته است پاسخی کامل به حل این مشکلات ارائه دهد اما بیشک موفق شده است تا بیت کوین را برای تراکنشهای روزمره و به عنوان ابزاری برای خرید کالا و خدمات مناسبتر سازد.
شبکه لایتنینگ چیست؟
لایتنینگ راهکاری لایه دو و خارج از شبکه (Off-chain) برای شبکه بیت کوین است که با میسر ساختن کانالهای پرداخت، امکان پرداخت امن دو طرفه بین دو یا چند نفر را بدون نیاز به اعتماد فراهم میکند. با توجه به سرعت بالا و کارمزد کم این راهکار، این شیوه میتواند گزینه مناسبی برای پرداختهای خرد روزانه باشد. همچنین از آن جا که این راهکار، تنها در هنگام باز کردن و بستن کانال، اطلاعات را در شبکه اصلی بیت کوین ثبت میکند، میتواند منجر به کاهش بار هر چند اندک شبکه بیت کوین نیز شود.
چرا به لایتنینگ نیاز داریم؟
پاسخ کوتاه به این سوال، حل مشکل مقیاسپذیری بیت کوین و استفاده روزمره از آن در زندگی به عنوان ابزاری برای پرداخت است. دموکراتیزه کردن دسترسی به امکانات مالی در مناطق کمتر برخوردار جهان، یکی دیگر از اهدافی است که لایتنینگ به دنبال تحقق آن است. در کشوری همانند السالوادور که ۷۰ درصد تجارت در آن به وسیله پول نقد انجام میشود و بسیاری از مردم به موسسات مالی دسترسی ندارند، راهکار لایتنینگ میتواند به کمک بسیاری آید. در سمت دیگر ماجرا، نرخ انجام تراکنش در شبکه بیت کوین حداکثر ۷ تراکنش بر ثانیه است و این مانعی جدی بر سر همهگیری استفاده از آن است (در مقام مقایسه شرکت خدمات پرداخت ویزا قادر به پردازش بیش از ۵۰۰۰۰۰ تراکنش بر ثانیه است).
تاریخچه شبکه لایتنینگ
پس از اینکه ایده بیت کوین توسط ساتوشی ناکاموتو در سال ۲۰۰۸ مطرح شد، یکی از اولین نظراتی که مطرح شد (توسط جیمز دانلد) حاوی این جمله بود: «آن طور که من از پیشنهادت دستگیرم شد، نمیتواند به مقیاس مورد نظرت برسد». ۱۳ سال بعد هنوز این مشکل پابرجاست.
اولین نشانههای شبکه لایتنینگ را میتوان در ریشه مفهومی به اسم «کانال پرداخت» (Payment Channel) جستجو کرد که عمری به قدمت شبکه بیت کوین دارد. کانال پرداخت در واقع موجودی بیت کوین بین دو آدرس است که بقیه جهان از آن بیخبرند و مهمتر از آن میتواند مقادیر آن بارها آپدیت شود بی آن که نیاز به تراکنشی بر روی شبکه اصلی باشد. وقتی موجودی یک طرف زیاد شود، به همان مقدار از موجودی طرف مقابل کاسته میشود. این به دو طرف اجازه میدهد تا بارها برای یکدیگر تراکنش بفرستند بی آن که باری به شبکه اصلی بیافزایند. پس از اینکه تراکنشهای مدنظر بین دو آدرس انجام پذیرفت، میتوان با یک تراکنش در شبکه اصلی، حسابها تسویه کرد و کانال پرداخت را بست. از آن جا که تراکنشهای درون کانال پرداخت، خارج از شبکه (Off-Chain) انجام میپذیرند، هزینه تراکنش اندکی دارند و سریعتر هستند چرا که نیازی به ماینینگ و تشکیل چند بلوک متعاقب برای تایید نیست.
ایده این کار در اولین نرم افزار توسعه یافته برای بیت کوین توسط ناکاموتو در سال ۲۰۰۹ وجود داشت؛ در چند خط کد و از نسخه ۰.۱ نرم افزار بیت کوین برداشته شده است؛ کاربران میتوانند یک تراکنش را پیش از تایید آپدیت نمایند.
این کد حکم پیشنویسی برای اتفاقات آتی بود. ساتوشی ناکاموتو طی سالهای آتی در طی صحبتهای خصوصیاش با توسعهدهندگان نرمافزار بیت کوین جی (bitcoinj) این ایده را بیشتر بسط داد.
در طی سالهای ۲۰۱۱ تا ۲۰۱۵ چندین طراحی برای کانالهای پرداخت و پرداخت خارج از شبکه پیشنهاد شد: طراحیهایی همچون کانالهای اسپیلمن (Spilman)، آمیکو پی (Amiko Pay) که ترکیبی از تکنولوژی ریپل و بیت کوین بود، سیستم پیشنهادی منی روزنفلد (Meni Rosenfeld)، کانال پرداخت الکس اکسلراد (Alex Akselrod)، سیستم پرداخت استارتاپی سوئدی به نام استراو پی (Strawpay) و در نهایت کانال پرداخت دکر-واتنهوفر (Decker-Wattenhofer) با نام کانالهای پرداخت خرد دوپلکس (DMC). هر کدام از این روشها معایب و مزایایی داشتند؛ برخی احتیاج به تغییرات گسترده در پروتکل بیت کوین (هارد فورک) داشتند تا بتوانند عملی شوند، برخی تنها در یک جهت کار میکردند و برای انجام تراکنش در جهت مقابل احتیاج به بستن کانال فعلی و ایجاد کانال جدید بود، برخی نیاز به اعتماد به سیستم واسطه داشتند، بعضی دیگر در معرض خطر چکشخواری بیت کوین (Bitcoin Malleability) بودند و غیره. با این حال احتمالا اگر استفاده از شیوه فعلی رواج پیدا نمیکرد، یکی از راههای جایگزین میتوانست همهگیر شود. حال سوال این است که شبکه لایتنینگ دستپخت ذهن کیست؟
Thaddeus Dryja و Joseph Poon بنیانگذاران شبکه لایتنینگ
قطعات پایانی پازل در اوایل سال ۲۰۱۵ کنار هم جفت و جور شد؛ در آن زمان تادئوس درایا (Thaddeus Dryja) و جوزف پون (Joseph Poon) ایده شبکه لایتنینگ را در مقالهای منتشر کردند. این مقاله چند راهکار برای محقق کردن شبکه پرداخت کاملا بینیاز به اعتماد در خود داشت: هیچ کدام از طرفین معامله نمیتوانست بدون در معرض خطر قرار دادن پولی که در کانال قرار داده، دست به تقلب بزند. همچنین واسطههای تراکنشها نمی توانند حتی به شکلی جزئی در تراکنشها دست برند و در نهایت این پیشنهاد نیاز به تغییر کمی در پروتکل بیت کوین داشت و کاربرپسندتر بود. نوآوری کلیدی این ایده در طراحی کانال پرداخت درایا-پون بود. این کانال همانند برخی دیگر از کانالهای پیشین از تراکنشهای نیمه امضا شده که بین طرفین به اشتراک گذاشته میشوند، سود میبرد اما با افزودن گام به اشتراک گذاری هش، امکان دو طرفه بودن را به آن افزود. همچنین این طراحی از مکانیزم قراردادهای هوشمند قفل شده با هش و زمان (Hashed Timelock Contracts) و بعدها از مکانیزمهای CLTV (CheckLockTimeVerify) و CSV (CheckSequenceVerify) بهره میبرد که توسط تایر نولان (Tier Nolan) و سپس پیتر تاد (Peter Todd) پیشنهاد و به پروتکل بیت کوین افزوده شد.
لایتنینگ چگونه کار میکند؟
یکی از فناوری هایی که ساخت شبکه لایتنینگ را امکان پذیر میسازد قراردادهای قفل شده با هش و زمان و یا Hash Time Locked Contract و یا به اختصار HTLC است. این نوع قراردادها در اصل یک نوع تراکنش بیت کوین هستند که از قابلیتهای چند امضایی و قفل زمانی که از پیش در پروتوکل بیت کوین تعریف شدهاند، استفاده میکنند. در واقع HTLC فناوری جدیدی نیست و امکان ایجاد این نوع تراکنشها از قبل در بیت کوین وجود داشته است.
چند امضایی (Multi Signature) قابلیتی است که با استفاده از آن میتوان ورودی تراکنشی ایجاد کرد که به جای یک امضا به چند امضا برای انتقال بیت کوین های موجود در آن نیاز داشته باشد. با استفاده از قفل زمانی (Time Locked) هم میتوان ورودی تراکنشی ایجاد کرد که تا رسیدن به یک شماره بلاک خاص و یا استخراج تعداد معینی بلاک قابل خرج کردن نباشد. با ترکیب این دو ویژگی تراکنشهای بیت کوین میتوان یک HTLC ایجاد کرد.
با استفاده از این ویژگی میتوان مبادله بین زنجیرهای (با دیگر شبکههای منطبق با شبکه بیت کوین همچون لایت کوین) بینیاز به اعتماد انجام داد.
کاربرد شبکه لایتنینگ چیست؟
ممکن است این سوال پیش آید که کاربرد شبکه لایتنینگ چیست؟ یا چرا ما از این شبکه استفاده میکنیم. جواب این سوال یه کلمه است؛ مقیاسپذیری. ایده شبکه لایتنینگ افزایش مقیاسپذیری یک شبکه بلاکچین است. هرچند شبکه لایتنینگ برای اولین بار در شبکه بیت کوین مورد استفاده قرار گرفت اما این ایده منحصر به اولین شبکه بلاکچین نیست. سایر شبکهها مانند استلار، لایت کوین، زی کش، اتریوم و ریپل نیز میتوانند از این تکنولوژی برای ارتقا مقیاسپذیری شبکههای بلاکچین خود استفاده کنند.
هرچند این شبکه آنچنان که انتظار میرفت توسعه نیافته، اما با این وجود به استفاده بیشتر از شبکه بیت کوین کمک کرده است. توسعهدهندگان این ایده، فعالان حوزه رمز ارزها را به صبر توصیه میکنند و دلیل آن را پیچیدگی بالای شبکه لایتنینگ و محدودیتهای جدی در زمان اجرای آن عنوان میکنند. به هر حال، لایتنینگ یکی از ایدههای افزایش سرعت تراکنش و کاهش زمان مورد نیاز برای ارسال تراکنش در شبکههای بلاکچین است و راهکارهای لایه دو که در این روزها مورد استفاده قرار میگیرند، در مقایسه با لایتنینگ موفقتر عمل کردهاند.
مزایای شبکه لایتنینگ
سرعت تراکنش
در صورت استفاده از شبکه لایتنینگ، نیازی نیست تا هر تراکنش در شبکه تایید شود و ما منتظر تایید آن در شبکه اصلی باشیم. در حالت عادی، در صورتی که تراکم شبکه افزایش یابد و در لحظه، تراکنشهای زیادی به شبکه ارسال شود، زمان تایید آن تراکنش افزایش خواهد یافت. اما در شبکه لایتنینگ، بلافاصله تایید خواهد شد. این اتفاق، باعث میشود تا رمز ارزها در کنار ویزا، پی پال و مسترکارت به عنوان روشی برای پرداخت مالی مورد استفاده عموم مردم قرار گیرد.
کارمزد تراکنش
تراکنشهایی که روی شبکه لایتنینگ ارسال میشود، خارج از شبکه بیت کوین بوده و در نتیجه نیازی به پرداخت کارمزد تراکنشها در شبکه بیت کوین نیست. هزینه انجام تراکنش در شبکه لایتنینگ بسیار پایین است (در حد 1 ساتوشی). این مورد یکی از مهمترین مزایای شبکه لایتنینگ است که بستری را فراهم میکند که میتوانیم از بیت کوین برای انجام خریدهای روزمره خود نیز استفاده کنیم.
مقیاسپذیری
در مورد این مزیت شبکه لایتنینگ بسیار صحبت کردیم. در واقع میتوان گفت مهمترین مزیت شبکه لایتنینگ، افزایش مقیاسپذیری شبکههای بلاک چین است. این شبکه، تعداد تراکنش در هر ثانیه یا (TPS) را افزایش میدهد و باعث میشود که شبکه بیت کوین، تعداد تراکنشهای بیشتری را در هر ثانیه پردازش کند.
حریم خصوصی
تمام تراکنشهای انجام شده در شبکه بیت کوین کاملا شفاف و قابل ردیابی است. هرچند هویت افراد در این شبکه مشخص نیست، اما تمام تراکنشهای صورت گرفته توسط تمامی آدرسهای شبکه از ابتدا ثبت شده و قابل ردیابی است. هرچند این مورد، شفافیت کل اکوسیستم را بالا میبرد اما در مواردی ممکن است به حریم خصوصی افراد لطمه وارد کند. شبکه لایتنینگ در این زمینه کاملا حافظ حریم شخصی افراد است. به جز دو تراکنش آغاز و پایان، تمامی تراکنشهای دیگر خارج از شبکه بیت کوین صورت خواهد گرفت و هیچ پیشینهای از این تراکنشها ثبت نخواهد شد. از این نظر تمامی ریزتراکنشهای صورت گرفته درون شبکه لایتنینگ غیرقابل ردیابی است.