مقیاس پذیری (Scaling) در بلاک چین به زبان ساده
با گسترش فناوری بلاک چین و پذیرش بیشتر ارزهای دیجیتال توسط کسب و کارهای مختلف، تعداد تراکنشهای کریپتویی افزایش یافته است. با این وجود بلاک چینها در زمینه پردازش تراکنشها محدودیتهایی دارند که به مقولهای به نام مقیاس پذیری (Scalability) مربوط میشود. برای درک چالشهای موجود و ارائه راهحلها ابتدا باید بدانیم که مقیاس پذیری در بلاک چین چیست و چگونه میتوان آن را افزایش داد؟
مقیاس پذیری در بلاک چین چیست؟
مقیاس پذیری در بلاک چین به معنی توانایی برای انجام تراکنشها با سرعتی مطلوب در زمان ازدحام شبکه است. هنگامی که ازدحام در شبکه افزایش مییابد و کاربران تعداد تراکنشهای زیادی را در شبکه ثبت میکنند، به دلیل محدودیت شبکه در انجام تراکنشها، باید زمان زیادی را برای انجام شدن آن منتظر بمانند. بهبود مقیاس پذیری در بلاک چین به منظور افزایش توان شبکه برای انجام تراکنشهای بیشتر در زمان کمتر یکی از اهدافی است که متخصصین حوزه ارز دیجیتال همواره به دنبال آن هستند.
مقیاس پذیری مهمترین گلوگاه دنیای ارزهای دیجیتال محسوب میشود. زمان تراکنشهای فعلی بسیاری از ارزهای دیجیتال با سایر روش های پرداخت قابل مقایسه نیست. با این حال، این موضوع باعث ناامیدی نشده و همانطور که گفته شد، جوامع کریپتو در حال تلاش بر روی تئوریهای مختلف برای غلبه بر این مانع هستند. افزایش مقیاس پذیری در بلاک چین میتواند در گسترش پذیرش ارزهای دیجیتال بسیار موثر باشد. در این مقاله، به پیشرفتهای امیدوارکنندهای که میتوانند به امکان انجام تراکنشهای بیشتر و سریعتر منجر شوند میپردازیم.
چرا افزایش مقیاس پذیری در بلاک چین مهم است؟
در حالی که شبکه سنتی ویزا میتواند تا 24 هزار تراکنش در ثانیه (TPS) را پردازش کند، توان شبکه بیت کوین تنها هفت تراکنش در ثانیه است. اتریوم، نزدیکترین رقیب بیت کوین، میتواند 20 تا 30 تراکنش در ثانیه را پردازش کند. اختلاف تراکنشهای ارزهای دیجیتال و تراکنشهای مالی سنتی واضح است و این موضوع لزوم افزایش مقیاس پذیری در بلاک چین را نشان میدهد.
اما چرا افزایش مقیاس پذیری در بلاک چین امری دشوار است؟ توسعهدهندگان در راستای حل این مشکل چه رویکردی را اتخاذ کردهاند؟
گلوگاهها: توان عملیاتی، نهایی شدن و زمان تایید
TPS چه ارتباطی با سرعت پردازش دارد؟ این سوال که آیا یک ارز دیجیتال مقیاسپذیر است یا خیر، دقیقاً به چه معناست؟ برای پاسخ به این سوالات، ابتدا باید مفاهیم توان عملیاتی (Throughput)، نهایی شدن (Finality) و زمان تایید (Confirmation Time) را درک کنیم.
این داستان را در نظر بگیرید:
یک نفر منتظر اتوبوسی است که هر 10 دقیقه یکبار به ایستگاه میآید. سپس 60 دقیقه طول میکشد تا اتوبوس به مقصد برسد. با این حال، این مسیر خاص، محبوب است و همیشه افراد زیادی در تلاش برای سوار شدن به اتوبوس هستند.
دو دقیقه میگذرد و اتوبوس به ایستگاه میرسد. متاسفانه افراد زیادی جلوتر از فرد مورد نظر در صف هستند و اتوبوس پر شده است. این فرد اکنون باید 10 دقیقه دیگر منتظر بماند تا بتوانند سفر خود را آغاز کند. این داستان را میتوان به شکل زیر خلاصه کرد.
1-ظرفیت اتوبوس برابر توان عملیاتی است.
2-زمانی که طول میکشد تا اتوبوس به مقصد برسد، زمان نهایی شدن تراکنش است.
3-زمان انتظار برای رسیدن اتوبوس برابر با زمان مورد نیاز تا تشکیل شدن اولین بلاک است.
4-مجموع زمان انتظار تا رسیدن اتوبوس به علاوه زمان لازم تا رسیدن به مقصد برابر زمان تأیید تراکنش است.
لازم به ذکر است که:
- اندازهگیری توان عملیاتی (بر حسب تراکنش در ثانیه یا TPS) کافی نیست بلکه زمان تایید نیز باید در نظر گرفته شود. به بیان ساده، پروتکلی که میتواند تا 100 هزار TPS را پردازش کند یک پروتکل عالی است. با این حال، اگر زمان تایید دو روزه داشته باشد، برای استفاده روزانه کافی نخواهد بود.
- وقتی ازدحام شبکه وجود دارد، توان عملیاتی کاهش نمییابد (زیرا اتوبوس هنوز میتواند هفت مسافر را در دقیقه حمل کند)، اما زمان تأیید افزایش مییابد زیرا میانگین زمان انتظار برای تشکیل اولین بلاک بیشتر است.
- زمان نهایی شدن ثابت است: برای اطمینان از عدم برگشتپذیری بلاک، این زمان به میزان تایید شش بلاک تعیین شده است. میانگین زمان انتظار برای اولین بلاک، بسته به شرایط متفاوت است.
چالش سهگانه مقیاس پذیری در بلاک چین
چالش سهگانه مقیاس پذیری در بلاک چین، یکی از بزرگترین موانع برای گسترش ارزهای دیجیتال است. این چالش بیان میکند که بلاکچینها تنها میتوانند به طور همزمان به دو مورد از سه هدف عدم تمرکز، مقیاس پذیری یا امنیت دست یابند و دستیابی همزمان به هر سه غیر ممکن است. بنابراین، همواره یکی از موارد قربانی میشود. این چالش، اولین بار توسط ویتالیک بوترین (Vitalik Buterin)، بنیانگذار اتریوم مطرح شد.
با این حال، چالش سهگانه مقیاس پذیری در بلاک چین چالشی غیرقابل حل نیست و فقط از مجموعه مشاهدات بوترین و اعضای جامعه نشات گرفته است. لذا علیرغم اینکه حل این چالش سهگانه چقدر دشوار است، ممکن است الگوریتمی برای حل آن وجود داشته باشد.
عدم تمرکز
تمرکززدایی به معنی میزان افزایش تنوع در مالکیت، نفوذ و ارزش در یک بلاک چین است. ارزهای دیجیتال عموماً غیرمتمرکز هستند زیرا هیچ گروه واحدی نمیتواند کل شبکه را اداره کند. با این حال، میزان تمرکز یک بلاک چین در یک طیف قرار دارد و صفر و یکی نیست.
امنیت
امنیت به معنی قابلیت دفاع و مقاومت یک بلاک چین در برابر دستکاری طی حملات منابع خارجی است. انواع حملات برای مختل کردن یک بلاک چین وجود دارد که از جمله آنها میتوان به مواردی نظیر حمله هزینهکرد دوباره (double-spending)، حملات دیداس (DDoS) و حملات 51 درصد (51% attack) اشاره کرد.
به طور کلی، آزادی بیشتر (یعنی ورود/خروج آزاد از شبکه) منجر به تمرکززدایی بیشتر اما در عین حال کاهش امنیت میشود. این چالش به این دلیل به وجود میآید که تأیید هویت شرکتکنندگان جدید دشوار است، زیرا ممکن است به طور بالقوه متعلق به یک نهاد مخرب واحد باشند یا با هم تبانی کنند تا به یک شبکه آسیب برساند.
مقیاس پذیری
مقیاس پذیری در بلاک چین به معنی میزان ظرفیت شبکه، از جمله تعداد گرهها، تعداد تراکنشهایی که میتواند پردازش کند، سرعت پردازش آنها و سایر عوامل است. در تصویر زیر بلاکچینهای مختلف با ترجیحات آنها را مشاهده میکنید. در هر گروه، یکی از فاکتورهای سهگانه بلاک چین قربانی شده است.
افزایش مقیاس پذیری در بلاک چین
افزایش مقیاس پذیری در بلاک چین پیچیده است و تلاش های بسیاری از سوی محققان و کسب و کارها برای حل این چالش انجام شده است. به طور کلی، سه رویکرد برای افزایش مقیاس پذیری در بلاک چین وجود دارد:
- لایه 1 (درون بلاک چین)
- لایه 2 (خارج از بلاک چین)
- سایر مکانیسمهای اجماع
راهحلهای لایه 1 (درون بلاک چین)
در راهحلهای لایه 1 نیاز است که در مجموعه کدهای بلاک چین تغییراتی ایجاد شود. در این رویکرد، یک تغییر ساختاری یا اساسی در بلاک چین اتفاق میافتد. دو مثال از از این رویکرد سگویت (SegWit) و شاردینگ (Sharding) است.
سگویت
سگویت یک ارتقاء پروتکل برای شبکه بیت کوین است که روش و ساختار نحوه ذخیره دادهها را تغییر میدهد. هدف اولیه سگویت افزایش فضای بلاک بود، زیرا امضای دیجیتالی که مالکیت و در دسترس بودن وجوه فرستنده را تأیید میکند، فضای زیادی را در یک تراکنش اشغال مینماید.
در پی حذف دادههای امضا برای هر تراکنش با استفاده از سگویت، فضا و ظرفیت بیشتری برای تراکنشهای موجود در بلاکهای ذخیرهسازی ۱ مگابایتی بیت کوین آزاد شده و امکان گنجاندن تراکنشهای بیشتری در یک بلاک را فراهم میشود. سگویت در حال حاضر در شبکه لایتکوین (Litecoin) پیادهسازی شده است.
اگرچه سگویت توان عملیاتی را افزایش میدهد و به بیت کوین کمک میکند تا تراکنشهای بیشتری را پردازش کند، اما یک راهحلی عمومی نیست و فقط میتواند برای بلاکچینهای مبتنی بر بیت کوین اعمال شود. همچنین با وجود اینکه سگویت بیت کوین را قادر میسازد تا تراکنشهای بیشتری را پردازش کند، اما زمان تایید هر تراکنش را کاهش نمیدهد.
شاردینگ
شاردینگ نوعی پارتیشنبندی پایگاه داده است که به عنوان پارتیشنبندی افقی نیز شناخته میشود. طی این فرآیند یک پایگاه داده وسیع به منظور بهبود عملکرد به بخشهای کوچکتر و قابل مدیریتتر تجزیه میشود.
بلاک چین یک پایگاه داده توزیع شده است و اگر شاردینگ را روی یک بلاک چین اعمال کنیم، شبکه به بخشهای مختلفی تقسیم میشود. هر بخش توسط گرههای خاصی اداره می شود که به آنها اختصاص داده شده است. به همین دلیل، توان عملیاتی سیستم بسیار بهبود خواهد یافت زیرا، به طور خودکار، بسیاری از خوشههای گره برای پردازش تراکنشها به صورت موازی به اجرا در میآیند.
راهحلهای لایه 2 (خارج از بلاک چین)
طی این رویکرد، یک لایه دوم به شبکه اصلی بلاک چین اضافه میشود تا امکان انجام تراکنشهای سریعتر را تسهیل کند. پروتکلهای لایه دو در بستر بلاک چین اصلی ساخته شده و تراکنشها برای صرفهجویی در فضا و کاهش ازدحام شبکه در آنها بارگذاری میشوند.
بلاکچینهای جانبی
بلاک چین جانبی یک بلاک چین جداگانه است که به بلاک چین اصلی اتصال دارد. داراییها بین این بلاک چین و بلاک چین اصلی با نرخهای از پیش تعیین شده مبادله میشود. در این رویکرد، اپلیکیشنهای مختلف به بلاکچینهای جانبی انتقال مییابند و به این ترتیب بار پردازشی بلاک چین اصلی کاهش پیدا میکند. این رویکرد یکی از امیدوارکنندهترین راهحلها برای مشکل مقیاس پذیری در بلاک چین است. پلاسما (اتریوم) و پاراچین (پولکادات) از جمله مثالهای استفاده از بلاک چین جانبی برای افزایش مقیاس پذیری هستند.
کانالهای پرداخت
کانال پرداخت یک شبکه خارج از بلاک چین است که به موازات بلاک چین اصلی اجرا میشود. در این رویکرد، یک کانال بین دو طرف که قصد انجام معامله دارند ایجاد میشود.
تمام تراکنشهایی که در کانال انجام میشوند خارج از بلاک چین هستند و وجود اجماع در این موارد نیاز نیست. در نتیجه، این تراکنشها با سرعت بیشتر از طریق یک قرارداد هوشمند، عموماً با کارمزد کمتر، اجرا میشوند. یک کانال پرداخت معمولی در 3 فاز اجرا میشود:
فاز اول: ایجاد کانال با امضا و تامین مالی آن.
فاز دوم: تراکنشهای همتا به همتا (P2P) که در کانال اتفاق میافتد.
فاز سوم: بسته شدن کانال و اعلام وضعیت نهایی تراکنش.
چندین مثال مختلف برای کانالهای پرداخت وجود دارد. شبکه لایتنینگ (بیت کوین) و شبکه رایدن (اتریوم) از جمله کانالهای پرداخت محبوب هستند.
مکانیسمهای اجماع و اهمیت آنها در سرعت تراکنش
چالش مقیاس پذیری در بلاک چین عمدتاً به دلیل مکانیسم توافق آن ایجاد میشود زیرا همه شرکتکنندگان در شبکه باید در مورد اینکه کدام تراکنشها معتبر هستند توافق نمایند. در حالی که بیت کوین میتواند تعداد زیادی از شرکتکنندگان (گرهها) را پذیرش کند (از این نظر مقیاس پذیر است)، نمیتواند تعداد زیادی تراکنش را به سرانجام برساند.
بنابراین، برخی مکانیسمهای اجماع جایگزین به عنوان تلاشهایی برای حل این مشکل پدیدار شدهاند که سه مکانیسم ناکاموتو، کلاسیک و بدون رهبر از جمله آنها هستند. این مکانیسمها با تغییر فرایند رایگیری از گرهها و نحوه تایید، تعداد ترکنشهای قابل انجام را افزایش میدهند و به مقیاسپذیرتر شدن بلاکچین کمک میکنند.
جمعبندی
در حال حاضر، تکنولوژی بلاک چین از نظر قدرت پردازش تراکنشها، فاصله بسیاری با شبکههای مالی سنتی دارد. این موضوع به مبحث مقیاس پذیری بلاکچینها مرتبط میشود که افزایش آن میتواند منجر به افزایش سرعت و تعداد تراکنشها و در نتیجه گسترش پذیرش این فناوری شود. علیرغم موانع و چالشهای بزرگی که همچنان در مسیر پیشرفت بلاک چین قرار دارد و مهمترین آن چالش سهگانه مقیاس پذیری است، راهحلهای بسیاری نیز برای رفع آنها پیشنهاد شده است. در صورت گسترش این راهحلها و ارائه راهحلهای جدیدتر، شبکههای بلاک چین نیز قادر خواهند شد تعداد تراکنشهای بیشتری را پردازش کرده و با شبکههای مالی سنتی رقابت نمایند.
سوالات متداول
1- علت مقیاس پذیر نبودن بلاک چین بیت کوین چیست؟
بلاک چین بیت کوین میتواند تنها 7 تا 10 تراکنش در ثانیه را پردازش کند و بلاکها به طور متوسط هر 10 دقیقه یک بار تولید میشوند. همچنین هر بلاک میتواند تعداد محدودی تراکنش را در خود جای دهد.
2- مزیت بلاک چین مقیاس پذیر چیست؟
مزیتهای بلاک چین مقیاس پذیر عبارت است از قدرت پردازش بالا، استقلال، تغییر ناپذیری، شفافیت، قابلیت حسابرسی و امنیت.
3- مهمترین جزء یک بلاک چین مقیاس پذیر چیست؟
اندازه بلاک یکی از عوامل مهم در میزان مقیاس پذیری در بلاک چین است. بلاک بزرگتر میتواند ظرفیت تراکنش را افزایش دهد.