مسئله مقیاسپذیر بودن یا نبودن یکی از موانع اصلی پذیرش فناوری بلاک چین است. اما چرا حل آن دشوار است؟
بیت کوین در شکل کنونیاش میتواند حدود ۷ تراکنش را در ثانیه مدیریت کند. اتریوم که بیشتر کسبوکارها به آن علاقهمند هستند، میتواند نزدیک به ۲۰ تراکنش در ثانیه انجام دهد. این میزان توان عملیاتی برای بیشتر برنامههای مشاغل، بهطور غیرقابل قبولی پایین است.
اگر بهتازگی شروع به تحقیق در مورد بلاک چین کردهاید، متوجه خواهید شد که یک «جنگ تراکنش بر ثانیه» (TPS war) بین پروژههای رقیب وجود دارد و بسیاری از آنها ادعا میکنند که سریعتر هستند. اگر ارز دیجیتالی مانند ریپل میتواند هزاران تراکنش را مدیریت کند (که واقعاً همینطور است)، بهتر نیست که همه به XRP و شبکه ریپل روی آورند؟
خیر
کِوین را در نظر بگیرید و اجازه دهید که توضیح بدهم.
شغل کوین اسباب کشی و جابجایی بین خانههاست. او صاحب یک شرکت کوچک اما دارای اعتبار است که مشتریان بسیار زیادی هم دارد. اگر قصد جابهجایی دارید و به کِوین پیغام دهید، حق انتخاب تنها دو گزینه را خواهید داشت: یک سرویس میتواند سریع و مقرونبهصرفه باشد اما ضعیف، سریع و عالی باشد اما گران یا اینکه عالی و مقرونبهصرفه اما کند باشد. هیچوقت نمیتوانید هر سه اینها را تحت عنوان سرویسی سریع، عالی و مقرونبهصرفه باهم داشته باشید. مردم تصور میکنند که این موضوع یک شوخی است اما این مقوله از دهه ۵۰ میلادی تحت عنوان ” مثلث مدیریت پروژه” مورد مطالعه قرار گرفته است.
بلاک چینها نیز از مشکل مشابهی به نام سهراهی مقیاسپذیری رنج میبرند. لازم است قبل از پریدن به قطاری که به نظر پر زرقوبرق، سریع و راحت میآید اما مقصد آن ناکجاآباد است، محدودیتها و بدهبستانهای این فضا را بدانیم.
سهراهی مقیاسپذیری
یک بلاک چین تنها میتواند دو تا از این سه ویژگی را داشته باشد: سریع، امن و غیرمتمرکز بودن. تاکنون هیچکس موفق به دستیابی به هرسه اینها یعنی ساخت بلاک چینی غیرمتمرکز، امن و سریع نشده است؛ هرچند شاید به نظر برسد که در حال نزدیک شدن به آن هستیم (در این مورد بیشتر توضیح خواهم داد).
بگذارید پیش از آنکه پا را فراتر بگذاریم، دو نکتهی مهم را اضافه کنم. اولاً، من قرار نیست در مورد تفاوتهای بین بلاک چین عمومی و خصوصی، انحصاری و غیرانحصاری صحبت کنم. فهمیدن این تفاوتها ضروری است و در بخشهای بعدی این مقاله مورد بحث قرار میگیرند، اما لزومی ندارد اطلاعات زیادی در این مورد برای فهم سهراهی داشته باشیم. دوما، اگر شما توسعهدهنده هستید، فهمیدن آن برای شما بسیار آسان خواهد بود. این موضوع از پیش تعیین شده است.
بنابراین، یک بلاک چین ایدهال به چه شکل است؟
• باید سریع یا به بیان دیگر مقیاسپذیر باشد؛ یعنی بتواند هزاران تراکنش را در ثانیه مدیریت کند.
• باید امن باشد. منظور از امن بودن نداشتن اشکال (bug) در کد آنها نیست (این اشکالات همیشه به طور اجتنابناپذیری وجود دارند)، اما باید در مقابل تهدیداتی مانند حملهی ۵۱ درصدی ( یک عامل بیش از نصف شبکه را کنترل کند)، حملات سیبیل (یک عامل چندین هویت را جعل و استفاده کند) یا حملات محرومسازی از سرویس (DDoS) مقاوم باشند.
• یک بلاک چین ایدهآل غیرمتمرکز است. علاوه بر داشتن مزایای دیگر، این اطمینان را میدهد که هیچ عامل منفرد یا گروهی از عوامل توانایی سرقت زنجیره، سانسور آن یا اعمال تغییرات در مدیریت را از طریق معاملات پنهانی ندارد. این مزیت میتواند در کاربردهای کسبوکارهایی که در آن عموماً شرکتکنندگان به یکدیگر اعتماد ندارند، مفید واقع شود. در مورد بلاک چینهای عمومی و غیرقانونی، به هرکسی امکان عضویت و شرکت در شبکه داده میشود.
برآورده شدن هر سه شرط به صورت همزمان کار دشواری است.
هیچوقت توانایی ساخت یک بلاک چین سریعتر از یک پایگاه دادهی سنتی که روی یک سرور اجرا میشود را نخواهیم داشت. سؤال این است که چه میزان از سرعت را میتوانیم فدا کنیم.
اگر میخواهید بلاک چین خود را تا حد ممکن ازنظر فناوری در برابر حملات مقاوم کنید، باید اثبات کار را به عنوان الگوریتم اجماع انتخاب کنید. در یک سیستم اثبات کار، نودها باید قبل از افزودن بلاک به زنجیره، میزان زیادی انرژی محاسباتی (الکتریسیته) صرف کنند. این یک فرایند زمانبر خواهد بود، بنابراین زنجیرههای اثبات کار هیچگاه قادر به رقابت در امر سرعت نخواهند بود. این یک ایراد محسوب نمیشود چرا که به طراحی مکانیزم ارتباط دارد و بیت کوین توان عملیاتی شبکه را در اولویت قرار نمیدهد.
دیگر سازوکارهای اجماع مانند اثبات سهام، اثبات سهام نمایندگی شده، اثبات اعتبار و غیره بهطور قابلملاحظهای سریعتر از مکانیزمهای اثبات کار است. شما قادر به اجرای عملیات معنادار و قابل توجهی بر روی بلاک چینی با توان ۷ تراکنش در ثانیه مانند بیت کوین نخواهید بود، اما تفاوت بین هزار یا ۱۵ هزار تراکنش در ثانیه به بیشتر کاربردهای تجاری مربوط نمیشود. هزار تراکنش در ثانیه احتمالاً بهاندازهی کافی سریع است.
بلاک چینهای غیر اثبات کار باید بین امنیت و تمرکززدایی تعادل ایجاد کنند و هیچ جای تعجب نیست که تمایل به صرفنظر کردن از تمرکززدایی داشته باشند، زیرا درنهایت هیچکس قصد ساخت یک بلاک چین آسیبپذیر را ندارد. هیچ راهحل کاملی وجود ندارد و اولیتهای شخصی هم همانند اهداف استفاده اهمیت زیادی دارند. این موضوع را با ذکر مثال بهتر درک خواهید کرد.
بهترین مثال از یک بلاک چین سریع و امن و درعینحال متمرکز، ریپل است. بنیاد ریپل اعتبارسنجها را که نودهایی هستند که میتوانند بلاک جدیدی به زنجیره اضافه کنند را از قبل انتخاب میکند. شرکتکنندگان در این شبکه باید به این اعتبارسنجها اعتماد کنند و این اعتماد کردن باعث زیر سوال بردن استفاده از بلاک چین خواهد شد. آیا ما تنها بانکهای خصوصی مرموز را با موسسه مرموز دیگری جایگزین کردهایم؟
عموماً جامعه بلاک چین ریپل را نمیپسندد و مطمئن هستم که دلیلش را متوجه خواهید شد. نظر غیر محبوب من این است: ریپل یک فناوری فوقالعاده است. این شرکت در توسعهی کسبوکار فوقالعاده کارآمد است و من برای این موضوع احترام قائل هستم؛ اما شهرت بلاک چین آن تنها اسمی توخالی است.
ایاس یکی دیگر از پروژههای بحثبرانگیز است که بهشدت امنیت را به تمرکززدایی ترجیح میدهد. بلاک چین ایاس شامل ۲۱ تولیدکننده بلاک میشود. تنها آنها میتوانند بلاکهای جدید اضافه کنند و پاداش مالی دریافت کنند. نسبت به بیت کوین (بیش از ۱۰,۰۰۰ نود) یا اتریوم (بیش از ۱۲,۰۰۰ نود) این شبکه خیلی متمرکز به نظر میرسد، اما مشکل تنها از جنبه فنی نیست، بلکه جنبه سیاسی را هم در بر میگیرد. اولاً، بهطور گستردهای گزارشهای زیادی در مورد اینکه ۱۷ تا از ۲۱ تولیدکننده بلاک را هیوبی از طریق معاملات پنهانی کنترل میکند، داده شده است. دوماً، روش مورد استفاده توسط ایاس، امکان معکوس نمودن تراکنشها را فراهم میسازد؛ کاری که اخیراً نیز بر روی این شبکه انجام شد. هردو اینها با فلسفه اساسی بلاک چین در تضاد است و از این جهت شخصاً به هیچکس ساخت برنامه روی ایاس را پیشنهاد نمیکنم. تا زمانی که انگیزههای این شبکه به خوبی تنظیم و هدایت نشوند، خوبی این فناوری اهمیتی نخواهد داشت.
در مقابل، استلار به نظر میرسد تعادل درستی را در پیش گرفته است. این روش به هرکس اجازهی اجرای نود را میدهد و نیازی نیست چندین واحد مرکزی مرموز شما را انتخاب کنند. از آنجا که اپراتورها پاداش مالی دریافت نمیکنند، مشکل استلار عدم وجود انگیزه است. انتخاب این نوع طراحی به پایین نگه داشتن هزینههای تراکنشها کمک میکند، اما درعینحال این یک شمشیر دولبه است.
هیچ ناهار مجانی وجود ندارد. تراکنش با هزینهی کم یا صفر به درجه پایینتری از غیرمتمرکزسازی منجر میشود.
اگر مردم انگیزه شرکت در شبکه را نداشته باشند، مسلماً گروهها و سازمانهایی با صرف هزینه بیشتر نودها را کنترل خواهند کرد. با این اوصاف، استلار مسیر نسبتاً صحیحی را در پیش گرفته است.
پروژهای که برای حل این سهراهی سخت تلاش میکند، اتریوم است. ناگفته نماند که ویتالیک اصطلاح سهراهی مقیاسپذیری را اولین بار مطرح کرد.
احتمالاً اتریوم در زمانی بین ۱۲ تا ۱۸ ماه آینده از اثبات کار به اثبات سهام جابهجا خواهد شد و این بهنوبه خود منجر به تعداد تراکنش بیشتری در هر ثانیه خواهد شد، بدون آنکه میزان زیادی از امنیت و تمرکززدایی موجود را هدر بدهد. پروتکلهای دیگری مانند شاردینگ بعدها توان عملیاتی شبکه را افزایش خواهند داد.
تمامی معاملات و تحولاتی که در مورد آنها صحبت کردیم در سطح پروتکل اتفاق میافتند. این موضوع به منطق اساسی پروتکل برمیگردد. اگرچه، این تنها راه مقیاسگذاری بلاک چین نیست. راهحلهای لایهی دومی که در بخشهای بعدی در مورد آنها صحبت خواهیم کرد سبب افزایش توان عملیاتی نخواهند شد، بلکه بعضی از تراکنشها (دادهها) را از زنجیره حذف میکنند.
تصور کنید میخواهید نتایج یک مسابقهی شطرنج را روی بلاک چین اتریوم ذخیره کنید. البته این مثال خوبی نیست زیرا باید از یک پایگاه داده ساده استفاده کنید، اما با من همراه باشید. هر حرکت سادهای که بازیکنان انجام میدهند میتواند خود یک تراکنش باشد، اما لزوماً نمیخواهید هرکدام از آنها را روی بلاک چین اصلی ذخیره کنید. از آنجایی که بازیکنان قوانین بازی را میدانند و عموماً به یکدیگر اعتماد دارند، کافی است حرکات هرکدام را در تراکنشهای بین هردوی آنها ذخیره کرد. میتوانید از زنجیرهی اتریوم برای ثبت وضعیت صفحه بعد از ۵ تا ۱۰ حرکت یا بیشتر استفاده کنید، درواقع یک نقطهی خوب بین دادههای ذخیرهشده و زنجیره صحیح را ذخیره خواهید کرد. شبکهی لایتنینگ، کانالهای وضعیت و پلاسما برای این منظور به وجود آمدهاند.