الگوریتم اجماع چیست؟ – به زبان ساده + انواع و کاربردها

الگوریتم اجماع برای حفظ امنیت و یکپارچگی سیستمهای غیرمتمرکز استفاده میشود. در شبکههای غیرمتمرکز نهاد ناظری برای تأیید تراکنشها و ذخیره آنها وجود ندارد. بنابراین تأیید تراکنشهای شبکه بهعهده کامپیوترهای شبکه است. این کامپوترها برای اینکه بتوانند بهراحتی باهم ارتباط داشته باشند و برای تأیید و بررسی تراکنشها به توافق برسند، نیاز دارند تا از الگوریتم واحدی بهنام الگوریتم اجماع پیروی کنند. بلاک چین بیت کوین بهعنوان بستری غیرمتمرکز که امکان انجام تراکنشهای همتا به همتا را ایجاد کرده است از نوعی الگوریتم اجماع بهنام الگوریتم اجماع اثبات کار استفاده میکند. با گسترش استفاده از بلاک چین، الگوریتمهای اجماع دیگری همانند الگوریتم اجماع اثبات سهام نیز معرفی شدند. در این مطلب پس از تعریف الگوریتم اجماع، برخی از مهمترین الگوریتمهای اجماع را شرح میدهیم.
الگوریتم اجماع چیست ؟
«الگوریتم اجماع» (Consensus Algorithm) نوعی فرآیند در سیستمهای کامپیوتری است که برای رسیدن به توافق بین آنها انجام میشود. این توافق برای موضوعات یا اطلاعاتی است که در سیستمهای غیرمتمرکز وجود دارد. این توافق برای ایجاد اطمینان و بالا بردن امنیت در شبکه انجام میشود.
کارکرد الگوریتم اجماع چیست ؟
کارکرد الگوریتم اجماع ایجاد فرآیندی است تا کامپوترهای شبکه بتوانند برای موضوعات شبکه توافق کنند. یکی از مشکلاتی که در شبکههای غیرمتمرکز وجود دارد این است که کامپیوترهای شبکه بتوانند برای ایجاد و ذخیره تغییرات در سیستم به توافق برسند. این موضوع برای شبکههای غیرمتمرکزی همانند بلاک چین از اهمیت بالایی برخوردار است. پردازش اطلاعات در شبکه بلاک چین بین کامپیوترها توزیع شده است. اینگونه سیستمها طوری طرحریزی شدهاند تا در صورتی که برخی از این کامپیوترها بهدرستی عمل نکنند نیز بتوانند امنیت شبکه را حفظ کنند و بهکار خود ادامه دهند. این قابلیت در شبکههای غیرمتمرکز باعث میشود تا آنها در برابر خطاهای برخی کامپیوترها تحملپذیری داشته باشند.

الگوریتم اجماع چه مشکلی را حل میکند ؟
برای طرحریزی الگوریتم اجماع باید به این موضوع توجه شود که در شبکههای غیرمتمرکز همانند بلاک چین معمولا تمامی کامپیوترهای شبکه که آنها را «نود» (Node) مینامیم، کار خود را بهدرستی انجام نمیدهند. موضوع عدم انجام درست کار در میان نودهای شبکه همواره وجود دارد. برای همین برای طراحی شبکههای غیرمتمرکز همواره این موضوع را درنظر میگیرند که ممکن است برخی از نودهای شبکه در دسترس نباشند یا برخی از ارتباطات بین نودها در زمان انتقال اطلاعات ممکن است دچار اشکال شود.
برای مثال در برخی از الگوریتمها نیاز است تا تعداد ۵۱ درصد از نودهای شبکه برای موضوعی توافق کنند تا شبکه بتواند برای ایجاد تغییر مربوطه به اجماع برسد. بنابراین رسیدن به توافق با وجود در دسترس نبودن برخی از نودهای شبکه یا بروز مشکلات در برخی از این نودها اصلیترین مشکلی است که الگوریتم اجماع آن را حل میکند.
کاربرد الگوریتم اجماع در بلاک چین
الگوریتم اجماع در سیستمهای پردازشی توزیع شده کاربردهای فراوانی دارد. یکی از کاربردهای الگوریتمهای اجماع در بلاک چین است. بلاک چین نوعی دفتر کل توزیع شده است که نودهای آن بر روی «شبکهای همتا به همتا» (Peer-to-Peer Network) فعالیت میکنند. هر یک از نودهای بلاک چین یک کپی از نسخهای بهروز شده از تغییرات شبکه را دارند. هر تغییری که در شبکه بلاک چین روی دهد بهطور همزمان در اختیار نودهای شبکه قرار میگیرد. این موضوع باعث میشود تا نیازی برای وجود نهادی ناظر و متمرکز نباشد و امنیت و اعتماد در سیستم بلاک چین بهوجود آید.
انواع الگوریتمهای اجماع
برای رسیدن به توافق بین نودهای شبکه راههای گوناگونی وجود دارد که باعث بهوجود آمدن انواع الگوریتمهای اجماع در بلاک چین شده است. با توجه به اینکه در سیستمهای غیرمتمرکز نهادی ناظر و مرکزی وجود ندارد، بنابراین وظیفه اصلی الگوریتمهای اجماع در شبکههای غیرمتمرکز ایجاد امنیت و رسیدن به توافق برای ایجاد تغییرات در شبکه است. این موضوع از اهمیت بالایی برخوردار است و برای انجام آن راههای مختلفی وجود دارد. اما وجه اشتراکی که در همگی این الگوریتمهای اجماع وجود دارد این است که به نودها این امکان را بدهد تا بتوانند بهراحتی با یکدیگر ارتباط داشته باشند تا بتوانند برای ذخیره تراکنشها در شبکه به توافق برسند. برای انجام این توافق روشهای گوناگونی معرفی شدهاند که در ادامه این مطلب برخی از آنها را توضیح میدهیم.

