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


بلاکچین چیست؟.png

بلاکچین چیست؟

تعاریف مختلف و پیچیده‌ای برای بلاکچین وجود دارد، ولی در اینجا می‌خواهیم خیلی ساده بلاکچین را برای شما توضیح دهیم.


«بلاکچین یک نوع سیستم ثبت اطلاعات و گزارش است». این یک تعریف بلاکچین به زبان ساده است.


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


سه عامل ناسازگار در بلاکچین.png

سه عامل ناسازگار در بلاکچین

معضل سه گانه بلاکچین، ایده و نظریه‌ای بود که برای اولین بار توسط ویتالیک بوترین مطرح شد. بر اساس این تئوری، امکان داشتن هر سه ویژگی امنیت، مقیاس‌پذیری و تمرکززدایی به صورت هم‌زمان وجود ندارد و در هر سیستم، یک ویژگی قربانی دوتای دیگر می‌شود.


شاید کمی گیج‌کننده به نظر برسد، اما عجله نکنید و اجازه دهید ابتدا هر کدام از این سه ویژگی را بررسی کنیم و سپس در مورد معضل سه گانه بلاکچین بیشتر توضیح خواهیم داد.


نامتمرکزی یا عدم تمرکز

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


اما یک ایراد اساسی وجود دارد و این است که وجود تعداد زیادی گره (و در نتیجه تعداد بالای کاربران) تعداد و سرعت تراکنش‌های پردازش شده در هر ثانیه بر روی بلاکچین را کاهش می‌دهد.


امنیت

شبکه بلاکچین باید از امنیت بالایی برخوردار باشد تا اطمینان حاصل شود که کسانی که پس‌انداز خود را در سرمایه‌گذاری‌های رمزنگاری‌شده می‌گذارند، در اثر هک یا حملات مخرب دچار ضرر و زیان مالی نشوند. عملاً هک کردن بلاکچین‌هایی مانند بیت کوین و اتریوم تقریباً غیرممکن است، زیرا قدرت آنها در تعداد ماینرهای بلاکچین نهفته است. این بدین دلیل است که این بلاکچین‌ها از مکانیسم اجماع اثبات کار (PoW) استفاده می‌کنند. استفاده از سیستم اثبات کار در بلاکچین زنجیره‌های بلوکی را در معرض خطر حمله 51 درصدی قرار می‌دهد، که در آن حملات متقلبانه می‌توانند توسط گروهی از ماینرها که بیش از 50 درصد از قدرت استخراج را کنترل می‌کنند، انجام شوند. این وضعیت سه بار در شبکه کلاسیک اتریوم در آگوست 2020 رخ داد. یکی دیگر از مسائل مربوط به مکانیسم اثبات کار در بلاکچین مصرف بسیار زیاد انرژی و تأثیرات زیست‌محیطی مخرب است و به همین دلیل امروزه کمتر به آن توجه می‌شود.


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

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


تمرکززدایی و امنیت دو فاکتور جدانشدنی.png

تمرکززدایی و امنیت: دو فاکتور جدانشدنی

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


در شبکه بلاکچین برای اینکه یک تراکنش تأیید شود، باید بیش از نیمی از گره‌های شبکه آن را تأیید کنند. بدیهی است که هر چقدر تعداد گره‌های یک شبکه بیشتر باشد، نیاز به تأیید یک تراکنش بیشتر است و در نتیجه هکرها نمی‌توانند شبکه را در دست بگیرند.


مقیاس پذیری: نقطه مقابل امنیت

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


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


چرا افزایش مقیاس پذیری در بلاکچین ضروری است؟.png

چرا افزایش مقیاس پذیری در بلاکچین ضروری است؟

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


