شبکه (نتورک) لایتنینگ بیت کوین چیست و چطور کار می‌کند؟

شبکه (نتورک) لایتنینگ بیت کوین چیست و چطور کار می‌کند؟

لینک صفحه حلیه آقامیری

شبکه لایتنینگ (Lightning Network) یک راه‌حل بهبود مقیاس پذیری بیت کوین است. اما لایتنینگ نتورک چگونه کار می‌کند و چه مزایا و معایبی دارد؟

رمز ارزها ویژگی‌های بسیار منحصربه‌فردی دارند. نمی‌توان آن‌ها را به راحتی هک کرد یا شبکه‌شان را از کار انداخت و هر کسی می‌تواند از ارزهای دیجیتال برای انتقال ارزش در سراسر دنیا بدون نیاز به دخالت یک شخص ثالت استفاده کند. برای پایدار باقی ماندن این ویژگی‌ها، باید بین آن‌ها سبک سنگین کرد. از آنجایی که نودهای زیادی مسئول اداره شبکه یک رمز ارز هستند (شبکه غیر متمرکز است)، توان عملیاتی محدود است. در نتیجه، تعداد تراکنش‌های پردازش‌شده در ثانیه (TPS) برای بلاک چینی مانند بیت کوین که هدف آن پذیرش توسط اکثریت است، پایین خواهد بود. برای غلبه بر محدودیت ذاتی فناوری بلاک چین، چندین راه‌حل مقیاس پذیری از جمله لایتنینگ نتورک جهت افزایش تعداد تراکنش‌های قابل پردازش در شبکه معرفی شده است. در این مطلب، نگاه عمیقی به شبکه لایتنینگ (Lightning Network) در پروتکل بیت کوین خواهیم انداخت.

شبکه لایتنینگ چیست؟

لایتنینگ نتورک شبکه‌ای است که با هدف تسهیل تراکنش‌های همتابه‌همتا (P2P) روی یک بلاک چین قرار گرفته است. شبکه Lightning مختص بیت کوین نیست و دیگر ارزهای دیجیتالی نظیر لایت کوین، اتریوم، ریپل، زدکش و استلار نیز از آن استفاده می‌کنند.

شاید برایتان سوال شده باشد که «روی یک بلاک چین قرار گرفته است» یعنی چه؟ به لایتنینگ نتورک راه‌حل برون زنجیره‌ای (Off-Chain) یا لایه دو (Layer Two) نیز می‌گویند. این شبکه به افراد اجازه می‌دهد تا بدون نیاز به ثبت تمام تراکنش‌ها در بلاک چین، نقل و انتقالات را انجام دهند. شبکه لایتنینگ از شبکه بیت کوین جدا است و نودها و نرم‌افزار مخصوص خودش را دارد، اما در هر حال با زنجیره اصلی این ارز دیجیتال در ارتباط است. برای ورود یا خروج از شبکه Lightning، نیازمند ایجاد تراکنش‌های خاصی در بلاک چین هستید.

کاری که در حقیقت با تراکنش اولیه‌تان انجام می‌دهید، ساخت نوعی قرارداد هوشمند (Smart Contract) با دیگر کاربران است. در ادامه، با جزئیات بیشتری به این موضوع خواهیم پرداخت، اما در این قسمت، اسمارت کانترکت را شبیه به نگهداری یک دفتر کل (Ledger) خصوصی با دیگر کاربران در نظر بگیرید. شما قادر به نوشتن تعداد بالایی تراکنش در این دفتر کل هستید. این تراکنش‌ها تنها برای شما و همتایتان قابل مشاهده است، اما هیچکدام از شما به‌جهت ویژگی‌های خاصی که در این ساختار وجود دارد، قابلیت تقلب ندارید.

این دفتر کل کوچک، «کانال (Channel)» نام دارد. فرض کنید باب و آلیس هر کدام 5 بیت کوین را وارد این قرارداد هوشمند کرده‌اند. در کانال آن‌ها، دارایی هر کدام 5 واحد رمز ارز BTC است. سپس آلیس می‌تواند در این دفتر کل پیام «1 بیت کوین به باب بفرست» را بنویسد. اکنون باب 6 بیت کوین و آلیس 4 بیت کوین دارد. سپس، باب می‌خواهد 2 واحد BTC را چندی بعد برای آلیس بفرستد و موجود آلیس را به 6 و موجودی خود را به 4 واحد رمز ارز BTC تغییر دهد. امکان ادامه این روند همچنان وجود دارد.

حال در هر زمانی، باب و آلیس می‌توانند وضعیت فعلی کانال خود را در بلاک چین منتشر کنند. در آن مرحله، موجودی هر طرف کانال به طرفین مربوط به خود در زنجیره تخصیص داده می‌شود.

ایده پشت توسعه این راهکار ساده است: ما مجبور به ثبت تک تک معاملات در بلاک چین بیت کوین نیستیم. همین موضوع سبب شده تراکنش‌های لایتنینگ همانند نامشان به صورت برق‌آسایی سریع باشند. در این شبکه نیازمند انتظار برای تایید بلاک نیستید و پرداخت‌ها متناسب با سرعت اینترنت شما انجام می‌شوند.

چرا شبکه لایتنینگ برای بیت کوین ضروری و لازم است؟

تا به امروز، لایتنینگ نتورک یا به طور خلاصه LN، یکی از معقول‌ترین رویکردهای مقیاس پذیری شبکه بیت کوین بوده است. انجام تغییرات هماهنگ‌شده در چنین اکوسیستم گسترده‌ای دشوار است و ریسک بالقوه هارد فورک (Hard Fork) و باگ‌های فاجعه‌آمیز را به‌همراه دارد. پس به‌خاطر وجود ارزش بالا، تجربه و آزمایش شدیدا خطرناک است.