الگوریتم اجماع اثبات کار
«الگوریتم اجماع اثبات کار» (Proof of Work | PoW) یکی از قدیمیترین الگوریتمهای اجماع موجود است. این الگوریتم اجماع برای اولین بار در سال ۱۹۹۳ معرفی شد. اما هنگامی که «ساتوشی ناکاموتو» (Satoshi Nakamoto) از آن برای معرفی بیت کوین در سال ۲۰۰۸ استفاده کرد، مورد توجه افراد زیادی قرار گرفت. ایده اصلی الگوریتم اثبات کار بهکارگیری نودهایی در شبکه است که بتوانند پازلهای پیچیده ریاضی را حل کنند و در کوتاهترین زمان ممکن حدسهایی برای حل پازل ارائه کنند.
الگوریتم اثبات کار چیست ؟
ارزهای دیجیتال برای تأیید تراکنشها و ذخیره آنها در بلاک چین سروری مرکزی ندارند و برای پردازش اطلاعات وابسته به کامپیوترهای داخل شبکه هستند. الگوریتم اثبات کار نوعی الگوریتم اجماع است که ماینری را برای تأیید و پردازش اطلاعات بلاک جدید انتخاب میکند. این گزینش ماینرها همانند مسابقهای بین آنها است که در آن ماینرها برای یافتن جواب پازل محاسباتی و گرفتن پاداش شبکه رقابت میکنند. به عبارتی دیگری الگوریتم اثبات کار نرمافزاری است که در شبکه غیرمتمرکز بلاک چین استفاده میشود تا قبل از تولید هر بلاک جدید در شبکه از انجام محاسبات و صرف انرژی توسط ماینرها مطمئن شود.
کلمه کار در الگوریتم اجماع اثبات کار نیز به این موضوع اشاره میکند که سیستم طوری طرحریزی شده است تا قبل از اینکه ماینری بخواهد تراکنشهای جدیدی را به شبکه اضافه کند، با کاری که انجام میدهد با ماینرهای دیگر رقابت کند. ماینری که در این رقابت برنده میشود زمانی پاداش خود را از شبکه دریافت میکند که اطلاعاتی که به شبکه اضافه کرده است، مورد تأیید ماینرهای دیگر قرار بگیرد.
اهمیت الگوریتم اجماع اثبات کار
ساتوشی ناکاموتو با معرفی بیت کوین بهعنوان اولین رمزارزی که در بستری غیرمتمرکز فعالیت دارد، مهمترین مشکل ارزهای دیجیتال که دوبار خرج کردن است را با بهکار بردن الگوریتم اجماع اثبات کار حل کرد. قبل از معرفی بیت کوین بهعنوان وسیلهای برای پرداختهای همتا به همتا، مشکل عمدهای که از ارائه ارزهای دیجیتال معتبر جلوگیری میکرد، دوبار خرج کردن بود.
دو بار خرج کردن به این معنا است که یک ارز دیجیتال را بتوانید دو یا چند بار خرج کنید. با توجه به اینکه ارزهای دیجیتال تنها اطلاعاتی بر روی بسترهای غیرمتمرکز هستند، بنابراین برای جلوگیری از دوبار خرج کردن نیاز به سیستمی است تا امنیت در شبکه تأمین شود. الگوریتم اثبات کار با ایجاد مکانیزمی برای پاداش به ماینرها این قابلیت را در شبکه ایجاد میکند تا تراکنشها قبل از اضافه شدن در بلاک جدید توسط ماینرهای شبکه تأیید و بررسی شوند.