مقیاس پذیری در بلاکچین، برای افزایش تعداد تراکنش‌ها در هر ثانیه ضروری است. و یک راه حل آن افزایش اندازه بلوک یا کاهش زمان بلوک است. راه‌حل‌های بیت کوین شامل SegWit است که عملاً اندازه بلوک را افزایش می‌دهد و اجرای راه‌حل‌های لایه 2 را تسهیل می‌کند. راه‌حل‌های اتریوم شامل الگوریتم‌های اثبات سهام است.


در ادامه راه‌حل‌های پیشنهادی برای رفع معضل سه گانه بلاکچین را بررسی خواهیم کرد.


راه‌حل‌های پیشنهادی برای رفع معضل سه گانه بلاکچین.png

راه‌حل‌های پیشنهادی برای رفع معضل سه گانه بلاکچین

هرچند تا کنون راه حل‌های زیادی برای حل معضل سه گانه بلاکچین ارائه شده است، اما حقیقت این است که تعداد راه حل‌هایی که قابلیت اجرایی شدن داشته‌اند محدود است. در ادامه، تعدادی از راه‌حل‌های لایه اول و لایه دوم برای حل معضل سه گانه بلاکچین را بررسی خواهیم کرد.


راه‌حل‌های لایه اول

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


  • بهبود پروتکل اجماع

راه‌های زیادی برای دستیابی به اجماع در مورد بلاکچین وجود دارد، اما مسئله انجام شدنی بودن این راه حل‌ها است. بهبود پروتکل اجماع تضمین می‌کند که تراکنش‌ها در ترتیب منظم و از مرجع (Leader) درستی هستند. مراجع تراکنش زودتر از موعد انتخاب می‌شوند، که باعث صرفه‌جویی در زمان دستیابی به اجماع شبکه می‌شود.


  • شاردینگ (Sharding)

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


شاردینگ زنجیره بلوکی را از هم جدا کرده و آن را در چندین بخش مجزا اعتبارسنجی می‌کند. این یک روش پرخطر برای انجام تراکنش‌ها است، زیرا احتمال تئوریکی وجود دارد که ممکن است تمام اعتبارسنجی‌هایی که یک اطلاعات خاص را در دست دارند، از بین بروند. در این صورت، کل بخش بلاکچین از بین خواهد رفت. الگوریتم‌های مختلفی برای جلوگیری از این اتفاق وجود دارد که یکی از آن‌ها الگوریتم «زنجیره‌های تقسیم شده» است که اتریوم نیز از آن استفاده می‌کند. این روش کل بلاکچین را به صورت افقی تقسیم می‌کند و توزیع بار را روی چندین سرور انجام می‌دهد. در این حالت قدرت پردازش شبکه افزایش می‌یابد.


  • چین فورک (Chain fork)

در این روش از دو‌شاخه کردن یک زنجیره برای تنظیم و ارتقاء شبکه استفاده می‌شود. فورک ها به دو دسته‌ی هارد فورک (Hard Fork) و سافت فورک (Soft Fork) تقسیم می‌شوند. هاردفورک تغییراتی متفاوت با عملکرد زنجیره قبلی فراهم می‌کند، در حالی که تغییرات در سافت فورک مطابق با زنجیره هستند. یکی از معروف‌ترین سافت فورک‌ها مربوط به بیت کوین است که با نام سافت فورک SegWit شناخته می‌شود. این تغییرات در زنجیره بلاکچین بیت کوین باعث بالارفتن مقیاس پذیری شبکه شد و بار تراکنش از 1600 تراکنش در یک بلوک به پردازش تقریباً 3000 تراکنش رسید.


راه‌حل‌های لایه دوم

بلاکچین‌های لایه 2 برای بهبود سرعت پردازش بلاکچین پایه به وجود آمده‌اند. با این حال، برای دستیابی به سرعت بالای پردازش بلاکچین، این راه‌حل‌ها باید هوشمندانه مورد بررسی قرار گیرند.راه حل‌های لایه دوم عبارتند از:


  • بلاکچین‌های تو در تو (Nested blockchain)

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


  • کانال‌های اظهارنامه (State Channels)