حال زمانی که این آزمایش را از بلاک چین دور کنید، انعطاف‌پذیری بیشتر می‌شود. بنابراین اگر اتفاق ناگواری رخ دهد، هیچ تاثیری بر شبکه اصلی بیت کوین نخواهد گذاشت. راه‌حل‌های لایه دو، هیچ کدام از فرضیات امنیتی که باعث فعالیت این شبکه به مدت بیش از 10 سال شده است را تعضیف نمی‌کنند.

هیچ اجباری هم برای استفاده از این راه‌حل جدید وجود ندارد. تراکنش‌های درون زنجیره‌ای همچنان به کار عادی خود ادامه خواهند داد، اما اکنون گزینه برون زنجیره‌ای نیز برای نقل و انتقالات ایجاد شده است. استفاده از شبکه لایتنینگ مزایای متعددی برای بیت کوین دارد. در ادامه به بررسی برخی از مزیت‌های اصلی لایتنینگ نتورک می‌پردازیم.

مقیاس پذیری (Scalability)

بلاک‌های بیت کوین تقریبا هر 10 دقیقه یک‌بار تولید شده و قادر به نگهداری تعداد زیادی تراکنش در خود هستند. فضای بلوک یک منبع کمیاب است، بنابراین برای سریع‌تر انجام شدن تراکنش‌تان، باید کارمزد بیشتری نسبت به دیگر کاربران بپردازید. ماینرها نیز بیش از هر چیزی به درآمد اهمیت می‌دهند، بنابراین ابتدا تراکنش‌های دارای کارمزد بالاتر را انتخاب می‌کنند.

زمانی که کاربران زیادی برای ارسال هم‌زمان تراکنش وجود نداشته باشد، مشکل خاصی پیش نخواهد آمد. شما نیز می‌توانید با تعیین کارمزد پایین، نفر بعدی برای تایید تراکنش‌تان در بلاک باشید. اما زمانی که تعداد افراد خواهان ارسال ارز دیجیتال به‌طور هم‌زمان در شبکه بیشتر می‌شود، متوسط کارمزد نیز شدیدا افزایش می‌یابد. در برخی موارد، این کارمزد حتی به بالای 5 دلار رسیده است. در جریان بازار گاوی سال 2017 کارمزد حتی به رقم باورنکردنی 50 دلار رسید!

متوسط کارمزد بیت کوین
متوسط کارمزد بیت کوین

این مقدار شاید برای تراکنش‌های هزاران دلاری مقدار ناچیزی باشد، اما در پرداخت‌های کوچک‌تر مبلغ بالایی است. چه کسی حاضر به پرداخت 5 دلار کارمزد برای یک قهوه 3 دلاری است؟

در شبکه لایتنینگ شما باید دو کارمزد، یکی برای باز کردن کانال و دیگری برای بستن آن، پرداخت کنید. اما دقت داشته باشید که پس از باز شدن کانال، شما و همتایتان قادر به ارسال هزاران تراکنش بدون پرداخت کارمزد هستید. پس از اتمام معامله، تنها باید وضعیت نهایی را در بلاک چین منتشر کنید.

در چشم‌انداز بزرگتر، اگر کاربران بیشتری از راه‌حل‌های برون شبکه‌ای مانند لایتنینگ نتورک استفاده کنند، فضای بلاک کارآمدتر خواهد شد. نقل و انتقالات کم ارزش و مکرر را می‌توان در کانال‌های پرداخت انجام داد و در کنار آن، فضای بلوک را برای تراکنش‌های بزرگتر و باز و بسته کردن کانال به‌کار برد. این امر بلاک چین را در دسترس کاربران بیشتری قرار داده و افزایش مقیاس در بلند مدت را به‌همراه خواهد داشت.

میکروپیمنت‌ها یا پرداخت‌های خرد (Micropayments)

در هر تراکنش، مقدار حداقلی بیت کوین برای ارسال تقریبا 0.00000546 واحد است. در زمان نگارش این مطلب، این مقدار تقریبا 18 سنت ارزش دارد. این مقدار بیت کوین بسیار کوچک است، اما شبکه لایتنینگ به شما اجازه می‌دهد تا این محدودیت را شکسته و کوچکترین واحد موجود یعنی 0.00000001 واحد BTC برابر با یک ساتوشی را انتقال دهید.

شبکه Lightning برای پرداخت‌های خرد کارآمدتر است. کارمزد معمول تراکنش‌ها، ارسال مقادیر ناچیز روی شبکه اصلی را عملا غیر ممکن می‌کند. اما با استفاده از یک کانال، برای ارسال کسری از یک کسر بیت کوین بدون پرداخت کارمزد آزادید.

میکروپیمنت‌ها کاربردهای زیادی دارند. به عنوان مثال آن‌ها جایگزین مناسبی برای مدل‌های پرداخت اشتراکی هستند، به طوری که کاربران قادر خواهند بود در هر مرتبه استفاده از یک سرویس، مبلغی اندک پرداخت کنند.

حریم خصوصی (Privacy)

دیگر مزیت شبکه لایتنینگ، حریم خصوصی است که به کاربر ارائه می‌دهد؛ طرفین معامله نیازی به معرفی کانال خود به کل شبکه ندارند. با اینکه امکان بررسی باز و بسته شدن کانال توسط تراکنش‌ها در بلاک چین وجود دارد، اما نمی‌توان گفت که دقیقا چه اتفاقی درون کانال در حال رخ دادن است. اگر طرفین معامله کانالشان را خصوصی کنند، تنها خودشان از تراکنش‌های صورت گرفته خبر خواهند داشت.

اگر آلیس کانالی با باب و باب نیز کانالی با کارول داشته باشد، آلیس و کارول می‌توانند از طریق باب پرداخت‌هایشان را به یکدیگر ارسال کنند. حال اگر دن با کارول در ارتباط باشد، آلیس می‌تواند برای دن هم تراکنش ارسال کند. این حالت را برای شبکه رو به گسترشی از کانال‌های پرداخت تصور کنید. در این صورت، به محض بسته شدن کانال، امکان فهمیدن اینکه آلیس برای چه کسی تراکنش ارسال کرده است وجود نخواهد داشت.