ماینینگ و الگوریتم اثبات کار
بانکی را درنظر بگیرید که حسابهای بانکی را نگهداری میکند و تراکنشهای بانکی را انجام میدهد. هنگامی که میخواهید تراکنشی را از یکی از حسابهای بانکی خود انجام دهید، بانک مربوطه در ابتدا موجود حساب شما را چک میکند و درصورت داشتن اعتبار کافی تراکنش بانکی انجام میشود. اما در بسترهای بلاک چینی نهادی واسط برای انجام این کار وجود ندارد و در عوض حفظ امنیت و پردازش و ذخیرهسازی تراکنشها بر عهده ماینرها و الگوریتم اجماع مربوطه است. بنابراین در شبکههای بلاک چینی که از الگوریتم اجماع اثبات کار استفاده میکنند، ماینرها با استفاده از تجهیزات مربوطه تراکنشها را تأیید و بلاک جدید را به زنجیره بلوک اضافه میکنند.
عملکرد ماینرها در الگوریتم اثبات کار
نحوه کارکرد ماینرها در شبکه مبتنی بر الگوریتم اجماع اثبات کار برای تولید بلاک جدید و دریافت پاداش را میتوانیم در مراحل زیر بهطور خلاصه بیان کنیم.
- ذخیره تراکنشها در بلاک: کاربران تراکنشهایی را در قالب خرید یا فروش ارز دیجیتال انجام میدهند. اطلاعات مربوط به این تراکنشها در بلاک ذخیره میشود.
- رقابت ماینرها برای تولید بلاک جدید: ماینرها برای اینکه بتوانند بلاک جدید را تولید کنند باید با دیگر ماینرها رقابت کنند. در واقع ماینرها با صرف قدرت پردازشی این امتیاز را دریافت میکنند تا در صورت برنده شدن در رقابت بتوانند بلاک جدید را تولید کنند.
- یک ماینر برای افزودن بلاک جدید به شبکه انتخاب میشود: در نهایت ماینری که بتواند زودتر از دیگر ماینرها پازل محاسباتی را حل کند برای تولید بلاک جدید انتخاب میشود و از طرف شبکه پاداش میگیرد.
الگوریتم اثبات کار در بلاک چین بیت کوین
الگوریتم اجماع اثبات کار در بلاک چین بیت کوین باعث میشود فرآیند پردازش و ذخیره اطلاعات در این بلاک چین طبق نظم و اصول مشخصی انجام شود. همانطور که اطلاعات را در برگههایی جداگانه میتوان ذخیره کرد، در هر بلاک از زنجیره بلوک نیز اطلاعاتی را میتوان قرار داد. هر بلاک همانند یک سلول است که اطلاعاتی را میتواند ذخیره کند.
اطلاعاتی از قبیل مقدار تراکنشها، آدرس کیف پولها و زمان مربوط به تراکنشها همگی بهصورت رمزنگاری شده در بلاک ذخیره میشوند. هش هر بلاک در بلاک بعدی آن نیز استفاده میشود. این موضوع باعث میشود تا بلاکها همانند زنجیر بههم متصل باشند و ایجاد تغییر در یکی از آنها، کل آنها را تغییر میدهد. بنابراین دفتر کل توزیع شدهای بهوجود میآید که اطلاعات هش هر بلاک در هش بلاک جدید نیز وجود دارد.
هشینگ در بلاک چین بیت کوین چیست ؟
«هشینگ» (Hashing) به فرآیند تبدیل و تولید اطلاعات ورودی به رشتههایی با طول ثابت گفته میشود که با الگوریتم خاصی انجام میشود. الگوریتم هشینگ در بیت کوین SHA-256 است. این الگوریتم نوعی تابع یکطرفه است. به این معنی که نمیتوان با دادن خروجی بهدست آمده به تابع، اطلاعات ورودی را بازیابی کرد. استفاده از تابع هش در بلاک چین باعث میشود تا از تراکنشهای تقلبی و دوبار خرج کردن جلوگیری شود. اطلاعات بهصورت هش شده در بلاک چین ذخیره میشوند. بعد از اینکه اطلاعات ورودی به تابع هش داده میشوند، خروجی تابع، هش تراکنش نامیده میشود.
نحوه کارکرد الگوریتم اجماع اثبات کار بیت کوین
بلاک چینهایی که از الگوریتم اجماع اثبات کار استفاده میکنند از نودهایی بهنام «ماینر» (Miner) تشکیل شدهاند. برای مثال ماینرهای شبکه بیت کوین باید پازل پیچیدهای را رمزگشایی کنند. این پازل در واقع پیدا کردن «هش» (Hash) بلاک موردنظر است.
تمامی اطلاعات در بلاک چین بهصورت هش شده ذخیره میشود. هنگامی که تراکنشها هش میشوند، این اطلاعات به رشتههایی با اندازه ثابت تبدیل میشوند. نحوه کار به اینصورت است که تراکنشها در قالب ساختار دادهای بهنام «درخت مرکل» (Merkle Tree) قرار میگیرند.
این ساختار داده ریشهای دارد که در واقع خلاصهای از تراکنشهای ذخیره شده در بلاک است. ماینر اطلاعات ذخیره شده در بلاک را با عددی تصادفی بهنام «نانس» (Nonce) هش میکند و این کار را تا زمانی ادامه میدهد تا هش مورد قبول شبکه تولید شود. بنابراین الگوریتم اثبات کار شامل فرآیندهایی است که در طی آن ماینرها اعداد تصادفی نانس را تا پیدا کردن هش بلاک مربوطه امتحان میکنند.

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

