فناوری بلاکچین؛ یک راه امن و «غیرمتمرکز» برای ذخیرهسازی و انتقال اطلاعات ارائه میکند. از این رو، الگوریتمهای اجماع، یک نقش حیاتی در تضمین یکپارچگی و امنیت شبکههای بلاکچینی ایفا میکنند. در این مقاله، مفهوم الگوریتم اجماع، انواع آن و کاربردهای آن را در در دنیای بلاکچینها مورد بررسی قرار میدهیم.
بسیار مهم است که قبل از تعریف الگوریتم اجماع، ساختار غیرمتمرکز بلاکچین را درک کنیم. این واژه، بدان معناست که هیچ واسطه یا نهاد مرکزی برای کنترل و ادارهی یک شبکه بلاکچینی وجود ندارد. بنابراین، وجود یک مکانیزمی که بتواند امنیت این شبکه و یکپارچگی دادهها در آن را تامین کنند، ضروری است. به این مکانیسم در یک بلاکچین، الگوریتم یا پروتکل اجماع میگوییم که به مشارکتکنندگان شبکه این امکان را میدهد تا درمورد وضعیت پایگاه داده شبکه یا به طور کلی در مورد اینکه چه تراکنشهایی معتبر هستند، به یک توافق نهایی یا به اجماع برسند.
زمانی که شخص A به شخص B، یک دلار ارسال میکند، دفتر کل حسابداری یا لِجر (Ledger) یک سیستم مرکزی، یک دلار از حساب شخص A کسر و آن را به حساب شخص B اضافه میکند. روندی که در بانکها و شرکتهایی همچون پیپل و ویزا در حال اجراست.
اما رویکرد پردازش تراکنشها در دنیای رمزارزها متفاوت است. در اینجا، هدف این است که هیچ موجودیت یا نهاد مرکزی، کنترل سیستم را در اختیار نداشته باشد که این امر، ثبت اسناد را پیچیده میسازد. پس راه حل چیست؟
به جای وجود تنها یک رییس یا نهاد مرکزی، هزاران کاربر (نود) در سراسر جهان نرمافزار بلاکچین موردنظر را اجرا میکنند. این «نودها» به وظایف مشخصی همچون پردازش و ثبت دادهها در این شبکه عمل میکنند. اما چطور، این نودها یه یک توافق میرسند؟ در اینجا باید پروتکلی وجود داشته باشد که کمک کند تا تمام این نودها به یک توافق نهایی برسند، بدون اینکه در یکپارچگی و امنیت شبکه تداخلی پیش بیاید.
در یک دفتر کل توزیع شده، کپیهای بلاکچین در میان شبکهای از نودها توزیع میشود. زمانی که یک تراکنش جدید اتفاق میافتد، قبل از اینکه به دفتر کل اضافه شود باید توسط مکانیزم اجماع بین نودها اعتبارسنجی و تایید شود.
مکانیزم اجماع، اطمینان حاصل میکند که هر نود یک کپی مشابه و یکسان از بلاکچین را در اختیار دارد. هدف اولیه مکانیزم اجماع، ثبت تراکنشهای مشروع و معتبر و جلوگیری از دابل اسپندینگ (Double Spending) یا دوبار خرج شدن است. دابل اسپندینگ، زمانی رخ میدهد که رمزارزهای یکسان و مشخصی، دوبار خرج میشوند. به طوری که مثلا یک تراکنش ثبت شده در بلاکچین در یک بلاک دیگر نیز کپی شود.
بنابراین، الگوریتمهای اجماع جزء ضروری و جداناپذیر تکنولوژی بلاکچین هستند؛ چراکه آنها راهحلی برای مدیریت یک سیستم توزیع شده بدون نیاز به یک موجودیت یا نهاد متمرکز هستند. بدون مکانیزمهای اجماع، هیچ راهی وجود ندارد تا مطمئن شویم که هر بلاک جدیدی که به شبکه اضافه میشود، تنها نسخه درست و واقعی است و شبکه نسبت به حملات و کلاهبرداری آسیبپذیر نیست.
اهداف الگوریتم اجماع شامل رسیدن به یک توافق، ایجاد همکاری و هماهنگی بین نودها و همچنین اعطای حقوق برابر برای هر نود است. به طور کلی، ایده الگوریتم اجماع، یافتن یک توافق مشترک است که منجر به پیروزی، تمرکززدایی و حفظ امنیت شبکه میشود. مکانیزمهای اجماع برای عملکرد صحیح و روان هر سیستم بلاکچینی و ایجاد اعتماد بین اعضای آن ضروری است. این مکانیزمها تضمین میکنند که همهی نودها با یکدیگر همکاری میکنند و به مجموعهای از قوانین از پیش تعیین شده، پایبند هستند.
برای اینکه یک تراکنش با موفقیت در لجر یا دفتر کل ثبت و به بلاک اضافه شود، باید بین اکثریت نودها، اتفاق نظر حاصل شود. بنابراین، الگوریتمهای اجماع از اصول بنیادین بلاک چین محافظت و مدیریت توزیع شده و اعتبارسنجی تراکنشها را بدون نیاز به تکیه به یک نهاد متمرکز، امکانپذیر میکنند.
در دهه 1970 میلادی، دانمشندان حوزه کامپیوتر همچون لزلی لمپورت (Leslie Lamport) و باربارا لیسکوف (Barbara Liskov) شروع به فکر کردن در مورد این سوال کردند: «چگونه بین مجموعهای از ماشینها به توافق برسیم؟»
این سوال ساده باعث شد که مشکل پیچیدهای به نام «اجماع» در مبحث سیستمهای توزیعشده مطرح شود. در سال 1977، آدام بک (Adam Back) اولین نسخهی الگوریتم اجماع اثبات کار به نام هش کش (Hashcash) را معرفی کرد. هش کش، یک الگوریتم اثبات کار مبتنی بر هش رمزنگاری است که نیازمند انجام کار محاسباتی میباشد. این الگوریتم با هدف محدود کردن اسپمها (هرزنامهها) در ایمیلها و انجمنهای اینترنتی به وجود آمد. در واقع، هر کاربر باید قبل از ارسال یک ایمیل یا ایجاد یک پست در انجمنها، یک معادله پیچیده را حل نماید. فلسفه طراحی این مکانیزم این بود که هر چه زمان بیشتری برای حل یک معادله صرف شود؛ ارسال هرزنامهها هزینهبرتر خواهد بود. این الگوریتم، همان چیزی است که هسته الگوریتم اثبات کار را تشکیل داد. ساتوشی ناکاماتو مفهوم هش کش را با فناوری بلاک چین ترکیب و الگوریتم اثبات کار را خلق کرد.
الگوریتم اجماع؛ مجموعهای از قوانین و توابع ریاضی است که توافقی را میان اعضای شبکه ایجاد میکند. یک مکانیسم اجماع تضمین میکند که بلاک چین آپدیت یا بهروزرسانی میشود، تراکنشها به ترتیب و روش درست پردازش میشوند و یکپارچگی دادههای شبکه حفظ میگردد. الگوریتمهای اجماع مختلفی وجود دارند که هر کدام برای دستیابی به اهداف مذکور، شیوه کار متفاوتی دارند. در ادامه با معرفی هر کدام از الگوریتمها، نحوه عملکرد آنها را نیز به صورت اجمالی توضیح میدهیم.
برخی از کاربردهای الگوریتم اجماع در یک بلاکچین به شرح زیر است:
هر کدام از الگوریتمهای اجماع نقاط قوت و ضعفی دارند. با این حال یک الگوریتم اجماع خوب، الگوریتمی است که بتواند به اهداف زیر، دست یابد:
تمرکززدایی: مکانیزمهای اجماع، باید طوری طراحی شوند که هیج نهاد واحدی کنترلی بر شبکه نداشته باشد و کنترل و قدرت مدیریت میان اعضا توزیع شده باشد.
امنیت: الگوریتمهای اجماع باید از شبکه در برابر بازیگران مخربی که سعی در سوءاستفاده از آن را دارند، محافظت کند. همچنین این الگوریتمها، باید بتوانند حملاتی همچون دابل اسپندینگ یا حملات 51 درصدی را شناسایی و از انجام آنها جلوگیری نمایند و یا به طور کلی، در برابر حملات مقاوم باشند.
مقیاسپذیری: هرچه تعداد تراکنشهای یک شبکه با افزایش روبرو میشود، الگوریتمهای اجماع باید بتوانند این افزایش فشار را بدون به خطر افتادن امنیت مدیریت کنند. در واقع، در هر ثانیه تعداد تراکنشهای بیشتری را پردازش کنند.
البته باید بگوییم که رسیدن به اهداف مذکور به طور همزمان و در یک سطح مطلوب و بهینه، بسیار سخت و یا غیرممکن است که این مساله با عنوان معضل «سه گانه بلاکچین» شناخته میشود و برای اولین بار، توسط ویتالیک بوترین، خالق بلاکچین اتریوم معرفی شد. این اصطلاح بدان معناست که یک بلاکچین دو از سه ویژگی بالا را میتواند به طور موثر داشته باشد. به همین دلیل است که برقراری توزان میان این سه ویژگی برای توسعهدهندگان یک پروژه بلاکچینی همواره چالش برانگیز بوده است.
در ادامه به معرفی برخی از مهمترین الگوریتمهای اجماع مورد استفاده در بلاکچینها میپردازیم:
در الگوریتم اثبات کار، ماینرها باید اثبات کنند که در راستای حفظ امنیت شبکه، «کار» انجام دادهاند. منظور از کار، اجرای تابع هش است.
در حوزه بلاکچین، این الگوریتم برای اولین بار توسط خالق بیتکوین، ساتوشی ناکاموتو معرفی شد. در این الگوریتم، ماینرها برای اعتبارسنجی تراکنشها و خلق بلاکهای جدید، ملزم به حل مسائل ریاضی پیچیده که با عنوان هش شناخته میشوند، هستند. در حقیقت، ماینرها برای پیدا کردن یک هش که از نظر شبکه قابل قبول باشد، به نوعی در یک مسابقه شرکت میکنند که در آن، باید بارها و بارها تابع هش را اجرا کنند. امنیت این الگوریتم از این واقعیت نشات میگیرد که عملیات اعتبارسنجی و خلق بلاک ارزان نباشد که این مساله به عنوان یک مانع برای حمله مهاجمان به شبکه عمل میکند. در یک مقاله در رسانه بلاکپست به تفصیل در مورد نحوه عملکرد این الگوریتم توضیح دادهایم.
بیشتر بخوانید: الگوریتم اجماع اثبات کار چیست؟
مسلما، اجرای تابع هش برای پیدا کردن جواب، مستلزم مصرف انرژی زیادی است که این مساله سبب شده انتقادات زیادی از لحاظ محیط زیستی به این الگوریتم وارد شود.
این الگوریتم، جایگزینی سبزتر برای الگوریتم رقابتمحور PoW است. برخلاف الگوریتم اثبات کار که ماینرها ملزم به مصرف انرژی و کار محاسباتی هستند؛ در شبکههایی مبتنی بر الگوریتم اثبات سهام (PoS) ولیدیتورها که همان وظایف ماینرها را دارند، تنها لازم است مقدار مشخصی از ارزهای بومی شبکه موردنظر را استیک یا قفل کنند. ولیدیتوری که برای ایجاد بلاک انتخاب شود، پاداش بلاک را دریافت خواهد کرد. این پاداش از یک سو و از سوی دیگر، مکانیزم اسلشینگ (Slashing)، ولیدیتورها را تشویق میکند تا صادقانه و به نفع شبکه عمل کنند. اسلشینگ را میتوان تنبیهی در نظر گرفت که شبکه به ولیدیتورهایی که سعی در تایید تراکنشهای جعلی و فعالیتهای متقلبانه دارند، اعمال میکند.
بیشتر بخوانید: الگوریتم اجماع اثبات سهام چیست؟
یکی از مزایای قابل توجه PoS نسبت به PoW، کاهش مصرف انرژی است؛ چرا که در PoS دیگر نیازی به اجرای تابع هش و مصرف انرژی زیاد نیست و انتخاب ولیدیتور به صورت شبه تصادفی و براساس ثروتشان صورت میگیرد. این مساله، الگوریتم اثبات سهام را به یک الگوریتم امنتر، کارآمدتر، سریعتر و سازگارتر با محیط زیست تبدیل میکند. در سپتامبر 2022، بلاکچین اتریوم از الگوریتم اثبات کار به الگوریتم اثبات سهام مهاجرت کرد.
این الگوریتم که به اختصار با نماد (DPoS) نمایش داده میشود، نوعی از الگوریتم اثبات سهام است که برای اعتبارسنجی تراکنشها و افزودن بلاکهای جدید به بلاکچین، به گروه کوچکتری از ولیدیتورها، موسوم به نمایندگان (delegates) یا شاهدان (witnesses) متکی است. در واقع، در DPoS، تنها نمایندگانی که از سوی کاربران بیشترین رای را آورده و انتخاب شدهاند، در فرایند اعتبارسنجی و تولید بلاک مشارکت میکنند. بنابراین تعداد نودهایی که در مکانیزم اجماع برای تولید بلاک شرکت میکنند در مقایسه با الگوریتم اثبات سهام بسیار کمتر است.
نمایندگان توسط آرای افرادی که رمزارز بومی شبکه را خریداری و استیک کردهاند، انتخاب میشوند. هرچه تعداد رمزارزهای بیشتری استیک شود، رای استیک کننده، وزن بیشتری خواهد داشت. کاربران شبکه، توکنها را در داخل یک استخر استیکنگ واریز میکنند و به نمایندگانی که میخواهند رای میدهند.
اگر نمایندگان، تراکنشهای نامعتبر را منتشر کنند، دارندگان توکن به آنها رای منفی میدهند و آنها را با نماینده منتخب دیگری جایگزین میکنند. بنابراین، نمایندگان تشویق میشوند که صادقانه عمل کنند زیرا در صورت تایید تراکنشهای جعلی یا تلاش برای حمله به شبکه، خطر از دست دادن موقعیت و پاداش خود را دارند. پروژه ایاس (EOS)، از این الگوریتم اجماع استفاده کرده است که در آن 21 نماینده برای افزودن بلاک انتخاب میشوند.
PoB الگوریتم اجماعی است که در آن، ماینرها ملزم به سوزاندن (نابود کردن) مقدار مشخصی از رمزارزهای خودشان هستند تا شانسی برای تولید بلاک بدست بیاورند. بدین ترتیب، شبکه میتواند به ماینرها اعتماد کند که در راستای تامین امنیت آن عمل میکنند. هرچه تعداد رمزارزهای بیشتری را بسوزانند، احتمال اینکه برای استخراج بلاک بعدی انتخاب شوند نیز افزایش مییابد. اصطلاح سوزاندن، به فرستادن توکنها به آدرسی که قابل بازیابی یا دسترس نیستند، اشاره میکند. این توکنها به طور دائم از عرضه در حال گردش، حذف میشوند. هنگامی که ارز دیجیتال سوزانده شد، به کاربر این حق داده میشود که بلاکهای جدیدی را به بلاکچین اضافه و در ازای این کار پاداش دریافت کند.
الگوریتم اثبات سوزاندن را اغلب یک سیستم PoW میتوان درنظر گرفت که سعی کرده است مشکل اتلاف انرژی در آن را بهبود ببخشد. در حقیقت، کاربر با سوزاندن توکنها، گویی تجهیزات ماینینگی که به آنها قدرت استخراج را میدهد، خریداری کرده است. این مساله، فرایند محاسباتی برای انتخاب ماینر را حذف میکند. Slimcoin؛ یکی از ارزهایی است که از این الگوریتم اجماع استفاده میکند.
در اینجا، از دو الگوریتم اثبات سهام و اثبات کار استفاده میشود تا بین نقطه ضعفهای آنها، تعادلی به وجود آورد. به همین دلیل به آن، الگوریتم هیبریدی یا ترکیبی (Hybrid PoW/PoS) نیز گفته میشود.
میتوان نحوه عملکرد این مکانیزم را به دو مرحله تقسیمبندی کرد:
مرحله اول: در این مرحله، از الگوریتم اثبات کار (PoW) استفاده میشود. ماینرها با قدرت پردازشی خود، با هم رقابت میکنند تا با حل یک معمای رمزنگاری پیچیده، یک بلاک را استخراج کنند.
مرحله دوم: پس از تولید بلاک، سیستم به مرحله دوم، یعنی الگوریتم اثبات سهام هدایت میشود. در این مرحله، گروهی از ولیدیتورها به صورت تصادفی برای اعتبارسنجی بلاک تولید شده انتخاب میشوند. درست مانند اثبات سهام، هر چه ولیدیتور، رمزارزهای بیشتری استیک کرده باشد، شانس بیشتری برای انتخاب شدن دارد.
بعد از انجام این دو مرحله، بلاک کامل میشود و سپس به بلاکچین اضافه میشود. Decred یکی از پروژههایی است که از این الگوریتم برای مدیریت شبکه خود استفاده میکند.
LPoS، گونهای از الگوریتم اثبات سهام (PoS) است که در آن، کاربران ارزهای دیجیتال خودشان را به نودی اجاره میدهند که میخواهد بهعنوان تولیدکننده بلاک در شبکه عمل کند. اصولا، ولیدیتورها در شبکههای مبتنی بر اثبات سهام، برای افزایش شانس تولید بلاک و همچنین دریافت پاداش، ارزهای دیجیتال بیشتری باید استیک کنند.
LPoS، به کاربرانی با تعداد توکنهای کمتر اجازه میدهد تا با اجاره دادن توکنهای خود به ولیدیتورهای بزرگتر، در فرآیند اعتبارسنجی مشارکت کنند. این کاربران، مالکیت توکنهای خود را حفظ میکنند (یعنی از کیف پول آنها جابجا یا خارج نمیشود) و به نسبت مقدار توکنهایی که اجاره دادهاند، سهمی از پاداشهای کسبشده توسط اعتبارسنجی را دریافت میکنند. پروژه Waves از این الگوریتم استفاده میکند.
این الگوریتم در سال 2017 به عنوان الگوریتم اجماع برای بلاک چین فایل کوین (Filecoin) بوجود آمد و نسخه تغییر یافته و بهروزشدهی اثبات سهام محسوب میشود. در الگوریتم اجماع اثبات وزنی، به هر نود یک «وزن» اختصاص داده میشود. تفاوت این الگوریتم با اثبات سهام این است که در اثبات سهام، عمدتا تعداد ارزهایی که در یک کیف پول استیک میشوند، وزن یک نود را تعیین میکند؛ اما در اثبات وزن، فاکتورهایی زیادی برای اندازهگیری وزن لحاظ میشود. به طور مثال، میتوان به فاکتورهایی همچون شهرت نود یا میزان دادهای که نود ذخیره کرده است، ارزش وزنی اختصاص داد.
اثبات ظرفیت (PoC) یک روش استخراج جدید است که در حال حاضر توسط ارز دیجیتال Burstcoin استفاده میشود. این روش شامل استفاده از فضا یا ظرفیت هارد دیسک برای استخراج است. در اینجا ماینرها به جای استفاده از قدرت محاسباتی برای برنده شدن، از فضای خالی هارد دیسک خود برای ذخیرهسازی داده استفاده میکنند. هرچه فضای هارد دیسک بیشتری داشته باشید، احتمال اینکه بلاک بعدی را استخراج و در ازای آن جوایز کسب کنید، زیاد است. در PoC، قبل از اینکه ماینینگ شروع شود، ماینرها با استفاده از تابع هش «Shabel» تعداد زیادی مجموعه داده موسوم به «Plots» تولید و آنها روی هارد دیسک خود ذخیره میکنند. Plots؛ همان راهحلهای رمزنگاری ممکن هستند که در صورت تطابق آنها با یک مقدار مشخص شده توسط شبکه، بلاک استخراج میشود. به عبارتی این الگوریتم شامل دو مرحله Plotting و Mining است. در مرحله ماینینگ، ماینرها پلاتهای خودشان را جستجو میکنند تا ببیند جواب معمای رمزنگاری را در میان آنها وجود دارد یا خیر. در این الگوریتم تولید هر بلاک به طور میانگین 4 دقیقه طول میکشد.
الگوریتم PoA، الگوریتمی است که مبتنی بر شهرت ولیدیتورها میباشد. بدین صورت که بر خلاف اثبات سهام که ولیدیتورها قابل اعتماد بودن خودشان را با استیک کردن رمزارزهای بومی شبکه اثبات میکردند، در این نوع الگوریتم، ولیدیتورها شهرت خودشان را گرو میگذارند و یا به عبارتی در خطر قرار میدهند. ولیدیتورها توسط یک نهاد مرکزی انتخاب میشوند. در سیستم PoA، هر نود باید اطلاعات هویتی خود را به طور رسمی ارائه دهد و استانداردها و شرایط سخت تعیین شده را برآورده کند تا به عنوان یک ولیدیتور شناخته شود. این الگوریتم، مقیاسپذیری خوبی را ارائه میدهد و عمدتا برای بلاک چینهای خصوصی مورد استفاده قرار میگیرد. ویچین (VeChain) یکی از پلتفرمهایی است که از الگوریتم PoA استفاده میکند.
الگوریتم اجماع (PoI)، برای اولین بار در سال 2015 توسط بلاکچین NEM معرفی شد. این الگوریتم، تولیدکنندگان بلاک را بر اساس میزان «اهمیتشان» برای شبکه انتخاب میکند. در واقع، به ماینرها «امتیاز اهمیت» اختصاص داده میشود. مسلما امتیاز بالاتر به معنای این است که شبکه و اعضای آن اعتماد بیشتری به این ماینر برای اعتبارسنجی و استخراج بلاک دارند. بنابراین، یک ماینر با امتیاز بالاتر، شانس بیشتری برای انتخاب شدن دارد. این امتیاز بر اساس شاخصهای متنوعی تعیین میشود که از جمله آنها میتوان به تعداد و اندازه تراکنشهای انجام شده توسط کیف پول آن نود، تعداد ارزهای استیک شده و مدت زمان استیک آنها اشاره کرد.
در الگوریتم (PoET)، هر نود یک زمان انتظار تصادفی دریافت میکند که باید در آن مدت استراحت کند یا اصطلاحا «بخوابد». سپس، نودی که کوتاهترین زمان انتظار را داشته، بیدار میشود و به آن اجازه تولید بلاک داده میشود. پس از تکمیل تولید بلاک، این نود، اطلاعات ضروری را برای دیگر اعضای شبکه توزیع یا منتشر میکند. در مقایسه با مکانیسم اثبات کار (PoW)، PoET از لحاظ مصرف زمان و انرژی بسیار کارآمدتر است؛ چراکه نودها برای افزودن یک بلاک جدید، نیازی انجام کار محاسباتی زیادی ندارند و تنها لازم است که در آن بازه زمانی (زمان انتظار) صبر کنند.
اجازه بدهید پیش از آنکه، به مبحث الگوریتم تحمل خطای بیزانس عملی بپردازیم، در ابتدا توضیح دهیم که منظور از تحمل خطای بیزانس چیست؟
تحمل خطای بیزانس (Byzantine Fault Tolerance) یک ویژگی از یک سیستم توزیع شده را توصیف میکند که سبب میشود این سیستم، حتی زمانی که برخی از اعضا عملکرد نادرست دارند یا به طور مخرب عمل میکنند، بدون نقص به فعالیت خود ادامه دهد. سیستم تحمل خطای بیزانس مجموعهای از الگوریتمها و پروتکلها است که این ویژگی را امکانپذیر میکنند. بنابراین، سیستمهای BFT تضمین میکند که همه نودها علیرغم چالشهایی همچون باگهای نرمافزاری یا حتی حملات عمدی برخی نودهای مخرب برای اختلال در شبکه، روی یک نسخه واحد از اطلاعات به اجماع میرسند و از رفتار اشتباه جلوگیری میکنند.
تحمل خطای بیزانس عملی، یکی از شناختهشدهترین الگوریتمهای BFT است که در تکنولوژی بلاک چین استفاده میشود. این الگوریتم، به گونهای طراحی شده است که سریع و کارآمد باشد و در عین حال تحمل خطای بیزانسی قویای را ارائه دهد. در PBFT، نودها به سه گروه تقسیم میشوند: یک نود رهبر، مجموعهای از نودهای پشتیبان (replica) و مجموعهای از نودهای کلاینت. نود رهبر مسئول پیشنهاد تراکنشها یا بلاکهای جدید به شبکه است. نودهای پشتیبان، مسئول اعتبارسنجی این پیشنهادات از طریق تبادل پیام با یکدیگر هستند. اگر 2F + 1 نود پشتیبان در مورد بلاک پیشنهادی موافقت کنند، آن را تایید شده در نظر میگیرند و نود رهبر آن را به بلاک چین اضافه میکند. «F»، بیانگر تعداد نودهای بیزانس یا نودهای مشکلدار است. به عبارتی در شبکهای که از 3F +1 نود تشکیل شده، تا زمانی که دو سوم نودها، عملکرد صحیح داشته باشند (به عبارتی یک سوم نودها، مشکلدار باشند) شبکه همچنان میتواند به اجماع کافی برسد و بدون نقص کار کند.
الگوریتم تحمل خطای بیزانس ساده شده (Simplified Byzantine Fault Tolerance)، یک نسخه ساده شده از الگوریتم BFT است که با هدف بهبود کارایی و مقیاسپذیری به وجود آمده است. نحوه کار این الگوریتم بدین صورت است که یک نود رهبر انتخاب میشود و سپس این نود، پیشنهاد میدهد که یک بلاک به بلاک چین اضافه شود. در نهایت، سایر نودها در رابطه با اینکه بلاک موردنظر را تایید میکنند یا خیر، رای میدهند.
در نگاه اول، این الگوریتم مشابه الگوریتم اثبات سهام محول شده است. در الگوریتم تحمل خطای بیزانس محول شده (Delegated Byzantine Fault Tolerance)، دارندگان ارز بومی شبکه میتوانند به نمایندگان (نودهای قابل اعتماد) برای اعتبارسنجی تراکنش ها و تولید بلاک رای بدهند. نمایندگان منتخب مسئولیت تولید بلاک و اعتبارسنجی تراکنشها را بر عهده میگیرند و بر اساس الگوریتم DBFT به اجماع میرسند. یک بلاک در صورتی به بلاک چین اضافه میشود که بیش از 2/3 نمایندگان به اجماع برسند و آن را معتبر بدانند.
مکانیزمهای اجماع، روشهایی هستند که برای دستیابی به توافق، اعتماد و امنیت در سراسر یک شبکه غیرمتمرکز استفاده میشوند. از آنجایی که فناوری بلاکچین به تکامل خود ادامه میدهد، الگوریتمهای اجماع جدیدی ظهور میکنند که هر کدام از آنها براساس اصول متفاوتی کار میکنند. در این مقاله، سعی کردیم به مفهوم الگوریتم اجماع و برخی از انواع آن بپردازیم.
من در رشته متالوژی صنعتی تحصیل کردم. از سال 1401 تصمیم گرفتم در رسانه بلاکپست به تولید محتوا در مورد فناوری بلاکچین و صنعت جذاب ارزهای دیجیتال بپردازم. سعی میکنم تا ...