کانال اصلی، اساساً پردازش و ظرفیت تراکنش را به کانال اظهارنامه (State Channel) محول می‌کند. گره‌های State Channel نیازی به اعتبارسنجی ندارند، زیرا State Channel مانند یک منبع دوم است که تراکنش‌های مورد نظر را انجام می‌دهد و فقط نتیجه نهایی در شبکه اصلی ثبت می‌شود و در نتیجه اعتبار سنجی همچنان در شبکه اصلی انجام می‌شود. به عبارتی ممکن است چندین تراکنش بین دو نفر در State Channel انجام شود، ولی در شبکه اصلی فقط دو تراکنش که نتیجه نهایی را مشخص می‌کنند ثبت می‌شود.


  • زنجیره‌های جانبی (Side Chains)

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


  • رول آپ (Rollups)

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


  • پاراچین (Parachain)

پاراچین‌ها زنجیره‌هایی هستند که بصورت موازی با زنجیره‌های رله قرارگرفته‌اند. این زنجیره با توجه به ماهیت‌ خود قادر است پردازش تراکنش‌های متعدد را موازی سازی کند و به این ترتیب مقیاس پذیری را افزایش دهد. پاراچین ها می‌توانند از طریق پیام زنجیره‌ای متقاطع (XCMP) با سایر پاراچین‌ها ارتباط برقرار کنند. به عبارتی ای زنجیره‌ها به‌‌صورت مستقل عمل می‌کنند و در امنیت کل شبکه سهیم هستند.


پاراچین (Parachain).png

مثال‌هایی از بلاکچین‌هایی که از راه‌حل‌های لایه اول و دوم استفاده کرده‌اند


اتریوم 2.0 : شاردینگ و رول آپ

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


دیگر راه حل اتریوم 2.0 در لایه 2، برای حل معضل مقیاس پذیری و افزایش کارمزد شبکه (Gas fee)، استفاده از دو رول آپ Optimistic و ZK-Rollups است.


شبکه لایتنینگ: کانال‌های اظهارنامه

شبکه لایتنینگ برای اولین بار توسط جوزف پون (Joseph Poon) و تادئوس درایجا (Thaddeus Dryja) در سال 2016 پیشنهاد شد و از آن زمان، در حال توسعه است. مشکلی که شبکه لایتنینگ برای حل آن ابداع شد، کند بودن زمان و سرعت تراکنش بیت کوین بود. شبکه لایتنینگ یک لایه دوم برای بلاکچین بیت کوین است که زمان تراکنش را افزایش داده و تراکم شبکه را کاهش می‌دهد.


پولکادات: زنجیره‌های تقویتی و پاراچین

پولکادات یک پروتکل شبکه‌ای است که به داده‌های دلخواه - نه فقط توکن‌ها - اجازه می‌دهد تا از طریق بلاکچین‌ها منتقل شوند.


این بدان معناست که پولکادات یک محیط کاربردی چند زنجیره‌ای واقعی است که در آن مواردی مانند ثبت زنجیره‌های متقابل و محاسبات زنجیره‌ای امکان‌پذیر است. پولکادات می‌تواند این داده‌ها را بین بلاک‌چین‌های عمومی، باز و بدون مجوز و همچنین بلاک‌چین‌های خصوصی و مجاز منتقل کند.


سخن پایانی


در حالی که به سومین دهه از حضور شبکه بلاکچین وارد می‌شویم، دیگر صحبت از گسترش بلاکچین و استفاده از ارزهای دیجیتال نیست، بلکه همه شرکت‌ها و سازمان‌ها سعی می‌کنند بخشی از سیستم بی‌نهایت بزرگ اقتصادی آن باشند. هرچند معضل سه گانه بلاکچین، را می‌توان جزو ویژگی‌های بلاکچین دانست، اما راه‌حل‌هایی که در این مقاله بررسی شدند، می‌توانند به عنوان یک مسیر جدید در دنیای ارزهای بلاکچین و کریپتو مطرح شوند.