این روزها نام مقیاس پذیری در بلاک چین و ارزهای دیجیتال بسیار به گوشمان میخورد و امکان دارد در مورد آن کنجکاویهایی داشته باشیم. بلاک چین بهعنوان یک فناوری نوظهور، توجه افراد زیادی را به خود جلب کرده است. بلاک چین بستری برای ذخیره اطلاعات است و وجود و تداوم فعالیت ارزهای دیجیتال به آن وابستگی دارد.
از مزایای متنوعی که فناوری بلاک چین دارد میتوان به امنیت دادهها، استقلال، تغییر ناپذیری، شفافیت و قابلیت حسابرسی اشاره کرد. وجود این مزایا باعث میشود که از فناوری بلاکچین نه تنها در حوزه ارزهای دیجیتال، بلکه در سایر حوزهها نیز به کار برده شود. اما چالش بزرگی که فناوری بلاک چین دارد، مقیاس پذیری است که یک مانع برای آن به حساب میآید.
بلاک چین بیت کوین اکنون میتواند در هر ثانیه 7 تراکنش پردازش کند، در صورتی که بلاک چین اتریوم قادر به پردازش حدود 20 تراکنش در هر ثانیه است. ممکن است فکر کنید که این پردازش این میزان تراکنش برای کاربران عادی کافی است، اما اگر از بلاک چین به صورت جهانی و در سطح گسترده استفاده شود، آیا بازهم این میزان پردازش در ثانیه برای پاسخگویی به نیاز جهانی کافی است؟
اینجاست که اهمیت مقیاس پذیری نمایان و بهعنوان یک چالش یا مشکل برای فناوری بلاک چین شناخته میشود. در ادامه تصمیم داریم بیشتر درباره مقیاس پذیری و راهکارهای حل این چالش صحبت کنیم.
مقیاس پذیری چیست؟
احتمالا از مقدمهای که بیان کردیم، کمی متوجه شده باشید که مقیاس پذیری در بلاک چین به چه معناست. مقیاس پذیری به توانایی و ظرفیت در پشتیبانی از توان عملیاتی بالا و پردازش تعداد تراکنش مورد نیاز کاربران گفته میشود. به عبارت دیگر هنگامی که یک بلاک چین در زمان گسترش موارد استفاده، سرعت پردازش بالایی داشته باشد، یک بلاک چین با قابلیت مقیاسپذیری بالاست.
یک بلاک چین ایدهآل، بلاک چینی است که هر تعداد تراکنش مورد نیاز کاربران را پاسخ دهد و از این بابت کمترین محدودیتها را داشته باشد. هر بلاک چین، دارای 3 راس اصلی است که به آن سهگانه بلاک چین گفته میشود و عبارتند از تمرکززدایی، امنیت و مقیاسپذیری. براساس این سهگانه، قابلیت مقیاس پذیری از دو قابلیت دیگر، بیشتر امکانپذیر است و بلاکچینها میتوانند از طریق آن با سیستمهای قدیمی پرداخت رقابت کنند.
با این وجود بیشتر بلاکچینها به قابلیت تمرکززدایی و امنیت بیشتر توجه داشته و آنها را ارتقا دادهاند. همین امر باعث شده تا دستیابی به مقیاس پذیری برای آنها تبدیل به یک چالش شود.
بیت کوین در رقابت با شبکههای پرداخت سنتی مانند پیپال (paypal) با دو چالش اصلی روبرو است. یکی از چالشها بالا بودن کارمزد تراکنش ارز دیجیتال است. به دلیل بالا بودن سرعت پردازش در پیپال، کارمزد تراکنش آن نسبت به بلاکچین بیت کوین کمتر است.
چالش دیگر نیز کند بودن سرعت پردازش تراکنشها است. در شبکه بیت کوین در هر ثانیه تنها 7 تراکنش پردازش میشوند، در حالی که در شبکه پیپال، تعداد پردازش تراکنش در هر ثانیه برابر با 20 هزار است. این دو چالش باعث میشود تا بیت کوین برای جانشین شدن شبکههای پرداخت سنتی، کارآمد نباشد.
چرا مقیاسپذیری مهم است؟
در بررسی اهمیت مقیاس پذیری در بلاک چین باید گفت مهمترین ویژگی و قابلیت بلاک چین این است که غیرمتمرکز بوده و توسط هیچکس اداره و کنترل نمیشود. معماری غیرمتمرکز این سیستم زمانی بهدرستی انجام میشود که به اعضای یک شبکه اجازه میدهند تا بدون نیاز به اعتماد، آن را اداره و پروتکل بلاک چین را بر اساس مشوقها هدایت کنند.
تمرکززدایی به این دلیل مفید است که یک سیستم به خوبی غیرمتمرکز شده، یک نقطه ضعف برای خلاص شدن از شر مشکلاتی که یک حمله یا خرابی یک جزء ایجاد میکند، دارد. بلاک چینی که به درستی اجرا شده باشد، دارای استراتژیهایی برای جلوگیری از تبانی است و حمله از داخل را برای کاربران سخت میکند.
همانطور که به نظر میرسد، دستیابی به بلاک چینهایی که دو ویژگی قبلی را داشته باشند، دشوار است. مقیاسپذیری در بلاک چین، به عمل رشد شبکه به نقطهای گفته میشود که بدون به خطر انداختن امنیت و عدم تمرکز، در دسترس، قابل اجرا و ارزان باشد.
ویژگیهای یک بلاک چین مقیاسپذیر
همانطور که پیش تر گفتیم، مقیاس پذیری به این معناست که شبکه بلاک چین ظرفیت لازم برای پشتیبانی از تعداد تراکنشهای بالا و همچنین رشد یافتن آن در آینده را داشته باشد. به این صورت که با افزایش یافتن کاربران و موارد استفاده از بلاک چین، عملکرد و سرعت آن آسیب نبیند.
پس یک بلاکچین ایدهآل دارای سه ویژگی اصلی است؛ سرعت، امنیت و غیرمتمرکز بودن. اما نکته لازم به ذکری که وجود دارد این است که هر بلاک چین تنها میتواند دو مورد از 3 ویژگی یاد شده را داشته باشد.
- غیر متمرکز بودن بلاک چین: اصلیترین ویژگی بلاک چین غیرمتمرکز بودن آن است. غیرمتمرکز بودن به این معناست که بلاک چین با حذف واسطههای مالی همچون موسسات بانکی، بسترهای غیرمتمرکز مالی مانند دیفای (DeFi) را ایجاد کرده است. این بستر غیرمتمرکز سود را به جای واسطهها میان کاربران تقسیم میکند. علاوه بر آن، هیچ دولت، نهاد یا موسسهای امکان کنترل کردن و بدست آوردن اطلاعات تراکنش صورت گرفته را ندارد.
- امنیت بلاک چین: هرچقدر یک شبکه بلاک چین غیرمتمرکز باشد، امنیت آن هم بیشتر میشود. یک شبکه زمانی امنیت دارد که در برابر حملات 51 درصدی، یعنی زمانی که یک عامل بیشتر از نصف شبکه را کنترل کند، یا سایر عوامل تهدید کننده در امان باشد.
- سرعت تراکنش: سومین ویژگی اصلی شبکه بلاک چین، سرعت پردازش تراکنشها یا همان مقیاس پذیری در بلاک چین است. یک بلاک چین ایدهآل باید بتواند در یک ثانیه هزاران تراکنش را پردازش و تایید کند.
مشکلات مقیاسپذیری بلاکچینها
گفتیم که هر بلاک چین باید دارای سه ویژگی سرعت، امنیت و تمرکززدایی باشد. اما عدهای اعتقاد دارند که چنین چیزی امکانپذیر نیست و هیچ شبکهای نمیتواند به صورت همزمان دارای این سه قابلیت باشد.
هر یک از ارزهای دیجیتالی که بر مبنای الگوریتم اثبات کار (PoW) فعالیت دارند، یکی از این سه ویژگی را در شبکه بلاکچین خود فدای دیگری میکنند. بهعنوان مثال، شبکه بلاک چین بیت کوین، بهطور کامل غیرمتمرکز و همچنین دارای امنیت بالایی است، اما همانطور که گفتیم سرعت یا مقیاس پذیری بسیار کمی دارد. شبکه ارز دیجیتال ریپل، که برای آنکه سرعت پردازش تراکنشهای آن بالا باشد، از ویژگی تمرکززدایی چشم پوشی کرده و آن را در دستور کار خود قرار نداده است. (این شبکه میتواند 1000 تراکنش را در ثانیه تایید کند.)
به طور کلی میتوان چنین گفت که تمامی شبکههایی که برمبنای الگوریتم اجماع اثبات کار فعالیت دارند، ویژگی سرعت یا همان مقیاس پذیری در بلاک چین را فدای ویژگی تمرکززدایی میکنند. همین امر موجب میشود که نتوانند به کاربران خود سرعت مناسبی ارائه دهند.
اما برعکس آن، شبکههایی که مبتنی بر الگوریتم اثبات سهام (PoS) هستند، هدف خود را توجه به ویژگی مقیاس پذیری قرار دادهاند و به ویژگیهای امنیت و تمرکززدایی کمتر توجه داشتهاند. این امر موجب شده تا این شبکهها سرعت تراکنش بالاتری داشته باشند.
مقیاس پذیری بلاک چین بیت کوین
بارها در این متن بیان نمودیم که شبکه بلاک چین بیت کوین قابلیت مقیاس پذیری ندارد و این به دلیل الگوریتمی است که برمبنای آن فعالیت دارد یعنی الگوریتم اثبات کار (POW). در بیت کوین، برای تعیین کردن بلاک معتبر بعدی، باید از الگوریتم (POW) استفاده کرد. همچنین برای آنکه هر نود یا گره بتواند در مسابقه برای بلاک بعدی رقابت کند، لازم است تا بلاک جدید با کل شبکه همگام شود. به طور کلی میتوان گفت که الگوریتم اثبات کار بیت کوین، ساختاری آبشاری دارد.
در شبکه بیت کوین یک محدودیت پنهان وجود دارد و آن زمان اجرای هر دور از الگوریتم اجماع از دوره همگامسازی بزرگتر نیست. یعنی هرچقدر هر دور از الگوریتم اجماع، نسبت به مدت زمان همگامسازی بیشتر باشد، سرعت تراکنشها نیز بیشتر خواهد شد.
در هر تراکنش تمامی اطلاعات مانند آدرس عمومی فرستنده و گیرنده، زمان انجام تراکنش، امضای دیجیتال و دیگر دادهها در بلاک ذخیره میشوند. حجم هر تراکنش با دیگری فرق دارد، ولی به طور معمول بلاکهای بیت کوین که هر 10 دقیقه ایجاد میشوند، تا 4000 تراکنش را در بر میگیرند. با توجه به این میزان از ذخیرهسازی تراکنش، مشخص میشود که در هر ثانیه، 7 تراکنش در شبکه بیت کوین صورت میگیرد.
مقیاس بندی اثبات کار
در بررسی مشکل مقیاس پذیری در بلاک چین، طرحهای جدید الگوریتم اجماع اثبات کار، به گونهای پیشنهاد شدهاند که امنیت سیستم به همگامسازی بلاکهای جدید وابسته نباشد. به عبارت دیگر، لازم نیست دوره اجماع از زمان همگام سازی بیشتر باشد، ولی ممکن است قابل مقایسه یا حتی برابر باشد.
بهعنوان مثال، در شبکه «Bitcoin-NG»، اجماع فقط برای تعیین کردن رهبر دور (قابل اعتمادترین گرهای که بلاک جدید را منتشر میکند) مورد استفاده است، به جای آنکه کل مجموعه تعیین شود. بنابراین ممکن است همگامسازی تراکنشها به صورت موازی انجام شود و همچنین میتوان از اندازه بلاک بزرگتر استفاده کرد. سایر بلاک چینهایی که در این دسته قرار دارند شامل: اجماع ترکیبی (Hybrid Consensus)، بایزی کوین (Byzcoin) و گوست (GHOST) میشوند.
مقیاسبندی الگوریتمهای تحمل خطای بیزانس (BFT)
الگوریتمهای تحمل خطا بیزانس (Byzantine Fault Tolerance) گروهی از خانواده الگوریتمهای اجماع هستند که میتوانند به شکل دلخواهانه، گرههای معیوب را شناسایی کرده و به گرههای سالم اجازه دهند که در شبکهها غیرمتمرکز به توافق برسند.
این الگوریتم اجماع در اوایل دهه 80 مطرح شد اما چون کاربرد واقعی نداشت، در سال 1995 نسخه عملیتر آن با نام تحمل خطای بیزانس عملی (PBFT) معرفی شد.
راهکارهای حل مشکلات مقیاس پذیری
برای آنکه راهکارهایی برای حل مشکلات مقیاس پذیری در بلاک چین ارائه دهیم، بهتر است با همان مثال بیت کوین پیش برویم.
تصور کنید افراد زیادی شروع به ارسال بیت کوین برای یکدیگر کنند، آن هم درحالی که در شبکه بلاک چین بیت کوین، در هر ثانیه تنها تعداد مشخصی تراکنش انجام میشود. پس چه اتفاقی میافتد اگر تقاضا برای تراکنش از سرعت انجام آن افزایش یابد؟ نتیجه این میشود که در بلاک چین کمبود فضا به وجود میآید و زمان انتظار تایید تراکنش و کارمزد هر تراکنش افزایش پیدا میکند.
اما در ادامه برخی از راهکارهایی که چالشها و مشکلات مقیاس پذیری در بلاک چین را حل میکند بیان خواهیم کرد:
افزایش اندازه بلاک
سادهترین راه حل برای افزایش دادن تعداد تراکنشهای پردازش شده در هر بلاک، این است که اندازه آن بلاک را افزایش داد. این امر موجب میشود که حداکثر تراکنشهای پردازششده در هر ثانیه زیادتر شود. درصورتی که میانگین اندازه تراکنش ثابت بماند، دوبرابر شدن اندازه بلاک، باعث دوبرابر شدن تعداد تراکنشهای پردازش شده در ثانیه میشود.
در سال 2017 بلاکچین بیت کوین برای آنکه حجم بلاک افزایش پیدا کند، یک هارد فورک (سکه جدید) به نام بیت کوین کش ایجاد کرد. در این بلاک چین جدید، حجم هر بلاک 8 مگابایت شد و توانست مقیاس پذیری بیشتری نسبت به بیت کوین ارائه بدهد.
راه حل افزایش اندازه بلاک ممکن است در ابتدا یک راه حل عملی به نظر برسد، ولی این کار باعث میشود که بلاک چین متمرکز شده و در مقایسه با راه حلهای جدیدی که این روزها به کار میرود، کمی ابتدایی به حساب میآید.
کاهش اندازه تراکنش
در عمل، ممکن است تراکنشها بسته به عوامل گوناگونی، اندازههای متفاوتی داشته باشند. در بلاک چین بیت کوین نزدیک به 65 درصد از دادههای هر تراکنش شامل امضاهای دیجیتالی میشد. اما در اواخر سال گذشته، شرکت بلاک استریم (Blockstream) پروتکلی به نام سگویت ارائه داد که منجر به ایجاد یک سافت فورک بر روی بلاک چین بیت کوین ایجاد شد. پروتکل سگویت، دادهها و امضاهای دیجیتالی هر تراکنش را حذف کرده و آنها را به زنجیره جانبی انقال میدهد تا به این طریق مقیاس پذیری بلاک چین بیشتر شود.
شاردینگ
یکی از انتخابهای رایج برای حل مشکل مقیاس پذیری در بلاک چین، شاردینگ است. شاردینگ درواقع روشی است که به موجب آن شبکهها را به بخشهای مختلفی تقسیم میکند و به آنها این امکان را میدهد که تراکنشها را به صورت موازی پردازش کرده و فضای زیادی را در شبکه ایجاد کنند.
به تقسیم تراکنش به دادههای کوچکتر شده «شارد» گفته میشود. از طریق به اشتراک گذاری، اطلاعات میان گرههای مختلف تقسیم میشود و در عین حال ثبات خود را حفظ میکند. دادههای کوچک شده یا شارد، برای زنجیره اصلی مانند مدرک هستند و برای اشتراکگذاری آدرسها، به وسیله پروتکلهای ارتباطی بایکدیگر تعامل دارند.
بلاک چین تو در تو
از دیگر راهحلهای مفید برای حل مشکلات مقیاس پذیری، بلاک چین تودرتو است. بلاک چین تودرتو یک زیرساخت شبکه غیرمتمرکز است که به وسیله بلاک چین اصلی، پارامترهایی برای ساخت شبکه بلاک چین بزرگتر ایجاد میکند. همچنین این بلاک چین، اجرای تراکنشها را بر روی یک شبکه به هم پیوسته از زنجیرههای ثانویه تضمین میکند.
جمع بندی
تا کنون در حوزه کریپتوکارنسی، هیچ شبکهای به صورت همزمان سه ویژگی مقیاس پذیری در بلاک چین، امنیت و غیرمتمرکز را نداشته است. بسیاری از ارزهای دیجیتال تنها دو ویژگی از ویژگیهای گفتهشده را دارند، مانند بیت کوین که امنیت و غیرمتمرکز بودن را به مقیاس پذیری ترجیح داده است.
قابلیت مقیاس پذیری تبدیل به یکی از چالشهای ارزهای دیجیتال شده و باید برای حل آن راهکاری یافت. در این مطلب برخی از راهکارهای حل این چالش را بیان کردیم. شما نیز اگر تجربه یا نظری در این زمینه دارید، با ما به اشتراک بگذارید.