اکوسیستم بلاک چین در سالهای گذشته تکامل زیادی داشته است. با این حال، برای بکارگیری سیستمهای بلاک چین عمومی موجود، چالش مهمی وجود دارد که بهعنوان مقیاس پذیری (Scalability) شناخته میشود. اگرچه توسعهدهندگان تلاش زیادی را برای حل این مسئله انجام دادهاند، هنوز عملکرد بلاک چین به سطح عملکرد سیستمهای پرداخت سنتی نرسیده است و این مسئله چشمانداز پذیرش بلاک چین و بکارگیری آن در سطح گستردهتر در آینده را با مشکل روبرو کرده است. با این حال، راه حلهایی نیز برای حل مشکل مقیاس پذیری ارائه شده است که در این مقاله قصد داریم آنها را به شما معرفی کنیم اما قبل از آن بهتر است با مقیاس پذیری بلاک چین و اهمیت آن بیشتر آشنا شوید.
مقیاس پذیری چیست؟
قبل از اینکه به توضیح مقیاس پذیری در بلاک چین به زبان ساده بپردازیم، در ابتدا لازم است با سهگانه بلاک چین (Blockchain Trilemma) که توسط ویتالیک بوترین (Vitalik Buterin)، خالق اتریوم، مطرح شد آشنا شوید. وقتی سه عامل، یک ساختار را تشکیل میدهند تنها دو مورد از سه عامل بهصورت همزمان قابلدستیابی هستند که به این موضوع سهگانگی گفته میشود. سهگانه یا سهراهی بلاک چین نیز شامل تمرکززدایی (Decentralization)، امنیت (Security) و مقیاسپذیری میشود.
شبکههای ارز دیجیتال مانند بیت کوین (Bitcoin) و اتریوم (Ethereum) امنیت و غیرمتمرکز بودن را در اولویت قرار میدهند و بنابراین، از مقیاس پذیری دست میکشند. برخی سیستمها مانند ریپل (Ripple) مقیاسپذیری و امنیت را انتخاب و بنابراین، تمرکززدایی را قربانی میکنند. این یک فرمول رسمی برای تعیین وضعیت بلاک چین نیست اما بر اساس مشاهداتی که متخصصان انجام دادهاند تشخیص داده شده است.
اما مقیاس پذیری بلاک چین چیست؟ مقیاس پذیری بلاک چین به این معنی است که بلاک چین چقدر خوب میتواند تعداد فزاینده تراکنشها را مدیریت کند. بخش عمدهای از این مسئله از این واقعیت ناشی میشود که در بلاک چین باید همه مشارکتکنندگان، اعتبار تراکنشها را تایید کنند و این امر میتواند باعث کاهش سرعت تایید تراکنشها شود.
برای مثال، در حال حاضر، توان عملیاتی یا نرخ تراکنش در ثانیه (TPS) بیت کوین، ۷ تراکنش در ثانیه است. در مقایسه اتریوم و بیت کوین، این نرخ برای اتریوم کمی بالاتر و حدود ۳۰ TPS است. اگرچه این اعداد در نگاه اول چندان بد نیستند، در مقایسه با توان عملیاتی شبکه پرداخت ویزا (Visa) که تا حدود ۱۷۰۰ TPS میرسد، تقریبا هیچ محسوب میشوند.
این مشکل با اندازه بلوک حدود ۱ مگابایتی بلاک چین تشدید میشود. معمولا اندازه کوچک بلوک، تعداد تراکنشهای پردازششده توسط هر بلوک را محدود میکند. علاوه بر این، نحوه عملکرد بیت کوین بهگونهایست که هر بار که بلاک چین میخواهد تراکنشها را تایید کند، باید همه تاریخچه تراکنش زنجیره را دانلود کند. بنابراین، با افزایش اندازه بلاک چین و اشغال حافظه بیشتر، سرعت تایید تراکنشها کاهش بیشتری مییابد و مقیاس پذیری بیت کوین با مشکل مواجه میشود.
چه عواملی در ایجاد مشکل مقیاس پذیری تاثیرگذارند؟
تحقیقات عوامل متعددی را شناسایی کردهاند که میتوانند در ایجاد مشکل مقیاس پذیری بلاک چین موثر باشند. این عوامل به یکدیگر وابسته نیز هستند. در ادامه با مهمترین عوامل موثر بر مقیاس پذیری ارز دیجیتال آشنا میشوید.
- توان عملیاتی: همانطور که مطرح شد توان عملیاتی به همه تراکنشهای انجامشده در ثانیه (TPS) اشاره دارد. توان عملیاتی معمولا معیاری است که افراد در هنگام صحبت از مقیاس پذیری بلاک چین به آن اشاره میکنند. همانگونه که مطرح شد ویزا بهعنوان یک موسسه متمرکز، دارای توان عملیاتی بسیار بالایی نسبت به یک بلاک چین غیرمتمرکز مانند بیت کوین است؛ به این معنی که میتواند حجم بالاتری از تراکنشها را بهصورت کارآمد مدیریت کند.
- تاخیر زمانی (Latency): تاخیر زمانی که بهعنوان نهایی شدن تراکنش (Transaction Finality) نیز شناخته میشود به معنی مدتزمان لازم برای رسیدن به تایید تراکنش است. برای مثال، اگرچه نرخ تراکنش در ثانیه بیت کوین ۷ است، میان ایجاد هر بلوک نیز ۱۰ دقیقه زمان انتظار وجود دارد. به دلیل اینکه در بلاک چین بیت کوین، ماینرها (Miners) باید تراکنشها را تایید کنند، پردازش تراکنشها میتواند تا ۹۰ دقیقه به طول انجامد. بنابراین، وقتی بیت کوین میگوید ۷ TPS، این بدین معنی نیست که شما میتوانید به هفت فرد ارز دیجیتال ارسال کنید و انتظار داشته باشید که در یک ثانیه انجام شود.
- اندازه بلوک: اندازه بلوک به معنای ظرفیت بلوک است. برای مثال، اندازه بلوک بیت کوین برای ذخیره تراکنش، ۱ مگابایت است. بلوکهای با ظرفیت بالاتر میتوانند تراکنشهای بیشتری را ذخیره کنند که این امر میتواند توان عملیاتی شبکه را تقویت کند.
- نودها (Nodes): نود در ارز دیجیتال چیست؟ نودها دستگاهها یا کامپیوترهایی هستند که به بلاک چین متصل میشوند، تراکنشها را تایید میکنند و امنیت بلاک چین را تضمین میکنند. معمولا وقتی تعداد تراکنشها زیاد باشد به تعداد بیشتر نود در بلاک چین نیاز است. بنابراین، نودها در توان عملیاتی و تاخیر زمانی بلاک چین و در نتیجه، مقیاس پذیری آن نقش مهمی ایفا میکنند.
- فضای ذخیرهسازی: فضای ذخیرهسازی به ظرفیت کلی بلاک چین اشاره دارد. همه تراکنشهای بلاک چین در دفتر کل آن ثبت میشوند. هر چقدر تراکنشها بیشتر باشند، دادههای بیشتری ایجاد میشوند و نیاز به فضای ذخیرهسازی افزایش مییابد. این مسئله میتواند باعث کندی سیستم و آسیب به عملکرد آن شود.
- انرژی محاسباتی: انرژی محاسباتی، انرژیای است که برای استخراج استفاده میشود. مصرف انرژی متفاوت است و به مدل اجماع بلاک چین بستگی دارد. برای مثال، بیت کوین از مکانیسم اجماع اثبات کار (PoW) استفاده میکند که این مکانیسم باعث میشود استخراج بیت کوین بسیار هزینهبر باشد. بنابراین، PoW انرژی بسیار بیشتری را نسبت به مکانیسم اثبات سهام (PoS) مصرف میکند.
- هزینه: به معنی هزینه کلی برای اعتبارسنجی تراکنش است. ماینرها میتوانند تراکنشهایی را تایید کنند که به آنها امکان میدهد کارمزد بیشتری را دریافت کنند. بنابراین، زمان لازم برای تایید تراکنشهایی که کارمزد کمتری به همراه دارند میتواند خیلی طولانی باشد.
چه راهحلهایی برای بهبود مقیاس پذیری وجود دارد؟
با توجه به اینکه مقیاس پذیری مهمترین مانع برای پذیرش بلاک چین محسوب میشود، راهحلهایی برای رفع این مسئله مطرح شده است. در ادامه با این راهحلها آشنا میشوید.
راهحلهای لایه اول مقیاس پذیری
متداولترین راهی که برای بهبود مقیاس پذیری بلاک چین مطرح میشود استفاده از راهحلهای لایه اول است. این راهحلها به ایجاد تغییراتی در نرمافزار شبکه اصلی بلاک چین نیاز دارند و به همین دلیل، به آنها راهحلهای درونزنجیرهای (On-Chain) نیز گفته میشود. این راهحلها ویژگیهای اصلی بلاک چین مانند اندازه بلوکها و زمان تایید بلوک را بهبود میبخشند.
شاردینگ (Sharding)
شاردینگ یک تکنیک مقیاس پذیری درونزنجیرهای شناخته شده است که بر تجزیه بلاک چین به تکههای کوچکتر و قابلمدیریتتر به نام Shards تمرکز دارد. در این صورت، شبکه میتواند قطعات را بهصورت موازی با یکدیگر اجرا کند. در واقع، با این کار، شبکه بلاک چین به بخشهای زیادی تقسیم میشود و هر بخش توسط نودهایی که به آن اختصاص داده شدهاند مدیریت میشود. این امر موجب میگردد که گروههای مختلف نودها بهصورت همزمان مشغول به پردازش تراکنشها باشند. یکی از مراحلی که در توسعه اتریوم ۲ در نظر گرفته شده است، شاردینگ است. به همین دلیل این پروژه میتواند به بهبود مقیاس پذیری اتریوم کمک کند.
نظارت مجزا (Segregated Witness)
این روش که بهعنوان سگویت (SegWit) نیز شناخته میشود، یک ارتقاء پروتکل در شبکه بلاک چین محسوب میشود که بر تغییر روش و ساختار ذخیره دادهها تمرکز دارد. SegWit به حذف دادههای امضای مرتبط با هر تراکنش کمک میکند و در نتیجه، ظرفیت و فضای ذخیرهسازی برای انجام تراکنشها را افزایش میدهد. لازم است بدانید که امضای دیجیتال حدود ۷۰ درصد از فضای کل یک تراکنش را اشغال میکند. این امضا که یکی از انواع امضای الکترونیکی است، برای تایید هویت افراد و یکپارچگی تراکنش استفاده میشود. یک مثال ساده برای این نوع امضا، امضایی است که اغلب در انتهای ایمیل خود در نظر میگیریم.
هارد فورک (Hard Fork)
هارد فورک، رویهای است که بر ایجاد تغییرات ساختاری در خصوصیات شبکه بلاک چین تمرکز دارد. در حالی که هارد فورک تنها میتواند شامل افزایش اندازه بلوک یا کاهش زمان تایید بلوک باشد، در برخی مواقع، هارد فورکهای بحثبرانگیز نیز اتفاق میافتند. این هارد فورکها به معنی انشعاب در شبکه بلاک چین هستند. و زیرمجموعه یک جامعه بلاک چین ممکن است تصمیم به ایجاد تغییرات اساسی در شبکه بگیرد. برای مثال، پس از هک پروژه دائو (DAO) بر روی بلاک چین اتریوم، یک هارد فورک اتفاق افتاد و موجب شد شبکه اتریوم دچار انشعاب شود. در نتیجه آن، شبکه به دو بلاک چین اتریوم و اتریوم کلاسیک تقسیم شد.
راهحلهای مقیاسپذیری لایه دوم
این راهحلها که بهعنوان راهحلهای برون زنجیرهای (Off-Chain) نیز شناخته میشوند، به تایید تراکنشها در خارج از شبکه اصلی بلاک چین کمک میکنند. در نتیجه، آنها میتوانند در مقابله با چالشهای تراکم شبکه و بهبود مقیاس پذیری بسیار موثر باشند.
کانال وضعیت (State Channel)
کانالهای وضعیت، ارتباطهای دوطرفه میان کانالهای تراکنش برونزنجیرهای و شبکههای بلاک چین را از طریق رویکردهای مختلف امکانپذیر میسازند. در نتیجه میتوانند سرعت و ظرفیت تراکنش را بهطور قابلتوجهی افزایش دهند. برای مثال، کاربران میتوانند با هزینهای اندک، کانال پرداخت ایجاد کنند و در آن بهصورت خصوصی تراکنش داشته باشند و با فردی دیگر نقل و انتقال رمز ارز را انجام دهند. برای انجام این کار میتوان از قراردادهای هوشمند (Smart Contracts) کمک گرفت. پس از اتمام کار، کاربران میتوانند کانال را ببندند و وضعیت نهایی تراکنش خود را به بلاک چین اصلی گزارش دهند. برخی از محبوبترین کانالهای پرداخت، شبکه لایتنینگ (Lightning Network) بیت کوین و رایدن (Raiden) اتریوم هستند.
زنجیرههای جانبی (Sidechains)
زنجیرههای جانبی بهعنوان شبکههایی مجزا عمل میکنند اما مستقیما با بلاک چین اصلی در ارتباط هستند. آنها میتوانند به انجام تراکنشها و وظایف اصلی خارج از زنجیره اصلی کمک کنند و در نتیجه، بار را از روی زنجیره اصلی بردارند. هر یک از زنجیرههای جانبی میتوانند دارای معماری و حتی مکانیسم اجماع خاص خود باشند. برای مثال، پلاسما (Plasma) اتریوم یک راهحل مقیاسپذیر است که از این روش استفاده کرده است.
مکانیسمهای اجماع مقیاسپذیر
برخی تکنیکها برای سادهتر کردن اجماع طراحی شدهاند و در نتیجه میتوانند به بهبود مقیاس پذیری ارز دیجیتال و افزایش توان عملیاتی شبکه کمک کنند. در ادامه با این مکانیسمها آشنا میشوید.
اثبات سهام نمایندگیشده (Delegated Proof-of-Stake)
این مکانیسم اجماع مشابه فرایند دموکراتیک کنترل یک کشور است. در این مکانیسم، دارندگان توکن، اعتبارسنجهای تراکنشها را انتخاب میکنند. تعداد اعتبارسنجها میتواند میان ۱۰ تا ۱۰۰ نود متغیر باشد و بهصورت مرتب نیز تغییر کند.
اثبات اعتبار (Proof-of-Authority)
در این مکانیسم، حق تولید بلوکهای جدید به نودهایی تعلق میگیرد که صلاحیت خود را برای انجام این کار ثابت کردهاند. سه معیاری که در این زمینه در نظر گرفته میشود این است که نود قابلاعتماد باشد و سوابق کیفری نداشته باشد، هویت او بهصورت رسمی در شبکه تایید شود و همچنین، مایل به سرمایهگذاری در شبکه باشد.
تحمل خطای بیزانس (Byzantine Fault Tolerance)
این مکانیسم اجماع به معنای توانایی یک سیستم کامپیوتری برای ادامه کار حتی در شرایط از کار افتادن نودها یا مشکل در عملکرد آنهاست. این اصطلاح از فرضیهای به نام مشکل ژنرالهای بیزانسی (Byzantine Generals Problem) گرفته شده است. فرض کنید هر ژنرال دارای ارتش و یک مکان مخصوص به خود در اطراف قلعه است و این ژنرالها باید بهصورت گروهی در مورد حمله یا عقبنشینی تصمیم بگیرند. اگر همه آنها تصمیم یکسانی بگیرند موفق میشوند اما اگر در ارتباط آنها مشکلی پیش بیاید یا خیانت اتفاق بیفتد، برخی از ژنرالها حمله و برخی دیگر عقبنشینی میکنند. در نتیجه، همه آنها شکست میخورند. تحمل خطای بیزانس نیز به این موضوع اشاره دارد که وقتی برخی نودها با مشکل مواجه میشوند یا سعی در فریب شبکه دارند، شبکه بتواند به کار خود ادامه دهد.
انواع دفتر کل توزیعشده مقیاسپذیر
تکنولوژی بلاک چین تنها یکی از زیرمجموعههای تکنولوژی دفتر کل توزیعشده یا DLT است. علاوه بر بلاک چین، میتوانید انواع دیگری از دفتر کل را کشف کنید. واقعیت جالب این است که ساختار داده در برخی از این انواع، مشابه با ساختار داده در انواع بلاک چین نیست و برای سازماندهی اطلاعات از زنجیرهای از بلوکها استفاده نمیکنند. یکی از بهترین نمونهها از میان انواع دفتر کل توزیعشده مقیاسپذیر، گراف جهتدار غیرمدور (Directed Acyclic Graph) یا DAG است که در این نوع دفتر کل، گرافها بهصورت ناهمزمان عمل میکنند و درنتیجه، امکان انجام مستقل تراکنشها را فراهم میکنند. علاوه بر این، آنها میتوانند تعداد نامحدودی از تراکنشها را پردازش کنند.
در انتها، مشکل مقیاس پذیری بلاک چین یکی از مسائل کلیدی است که مانع از پذیرش جهانی آن میشود. اگرچه در این زمینه پیشرفتهای بیشتری صورت خواهد گرفت اما نگرانی اصلی ما این نیست. در واقع، میتوان گفت تمرکززدایی و امنیت هنوز هم بسیار مهمتر از مقیاسپذیری هستند. اگرچه ممکن است در آینده راهحلهایی برای بهبود بیشتر مقیاس پذیری بلاک چین یافت شود، اما هنوز نمیدانیم که این راهحلها چقدر هزینهبر خواهند بود. بنابراین، بهتر است بر روی تقویت آنچه بلاک چین به بهترین نحو انجام میدهد، یعنی ارائه یک سیستم مالی غیرمتمرکز و امن، تمرکز کنیم.