مقیاس پذیری یکی از مهمترین نکات مورد توجه بلاکچین اتریوم است. محدودیتهای فعلی شبکه از نظر ظرفیت و سرعت، مانع از پذیرش آن در مقیاس جهانی میشود. پلاسمای اتریوم توسط ویتالیک بوترین، بنیانگذار اتریوم و جوزف پون پیشنهاد شد. این مفهوم در آگوست 2017 به عنوان یک تکنیک راه حل مقیاسپذیر برای بلاکچین اتریوم متولد شد. همراه با Thaddeus Dryja، جوزف پون همچنین مسئول مفهوم شبکه لایتنینگ بود، که یک راه حل مقیاسپذیری است که در سال 2015 برای بیتکوین پیشنهاد شد.
اگرچه پلاسما و شبکه لایتنینگ هر دو به عنوان راهحلهای مقیاسبندی برای بلاکچینها پیشنهاد شدند، اما هر کدام مکانیسمها و ویژگیهای خاص خود را دارند. این مقاله به طور خلاصه پلاسمای اتریوم را معرفی میکند، اما به خاطر داشته باشید که پلاسما به تنهایی یک پروژه نیست، یک تکنیک مقیاسبندی خارج از زنجیره یا چارچوبی برای ساخت برنامههای مقیاسپذیر است که میتواند به روشهای متفاوتی توسط گروههای تحقیقاتی مختلف پیادهسازی شود.
پلاسما چگونه کار میکند؟
ایده اصلی پلاسمای اتریوم ایجاد چارچوبی از زنجیرههای ثانویه است که تا حد امکان با زنجیره اصلی (در این مورد، بلاکچین اتریوم) ارتباط و تعامل داشته باشند. چنین چارچوبی طراحی شده است تا به عنوان یک درخت بلاکچین عمل کند، که به صورت سلسله مراتبی به گونهای مرتب شده است که میتوان زنجیرههای کوچکتر متعددی را در بالای زنجیره اصلی ایجاد کرد. به این زنجیرههای کوچکتر، زنجیرههای پلاسما یا زنجیرههای کودک نیز گفته میشود.
توجه داشته باشید که زنجیرههای جانبی و زنجیرههای پلاسما مشابه هستند، اما یکسان نیستند. ساختار پلاسما از طریق استفاده از قراردادهای هوشمند و درختان مرکل ساخته شده است و امکان ایجاد تعداد نامحدودی از زنجیرههای فرزند را فراهم میکند – که اساساً کپیهای کوچکتری از بلاکچین اتریوم هستند. در بالای هر زنجیره کودک، زنجیرههای بیشتری میتوان ایجاد کرد و این همان چیزی است که ساختاری درخت مانند میسازد.
اساساً، هر زنجیره کودک پلاسما یک قرارداد هوشمند قابل تنظیم است که میتواند به گونهای طراحی شود که به روشی منحصر به فرد کار کند و نیازهای مختلف را برآورده کند. این بدان معنی است که زنجیرهها میتوانند همزیستی داشته باشند و به طور مستقل عمل کنند. در نهایت، پلاسما این امکان را برای کسب و کارها و شرکتها فراهم میکند که بتوانند راهحلهای مقیاسپذیر را به روشهای مختلف، با توجه به شرایط و نیازهای خاص خود پیادهسازی کنند.
بنابراین، اگر پلاسما با موفقیت توسعه یافته و در شبکه اتریوم پیادهسازی شود، زنجیره اصلی کمتر دچار شلوغی میشود، زیرا هر زنجیره کودک به گونهای طراحی میشود که به روشی متمایز در جهت اهداف خاصی کار کند – که لزوماً با اهداف مرتبط نیستند. زنجیره اصلی در نتیجه، زنجیر کودک کار کلی زنجیره اصلی را کاهش میدهد.
شواهد تقلب
ارتباط بین زنجیره فرزند و زنجیره ریشه با اثبات تقلب ایمن می شود، بنابراین زنجیره ریشه مسئول حفظ امنیت شبکه و مجازات عوامل مخرب است. هر زنجیره فرزند مکانیسمهای خاص خود را برای اعتبارسنجی بلوکها و اجرای خاص ضد تقلب دارد که میتواند بر روی الگوریتمهای اجماع مختلف ساخته شود. متداول ترین آنها Proof of Work، Proof of Stake و Proof of Authority هستند. اثبات تقلب تضمین می کند که در صورت فعالیت مخرب، کاربران می توانند گره های غیر صادقانه را گزارش کنند، از وجوه خود محافظت کنند و از تراکنش (که شامل تعامل با زنجیره اصلی است) خارج شوند. به عبارت دیگر، اثبات تقلب بهعنوان مکانیزمی استفاده میشود که از طریق آن یک زنجیره کودک پلاسما شکایتی را به زنجیره مادر یا زنجیره ریشه ارسال میکند.
MapReduce
whitepaper پلاسما همچنین یک کاربرد بسیار جالب از محاسبات به اصطلاح MapReduce را ارائه میدهد. اساساً MapReduce مجموعهای از توابع است که در سازماندهی و محاسبه دادهها در چندین پایگاه داده بسیار مفید است. در زمینه پلاسما، این پایگاههای داده زنجیرههای بلوکی هستند و ساختار درخت مانند زنجیرهها به MapReduce اجازه میدهد تا به عنوان راهی برای تسهیل راستیآزمایی دادهها در درخت زنجیرهها استفاده شود، که کارایی شبکه را تا حد زیادی افزایش میدهد.
Mass Exit problem
یکی از اصلیترین نکات مورد توجه پلاسما، Mass Exit problem است، که به سناریویی اشاره دارد که در آن بسیاری از کاربران سعی میکنند همزمان از زنجیره پلاسما خارج شوند، زنجیره ریشه را سیل کرده و باعث ازدحام شبکه میشود. این میتواند در اثر فعالیتهای کلاهبرانگیز، حملات شبکه، یا هر نوع شکست مهم دیگری که یک زنجیره کودک پلاسما، یا گروهی از زنجیرهها ممکن است ایجاد کند، ایجاد شود.
یکی از اصلیترین نکات مورد توجه پلاسما، مشکل خروج انبوه است، که به سناریویی اشاره دارد که در آن بسیاری از کاربران سعی میکنند همزمان از زنجیره پلاسما خارج شوند، زنجیره ریشه را سیل کرده و باعث ازدحام شبکه میشود. این میتواند در اثر فعالیتهای کلاهبرانگیز، حملات شبکه، یا هر نوع شکست مهم دیگری که یک زنجیره کودک پلاسما، یا گروهی از زنجیرهها ممکن است ایجاد کند، ایجاد شود.
نتیجه گیری
اساساً یک راه حل خارج از زنجیره است که با ایجاد ساختاری درخت مانند از چندین زنجیره کوچکتر تلاش میکند تا عملکرد کلی شبکه اتریوم را به میزان قابل توجهی افزایش دهد. این زنجیرهها کار زنجیره اصلی را کاهش میدهند که میتواند تراکنشهای بیشتری را در هر ثانیه انجام دهد. یک مدل سلسله مراتبی از بلاکچینهای مرتبط که توسط پلاسما پیشنهاد شده است پتانسیل بالایی دارد و در حال حاضر توسط گروه های تحقیقاتی متعددی در حال آزمایش است.
با توسعه مناسب، پلاسما احتمالاً کارایی بلاکچین اتریوم را افزایش میدهد و چارچوب بهتری برای استقرار برنامههای غیرمتمرکز فراهم میکند. علاوه بر این، این ایده ممکن است توسط سایر شبکههای ارز دیجیتال نیز به عنوان راهی برای جلوگیری از مشکلات مقیاسپذیری در آینده، اقتباس و اجرا شود.
Ethereum Plasma یک پروژه منبع باز است و مخزن عمومی آن را می توان در GitHub آنها یافت. علاوه بر اتریوم، بسیاری از ارزهای دیجیتال و مخازن GitHub دیگر در حال حاضر با پلاسما کار میکنند. چند نمونه عبارتند از OmiseGO، Loom Network و FourthStateLabs. برای اطلاعات فنی و دقیقتر، میتوانید به وایت پیپر رسمی پلاسما یا وب سایت LearnPlasma مراجعه کنید.
چرا به نظر شما اکثر پروژهها هنوز نتونستن مشکلات خروج انبوه رو حل کنن؟ آیا راهحلی برای این مشکل تو دیدگاه شما وجود داره؟
مشکل خروج انبوه (mass exit problem) در بسیاری از پروژههای بلاکچینی و بهویژه در شبکههای لایه دوم (Layer 2) همچنان یک چالش بزرگ است. این مشکل بهطور خاص زمانی رخ میدهد که تعداد زیادی از کاربران بهطور همزمان بخواهند داراییهای خود را از شبکه لایه دوم به لایه اول منتقل کنند. دلایل اصلی این مشکل و راهحلهای احتمالی آن را میتوان به شکل زیر تحلیل کرد:
دلایل اصلی مشکل خروج انبوه
ظرفیت محدود بلاکچین اصلی:
بلاکچینهای لایه اول (مانند اتریوم) ظرفیت پردازش محدودی دارند، بنابراین وقتی حجم زیادی از درخواستهای خروج ارسال شود، شبکه به سرعت شلوغ میشود و هزینه گس افزایش مییابد.
طراحی پلهای فعلی:
بیشتر پلهای ارتباطی (bridges) بین لایه دوم و اول، فرآیند خروج را به شکلی زمانبر طراحی کردهاند که اغلب نیاز به تأییدیههای متعدد دارد. این تأخیر باعث نگرانی کاربران و هجوم همزمان برای خروج میشود.
اعتماد محدود به لایه دوم:
کاربران ممکن است اعتماد کافی به امنیت یا نقدینگی لایه دوم نداشته باشند و با کوچکترین اخبار منفی یا نگرانی، تصمیم به خروج بگیرند.
حملات اقتصادی یا فنی:
حملات مانند حملات نقدینگی یا حملات اسپم میتوانند فشار بیشتری به زیرساخت خروج وارد کنند.
راهحلهای احتمالی برای رفع مشکل خروج انبوه
طراحی پلهای کارآمدتر:
استفاده از پلهای بهینهتر و سریعتر که نیازی به زمان انتظار طولانی نداشته باشند، میتواند این مشکل را کاهش دهد. برای مثال:
پلهای نقدینگی غیرمتمرکز (Liquidity Networks) که در آن نقدینگی بهطور مداوم تأمین میشود.
استفاده از پروتکلهای جدید مانند ZK-Rollups یا Optimistic Rollups که فرآیند خروج را سریعتر میکنند.
افزایش ظرفیت لایه اول:
راهکارهایی مثل شاردینگ (Sharding) در شبکههایی مانند اتریوم 2.0 میتوانند ظرفیت لایه اول را به شدت افزایش دهند و ازدحام را کاهش دهند.
طرحهای انگیزشی برای خروج آهستهتر:
ارائه مشوقهایی مانند تخفیف در هزینه گس یا پاداش برای کاربرانی که در زمانهای کمترافیک اقدام به خروج میکنند.
بهرهگیری از بیمههای داخلی:
ایجاد مکانیزمهای بیمه برای کاربران لایه دوم، تا در صورت تأخیر یا مشکلات فنی، خسارتهای آنها جبران شود و فشار بر خروج آنی کاهش یابد.
آموزش و شفافیت بیشتر:
پروژهها باید شفافیت بیشتری در مورد امنیت و عملکرد لایه دوم ارائه دهند تا کاربران اعتماد بیشتری به سیستم پیدا کنند و دچار هراس خروج نشوند.
مدیریت پویای ظرفیت:
برخی شبکهها میتوانند بهصورت پویا ظرفیت پردازش خود را تنظیم کنند یا درخواستهای خروج را بر اساس اولویتها مدیریت کنند تا از فشار آنی جلوگیری شود.
جمعبندی
مشکل خروج انبوه یک چالش تکنولوژیکی و روانشناختی است. برای حل این مشکل، باید راهحلهای فنی (مانند افزایش مقیاسپذیری) و رفتاری (مانند مدیریت اعتماد کاربران) بهطور همزمان به کار گرفته شوند. پروژههایی که میتوانند این چالش را مدیریت کنند، احتمالاً در آینده مزیت رقابتی قویتری خواهند داشت.
شما اگر راهحلی خاص مد نظرتان هست یا به پروژهای که این مشکل را بهتر مدیریت کرده باشد فکر میکنید، خوشحال میشوم نظر شما را هم بشنوم!