مقیاس پذیری در زنجیره بلوکی چیست و چه راهکارهایی دارد؟
زمانیکه وارد دنیای جدید و هیجانانگیز زنجیره بلوکی و ارزهای دیجیتال میشویم، یکی از اولین اصطلاحاتی که زیاد با آن برخورد میکنیم مشکل «قابلیت توسعه» در زنجیره بلوکیهای مختلف است. مقیاس پذیری در زنجیره بلوکی تا حد زیادی به سرعت تراکنشها اشاره دارد. توانایی فناوری زنجیره بلوکی برای مدیریت سریع حجم بالایی از تراکنشها در آن واحد که به عنوان قابلیت توسعه شناخته میشود، چالشی بزرگ در حوزه ارزهای دیجیتال است. در این مقاله معنا قابلیت توسعه و اهمیت آن را توضیح داده و تازهترین راهکارها و توسعهها در این زمینه را بررسی میکنیم.
قابلیت توسعه چیست؟
قابلیت توسعه در زنجیره بلوکی به توانایی پلتفرم برای بالا رفتن ظرفیت پردازش تراکنشها در زمان شلوغی پلتفرم میگویند. در فناوری زنجیره بلوکی، حفظ کارایی و سرعت پلتفرم در مواجهه با بالا رفتن تعداد کاربران و حجم تراکنشها در قالب قابلیت توسعه مطرح میشود. هدف اصلی قابلیت توسعه این است که کارایی پلتفرم بدون به خطر انداختن ایمنی یا بدون مرکزیت بودن آن بهبود یابد.
در یک پلتفرم زنجیره بلوکی مقیاسپذیر، بالا رفتن تعداد تراکنشها نباید منجر به کندی قابلتوجه در پردازش تراکنشها یا توسعه قابل توجه در هزینههای آن شود. این پلتفرم باید قادر به حفظ سرعت تأیید تراکنشها، مدیریت حجم بالای دادهها و حفظ هزینههای عملیاتی در سطحی معقول باشد.
بهبود قابلیت توسعه میتواند به گسترش کاربردهای زنجیره بلوکی در زمینههای مختلف و پذیرش گستردهتر این فناوری کمک کند. در حال حاضر، این واقعیت که زنجیره بلوکیها هنوز آماده پذیرش عموم مردم نیستند و نمیتوانند جایگزین سیستمهای پرداخت سنتی و متمرکز شوند، چالشی بزرگ در دنیای ارزهای دیجیتال است.
سهگانه زنجیره بلوکی چیست؟
قابلیت توسعه همان ویژگی است که برای کاربران زنجیره بلوکی یک تجربه عالی و بیتخلف فراهم میکند، فارغ از اینکه تعداد کاربران ۱۰۰ نفر یا یک میلیارد نفر باشد. بنابراین پیش از آنکه عموم مردم آماده استفاده از زنجیره بلوکی و ارزهای دیجیتال برای امور مالی و پرداختهای روزمره خود شوند، مشکل قابلیت توسعه زنجیره بلوکیها باید حل شود که خود بخش مهمی از مشکلی دیگر بهنام «سهگانه زنجیره بلوکی» است.
معضل سهگانه زنجیره بلوکی یا همان «Blockchain Trilemma» سه ویژگی اصلی و بنیادین زنجیره بلوکیها را در کنار یکدیگر در نظر میگیرد:
- قابلیت توسعه (Scalability)
- تمرکززدایی (Decentralization)
- ایمنی (Security)
معضلی که سهگانه زنجیره بلوکی پیش روی ما میگذارد این است: زنجیره بلوکیها تا کنون نتوانستهاند به هر سه ویژگی قابلیت توسعه، تمرکززدایی و ایمنی در کنار هم دست یابند. مخصوصاً دستیابی به قابلیت توسعه بالا از همان ابتدا و از پیدایش اولین زنجیره بلوکی یعنی بیت کوین یک چالش بزرگ بوده و زنجیره بلوکیهای بعد از آن که تلاش کردند این مشکل را برطرف کنند، مجبور شدند یا تمرکززدایی یا ایمنی زنجیره بلوکی را قربانی قابلیت توسعه بیشتر کنند.
قابلیت توسعه در زنجیره بلوکی در مقابل پلتفرمهای پرداخت سنتی
در حالیکه پلتفرمهای پرداخت سنتی مانند ویزا میتوانند تا ۲۴٬۰۰۰ تراکنش در ثانیه (TPS) را پردازش کنند، بیت کوین به صورت میانگین میتواند تنها ۷ تراکنش در ثانیه را پردازش کند و اتریوم، نزدیکترین رقیب بیت کوین، میتواند ۲۰ تا ۳۰ تراکنش بر ثانیه را اجرا کند. واضح است که این اعداد برای پذیرش عمومی و گسترده ارزهای دیجیتال اصلاً کافی نیست.
در سالهای اخیر، متخصصان و مهندسان زنجیره بلوکی تلاش کردهاند با ایدهپردازی و اجرای راهکارهای مختلف، قابلیت توسعه زنجیره بلوکیها را بالا ببرند. مهمترین راهکارهای قابلیت توسعه که تا بهحال اجرا شدهاند، راهکارهای قابلیت توسعه لایه یک و لایه دو هستند. البته به جز این دو دسته راهکارهای دیگری هم وجود دارند که کمتر متداولاند. در ادامه مهم ترین راهکارهای قابلیت توسعه در زنجیره بلوکی را بررسی میکنیم.
راهکارهای قابلیت توسعه لایه یک یا درونزنجیرهای
راهکارهای قابلیت توسعه لایه ابتدایی پایگاه کد زنجیره بلوکی را تغییر میدهند؛ بههمیندلیل، به آنها راهکارهای درونزنجیرهای میگویند. به عبارت دیگر، این راهکارهای با تغییرات در سازوکار داخلی پلتفرمهای بلاک چینی بهدنبال بهینهسازی آنها برای بالا رفتن قابلیت توسعه هستند. راهکارهای لایه ابتدایی در سه بخش مهم زنجیره بلوکی، یعنی بخش اجرای تراکنشها، بخش ذخیره کردن و مکانیسم اجماع اعمال میشوند.
انواع قابلیت توسعه لایه یک در زنجیره بلوکی
بالا رفتن محبوبیت و کاربردهای زنجیره بلوکی حجم بالایی از تراکنشها را به دنبال دارد که نیاز است در زمانی کوتاه پردازش شوند. قابلیت توسعه در زنجیره بلوکی به توانایی پلتفرم برای توسعه و مدیریت بالا رفتن تعداد تراکنشها، کاربران و دادهها بدون از دست دادن کارایی یا ایمنی آن یاری میدهد.
برای درک بهتر قابلیت توسعه لایه ابتدایی، میتوان آن را به سه ویژگی کلیدی تقسیم کرد: قابلیت توسعه اجرا، قابلیت توسعه ذخیره کردن و قابلیت توسعه اجماع. هر یک از این جنبهها نقش مهمی در کارایی کلی پلتفرم زنجیره بلوکی دارند و بهبود هر کدام میتواند اثر قابلتوجهی بر کارایی کل سیستم داشته باشد. در ادامه، به بررسی دقیق هر یک از این ویژگیها، چالشهای مربوط به آنها و راهکارهای موجود برای بهبود آنها میپردازیم.
قابلیت توسعه اجرا
قابلیت توسعه اجرا مربوط به توانایی پلتفرم زنجیره بلوکی در پردازش تعداد بیشتری از تراکنشها در واحد زمان است. این جنبه از قابلیت توسعه به طور مستقیم با سرعت و کارایی پلتفرم در ارتباط است و نقش مهمی در تجربه کاربری و قابلیت استفاده از زنجیره بلوکی در کاربردهای مختلف دارد.
اجزای اصلی قابلیت توسعه اجرا
لایه عملیاتی زنجیره بلوکی که مسئول پردازش تراکنشها است، سه فرایند اصلی را بر عهده دارد: بررسی اعتبار تراکنشها، اجرای منطق درونزنجیره و محاسبه تغییرات وضعیت. بررسی اعتبار تراکنشها شامل تأیید امضاهای دیجیتال، بررسی موجودی کافی برای انجام تراکنش و اطمینان از صحت دادههای تراکنش است. این مرحله برای جلوگیری از تقلب در تراکنشها و حفظ یکپارچگی پلتفرم ضروری است.
در زنجیره بلوکیهایی که از قراردادهای هوشمند پشتیبانی میکنند، اجرای منطق درونزنجیره نقش مهمی ایفا میکند، چراکه مستلزم اجرای کد قراردادها و پردازش منطق کسبوکار است که میتواند بسیار پیچیده و نیازمند منابع گسترده باشد. سرعت و کارایی این بخش اثر مستقیمی بر کارایی کلی پلتفرم دارد.
پس از اجرای تراکنشها و قراردادهای هوشمند، پلتفرم باید وضعیت جدید را محاسبه و ذخیره کند؛ یعنی زنجیره بلوکی را بهروزرسانی کند. این مرحله شامل بهروزرسانی موجودی حسابها، تغییر وضعیت قراردادها و ثبت نتایج تراکنشهاست که برای حفظ انسجام و قابلیت اطمینان پلتفرم حیاتی است.
چالشهای قابلیت توسعه اجرا
قابلیت توسعه اجرا با چالشهای جدی روبروست. یکی از مهمترین این موانع، محدودیتهای نودها در قدرت محاسباتی است. گرههای پلتفرم زنجیره بلوکی باید توانایی پردازش تمام تراکنشها را داشته باشند و با بالا رفتن تعداد تراکنشها، فشار بر روی منابع محاسباتی آنها بالا رفتن مییابد. چنین وضعیتی میتواند به کندی پلتفرم یا حتی از کار افتادن گرههای ضعیفتر منجو شود.
چالش دیگر، یافتن تعادل بین سرعت و ایمنی است. بالا رفتن سرعت پردازش تراکنشها امکان دارد باعث شود که ایمنی پلتفرم نزول یابد، زیرا زمان کمتری برای بررسی دقیق هر تراکنش وجود دارد. این تعادل ظریف بین کارایی و ایمنی، یکی از پیچیدهترین جنبههای طراحی سیستمهای زنجیره بلوکی است.
راهکارهای بهبود قابلیت توسعه اجرا
برای مقابله با این موانع، راهکارهای مختلفی پیشنهاد شده است. یکی از این راهکارها، قابلیت توسعه عمودی است که شامل بالا رفتن قدرت پردازشی گرههای پلتفرم میشود. اگرچه این روش میتواند به بالا رفتن سرعت پردازش کمک کند، ولی خطر تمرکزگرایی را به همراه دارد، زیرا امکان دارد تنها گرههای قدرتمند قادر به کمپانی در پلتفرم باشند.
رویکرد دیگر، قابلیت توسعه افقی است که از تکنیکهایی مانند شاردینگ استفاده میکند. در این روش، پلتفرم به زیرمجموعههای کوچکتر تقسیم میشود و هر بخش مسئول پردازش بخشی از تراکنشهاست. این رویکرد میتواند به بالا رفتن قابل توجه ظرفیت پلتفرم منجر شود، ولی پیادهسازی آن پیچیده است و چالشهای خاص خود را دارد.
بهینهسازی کد قراردادهای هوشمند نیز میتواند به بهبود قابلیت توسعه اجرا کمک کند. با نوشتن کدهای کارآمدتر و استفاده از تکنیکهای بهینهسازی، میتوان بار محاسباتی را نزول داد و سرعت اجرا را بالا رفتن داد.
قابلیت توسعه ذخیره کردن
قابلیت توسعه ذخیره کردن یکی دیگر از راهکارهای بالا رفتن قابلیت توسعه زنجیره بلوکی است که تغییراتی را در لایه ذخیره کردن پلتفرم اعمال میکند. با بالا رفتن قابلیت توسعه در لایه ذخیره کردن پلتفرم، توانایی آن در مدیریت و ذخیره کردن حجم روزافزون دادهها بالا رفتن مییابد، بدون آنکه کارایی یا ایمنی پلتفرم به خطر بیفتد.
در پلتفرمهای زنجیره بلوکی، دو نوع داده وجود دارد که باید ذخیره و مدیریت شوند. نوع اول، دادههای تاریخی هستند که شامل تمام تراکنشها و بلاکهای قبلی میشوند. نوع دوم، وضعیت کلی پلتفرم است که وضعیت فعلی تمام آدرسها و قراردادهای هوشمند در پلتفرم را نشان میدهد.
مدیریت این حجم عظیم از دادهها چالش بزرگی می باشد، چراکه با گذشت زمان و بالا رفتن تعداد تراکنشها، حجم این دادهها مدام بیشتر و بیشتر میشود، تا جایی که حجم کل زنجیره بلوکی به صدها ترابایت بالا رفتن مییابد. این توسعه مداوم میتواند منجر به بالا رفتن زمان همگامسازی برای گرههای جدید و بالا رفتن هزینههای ذخیره کردن برای تمام مشارکتکنندگان در پلتفرم شود.
راهکارهای بهبود قابلیت توسعه ذخیره کردن
برای مقابله با این موانع، راهکارهای مختلفی پیشنهاد شده است. یکی از این راهکارها، شاردینگ داده است. در این روش، دادههای پلتفرم به بخشهای کوچکتر (شاردها) تقسیم میشوند و هر گره تنها بخشی از کل دادهها را نگهداری میکند. این رویکرد میتواند بار ذخیره کردن را بین گرههای مختلف توزیع کند. پرونینگ یا همان هرسکردن دادهها روش دیگری است که در آن دادههای قدیمی و غیرضروری از نودها حذف میشوند. با این کار، حجم دادههایی که هر گره باید ذخیره کند، نزول مییابد.
ذخیره کردن خارج از زنجیره نیز رویکرد دیگری است که در آن بخشی از دادهها در خارج از زنجیره بلوکی اصلی ذخیره میشوند. این روش میتواند بار ذخیره کردن روی زنجیره بلوکی اصلی را نزول دهد، ولی نیاز به مکانیزمهای اضافی برای تضمین ایمنی و دسترسپذیری دادههای خارج از زنجیره دارد. فشردهسازی داده نیز میتواند به نزول حجم دادههای ذخیره شده کمک کند. تکنیکهای پیشرفته فشردهسازی میتوانند حجم دادهها را بدون از دست دادن اطلاعات مهم نزول دهند.
قابلیت توسعه اجماع
قابلیت توسعه اجماع، سومین رکن اساسی در بحث قابلیت توسعه زنجیره بلوکی است که توانایی پلتفرم در رسیدن به توافق راجع به وضعیت فعلی زنجیره بلوکی، در مقیاس بزرگ و با سرعت قابل قبول را در بر میگیرد. مکانیزم اجماع که بیشتر آن را با مکانیسم اثبات کار (PoW) در بیت کوین یا اثبات سهام (PoS) در اتریوم میشناسیم، نقشی حیاتی در حفظ ایمنی و یکپارچگی پلتفرم ایفا میکند.
اجزای اصلی قابلیت توسعه اجماع
در مرکز قابلیت توسعه اجماع، مکانیزمهای اجماع قرار دارند. دو نمونه معروف از این مکانیزمها، اثبات کار و اثبات سهام هستند. اثبات کار که در پلتفرم بیت کوین استفاده میشود، بر حل مسائل پیچیده ریاضی تکیه دارد؛ در حالی که اثبات سهام که در پلتفرم جدید اتریوم یا همان اتریوم ۲ پیادهسازی شده است، بر مقدار ارز دیجیتالی که کمپانیکنندگان در پلتفرم به عنوان ضمانت سپردهگذاری میکنند، متکی است.
زمان رسیدن به قطعیت، یکی دیگر از اجزای مهم قابلیت توسعه اجماع است. این معنا به مدتزمانی اشاره دارد که برای تأیید نهایی و قطعی یک تراکنش لازم است؛ یعنی وقتی که تراکنش دیگر قابلبرگشت نیست. هر چه این زمان کوتاهتر باشد، پلتفرم میتواند تراکنشهای بیشتری را در واحد زمان پردازش کند.
مقاومت در برابر حملات سیبیل نیز جزء حیاتی دیگری در قابلیت توسعه اجماع است که مربوط به جلوگیری از ایجاد هویتهای جعلی متعدد توسط یک فرد است؛ یعنی یک نفر با هویتهای مختلف نودهای متعددی را کنترل کند. حفظ این مقاومت در مقیاس بزرگ، چالشی جدی برای پلتفرمهای زنجیره بلوکی است.
چالشهای قابلیت توسعه اجماع
حفظ تعادل بین سرعت و ایمنی مهمترین چالش در قابلیت توسعه اجماع است. بالا رفتن سرعت اجماع معمولاً به معنای نزول تعداد گرههای درگیر در فرایند تأیید است؛ ولی چنین وضعیتی میتواند ایمنی پلتفرم را به خطر بیندازد. از سوی دیگر، بالا رفتن ایمنی با درگیر کردن گرههای بیشتر، میتواند منجر به کندی فرایند اجماع شود.
زمانی هم که تعداد نودها زیاد شود، مدیریت آنها به چالش تبدیل میشود؛ چراکه هماهنگی بین آنها و رسیدن به اجماع در زمان مناسب دشوارتر میشود. این مسئله تأخیر در تأیید تراکنشها و نزول کارایی کلی پلتفرم را به دنبال دارد. چالش سوم حفظ تمرکززداییاست که پلتفرمهای زنجیره بلوکی با آن مواجه هستند. بالا رفتن قابلیت توسعه اغلب منجر به تمرکز بیشتر قدرت در دست تعداد کمی از مشارکتکنندگان میشود که با اصول اساسی زنجیره بلوکی در تضاد است.
راهکارهای بهبود قابلیت توسعه اجماع
یکی از این راهکارهای قابلیت توسعه اجماع بهبود الگوریتمهای اجماع است. برای مثال، الگوریتمهای جدیدی مانند اثبات سهام واگذارشده (DPoS) یا اثبات اقتدار (PoA) سرعت اجماع را بالا رفتن میدهند و همزمان، لایه قابلقبولی از ایمنی را حفظ میکنند.
راهکار دیگر استفاده از زیرشبکهها یا پلتفرمهای فرعی است که میتواند به بهبود قابلیت توسعه اجماع کمک کند. در این روش، پلتفرم به چندین زیرشبکه تقسیم میشود که هر کدام مسئولیت رسیدن به اجماع راجع به بخشی از تراکنشها را بر عهده دارند. این رویکرد میتواند سرعت کلی پلتفرم را بالا رفتن دهد.
اجماع غیرهمزمان نیز رویکردی نوآورانه است که در آن، گرهها نیازی به همگامسازی کامل با یکدیگر ندارند. این روش میتواند سرعت اجماع را بالا رفتن دهد، ولی پیادهسازی آن پیچیدهتر است و چالشهای خاص خود را دارد. بالا رفتن بودجه امنیتی نیز میتواند به بهبود قابلیت توسعه اجماع کمک کند. با بالا رفتن پاداشها برای مشارکتکنندگان در فرایند اجماع، میتوان انگیزه بیشتری برای مشارکت در پلتفرم ایجاد کرد و ایمنی کلی را بالا رفتن داد.
نمونههایی از راهکارهای قابلیت توسعه لایه ابتدایی
سگویت (SegWit) و شاردینگ (Sharding) دو نمونه از راهکارهای قابلیت توسعه لایه یک هستند. «سگویت» تغییری در پایگاه کد زنجیره بلوکی است که کارایی و ظرفیت تراکنشها را بهبود میبخشد. «شاردینگ» هم راهکاری است که زنجیره بلوکی را به زیرشبکههای کوچکتری به نام «شارد» تقسیم میکند. هر دوی این راهکارها مستلزم تغییرات ساختاری یا اساسی در زنجیره بلوکی هستند؛ ازاینرو، این راهکارها درونزنجیرهای یا لایه ابتدایی محسوب میشوند.
سگویت
سگویت (SegWit) مخفف عبارت «Segregated Witness» است و بهروزرسانی استاندارد برای زنجیره بلوکی بیت کوین است که نحوه و ساختار ذخیره دادهها را تغییر میدهد. این راهکار از نظر فنی به این شکل کار میکند که حجم اطلاعات مربوط به امضای تراکنشها از بلاکها جدا میشود و در یک بخش جداگانه ذخیره میشود. با این کار، فضای بیشتری در هر بلاک برای ذخیره دادههای واقعی تراکنشها فراهم میشود. در نتیجه، تعداد تراکنشهایی که در هر بلاک قرار میگیرد، بالا رفتن مییابد.
بنابراین، سگویت منجر به بالا رفتن توان و ظرفیت زنجیره بلوکی بیت کوین میشود. سگویت در زنجیره بلوکی لایت کوین هم با موفقیت پیادهسازی شده که هارد فورکی از بیت کوین است و راهکار قابلیت توسعه خوبی برای این دو زنجیره بلوکی به شمار میرود.
با اینحال، سگویت به دلایل متعددی نمیتواند راهکار قابلیت توسعه پایداری باشد. اولاً، سگویت راهکاری عمومی برای همه زنجیره بلوکیها نیست و فقط میتواند برای زنجیره بلوکیهای مبتنی بر بیت کوین اعمال شود. دوم اینکه سگویت راهکاری بلندمدت نیست و به تمام مسائل قابلیت توسعه در زنجیره بلوکی بیت کوین نمیپردازد.
دلیل سوم هم این است که بهروزرسانی سگویت بیت کوین را قادر میسازد تا تراکنشهای بیشتری را پردازش کند، ولی زمان تأیید تراکنشها را نزول نمیدهد. بنابراین، اگرچه سگویت به بالا رفتن توان عملیاتی و ظرفیت زنجیره بلوکی بیت کوین یاری میدهد، ولی راهحل کاملی برای حل مشکل قابلیت توسعه زنجیره بلوکی ارائه نمیدهد.
شاردینگ
شاردینگ (Sharding) روشی برای پارتیشنبندی پایگاه داده است که یک پایگاه داده بزرگ را به بخشهای کوچکتر تقسیم میکند و مدیریت و کارایی آن را بهبود و زمان پاسخ به درخواستها را نزول میدهد. این تکنیک میتواند در پلتفرمهای زنجیره بلوکی اعمال شود؛ بدین صورت که پلتفرم به بخشهای مختلفی تقسیم میشود که هر کدام توسط گروه خاصی از گرهها (Nodes) اداره میشوند.
با اعمال شاردینگ، میتوان توان عملیاتی کلی زنجیره بلوکی را تا حد زیادی بالا رفتن داد، زیرا گروههای متعددی از نودها میتوانند تراکنشها را به صورت موازی پردازش کنند. این روش به پارتیشنبندی افقی نیز معروف است.
در شاردینگ، یک پلتفرم زنجیره بلوکی به بخشهای مختلفی تقسیم میشود که به آنها «شارد» گفته میشود و هر شارد توسط گرههای خاصی که به آن تخصیص داده شده، اداره میشود. این کار باعث میشود پلتفرم بتواند چندین تراکنش را بهطور همزمان پردازش کند و ظرفیت و توان کلی آن بالا رفتن یابد.
این رویکرد میتواند در شرایطی مفید باشد که تعداد تراکنشها در زنجیره بلوکی زیاد است و پلتفرم در تلاش است تا به تقاضای زیاد کاربران پاسخ دهد. همچنین میتوان با توسعه پلتفرم، شاردهای بیشتری به آن اضافه کرد. با این حال، شاردینگ نیز با چالشهای خاص خود همراه است، از جمله حفظ ایمنی، یکپارچگی پلتفرم و اطمینان از ارتباط کارآمد و ایمن بین شاردهای مختلف.
زنجیرههای جانبی
در فناوری زنجیره جانبی یا سایدچین (Sidechains)، یک زنجیره بلوکی ثانویه یا جانبی ایجاد میشود که به زنجیره بلوکی اصلی متصل است. مزیت اصلی زنجیرههای جانبی این است که با استفاده از مکانیزمی به نام پیوند دوطرفه (Two-way Peg)، امکان جابجایی داراییها بین زنجیره اصلی و زنجیره جانبی را با نرخ ثابتی فراهم میکند.
این باعث میشود بتوان بعضی از تراکنشها و برنامههای کاربردی را از زنجیره اصلی به زنجیره جانبی منتقل کرد تا ازدحام پلتفرم را نزول داده و قابلیت توسعه زنجیره بلوکی را بالا رفتن دهد.
در میان راهکارهای قابلیت توسعه محبوبی که از فناوری زنجیره جانبی استفاده میکنند، میتوان به پاراچین (Parachain) در زنجیره بلوکی پولکادات اشاره کرد. این راهکارها به دلیل توانایی خود در بالا رفتن قابلیت توسعه و با این حال حفظ لایه بالایی از ایمنی و حریم خصوصی، مورد توجه قرار گرفتهاند.
راهکارهای قابلیت توسعه لایه دوم و انواع آن
راهکارهای خارج از زنجیره که بهعنوان راهحلهای قابلیت توسعه لایه دو نیز شناخته میشوند، برای بالا رفتن کارایی و سرعت تراکنشها در پلتفرم زنجیره بلوکی به کار میروند. این راهکارها یک لایه ثانویه را روی پلتفرم اصلی زنجیره بلوکی اضافه میکنند که به طور خاص برای انجام حجم بالای تراکنشها طراحی شده است.
لایه دوم تراکنشها را با سرعت بالا و بدون نیاز به ارجاع آنها به زنجیره بلوکی اصلی پردازش میکند و درنهایت، تراکنشها را بهصورت دستهای روی زنجیره بلوکی اصلی تسویه میکند. به بیان سادهتر، پردازش اولیه تراکنشها با سرعت بالاتری روی لایه دوم انجام و تسویه نهایی به پلتفرم اصلی ارجاع داده میشود. با این کار، بار بزرگی از دوش پلتفرم اصلی برداشته میشود و ازدحام و کندی پلتفرم از میان میرود.
راهکارهای لایه دو که با ظهور استانداردهای لایه دوم اتریوم محبوبیت فراوانی یافتند، به چند دسته اصلی تقسیم میشوند. در حال حاضر، صدها راهکار لایه دوم روی بیت کوین، اتریوم و دیگر زنجیره بلوکیها ساخته شده است که هر یک کاربرد ویژه خود را دارد. در ادامه، مهمترین این راهکارها را بررسی میکنیم.
رولاپهای اثبات دانش صفر
رولاپهای اثبات دانش صفر (ZK-Rollups) یا زیکی-رولاپها، بستهای از دادهها را از زنجیره اصلی میگیرند و در ازای آن ضمانتای روی زنجیره میگذارند. سپس، این دادهها برای پردازش و محاسبات به خارج از زنجیره منتقل میشوند. این راهکار میتواند یک بلاک در هر دقیقه تولید کند و قادر به پردازش ۲۰۰۰ تراکنش در ثانیه است. معنا «دانش صفر» به این معناست که تمام تأییدکنندگان میتوانند بدون افشای اطلاعات واقعی، از یکسان بودن اطلاعات خود اطمینان حاصل کنند.
رولاپهای اثبات دانش صفر به دلیل ذخیره کردن دادهها در خارج از زنجیره، کارایی بهتری نسبت به لایه یک دارند. در زی کی رولاپها درخواستهای کمتری برای دسترسی به دادههای مهم مربوط به قراردادهای هوشمند وجود دارد. این امر باعث صرفهجویی چشمگیر در توان پردازشی میشود و ظرفیت کمتری از زنجیره بلوکی برای تأیید تراکنشها اشغال میشود. در نتیجه، کارمزدها نزول مییابند و تراکنشها سریعتر و ارزانتر میشوند.
رولاپهای آپتیمیستیک
رولاپهای آپتیمیستیک (Optimistic Rollups) روی لایه ابتدایی اجرا میشوند و امکان اجرای تعداد زیادی از قراردادهای هوشمند را بدون فشار بیش از حد به پلتفرم فراهم میکنند. این راهکارها از همان لایه امنیتی برخوردار هستند که زنجیره اصلی دارد. با این حال، توان عملیاتی آنها از پلاسما و رولاپهای اثبات دانش صفر کمتر است.
تفاوت اصلی این نوع رولاپ با رولاپهای اثبات دانش صفر در این است که تراکنشهای لایه دوم زمان بیشتری میبرند. رولاپهای آپتیمیستیک باید برای بهروزرسانی وضعیت، به تأییدکنندگان خارجی برای بررسی ریشههای مرکل متکی باشند. ولی مزیت آنها این است که میتوانند از قراردادهای هوشمند به شیوهای مشابه با زنجیره بلوکی اصلی پشتیبانی کنند.
پلاسما
پلاسما (Plasma) راهکار لایه دوم اتریوم است. این راهکار برای بالا رفتن قابلیت توسعه از زنجیره بلوکیهای فرزند یا ثانویه استفاده میکند که به زنجیره اصلی در تأیید تراکنشها کمک میکنند. زنجیرههای پلاسما شبیه پاراچینهای (Parachains) پولکادات هستند؛ با این تفاوت که ساختار سلسلهمراتبی آنها طوری طراحی شده است که تراکنشها را از زنجیره اصلی دریافت کنند و با رهاسازی منابع، قابلیت توسعه را بهبود بخشند.
کانالهای پرداخت
کانالهای پرداخت (Payment Channels) نیز راهی برای انجام تراکنشها بهصورت موازی با زنجیره بلوکی اصلی و خارج از آن است. این فرایند شامل ایجاد یک کانال بین دو طرف تراکنش است که میخواهند با یکدیگر معامله کنند. تراکنشهایی که در این کانال انجام میشود خارج از زنجیره هستند، به این معنی که نیازی به اجماع گرههای زنجیره بلوکی ندارند و میتوانند با استفاده از قراردادهای هوشمند، با کارمزد کمتر و با سرعت بیشتری انجام شوند.
پلتفرم لایتنینگ (Lightning) در بیت کوین نمونهی محبوبی از کانال پرداخت موفق است. کانالهای پرداخت راهی برای انجام تعداد زیادی از تراکنشهای خارج از زنجیره فراهم کرده، بار روی زنجیره بلوکی اصلی را نزول داده و امکان پردازش تراکنشهای سریعتر و ارزانتر را فراهم میکنند.
این راهکار چهار مزیت اصلی دارد: پرداختهای آنی در حد میلیثانیه (در مقایسه با زمان متوسط ۱۰ دقیقهای تراکنشهای بیت کوین)، قابلیت توسعه بالا با قابلیت پردازش میلیونها تا میلیاردها تراکنش در ثانیه، هزینه بسیار پایین که امکان پرداختهای خرد را فراهم میکند و امکان تبادلات بین زنجیرهای برای زنجیره بلوکیهایی که از توابع هش رمزنگاری یکسانی استفاده میکنند.
راهکارهای قابلیت توسعه در زنجیره بلوکی اتریوم
پلتفرم اتریوم، بزرگترین زنجیره بلوکی قراردادهای هوشمند در دنیای ارزهای دیجیتال، تنوع گستردهای از راهکارهای لایه دوم را دارد؛ طوری که میتوان گفت بیشتر راهکارهای لایه دوم روی این پلتفرم بنا شدهاند. گستردگی اتریوم و راهکارهای آن به حدی است که نرخ آن را دارد به تعدادی از مهمترین آنها بپردازیم.
استارکور
استارکور (Starkware) یکی از ارائهدهندگان راهکارهای قابلیت توسعه لایه دوم برای اتریوم است که سه محصول اصلی دارد: استارکنت (StarkNet)، استارکاکس (StarkEx) و زبان کائیرو (Cairo). استارکنت یک رولاپ اثبات دانش صفر بدون مرکزیت است که به توسعهدهندگان امکان میدهد قراردادهای هوشمند خود را روی پلتفرم آزمایشی آن مستقر کنند. مزیت اصلی استارکنت این است قابلیت توسعه نامحدود را برای برنامههای بدون مرکزیت فراهم میکند و در عین ایمنی و قابلیت ترکیبپذیری در اتریوم را برای آن حفظ میکند.
آپتیمیزم
آپتیمیزم (Optimism)، یک زنجیره رولاپ خوشبینانه سازگار با ماشین مجازی اتریوم (EVM) است. سرعت بالا، سادگی و ایمنی از مزایای اصلی استفاده از این راهکار است. کاربران میتوانند با استفاده از آپتیمیزم، داراییهای خود را به داخل و خارج از پلتفرم منتقل کنند. پروژههای مهمی مانند یونیسواپ نسخه ۳ (Uniswap V۳) از این راهکار استفاده میکنند.
آربیتروم
آربیتروم (Arbitrum) راهکار لایه دوم دیگر در زنجیره بلوکی اتریوم است که برای بالا رفتن سرعت و قابلیت توسعه قراردادهای هوشمند طراحی شده و ویژگیهای حریم خصوصی بیشتر را نیز فراهم میکند. این پلتفرم به توسعهدهندگان اجازه میدهد قراردادها و تراکنشهای ماشین مجازی اتریوم (EVM) را بدون تغییر در لایه دوم اجرا کنند، بدون آنکه ایمنی لایه یک به خطر بیفتد.
پالیگان
پالیگان (Polygon) یکی از بزرگترین و مشهورین راهکارهای لایه دوم اتریوم است که از فناوریهای مختلفی برای بالا رفتن قابلیت توسعه استفاده میکند. این راهکارها شامل اثبات سهام پالیگان (PoS) به عنوان یک زنجیره جانبی سازگار با ماشین مجازی اتریوم، پالیگان میدن (Miden) بهعنوان یک رولاپ اثبات دانش صفر مبتنی بر استارکور، پالیگان هرمز (Hermez) بهعنوان یک رولاپ اثبات دانش صفر متنباز و چندین راهکار دیگر است. پالیگان در سال ۲۰۲۲ نسخه اثبات دانش صفر ماشین مجازی اتریوم را ابلاغ کرد که هدف آن نزول هزینههای تراکنش و بهبود قابلیت توسعه اتریوم است.
پرسشهای متداول
با بالا رفتن تعداد کاربران و تراکنشها در پلتفرم زنجیره بلوکی، قابلیت توسعه بالای زنجیره بلوکی برای حفظ یک پلتفرم سریع و کارآمد اهمیت بسیار پیدا میکند. بدون مقیاس پذیری مناسب، پلتفرم دچار ازدحام و کندی شده و این میتواند بر تجربه مخاطب اثر منفی بگذارد و مانع پذیرش و توسعه تکنولوژی زنجیره بلوکی شود.
مقیاس پذیری زنجیره بلوکی معمولاً با رقم تعداد تراکنش در ثانیه (TPS) یک پلتفرم اندازهگیری میشود که همچنین به عنوان توان عملیاتی پلتفرم نیز شناخته میشود.
سهگانه زنجیره بلوکی (Blockchain Trilemma) اشاره به این مشکل دارد که هر سه ویژگی قابلیت توسعه، تمرکززدایی و ایمنی را نمیتوان همزمان در یک سیستم زنجیره بلوکی به دست آورد و معمولاً بالا رفتن قابلیت توسعه به نرخ نزول ایمنی یا تمرکززدایی پلتفرم تمام میشود.
راهحلهای مختلفی برای بالا رفتن قابلیت توسعه زنجیره بلوکی وجود دارد که شامل راهکارهای لایه ۱ مانند سگویت و شاردینگ و راهکارهای لایه ۲ مانند زنجیرههای جانبی و کانالهای پرداخت است.
جمعبندی
قابلیت توسعه در زنجیره بلوکی چالشی پیچیده و چندوجهی است. راهکارهای متنوعی که در این مقاله بررسی شد، از راهحلهای درون زنجیرهای مانند سگویت و شاردینگ گرفته تا راهکارهای برون زنجیرهای، همگی تلاشهایی برای حل معضل سهگانه زنجیره بلوکی هستند. با توسعه فناوری و تکامل راهکارهای موجود، آینده قابلیت توسعه زنجیره بلوکی امیدوارکننده به نظر میرسد.
احتمالاً شاهد ظهور راهحلهای ترکیبی و نوآورانهتری خواهیم بود که توازن بهتری بین سرعت، ایمنی و تمرکززدایی برقرار میکنند. همچنین، توسعه استانداردهای بین زنجیرهای میتواند نقش مهمی در بالا رفتن کارایی و تطبیقپذیری نظام زیستی زنجیره بلوکی ایفا کند. تجربه شما از قابلیت توسعه زنجیره بلوکی چیست؟ آیا تاکنون در تعاملات خود با پلتفرمهای مختلف مانند بیت کوین، اتریوم یا پلتفرم تون (TON)، مشکلاتی داشتهاید که اکنون احتمال میدهید بهخاطر قابلیت توسعه باشد؟