سه راهکار برای مقیاس پذیری بلاک چین

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

0 86

مقیاس پذیری بلاک چین

تاریخچه کوتاهی از مقیاس پذیری

در سال‌های ابتدایی بیت کوین، مقیاس پذیری به ندرت مورد بحث قرار می‌گرفت، زیرا مشکلی در این زمینه وجود نداشت. تراکنش به ازای ثانیه (TPS) پایین بود، کارمزدها پایین بودند و نگرانی‌های مهم‌تری وجود داشت. مثلا حل باگ‌های مهم و ساخت اکوسیستمی که از اجتماع پویای کاربران پشتیبانی کند جزو این نگرانی‌ها بود و این کاربران مطمئن بودند که بیت کوین به اندازه کافی باقی می‌ماند تا مقیاس‌پذیر شود. نمی‌توان گفت که مقیاس پذیری هرگز مطرح نشد؛ در واقع این موضوع چندین بار در فروم Bitcointalk ، چت IRC و در ایمیل‌ها مورد بحث قرار گرفت اما فوریت کمی برای آن وجود داشت.

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

اما یک نکته جالب توجه این بود که بیت کوین بدون محدودیت اندازه بلاک آغاز به کار کرد. یک سال طول کشید تا ساتوشی محدودیت 1 مگابایتی اندازه بلاک را برای جلوگیری از حملات اسپم معرفی کند. طبیعتا سازنده بیت کوین آینده‌ای را متصور بوده که در آن اندازه‌های بزرگتر بلاک هم در شبکه معرفی می‌شوند و به همین منظور در اکتبر 2010 نوشت که اندازه بزرگتر بلاک به این شکل خواهد بود:

( maxblocksize = largerlimit ,(blocknumber > 115000

از آن زمان BTC (لایه دو/ LN) و BCH (بلاک‌های بزرگتر) ، راه‌حل هایی ارائه کرده‌اند که می‌توانند ادعا کنند با برخی از ایده‌های اولیه ساتوشی هماهنگ بوده است. در ادامه به بررسی مزایا و معایب هر کدام از این روش‌ها می‌پردازیم.

راه‌حل شاردینگ (Sharding)

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

سه راهکار برای مقیاس پذیری بلاک چین

زیلیکا ادعا می‌کند که در دوره‌های آزمایشی اخیر تست‌نت، با استفاده از شبکه 2400 نودی، خروجی 2800 تراکنش به ازای ثانیه را ثبت کرده ‌است. هنگامی که درباره عملی‌بودن استفاده از شاردینگ در زنجیره‌های UTXO مثل بیت کوین از آمریت کومار (Amrit Kumar) مدیر علوم زیلیکا سوال شد، او به news.Bitcoin.com پاسخ داد که “شاردینگ را قطعا می‌توان در زنجیره‌های مبتنی بر UTXO به کار گرفت. در حقیقت، چند کار آکادمیک بر روی شاردینگ انجام شده که اختصاصا به قصد زنجیره‌های UTXO بوده‌اند.” شاردینگ نقش محوری در استراتژی مقیاس پذیری اتریوم بازی می‌کند. اگرچه این روش قابلیت افزایش چشمگیر خروجی را دارد، اما نقاط ضعفی هم در آن به چشم می‌خورد که بعدا آن‌ها را هم مختصرا توضیح خواهیم داد. اما ابتدا به بررسی بیت کوین و انشعابی می‌پردازیم که در نتیجه تفاوت بین ایدئولوژی‌های مقیاس پذیری ایجاد شد.

دو بیت کوین

همانطور که آرون فن ویردوم (Aaron van Wirdum) در مطلب “راه طولانی تا Segwit ” نوشته: “مدتها است به نظر می‌رسد (مخصوصا از اکتبر 2010 و به طور جدی‌تر از فوریه 2013 و به صورت عمومی در بهار 2015) که در محدودیت اندازه بلاک اختلاف وجود دارد.” این اختلاف باعث شد تا توسعه‌دهندگانی مثل گاوین اندرسن و مایک هارن به افزایش اندازه بلاک بیت کوین به بالاتر از 1 مگابایت فکر کنند اما توسعه‌دهندگان Bitcoin Core به بلاک‌استریم که در سال 2014 رونمایی شد، پای‌بند بمانند و همان محدودیت 1 مگابایتی را بخواهند و مقیاس پذیری را از روش‌های دیگر دنبال کنند. در ابتدا این مسئله از طریق Segwit محقق می‌شد و میانگین اندازه هر تراکنش کاهش می‌یافت، اما نتیجه نهایی به شبکه لایتنینگ رسید؛ یک لایه دو راه‌حلی که در آن تراکنش‌های متعدد، خارج از زنجیره انجام می‌شد و تراکنش‌های ابتدایی و انتهایی بر روی زنجیره ثبت می‌شدند.

سه راهکار برای مقیاس پذیری بلاک چین

به واسطه این پیچیدگی، توسعه شبکه لایتنینگ تحت تاثیر تعویق‌های متوالی و مشکلات UX دچار مشکل شده و شبکه هنوز نتوانسته آمادگی کامل برای تولید داشته باشد. هرچند این شبکه در سال 2019 به طور ثابت رشد داشته و اکنون حدود 1100 بیت کوین، بیش از 8300 نود (node) و بیش از 38000 کانال در اختیار دارد. مزیت LN شامل توانایی انجام تراکنش به صورت فوری با هزینه ناچیز است. اما لایتنینگ هم منتقدان خود را دارد. بسیاری مشکل این راه حل را پیچیدگی آن و وابستگی به نقدینگی می‌دانند که در نهایت باعث متمرکز شدن نسبی شبکه و راه‌حل‌های غیرمستقل می‌شود.

مقیاس پذیری روی زنجیره

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

سه راهکار برای مقیاس پذیری بلاک چین

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

آینده مقیاس پذیری بلاک چین

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

اگرچه شاردینگ با بلاک چین‌های نسل دوم همراه شده، برای زنجیره‌های UTXO مثل BTC و BCH هم کاربرد دارد. البته شاردینگ هم مشکلات خاص خود را دارد که باید دستخوش تغییر شوند. همانطور که امریت کومار از زیلیکا توضیح می‌دهد:

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

سه راهکار برای مقیاس پذیری بلاک چین

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

منبع

شاید از این مطالب هم خوشتان بیاید.

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.