شبکه لایتنینگ بیت کوین چگونه کار می‌کند؟

تا اینجا نحوه وابستگی لایتنینگ نتورک به کانال‌های میان نودها را توضیح دادیم. حال اجازه دهید نگاه جزئی‌تری به نحوه کار شبکه لایتنینگ بیت کوین داشته باشیم.

آدرس‌های چند امضایی (Multisignature Addresses)

یک آدرس چند امضایی یا به طور خلاصه مالتی‌سیگ (multisig)، شامل چندین کلید خصوصی (Private Key) است. در زمان ساخت این نوع آدرس، تعداد کلیدهای خصوصی نیازمند امضای تراکنش و همچنین تعداد کلیدهایی که امکان خرج کردن رمز ارز از آن‌ها وجود دارد را تعیین می‌کنید. به‌عنوان مثال، یک طرح 1 از 5 یعنی 5 آدرس قادر به تولید یک امضای معتبر هستند، اما فقط به یکی از آن‌ها نیاز است. یک طرح 2 از 3 یعنی از بین 3 کلید، تنها 2 کلید برای خرج کردن ارز دیجیتال لازم است.

برای ایجاد یک کانال، طرفین معامله باید ارزهای خود را در یک طرح 2 از 2 قفل کنند. بنابراین 2 کلید خصوصی قادر به امضای تراکنش‌ها هستند و به هر دوی آن‌ها هم برای انتقال ارزها نیاز است. دوباره باب و آلیس را در نظر بگیرید. قرار است این دو نفر طی ماه‌های آینده پرداخت‌های زیادی بین یکدیگر رد و بدل کنند، بنابراین یک کانال شبکه لایتنینگ باز می‌کنند.

فناوری چند امضایی

این فرآیند با واریز 3 واحد بیت کوین از سوی هر کدام به آدرس چند امضایی مشترک میان آن‌ها آغاز می‌شود. شایان ذکر است که باب بدون موافقت آلیس، قادر به انتقال وجوه نیست (و بالعکس).

حالا فرض کنید امکان نگهداری یک برگه کاغذ که تطبیق‌دهنده موجودی هر طرف کانال (یعنی موجودی باب و آلیس) است، وجود دارد. هر دوی آن‌ها در ابتدا 3 واحد بیت کوین دارند. اگر آلیس بخواهد یک واحد رمز ارز BTC برای باب بفرستد، می‌تواند صرفا در یادداشتی بنویسد که اکنون آلیس 2 واحد و باب 4 واحد بیت کوین دارد. موجودی‌های هر طرف را می‌توان تا زمان ارسال ارز به خارج از کانال، با همین روش پیگیری کرد.

با اینکه این روش امکان‌پذیر است، اما هیجان‌انگیز نیست. مهم‌تر اینکه در این روش، احتمال عدم همکاری افراد وجود دارد؛ فرض کنید در نهایت آلیس 6 واحد و باب 0 واحد بیت کوین داشته باشد. اگر باب نخواهد موجودی خودش را به خارج از کانال منتشر کند، در واقع چیزی هم از دست نداده است. فراموش نکنید آدرس دو امضایی است.

قراردادهای هش با محدودیت زمانی (Hash Timelock Contracts)

سیستم بالا کسل‌کننده است و نسبت به ساختارهای معتمد امروزی هم ویژگی بهتری ارائه نمی‌دهد. حالا زمانی که مکانیزمی حاصل از «قرارداد» میان باب و آلیس را معرفی کنیم، قضیه کمی جالب‌تر می‌شود. اگر هر کدام از طرفین معامله نخواهد بر اساس قوانین عمل کند، طرف دیگر همچنان راهی برای خارج کردن ارزهای خود از کانال دارد.

این مکانیسم در کانال شبکه لایتنینگ بیت کوین قرارداد هش با محدودیت زمانی یا به‌طور خلاصه HTCL نامیده می‌شود. این روش دو فناوری قفل هش یا هش لاک (HashLock) و قفل زمان یا تایم لاک (Timelock) را با یکدیگر ترکیب می‌کند، تا هرگونه رفتار مخرب ناشی از عدم همکاری طرفین در کانال‌های پرداخت اصلاح شود.

هش لاک شرطی است که روی تراکنش اعمال شده و به آن دستور می‌دهد «تنها در صورت اثبات دانستن رمز می‌توانی فلان ارز را خرج کنی». فرد فرستنده تکه‌ای داده را هش می‌کند و آن را در تراکنش ارسالی قرار می‌دهد.  گیرنده تنها زمانی قادر به خرج کردن ارز دریافتی است که داده اصلی (یعنی رمز) را ارائه کند و این رمز با هش مربوط به آن مطابق باشد. تنها حالتی هم که گیرنده می‌تواند این داده را فراهم کند، دریافت از طریق فرستنده است.

تایم لاک شرطی است که از خرج کردن ارزها پیش از موعد مقرر در شبکه لایتنینگ جلوگیری می‌کند. این موعد مقرر بر اساس زمان واقعی یا ارتفاع بلاک (Block Height) مشخص می‌شود. HTCLها از ترکیب هش لاک‌ها و تایم لاک‌ها ساخته می‌شوند. در عمل، از HTCL می‌توان برای ساخت پرداخت‌های شرطی استفاده کرد. مثلا گیرنده باید پیش از موعدد مقرر رمزی ارائه کند، در غیر این صورت فرستنده ارزها را پس خواهد گرفت. در بخش بعدی، با مثال باب و آلیس این روش را بیشتر توضیح می‌دهیم.

باز و بسته کردن کانال‌ها

گفتیم که باب و آلیس تراکنش‌هایی را برای واریز وجه به آدرس چند امضایی مشترک خود در لایتنینگ نتورک ایجاد کرده‌اند. اما این تراکنش‌ها هنوز در بلاک چین منتشر نشده‌اند. قبل از این، باید یک کار دیگر هم انجام شود.