صرف انرژی برای پیدا کردن هش بلاک
ماینرها برای اینکه بتوانند هش بلاک جدید را پیدا کنند باید عددی تصادفی بهنام نانس را در هش بلاک قرار دهند تا هش جدید شرایط هش هدف را پیدا کند. بنابراین این کار به قدرت پردازشی بالایی نیاز دارد و ماینری که این پازل را حل میکند با صرف هزینه و انرژی بالایی این کار را انجام میدهد. با پیدا کردن هش بلاک جدید این ماینر میتواند بلاک را به زنجیره بلاک اضافه کند.
حال فرض کنید اگر فردی بخواهد تراکنشهای تقلبی به شبکه ارسال کند باید قدرت پردازشی بسیار بالایی را تأمین کند که انجام آن توجیه اقتصادی ندارد.
معایب الگوریتم اجماع اثبات کار
الگوریتم اجماع اثبات کار الگوریتمی است که انتقادات زیادی را مخصوصا برای مصرف بالای انرژی به خود اختصاص داده است که در ادامه آنها را توضیح میدهیم.
مصرف بالای انرژی
یکی از اصلیترین انتقادات مربوط به بلاک چینهای مبتنی بر الگوریتم اثبات کار مصرف بالای انرژی در آنها است. در سال ۲۰۰۹ با یک کامپیوتر خانگی و با صرف مقدار ناچیزی از انرژی میتوانستید بیت کوین استخراج کنید. اما امروزه برای اینکه استخراج بیت کوین بهصرفه باشد باید با تهیه تجهیزات مخصوص استخراج بیت کوین و صرف برق زیادی این کار را انجام دهید.
برای اینکه درک بهتری از میزان برق مصرفی بیت کوین بهدست بیاورید مقایسهای از میزان برق مصرفی برای تولید یک بیت کوین در سال ۲۰۲۱ با مقدار برق مصرفی یک خانواده در آمریکا به عمل آمده است. طبق این تحقیق مشخص شده است که مقدار برق مصرفی برای تولید یک بیت کوین معادل برق مصرفی یک خانواده آمریکایی در طول ۹ سال است.
تمرکزگرایی در استخراج ارز دیجیتال
یکی از مهمترین خصوصیاتی که ارزهای دیجیتال دارند غیرمتمرکز بودن آنها است. بیت کوین بهعنوان اولین رمزارز که امکان پرداختهای همتا به همتا را برای کاربران ایجاد کرد، مورد استقبال افراد فراوانی قرار گرفت. اما امروزه با افزایش ماینرها و بالا رفتن سختی شبکه بیت کوین برای استخراج این ارز دیجیتال محبوب به تجهیزات پیشرفتهای با قدرت محاسباتی بالا نیاز داریم.
علاوه بر این هزینههای مصرف برق و تعمیر و نگهداری و فضای موردنیاز برای دستگاههای ماینینگ بیت کوین باعث شده است تا استخراج این ارز دیجیتال در اختیار عده محدودی قرار بگیرد. این موضوع با هدف اصلی ارزهای دیجیتال که ایجاد بستری غیرمتمرکز برای تبادلات مالی است تناقض دارد. بنابراین تمرکزگرایی در استخراج ارز دیجیتال یکی از مشکلات مهم و اصلی شبکههای مبتنی بر الگوریتم اجماع اثبات کار محسوب میشود.

