الگوریتم های اجماع
با اینکه هیچ مرجع متمرکزی وجود ندارد که تراکنشهای انجام شده درون بلاک چین را تایید و تصدیق کند، اما هر معلاملهای که در آن انجام میشود به صورت پیشفرض ایمن و تایید شده در نظر گرفته میشود. این موضوع به دلیل وجود الگوریتم اجماع است که بخش اصلی هر بلاک چینی را تشکیل میدهد.
در این مقاله به بررسی مفهوم الگوریتمهای اجتماع و معرفی دو نمونه محبوب آن یعنی اثبات کار و اثبات سهام خواهیم پرداخت.
الگوریتم اجماع چیست؟
الگوریتم اجماع (Consensus Algorithm) نوعی مکانیسم است که شبکه بلاک چین به وسیله آن قادر است که در مورد یک مسئله به یک نتیجه یا اجماع کلی برسد. در این روش باید تعداد مشخصی از نودها به یک توافق کلی برسند تا تراکنشهای انجام شده بتوانند تایید شوند.
الگوریتمهای اجماع تضمین میکنند که مقررات مربوط به پروتکلها در تمامی تراکنشها و نقل و انتقالات ارزهای دیجیتال در شبکهی بلاک چین به صورت صحیح رعایت و اجرا شوند. در واقع مفهوم الگوریتم اجماع به این صورت است که باید میان تعداد مشخصی از نودها درباره تایید یک تراکنش در شبکه بلاک چین به صورت دسته جمعی توافق حاصل شود تا این تراکنش بتواند در داخل دفتر کل بلاک چین ثبت شود.
دادههای ثبت شده بر روی بلاک چین میتوانند به هر صورتی از انتقال یک ارز دیجیتال گرفته تا هویت دیجیتالی یک کاربر وجود داشته باشند. هر نود در شبکه، این دادهها را ثبت کرده و اطلاعات مربوط به آن را به نسخه خود از دفتر کل اضافه خواهد کرد. به این صورت اگر دادهها از روی دفتر کل یک نود پاک شوند یا آن نود دچار اختلال گردد، نودهای دیگر همچنان میتوانند به آن دادهها دسترسی داشته باشند.
الگوریتم اجماع چه فایدهای دارد؟
یکی از مهمترین ویژگیهای بلاک چین، غیرمتمرکز بودن آن است. این غیرمتمرکز بودن به این معناست که دادههای یک بلاک چین بر روی یک سرور مرکزی ذخیره نمیشوند، بلکه در چندین سرور و کامپیوتر مختلف ذخیره میگردند که به هر کدام از آنها یک نود گفته میشود.
در یک سیستم متمرکز مانند یک شرکت به جز زمانهایی مشخص، تمامی کارمندان در دسترس نیستند، در حالی که در سیستمهای غیرمتمرکز این مسئله متفاوت است. در واقع الگوریتم اجماع به وجود آمده تا این مشکل را برطرف کند. در سیستمهای غیرمتمرکز به یک میزان معینی از نودها نیاز است تا یک تراکنش یا تغییر تایید یا رد شود. برای مثال اگر ۵۱ درصد از نودهای درون شبکه به این نتیجه برسند که دادههای بلاک چین باید بروزرسانی شوند، این اتفاق خواهد افتاد. از الگوریتم اجماع به جز تصمیمگیری برای تایید یا عدم تایید یک تراکنش، برای انتخاب نودها برای مدیریت امور دفتر کل توزیع شده، یکدست کردن دادههای ذخیره شده توسط هر نود و یکسری فرآیندهای دیگر نیز استفاده میشود.
انواع الگوریتمهای اجماع
هر کدام از الگوریتمهای اجماع، خصوصیات و ویژگیهای منحصر به فرد خود را دارند. دو الگوریتم شناخته شدهای که اکثر بلاک چینهای محبوب در حال حاضر از آنها استفاده میکنند، اثبات کار (Proof of Work) و اثبات سهام (Proof of Stake) نام دارند که در این بخش به معرفی آنها خواهیم پرداخت.
الگوریتم اثبات کار (PoW)
اثبات کار روشی برای تأیید تراکنشها در یک بلاک چین است که در آن یک الگوریتم، یک مسئله ریاضی را ارائه میدهد که کامپیوترها برای حل آن تلاش میکنند.
هر کامپیوتر شرکتکننده در فرآیند اثبات کار که اغلب به عنوان ماینر از آن یاد میشود، یک معمای ریاضی را حل میکند که به تأیید گروهی از تراکنشها کمک میکند و سپس آنها را به دفتر کل بلاک چین اضافه میکند. اولین کامپیوتری که این کار را با موفقیت انجام دهد با مقداری ارز دیجیتال به خاطر تلاشهایش پاداش دریافت میکند.
این مسابقه برای حل معماهای بلاک چین میتواند به مقدار زیادی انرژی و برق کامپیوتر نیاز داشته باشد. در عمل، به این معناست که ماینرها ممکن است پس از در نظر گرفتن هزینههای انرژی و منابع محاسباتی که برای حل این معماها صرف کردهاند، حتی با ارز دیجیتالی که برای اعتبارسنجی تراکنشها دریافت کردهاند، مورد ضرر قرار گرفته باشند.
الگوریتم اثبات سهام (PoS)
برخی از ارزهای دیجیتال برای کاهش انرژی لازم در هنگام بررسی تراکنشها از روش اثبات سهام استفاده میکنند. در اثبات سهام، تعداد تراکنشهایی که هر فرد میتواند تأیید کند، محدود به مقدار رمزارزی است که فرد میخواهد به عنوان سهام در اختیار بلاک چین قرار دهد. این مقدار رمزارز بهطور موقت در یک صندوق اشتراکی قفل میشود تا فرد شانس شرکت در فرآیند بررسی تراکنشها را داشته باشد.
این نوع از اثبات تقریباً مانند وثیقه بانکی است. هر فردی که رمزارزهای خود را به اشتراک میگذارد، واجد شرایط تأیید تراکنشها میشود، اما شانس این که برای انجام این کار انتخاب شود یا خیر، با افزایش مبلغی که به عنوان سهام قرار میدهد، بالا می رود.
از آنجایی که اثبات سهام، حل معماهای پرانرژی را حذف میکند، بسیار کارآمدتر از اثبات کار است و تأیید سریعتر تراکنشها را امکانپذیر میکند.
اگر یک اعتبارسنج (همان مالک سهام) برای اعتبارسنجی گروه جدیدی از تراکنشها انتخاب شود، به او از طریق رمزارز همان بلاک چین پاداش داده میشود. احتمالاً میزان این پاداش به میزان کل کارمزد تراکنشهای آن بلاک وابسته است. برای جلوگیری از تقلب، اگر انتخاب شوید و تراکنشهای نامعتبر را تأیید کنید، بخشی از آنچه را که به عنوان سهام قرار دادهاید، از دست میدهید.
سایر الگوریتمهای اجماع
دو الگوریتم اثبات کار و اثبات سهام جزو مورد بحث ترین الگوریتمهای اجماع محسوب میشوند ولی الگوریتمهای اجماع مختلف فراوانی وجود دارند که هر کدام دارای نقاط قوت و ضعف منحصر به فرد خود میباشند. در زیر چند الگوریتم اجماع معروف به جز دو موردی که به توضیح آنها پرداختیم، لیست شدهاند:
- الگوریتم اثبات ظرفیت (PoC)
- الگوریتم اثبات اختیار (PoA)
- الگوریتم اثبات سوزاندن (PoB)
- الگوریتم اثبات سهام استیجاری (LPoS)
- الگوریتم اثبات کار با تاخیر (dPoW)
- الگوریتم اثبات سهام محول شده (dPoS)