3 کوین از باب و 3 کوین از آلیس در کانال شبکه لایتنینگ
3 بیت کوین از باب و 3 بیت کوین از آلیس

به یاد داشته باشید که تنها راه خارج کردن این بیت کوین‌ها از آدرس چند امضایی، امضا کردن تراکنش خروجی توسط باب و آلیس است. اگر آلیس بخواهد تمام 6 بیت کوین مجموع را به یک آدرس خارجی بفرستد، به تایید باب نیاز دارد. پس اول باید یک تراکنش (شامل ارسال 6 بیت کوین به آدرس مورد نظر) را با امضای خود ایجاد کند.

حالا آلیس سعی می‌کند این تراکنش را همان لحظه در بلاک چین منتشر کند، اما بدون امضای باب این تراکنش نامعتبر است. پس آلیس اول باید تراکنش تکمیل‌نشده داخل شبکه لایتنینگ را برای باب بفرستد. پس از امضا توسط باب، حالا این تراکنش معتبر می‌شود.

تا اینجا، هنوز هیچ مکانیزمی برای وادار کردن افراد به رفتار درست، ایجاد نکرده‌ایم. همانطور که پیشتر گفتیم، اگر طرف مقابل شما همکاری نکند، ارزهای شما در یک کانال شبکه لایتنینگ به دام می‌افتد. حالا برای جلوگیری از این اتفاق، به یک مکانیسم نیاز داریم.

هر یک از طرفین معامله باید رمزی ارائه کند. این رمزها را As و Bs فرض کنید. اگر این رمزها لو بروند، دیگر کارایی قبل را نخواهند داشت، بنابراین آلیس و باب فعلا آن‌ها را مخفی نگه می‌دارند. این دو جفت رمز، هش‌های مخصوص به خود را دارند: یعنی h(As) و h(Bs). حالا به‌جای به‌اشتراک‌گذاری این رمزها، آلیس و باب هش مربوط به آن‌ها را با یکدیگر به‌اشتراک می‌گذارند.

به‌اشتراگذاری هش توسط آلیس و باب
به‌اشتراگذاری هش رمزها بین آلیس و باب

آلیس و باب همچنین پیش از انتشار اولین تراکنش‌های خود به آدرس چند امضایی، به یک مجموعه تراکنش تعهد (Commitment Transaction) نیاز دارند. در صورتی که یکی از طرفین درصدد گروکشی وجوه باشد، این کار یک راه چاره محسوب می‌شود.

اگر یک کانال را مشابه آن چیزی که دفتر کل کوچک نامیدیم در نظر بگیرید، تراکنش‌های تعهد در واقع به‌روزرسانی‌هایی هستند که شما در این دفتر کل انجام می‌دهید. هر زمان که یک جفت تراکنش تعهد جدید بسازید، گویی در حال متعادل‌سازی ارزها بین طرفین معامله هستید.

تراکنش تعهد آلیس دو خروجی دارد: یک خروجی که در آدرس متعلق به خودش قرار می‌گیرد، و دیگری در یک آدرس چند امضایی جدید قفل می‌شود. سپس آلیس آن را امضا کرده و برای باب می‌فرستد.

تراکنش تعهد آلیس با دو خروجی
تراکنش تعهد آلیس با دو خروجی – یکی به آدرس خودش، دیگری در آدرس چند امضایی جدید. برای تایید اعتبار این تراکنش هنوز به امضای باب نیاز است.

باب هم همین کار را انجام می‌دهد: یک خروجی برای خودش، و دیگری درون آدرس مالتی سیگ قرار می‌گیرد. سپس آن را امضا کرده و برای آلیس می‌فرستد.

دو تراکنش مشابه تکمیل نشده
دو تراکنش بسیار مشابه تکمیل نشده داریم

در حالت معمول، آلیس می‌تواند با امضای تراکنش باب آن را معتبر کند. اما به خاطر داشته باشید این وجوه یک از آدرس 2 از 2 چند امضایی خرج می‌شوند که هنوز ارزی به آن ارسال نشده است. این حالت شبیه زمانی است که یک چک را از حسابی با موجودی صفر خرج کرده‌اید. بنابراین، این تراکنش‌ها که در واقع امضای نیمه دارند، پس از راه‌اندازی آدرس مالتی سیگ قابل استفاده خواهند بود.

آدرس‌های چند امضایی جدید (که 3 خروجی بیت کوین قرار است وارد آن‌ها شود)، یک سری ویژگی خاص دارند. اجازه دهید نگاهی به تراکنش تکمیل‌نشده‌‌ای که آلیس امضا کرد و برای باب فرستاد، بیندازیم. خروجی چند امضایی را می‌توان در شرایط زیر خرج کرد:

  • هر دوی طرفین بتوانند آن را امضا کنند.
  • باب بتواند پس از مدت مشخصی (به خاطر تایم لاک) خودش آن را خرج کند.
  • آلیس در صورت دانستن رمز Bs باب می‌تواند آن را خرج کند.

در تراکنش اولی که باب برای آلیس فرستاد:

  • هر دوی طرفین معامله می‌توانند آن را امضا کنند.
  • آلیس می‌تواند پس از مدت مشخصی خودش آن را خرج کند.
  • باب در صورت دانستن رمز As آلیس قادر به خرج کردن آن است.

دقت داشته باشید که هیچ کدام از طرفین، رمز دیگری را نمی‌داند، بنابراین گزینه 3 هنوز امکان‌پذیر نیست. نکته مهم دیگر این است که اگر یک تراکنش را امضا کنید، چون شرط خاص دیگری برای خروجی‌های طرف مقابل شما وجود ندارد، وی قادر به خرج کردن آن است. حال یا باید منتظر اتمام زمان تایم لاک باشید تا امکان خرج کردن وجوه برای شما مهیا شود، یا باید با همکاری طرف مقابل این کار را انجام دهید.