الگوریتم اجماع اثبات سهام
«الگوریتم اجماع اثبات سهام» (Proof of Stake | PoS) نوعی دیگر از الگوریتم اجماع است که در شبکههای بلاک چینی استفاده میشود. در این الگوریتم اجماع برخلاف الگوریتم اجماع اثبات کار نیازی به سختافزارهای مخصوص ماینر برای تولید بلاک جدید نیست. در واقع در الگوریتم اثبات سهام نودهای شبکه مجبور نیستند پازلهای پیچیده ریاضی را حل کنند و تنها باید مقداری مشخص از ارز دیجیتال مربوطه را «استیک» (Stake) کنند.
استیکینگ چیست ؟
استیکینگ فرآیندی است که افراد برای قفل کردن یا سپردهگذاری دارایی رمزارز خود در ازای انتخاب شدن برای تأیید تراکنشها در بلاک جدید اقدام میکنند. فرآیند استیکینگ در بلاک چین به این صورت است که مقداری ارز دیجیتال در شبکه سپردهگذاری میشود. در واقع افرادی که بخواهند تراکنشهای شبکه را پردازش و تأیید کنند باید مقداری از ارز دیجیتال بومی آن شبکه را استیک کنند که به این نودها «اعتبارسنج» (Validator) میگویند.
نحوه عملکرد الگوریتم اثبات سهام
الگوریتم شبکه بر اساس میزان ارز دیجیتال استیک شده در شبکه ولیدیتور موردنظر را برای تأیید و بررسی تراکنشها در بلاک چین انتخاب میکند. این ولیدیتور بعد از تأیید و بررسی تراکنشهای بلاک جدید و افزودن اطلاعات مربوطه به بلاک چین از طرف شبکه پاداش دریافت میکند. نکته مهمی که در الگوریتم اثبات سهام وجود دارد این است که هراندازه میزان استیک ارز دیجیتال در شبکه بیشتر باشد، احتمال انتخاب ولیدیتور موردنظر بیشتر است. در واقع ولیدیتورها با استیک کردن ارز دیجیتال موردنظر وفاداری و صداقت خود را به شبکه برای بررسی و تأیید تراکنشها ثابت میکنند.
مکانیزم تنبیه و پاداش در الگوریتم اثبات سهام
در صورتی که اعتبارسنج انتخابی اطلاعات نادرستی را در شبکه وارد کند یا تراکنشهای نامعتبری انجام دهد، شبکه بهعنوان تنبیه ولیدیتور، ارزهای دیجیتال استیک شده ولیدیتور را میسوزاند. نحوه سوزاندن نیز به این ترتیب است که رمزارزهای مربوطه را به آدرسی ارسال میکند که غیرقابل برگشت باشند و عملا بدون استفاده شوند. در مقابل این مکانیزم تنبیهی، مکانیزم پاداشدهی نیز برای ولیدیتورهای صادق وجود دارد. در واقع با تأیید تراکنشها و افزودن اطلاعات جدید به بلاک چین، ولیدیتور از طرف شبکه پاداش میگیرد.
مزایای الگوریتم اجماع اثبات سهام در مقابل اثبات کار
هنگامی که در مقام مقایسه بخواهیم الگوریتم اجماع اثبات سهام را با الگوریتم اجماع اثبات کار مقایسه کنیم میتوانیم به موارد زیر اشاره کنیم.
مصرف انرژی
یکی از مزایایی که الگوریتم اثبات سهام نسبت به الگوریتم اجماع اثبات کار دارد در میزان مصرف انرژی است. الگوریتم اجماع اثبات کار بهدلیل اینکه به قدرت پردازشی بالایی نیاز دارد، بنابراین میزان مصرف انرژی بالایی دارد. این موضوع باعث میشود تا علاوه بر ایجاد خطراتی برای محیط زیست، هزینه بالایی به ماینرهای خود تحمیل کند. بنابراین ماینرها، کشورهایی را انتخاب میکنند که هزینه انرژی برق در آنها نسبت به کشورهای دیگر کمتر باشد. اما الگوریتم اثبات سهام مقدار مصرف انرژی کمتری دارد که این خود باعث میشود این الگوریتم دوستدار محیط زیست باشد.
شرکت افراد بیشتری برای فعالیت در شبکه
یکی دیگر از مزایایی که الگوریتم اجماع اثبات سهام نسبت به الگوریتم اثبات کار دارد این است که تعداد افراد بیشتری میتوانند بهعنوان ولیدیتور در شبکه فعالیت کنند. این موضوع به این دلیل است که برای اینکه بهعنوان ولیدیتور در شبکههای مبتنی بر الگوریتم اثبات سهام فعالیت کنید نیازی به تهیه دستگاههای ماینر گرانقیمت و پرداخت هزینههای بالا برای مصرف انرژی ندارید. این موضوع باعث میشود تا افراد زیادی تنها با استیک کردن کوینهای خود بتوانند در شبکه فعالیت کنند.

