بعد از اینکه کمی با فضای رمز ارزها آشنا شدیم حالا امروز میخوام براتون درباره یکی دیگه از مهمترین بحثهای فضای بلاک چین صحبت کنیم. الگوریتم اجماع یکی از مهمترین مسائل مربوط به بلاک چین است. اما الگوریتم اجماع چیست؟ سیستم توافق توزیع شده (اجماع) یعنی در هنگام ارسال یا دریافت وجه نقد از هر شخصی، نیاز به اعتماد به یک سرویس شخص ثالث مثل بانک نباشه. در روش سنتی پرداخت، شما نیاز به اعتماد به یک سرویس شخص ثالث مورد قبول دو طرف معامله مثل ویزا, مستر کارت, پیپال دارید که تاریخچه تراکنشها و میزان موجودی شما را نگه داری میکنند. در روشی که بیت کوین و تعدادی دیگر از ارزهای دیجیتالی معرفی میکنند، هرکسی یک کپی از دفتر کل توزیع شده را دارد و به صورت مستقیم میتواند اطلاعات مورد تایید خود را بر روی این دفتر کل بنویسد. به روشهای مختلفی که برای به توافق رسیدن اعضای شبکه برای نگهداری از اطلاعات وجود دارد، الگوریتم اجماع گفته میشود.
اما مهمترین الگوریتمهای اجماع کدامند؟ برای شروع میریم سراغ مهمترین الگوریتم کار که برای بیت کوین هم استفاده شده یعنی الگوریتم اجماع گواه اثبات کار.
پروتکل گواه اثبات کار بیت کوین یک شکل از اجماع است که ناکاموتو برای انتخاب نودها طراحی کرده است و عمدتا برای محافظت در برابر خطاهای بیزانس (به طور عمده در برابر double spending توسط نودهای مخرب) است. یک نود تلاش میکند مسئله رمزنگاری شده را حل کند که در آن احتمال یافتن راه حل متناسب با تلاش محاسباتی است و یافتن راه حل محاسباتی بسیار دشوار بوده و میتوان آن را فقط با حدس زدن تصادفی به دست آورد.
برای مورد دوم سراغ گواه اثبات سهام میرویم.
گواه اثبات سهام دارای مزایایی نسبت به گواه اثبات کار (PoW) است. گواه اثبات سهام قدرت محاسباتی زیادی مصرف نمیکند، با ممانعت از ایجاد استخرهای استخراج متمرکز (centralized mining pools)، خطر حملات مخرب را کاهش میدهد و با توجه به اینکه سازنده بلوکها، مالک بخشی از آن سکهها نیز هستند، کسی که مسئولیت «محافظت» از کوینها را بر عهده دارد، مالک بخشی از آن کوینها نیز هست. (اتفاقی که در گواه اثبات کار لزوما نمیافتد)
الگوریتم تحمل خطای بیزانس (PBFT) مورد بعدی است که قرار است درباره آن توضیح دهیم.
تحمل خطای بیزانس عملی (Practical Byzantine Fault Tolerance) یک الگوریتم اجماع است که در اواخر دهه ۱۹۹۰ میلادی توسط باربارا لیسکوف (Barbara Liskov) و میگل کاسترو (Miguel Castro) معرفی شده است. PBFT برای اجرای کارآمد در سیستم های غیرهمزمان طراحی شده است. هدف این الگوریتم، حل کردن بسیاری از مشکلات موجود در راهکارهای تحمل خطای بیزانس است. کاربرد این الگوریتم در محاسبات توزیع شده و بلاکچین است.
تحمل خطای بیزانس (BFT) ویژگی شبکه توزیع شده برای دستیابی به اجماع است، حتی هنگامی که بعضی از نودهای شبکه نتوانند پاسخ دهند یا با اطلاعات موثق پاسخ دهند. هدف مکانیزم BFT محافطت در مقابل خطای سیستمی است و این کار را با اجرای تصمیم گیری جمعی محقق میسازد. هدف از تصمیم گیری جمعی، کاهش تاثیر نودهای ناکارآمد است. BFT از مشکل عمومی بیزانس (Byzantine Generals’ Problem) به دست آمده است.
تعداد بسیار زیادی الگوریتم اجماع وجود دارد اما باید بدانید که گواه اثبات کار و گواه اثبات سهام مهمترین الگوریتمهای به کار گرفته شده در بیشتر رمزارزهای فعلی هستند. به کار گیری الگوریتم اجماع موجب حفظ ویژگی غیرمتمرکز بودن در این سیستمها میشود و باگهای موجود در سیستمهای سنتی را از بین میبرد. البته این نکته را هم باید در نظر داشت که هر کدام از این الگوریتمهای اجماع دارای نقاط قوت و ضعف مخصوص به خود هستند و همین مسئله باعث شده که به طور مداوم شاهد معرفی الگوریتمهای اجماع جدیدی باشیم.
امیدوارم تونسته باشم کمی دیگه شما رو با دنیای رمز ارزها و بلاک چین آشنا کرده باشم. منتظر پستهای بعدی من هم در هفتههای بعدی باشید
منبع : میهن بلاک چین