حالا می‌توانید تراکنش‌ها را در آدرس 2 از 2 چند امضایی اصلی منتشر کنید. انجام این کار بی‌خطر است، چون در صورت ترک کانال توسط طرف مقابل، امکان بازیابی ارزها وجود دارد. پس از تایید تراکنش‌ها، کانال فعالیت خودش را آغاز می‌کند. اولین جفت تراکنش‌ها وضعیت فعلی دفتر کل کوچک را نشان می‌دهند. در حال حاضر، این دفتر کل 3 بیت کوین به باب و 3 بیت کوین به آلیس می‌دهد.

زمانی که آلیس بخواهد پرداخت جدیدی به باب داشته باشد، هر دوی آن‌ها تراکنش‌های جدیدی را ساخته تا جایگزین مجموعه تراکنش‌های اولیه شوند. روند کار به صورت قبل است و این تراکنش‌ها امضای نیمه دارند، با این تفاوت که آلیس و باب برای دور بعدی تراکنش‌ها، به‌جای رمزهای قدیمی، از هش‌های جدید استفاده می‌کنند.

تراکنش باب و آلیس در شبکه لایتنینگ بیت کوین
اگر مثلا آلیس بخواهد 1 بیت کوین برای باب بفرستد، دو تراکنش جدید 2 بیت کوین به آلیس و 4 بیت کوین به باب تخصیص می‌دهند. در این صورت، موجودی طرفین آپدیت می‌شود.

هر طرف معامله می‌تواند آخرین تراکنش‌های بیت کوین صورت گرفته در کانال شبکه لایتنینگ را امضا و برای ثبت در بلاک چین منتشر کند. اما هر کسی که بخواهد این کار انجام دهد، باید منتظر پایان زمان تایم لاک بماند، در حالی که نفر دیگر می‌تواند آن را فورا خرج کند. به یاد داشته باشید وقتی باب تراکنش آلیس را امضا و منتشر می‌کند، روی خروجی در دست آلیس هیچ شرطی وجود ندارد.

هر دوی طرفین معامله می‌توانند روی بستن کانال با یکدیگر به توافق برسند، که به آن Cooperative Close می‌گویند. شاید این کار راحت‌ترین راه بازگردانی وجوه به زنجیره اصلی باشد. با این حال، اگر یکی از طرفین همکاری نکند، طرف مقابل پس از اتمام زمان تایم لاک، قادر به بازگرداندن ارزهای خود است.

شبکه لایتنینگ بیت کوین چگونه از تقلب جلوگیری می‌کند؟

شاید توانسته باشید در اینجا یک بردار حمله (Attack Vector) بیابید. بردار حمله روشی است که یک مجرم سایبری، برای دسترسی یا نفوذ به حساب‌های کاربر یا سیستم یک سازمان استفاده می‌کند.

اگر باب در حال حاضر یک بیت کوین داشته باشد، چه تضمینی وجود دارد که وی تراکنش قدیمی‌تری که در آن موجودی بیشتری داشته است را در شبکه منتشر نکند؟ باب هم‌اکنون یک تراکنش نیمه امضا شده از آلیس دارد و کافی است امضای خود رابه آن اضافه و در شبکه منتشر کند، درست است؟

هیچ چیزی جلودار باب نیست، جز این حقیقت که امکان از دست دادن تمامی موجودیش وجود دارد. فرض کنید باب یک تراکنش قدیمی دارد که در آن 1 بیت کوین به آلیس و 5 بیت کوین به آدرس چند امضایی ذکرشده ارسال کرده است.

آلیس فورا ارزهایش را دریافت می‌کند. در طرف مقابل، باب برای خرج کردن رمز ارزها از آدرس مالتی سیگ، باید منتظر اتمام زمان تایم لاک بماند. حتما شرط دیگری که گفتیم به آلیس اجازه خرج کردن سریع و فوری ارزها را می‌دهد به خاطر دارید. آلیس به رمزی نیاز دارد که آن موقع آن را نداشته است. اما الان آن را دارد؛ به محض ایجاد دور دوم تراکنش‌ها، باب آن رمز را به آلیس داده است.

بنابراین با اینکه باب باید منتظر اتمام زمان Timelock بماند، آلیس قادر به جابه‌جایی ارزهاست. این مکانیزم مبتنی بر تنبیه نشان می‌دهد که به جهت دسترسی طرف مقابل به ارزها، هیچ کسی برای تقلب حتی تلاش هم نمی‌کند.

مسیریابی پرداخت‌ها (Routing Payments)

در بخش‌های قبل کمی به این موضوع پرداختیم؛ کانال‌ها قابلیت اتصال به یکدیگر را دارند. بدون این ویژگی، شبکه لایتنینگ برای پرداخت‌های ارز دیجیتال من‌جمله بیت کوین کارساز نیست. آیا حاضرید 500 دلار را در کانالی با یک کافی‌شاپ قفل کنید تا برای چند ماه آینده روزانه قهوه دریافت کنید؟

انجام این کار اجباری نیست. اگر آلیس کانالی را با باب باز کند و باب هم در حال حاضر کانالی با کارول داشته باشد، باب می‌تواند پراخت‌های بین این دو را تسهیل کند. این کار از طریق چندین به اصطلاح «Hop» انجام می‌شود، به این معنا که آلیس قادر به ایجاد تراکنش با هر کسی است که مسیری به سمت وی وجود داشته باشد.

میسریابی پرداخت ها در شبکه لایتنینگ
در این سناریو، آلیس می‌تواند از مسیرهای مختلفی به فرانک برسد. در عمل، آلیس راحت‌ترین مسیر را انتخاب می‌کند.

واسط‌ها در نقش خودشان طی مسیریابی، ممکن است کارمزد کمی هم دریافت کنند (که البته اجباری نیست). شبکه لایتنینگ بسیار نوپا است، بنابراین بازار کارمزد هنوز جامعه عمل به خود نپوشانده است. اما اتفاق مورد انتظار، رابطه کارمزدها با تامین‌کنندگان لیکوییدیتی است.