مقیاس پذیری بیشتر
یکی از قابلیتهایی که باعث میشود کاربران بیشتری در آینده برای انجام معاملات خود از بستر بلاک چین استفاده کنند مقیاسپذیر بودن شبکه است. مقیاسپذیری در بلاک چین به توانایی انجام درست و بهینه تراکنشها در زمان شلوغ بودن شبکه گفته میشود.
در شبکههای مقیاسپذیر با افزایش حجم تراکنشها، سرعت آنها کم نمیشود. بلاک چینهایی که از الگورتیم اجماع اثبات سهام استفاده میکنند نسبت به بلاک چینهایی که از الگوریتم اجماع اثبات کار بهره میبرند این قابلیت را دارند که میتوانند تعداد بیشتری از تراکنشهای همزمان را بدون آسیب به امنیت شبکه یا به خطر انداختن غیرمتمرکز بودن آن انجام دهند. بنابراین بلاک چینهای مبتنی بر الگوریتم اثبات سهام مقیاسپذیرتر هستند.
معایب الگوریتم اجماع اثبات سهام
الگوریتم اجماع اثبات سهام نسبت به الگوریتم اجماع اثبات کار جدیدتر است. بنابراین ممکن است علاوه بر نقاط ضعفی که در حال حاضر دارد، در آینده نیز معایب بیشتری را از خود نشان دهد. به هر حال در ادامه برخی از معایب آن را شرح میدهیم.
نفوذ سرمایهگذاران کلان
برای اینکه افراد در شبکههای مبتنی بر الگوریتم اثبات سهام بتوانند اعتبارسنج شوند، لازم است مقداری از ارز دیجیتال مربوطه را در شبکه استیک کنند. هر اندازه میزان این استیک بیشتر باشد احتمال گزینش آنها برای تأیید تراکنشها و دریافت پاداش بیشتر میشود. این موضوع باعث میشود تا افرادی که سهم بیشتری از میزان استیک را در اختیار دارند بتوانند تعداد بیشتری از تراکنشها در شبکه را تأیید کنند و به نوعی در شبکه نفوذ کنند. ایجاد محدودیت در برخی از شبکهها برای میزان استیک از تدابیری است که برای رفع این مشکل میتوان استفاده کرد.
نبود گزارشات عملکردی کافی
برای اینکه الگوریتمی مورد توجه کاربران قرار بگیرد نیاز دارد تا در عمل نیز خود را ثابت کند. با توجه به جدید بودن الگوریتم اثبات سهام نسبت به الگوریتم اثبات کار هنوز همانند اثبات کار عملکردهای این الگوریتم در پروژههای مختلف مورد بررسی قرار نگرفته است. بنابراین ممکن است مشکلاتی در برخی از شبکههای مبتنی بر الگوریتم اثبات سهام بهوجود بیاید که با سپری شدن زمان مشخص میشود.
الگوریتم اجماع اثبات سهام نیابتی
«الگوریتم گواه اثبات سهام نیابتی» (Delegated Proof of Stake | DPoS) نوعی از الگوریتم اثبات سهام است که این امکان را به نودهای شبکه میدهد تا بتوانند نمایندگانی را برای تأیید تراکنشها برای خود با رایگیری انتخاب کنند. الگوریتم اثبات سهام نیابتی در واقع نوعی الگوریتم اثبات سهام است که با انتخاب نمایندگانی که با رای نودهای دیگر تعیین میشوند، این امکان را برای الگوریتم اجماع ایجاد میکند تا با دموکراسی بیشتری امنیت شبکه را تأمین کند.
یکی از مزایایی که استفاده از این الگوریتم دارد این است که مقیاسپذیری بیشتری نسبت به الگوریتمهای اجماع اثبات کار و اثبات سهام دارد. مقیاسپذیری این الگوریتم بهخاطر امکان پردازش تراکنشهای بیشتری در ثانیه است که قابلیت مهمی برای الگوریتم اجماع محسوب میشود.

مزایای الگوریتم اثبات سهام نیابتی
برخی از مزایای الگوریتم اثبات سهام نیابتی به شرح زیر است.
- اجرای دموکراسی برای انتخاب نمایندگان: یکی از مزایایی که این الگوریتم دارد وجود دموکراسی برای انتخاب نمایندگان است. این موضوع باعث میشود تا نمایندگانی انتخاب شوند که دارای عملکردی بهتر و اعتباری بیشتر هستند.
- سرعت انجام تراکنشها: با توجه به اینکه شبکه تعداد نمایندگان انتخابی را محدود کرده است، بنابراین رسیدن به اجماع در بین این نمایندگان با سرعت بالایی انجام میشود. با توجه به نوع بلاک چین تعداد این نمایندگان از ۲۰ الی ۱۰۰ نماینده قابل تغییر است. بنابراین با توجه به وجود محدودیت در تعداد این نمایندگان که کار تأیید تراکنشها را انجام میدهند، این الگوریتم اجماع نسبت به الگوریتمهای اجماع اثبات کار و اثبات سهام از سرعت بالاتری در انجام تراکنشها برخوردار است.
- عدم نیاز به سختافزارهای پیچیده: یکی دیگر از مزایای این الگوریتم اجماع این است که نیازی به سختافزارهایی با قدرت پردازشی بالا برای انجام محاسبات پیچیده ریاضی ندارد.
معایت الگوریتم اثبات سهام نیابتی
الگوریتم اجماع اثبات سهام نیابتی دارای سرعت انجام تراکنش بالایی نسبت به الگوریتمهای اجماع گواه اثبات کار و اثبات سهام است. اما این الگوریتم نیز در کنار مزایایی که اشاره کردیم دارای معایبی است که در ادامه آنها را شرح میدهیم.
خطر حمله ۵۱ درصدی در شبکه
حمله ۵۱ درصدی زمانی در شبکه اتفاق میافتد که حداقل ۵۱ درصد از نمایندگان این شبکه بخواهند اقدامی خرابکارانه را انجام دهند. با توجه به اینکه تعداد نودهایی که تراکنشها را در این شبکه تأیید میکنند محدود است، احتمال این حمله در بلاک چینهای مبتنی بر این الگوریتم بیشتر است.
عدم غیرمتمرکز بودن کامل
یکی از مواردی که توجه کاربران زیادی را به خود جلب کرده است این موضوع است که با توجه به اینکه تعداد نمایندگانی که کار تأیید تراکنشها را در شبکه انجام می دهند محدود است، آیا میتوان شبکههای مبتنی بر الگوریتم اجماع اثبات سهام نیابتی را واقعا غیرمتمرکز نامید. بنابراین تعداد کم نمایندگان که در برخی حالات به ۳۰ نماینده نیز میرسد، ممکن است همان خطرات و مشکلات سیستمهای متمرکز را برای کاربران ایجاد کند.
الگوریتم اجماع اثبات اعتبار
«الگوریتم گواه اثبات اعتبار» (Proof of Authority | PoA) یکی از الگوریتمهای اجماع است که ولیدیتورهای آن بهجای سپردهگذاری کوین در شبکه، میزان اعتبار و هویت خود را در شبکه استیک میکنند. بنابراین در مقایسه این الگوریتم با الگوریتم اثبات سهام میتوان گفت در الگوریتم اثبات سهام، ولیدیتوری که میزان کوین بیشتری را استیک میکند، سهم بیشتری برای تأیید تراکنشها دارد. اما در الگوریتم اثبات اعتبار با توجه به اینکه میزان اعتبار ولیدیتور ملاکی برای انتخاب اعتبارسنج قرار میگیرد، بنابراین الگوریتم اثبات اعتبار از امنیت بیشتری نسبت به الگوریتم اثبات سهام برخوردار است.
نودهای الگوریتم اجماع اثبات اعتبار بهصورت محدود و تصادفی و پس از بررسی میزان اعتبار آنها انتخاب میشوند. بنابراین این الگوریتم اجماع نسبت به الگوریتم اجماع اثبات کار مقیاسپذیری بیشتری دارد.
الگوریتم اجماع اثبات سوزاندن
«الگوریتم اثبات سوزاندن» (Proof of Burn | PoB) یکی از الگوریتمهای اجماع است که شبیه الگوریتم اجماع اثبات کار است. اما برخلاف الگوریتم اجماع اثبات کار که نودهای آن نیاز به صرف انرژی برای انجام محاسبات دارند، در الگوریتم اثبات سوزاندن ماینرها برای رسیدن به اجماع، توکنهای خود را میسوزاند.
نحوه کارکرد الگوریتم اثبات سوزاندن
نحوه کارکرد الگوریتم اجماع اثبات سوزاندن به این ترتیب است که ماینرها کوینها را به آدرسی ارسال میکنند که بازگرداندن کوینها امکانپذیر نیست. در واقع ماینرهای این الگوریتم میزان تعهد خود را به شبکه برای تأیید تراکنشها با سوزاندن کوینها نشان میدهند. بنابراین با ارسال کوینها به آدرسی خاص که برای سوزاندن توکنها استفاده میشود این امکان به ولیدیتورها داده میشود تا بتوانند کوین جدید استخراج کنند و تراکنشهای جدیدی را در شبکه تأیید کنند. در این الگوریتم هراندازه تعداد بیشتری کوین توسط ماینر سوزانده شود، احتمال انتخاب آن برای اعتبارسنجی بلاک بعدی بالاتر میرود.