در زنجیره تصلی، کارمزد معاملات صرفا به فضایی که تراکنش در یک بلاک اشغال می‌کند بستگی دارد. بنابراین ارزش تحت انتقال در پرداخت‌های 1 دلار یا 10 میلیون دلار، اهمیتی نداشته و کارمزد آن‌ها یکسان است. در مقابل، چیزی به‌عنوان فضای بلاک در لایتنینگ نتورک وجود ندارد. در عوض، مفهومی تحت عنوان موجودی‌های ریموت و لوکال (Local and Remote Balances) وجود دارد. موجودی لوکال یا محلی مقدار ارزی است که می‌توانید به طرف دیگر کانال بفرستید. موجودی ریموت یا از راه دور نیز مقدار ارزی است که همتایتان قادر به ارسال به شماست.

در مثال قبل، مسیر آلیس <> کارول <> فرانک را در نظر بگیرید.

موجودی کاربران
موجودی کاربران قبل و بعد از انتقال 0.3 بیت کوین از آلیس به فرانک

مسیر آلیس <> کارول و کارول <> فرانک، هر کدام اندازه یک واحد بیت کوین ظرفیت دارند. موجودی لوکال آلیس 0.7 واحد BTC است. اگر همین الان اطلاعات را در بلاک چین پخش کنند، آلیس 0.7 بیت کوین می‌گیرد و موجودی ریموت کارول 0.3 خواهد بود.

حالا اگر آلیس بخواهد 0.3 بیت کوین به فرانک بفرستد، اصطلاحا این 0.3 را به طرف کارول در کانال «هل» می‌دهد. سپس کارول این 0.3 ارز BTC را از موجودی لوکال خود برای فرانک می‌فرستد. در نتیجه، موجودی کارول همان چیزی که در ابتدا بود باقی می‌ماند؛ 0.3+ از آلیس و 0.3- به فرانک، طرف معامله را خنثی می‌کند.

کارول در نقش خود به‌عنوان پل ارتباطی میان آلیس و فرانک ارزشی را از دست نداده، اما انعطاف‌پذیری خود را کاهش داده است. توجه کنید که کارول الان می‌تواند 0.6 بیت کوین در کانال خود با آلیس خرج کند، اما در کانال خود با فرانک این مقدار 0.1 بیت کوین است.

حالتی را تصور کنید که در آن آلیس تنها با کارول ارتباط داشته، اما فرانک دارای روابط گسترده‌تری است. کارول در حالت قبل می‌توانست در کل 0.4 بیت کوین را از طریق فرانک به دیگران بفرستد، اما الان قادر به ارسال تنها 0.1 رمز ارز BTC است، چراکه تنها همین مقدار را در طرف خودش در اختیار دارد.

در این سناریو، آلیس شدیدا لیکوئیدیتی کارول را مصرف می‌کند. بدون هیچگونه مشوقی، کارول نیز قصد تضعیف پوزیشن خود را ندارد. بنابراین به‌جای آن، ممکن است مثلا بگوید «هر 0.01 بیت کوین را با کارمزد 10 ساتوشی می‌فرستم». در این صورت، کارول هرچه موجودی لوکال بیشتری را فدای مسیرهای «قوی‌تر» کند، سود بیشتری کسب خواهد کرد.

همانطور که پیشتر گفتیم، هیچ الزامی برای کسب کارمزد وجود ندارد. برخی نیز ممکن است نگران کاهش لیکوییدیتی خود نباشند و برخی دیگر، کانال‌های مستقیمی را به سوی گیرنده باز کنند.

مزایای شبکه لایتنینگ بیت کوین

لایتنینگ نتورک با وجود گذشت سال‌ها از زمان راه‌اندازی هنوز در حال توسعه است. توسعه‌دهندگانش، تحت تیم‌های مختلف، دیدگاه‌های بلندپروازانه‌ای درباره‌ آن دارند، به طوری که معتقدند نحوه تفکر ما درباره بیت کوین، اولین رمز ارز دنیا، به لطف این شبکه تغییر خواهد کرد. در ادامه، به چند ویژگی اصلی که سبب چنین تغییر بزرگی خواهند شد اشاره می‌کنیم.

سرعت بالای انجام تراکنش

برای انتقال پول، دیگر مجبور به انتظار تا زمان دریافت چند تاییدیه نیستید. بدون توجه به میزان ترافیک در بلاک چین بیت کوین، تراکنش‌ها در اینجا تقریبا آنی انجام می‌شوند. تا امروز، سرعت پایین ایجاد تراکنش از جمله دلایل جلوگیری از تبدیل BTC به ابزاری برای پرداخت‌های روزمره بوده است. اما به لطف لایتنینگ نتورک شبکه اولین رمز ارز دنیا می‌تواند با سیستم‌های پرداخت متداول نظیر ویزا، مسترکارت و پی پال رقابت کند.

بیشتر بخوانید: خرید و پرداخت با ارز دیجیتال بیت کوین و اتریوم در پی پال امکان‌پذیر شد

کارمزد پایین ایجاد تراکنش

یکی دیگر از علت‌های نامناسب بودن BTC برای پرداخت‌های عادی و روزمره، کارمزد بالا است. مثال ابتدای مطلب را مجددا به خاطر آورید. آیا شما حاضرید در کافی شاپ، برای انتقال 3 دلار به صندوق‌دار، 5 دلار کارمزد پرداخت کنید؟ حتی 1 دلار نیز زیاد به نظر می‌رسد! از آن جایی که تراکنش‌ها خارج از بلاک چین اصلی بیت کوین و در شبکه لایتنینگ رخ می‌دهند، کارمزدهایی پایین پرداخت می‌کنید. در برخی مواقع هیچ کارمزدی دریافت نخواهد شد!

بهبود مقیاس‌پذیری BTC

به طور متوسط، بیت کوین در هر ثانیه قادر به پردازش 4 الی 7 تراکنش در هر ثانیه است! این مقدار را با نرخ TPS (تراکنش بر ثانیه) چند ده هزار عددی سیستم‌های بانکی متمرکز نمی‌توان مقایسه کرد. در چنین شرایطی، شبکه لایتنینگ قادر به پردازش حدود 60 هزار معامله در هر ثانیه است! استارتاپ‌های مسئول توسعه نتورک وعده داده‌اند ظرفیت آن، برای پردازش معاملات بیت کوین، لایت کوین و دیگر تراکنش‌ها، در آینده‌ای نزدیک به 1 میلیون عدد در ثانیه خواهد رسید!

مبادلات سریع بین زنجیره‌ای در شبکه لایتنینگ

نخستین آزمایش‌ها از انجام تراکنش‌های بین بلاک چینی به واسطه لایتنینگ نتورک موفقیت‌آمیز بود. این اتفاق واقعا شگفت‌انگیز است، چرا که دو مشکل اساسی سیستم‌های بلاک چینی، مقیاس‌پذیری پایینی و ایزوله بودن (دشواری در برقراری ارتباط با سایر شبکه‌ها) محسوب می‌شوند. به شرطی که دو بلاک چین از تابع هش یکسانی استفاده کنند، کاربران بدون نیاز به واسطه‌ها نظیر صرافی‌های رمز ارزی، قادر به ارسال پول از یک زنجیره به دیگری خواهند بود. چنین اتفاقی، زمینه را برای رشد انفجاری میزان استفاده از رمز ارزها مهیا می‌کند.

امنیت و گمنامی فعالیت‌ها در لایتنینگ نتورک

برخلاف تصور، تبادل مالی در بسیاری از شبکه‌های رمز ارزی، حتی خود بیت کوین، به طور کامل گمنام و ناشناس نیست و امکان ردیابی وجود دارد؛ هر فردی با دسترسی به اینترنت عملا قادر به ردیابی تراکنش‌ها از یک کیف پول به دیگری است. اما در شبکه لایتنینگ بیشتر تراکنش‌ها خارج از بلاک چین اصلی انجام می‌شوند، در نتیجه تمام میکروپیمنت‌های انجام شده از طریق کانال‌های Lightning کاملا غیر قابل ردیابی هستند.

مشکلات و محدودیت‌های شبکه لایتنینگ بیت کوین

خیلی عالی می‌شود اگر شبکه لایتنینگ بتواند خودش را به‌عنوان راه‌حلی جهت بهبود مقیاس پذیری بیت کوین ثابت کند. متاسفانه، برخی معایب مانع این اتفاق شده‌اند.

قابلیت استفاده (Usability)

بیت کوین شهودی‌ترین سیستم برای تازه‌واردان نیست؛ شاید درک آدرس‌ها، کارمزدها و موارد دیگر دشوار باشد. والت‌ها قادر به حذف مسائل پیچیده هستند تا سیستم پرداخت فعلی را تا حدودی برای کاربران قابل استفاده کنند. حتی می‌توانید از فردی بخواهید برنامه کیف پول رمز ارز را برای تلفن هوشمند شما دانلود کرده و به راحتی برایشان ارز دیجیتال ارسال کنید.

اما چنین کاری در لایتنینگ نتورک مقدور نیست. گزینه‌های این شبکه محدودتر بوده و در کل، نودهای شبکه لایتنینگ برای کاربرد تمام و کمال نیازمند دسترسی به یک گره بیت کوین هستند.

پس از نصب یک کلاینت، کاربران نیز پیش از انجام تراکنش‌ها باید کانال‌هایی را باز کنند. این فرایند نسبتا زمان‌بر بوده و هنگامی که فرد تازه‌واردی با مفهوم ظرفیت inbound/outbound که در واقع همان موجودی ریموت و لوکال است آشنا می‌شود، کار با آن دشوراتر خواهد شد. با همه این اوصاف، شبکه لایتنینگ برای کاهش موانع ورود، دائما در حال بهبود است تا کاربران تجربه روان‌تری از آن داشته باشند.

نقدشوندگی (Liquidity) در شبکه لایتنینگ بیت کوین

یکی از بزرگترین انتقادات به لایتنینگ نتورک، محدود بودن توانایی کاربر در نقل و انتقالات است. در این شبکه، نمی‌توانید بیشتر از مقدار قفل شده در کانال خرج کنید. در صورت خرج کردن کامل ارزها به طوری که موجودی ریموت تمام وجوه کانال را در اختیار داشته باشد، مجبور به بستن کانال خواهید بود. راه دیگر، انتظار تا زمانی است که فردی برای شما ارز بفرستد، که البته این گزینه هم ایده‌آل نیست.

مسیرهای شما نیز بسته به ظرفیت کل کانال محدود است. مثال آلیس <> کارول <> فرانک را در نظر بگیرید. اگر ظرفیت کانال آلیس و کارول 5 واحد بیت کوین باشد، اما کارول و فرانک ظرفیت 1 واحد بیت کوینی داشته باشند، آلیس هیچ گاه نمی‌تواند بیشتر از 1 واحد رمز ارز BTC در کانال ارسال کند. حتی در آن زمان نیز برای عملی شدن این اتفاق، کل موجودی در کانال کارول <> فرانک باید در طرف کارول باشد. این امر میزان وجوه قابل انتقال در کانال‌های شبکه لایتنینگ را شدیدا محدود کرده و تاثیر به‌سزایی بر قابلیت استفاده شبکه Lightning خواهد داشت.

مراکز متمرکز (Centralized Hubs)

به دلیل مشکلی که در بخش قبل ذکر کردیم، نگرانی‌های خاصی در رابطه با تسهیل ساخت «مراکز» بزرگ در این شبکه وجود دارد. این مراکز، موجودیت‌های فوق‌العاده متمرکز با قدرت نقدشوندگی بسیار بالا هستند. هر پرداخت قابل توجهی نیز باید از مسیر این موجودیت‌ها عبور کند.