الگوریتم اجماع اثبات ظرفیت چیست ؟
«الگوریتم اجماع گواه اثبات ظرفیت» ( Proof of Capacity | PoC) یکی از انواع الگوریتم اجماع است که این امکان را به نودهای شبکه میدهد تا بتوانند از ظرفیت خالی موجود در کامپیوترهای خود برای استخراج ارز دیجیتال استفاده کنند. نحوه کار به این ترتیب است که قبل از اینکه استخراج شروع شود، لیستی از جوابهای احتمالی بر روی درایو خالی نود قرار میگیرد.
با اینکار پیدا کردن جواب برای نود راحتتر میشود و نود مربوطه احتمال بالاتری برای دریافت پاداش استخراج دارد. در این حالت هر اندازه ظرفیت خالی نود که در اختیار شبکه قرار میگیرد بیشتر باشد، احتمال پیدا کردن هش موردنظر بیشتر میشود. یکی از مزایای اصلی الگوریتم اثبات ظرفیت این است که مقدار انرژی بسیار کمی را مصرف میکند. این مزیت در مقایسه با الگوریتم اثبات کار و انرژی مصرفی آن باعث میشود تا این الگوریتم بیشتر موردتوجه طرفداران محیط زیست قرار گیرد.
جمع بندی
در ابتدای این مطلب الگوریتم اجماع را تعریف کردیم و کارکرد آن را شرح دادیم. سپس کاربرد الگوریتم اجماع و انواع آن را توضیح دادیم. الگوریتم اثبات کار و اهمیت آن را شرح دادیم. ماینینگ و الگوریتم اثبات کار و عملکرد ماینرها در الگوریتم اثبات کار را بیان کردیم. سپس الگوریتم اثبات کار در بلاک چین بیت کوین و نحوه کارکرد آن را توضیح دادیم. فرآیند حل پازل در بلاک چین و معایب الگوریتم اجماع اثبات کار را که شامل مصرف بالای انرژی و تمرکزگرایی در استخراج ارز دیجیتال است را در ادامه مطلب شرح دادیم.
سپس الگوریتم اجماع اثبات سهام و استیکینگ در شبکههای مربوطه را توضیح دادیم. در ادامه نحوه عملکرد الگوریتم اثبات سهام و مکانیزم تنبیه و پاداش را در این الگوریتم شرح دادیم. مزایا و معایب الگوریتم اجماع اثبات سهام را توضیح دادیم. سپس الگوریتم اجماع اثبات سهام نیابتی و مزایا و معایب آن را شرح دادیم. در ادامه مطلب الگوریتم اثبات اعتبار را توضیح دادیم. الگوریتم اجماع اثبات سوزاندن از دیگر الگوریتمهای موجود است که پس از شرح آن، درباره نحوه کارکرد این الگوریتم نیز توضیحاتی دادیم. در پایان این مطلب نیز الگوریتم اجماع اثبات ظرفیت را شرح دادیم.