مشخصا، این شرایط حالت ایده‌آلی نیست. در صورت آفلاین شدن این موجودیت‌ها، رابطه میان همتایان در شبکه نیز مختل خواهد شد که تضعیف این سیستم را به دنبال دارد. بنابراین از آنجایی که تنها از چند نقطه تراکنش‌ها عبور می‌کنند، ریسک سانسور نیز وجود دارد. این اتفاقات، کاملا مخالف اصول اساسی سیستم‌های غیر متمرکز است.

چه کسی لایتنینگ نتورک را ساخت؟

جوزف پون (Joseph Poon) و تادئوس دریکا (Thaddeus Dryja) نخستین بار در سال 2015 وایت پیپر شبکه لایتنینگ را ارائه کردند. ورژن جدید مقاله سفید Lightning Network را می‌توانید در آدرس lightning.network/lightning-network-paper.pdf مطالعه کنید.

در حال حاضر، بیشتر کارهای مربوط به توسعه نتورک بر عهده سه تیم Blockstream ،Lightning Labs و ACINQ قرار دارد. آن‌ها از صحبت‌ها و درخواست‌های انجمن بیت کوین برای بهبود بیشتر لایتنینگ نتورک استفاده می‌کنند. هر یک از سه استارتاپ نام برده در بالا، از پروتکل شبکه لایتنینگ متفاوت خود استفاده می‌کند. هر کدام با استفاده از یک زبان برنامه‌نویسی متفاوت ایجاد شده است؛ تیم Blockstream روی ورژنی از LN با زبان برنامه‌‌نویسی C کار می‌کند. تیم Lightning Labs مشغول توسعه یک Lightning Network Daemon با زبان گولنگ (GoLang) است. ACINQ از زبان اسکالا (Scala) استفاده می‌کند.

تعدادی ورژن دیگر از شبکه لایتنینگ نیز اکنون در دست توسعه هستند. فهرست تمام آن‌ها را می‌توانید در آدرس github.com/bcongdon/awesome-lightning-network مشاهده کنید. در نهایت باید گفت طبق بررسی‌های اخیر، قابلیت همکاری بالایی بین سه پیاده‌سازی اصلی لایتنینگ نتورک وجود دارد، به این معنی که آن‌ها به طور یکپارچه با یکدیگر کار و دیتا تبادل می‌کنند.

وضعیت کنونی لایتنینگ نتورک

تا آوریل سال 2020، این شبکه سالم به نظر می‌رسد. تا این زمان تعداد نودهای آنلاین نتورک به 12 هزار عدد رسیده و در مجموع 30 هزار کانال فعال وجود دارد. ظرفیت، بالا 920 بیت کوین است.

آموزش استفاده از لایتنینگ نتورک

در مطلبی جداگانه نحوه انتقال سریع و ارزان بیت کوین از طریق شبکه لایتنینگ را آموزش دادیم. به منظور یادگیری نحوه انجام این کار به مطلب زیر مراجعه کنید:

جمع‌بندی ؛ آیا باید از Lightning Network استفاده کنم؟

از زمان راه‌اندازی شبکه اصلی (Mainnet) لایتنینگ در سال 2018، این راه‌حل لایه دوم رشد چشم‌گیری داشته است. به جهت نیازمندی دانش فنی برای کار با Lightning Network، هنوز موانع زیادی باید از سر راه قابلیت استفاده برداشته شوند. اما با توجه به توسعه‌های فعلی، می‌توان منتظر کاهش موانع ورود در آینده بود. در صورت حل این مشکلات، شبکه لایتنینگ به یکی از بخش‌های اصلی اکوسیستم بیت کوین برای افزایش مقیاس پذیری و سرعت تراکنش‌ها تبدیل خواهد شد.

اگر یک کاربر حرفه‌ای حوزه رمز ارز نیستید، استفاده از این شبکه به شما پیشنهاد نمی‌شود. فراموش نکنید شبکه لایتنینگ یکی از اولین راهکارها برای حل مشکل مقیاس‌پذیری بیت کوین محسوب می‌شود، اما تنها گزینه نیست و رقبایی قوی آن را دنبال می‌کنند. به عنوان مثال باید به شبکه بیت کوین کش اشاره کنیم. تعداد تراکنش‌های قابل پردازش در آن طی هر ثانیه حدود 100 عدد و بسیار کمتر از ظرفیت لایتنینگ نتورک است، اما همچنان، به خاطر سرعت به مراتب بالاتر نسبت به بیت کوین در عین آسودگی در استفاده، انتخاب عده زیادی به شمار می‌رود.

شبکه لایتنینگ روی کاغذ بی‌نظیر و فوق‌العاده است. توسعه‌دهندگان آن تحت استارتاپ‌های مختلف، تا امروز توانسته‌اند به برخی وعده‌ها در مقاله سفید پروژه جامه عمل بپوشانند، اما هنوز راه زیادی در پیش است. در صورتی که تمام این وعده‌ها عملی شوند، مثلا به ظرفیت پردازش یک میلیون تراکنش در ثانیه دست پیدا کنیم، انفجاری در میزان پذیرش و گستردگی استفاده از بیت کوین در زندگی روزمره رخ خواهد داد.

افرادی که با هدف ذخیره ارزش نسبت به خرید بیت کوین اقدام می‌کنند، با شبکه لایتنینگ سر و کار ندارند. با این حال، این افراد از راهکار نام برده به شدت بهره‌مند می‌شوند؛ در صورتی که لایتنینگ نتورک بتواند با حمل مشکل مقیاس‌پذیری و انزوای بلاک چین بیت کوین (عدم امکان ایجاد تراکنش‌های بین زنجیره‌ای)، به راهکاری متداول تبدیل شود، قیمت BTC شدیدا جهش پیدا خواهد کرد.

منبع:

برچسب‌ها:

افزودن نظر