الگوریتم اجماع چیست؟ الگوریتم اجماع بلاکچین روشی است که در آن نودهای یک شبکه درباره وضعیت فعلی دادهها در شبکه به توافق میرسند و از این طریق، قابلیت اطمینان و اعتماد را در شبکه های بلاکچینی ( مقاله ” بلاکچین چیست؟ ” را مطالعه کنید) ایجاد میکنند. نام دیگر مکانیسم اجماع، پروتکل اجماع یا الگوریتم اجماع بلاکچین است. بهطورکلی، انواع مختلفی از مکانیسمهای اجماع وجود دارد که از آنها برای تأیید تراکنشها و حفظ امنیت شبکههای بلاکچینی استفاده میشود.
هر کدام از این مکانیسمها، مزایا و معایب خاص به خود را دارند اما در نظر داشته باشید که اثبات کار ( برای اطلاعات بیشتر مقاله ” الگوریتم اثبات کار چیست؟ ” را مطالعه نمایید) و اثبات سهام (PoS) دو مورد از پرکاربردترین الگوریتمهای اجماع بلاکچین هستند. در این مقاله قصد داریم تا شما را با انواع مکانیسمهای اجماع آشنا کنیم. اگر شما هم به این موضوع علاقهمند هستید تا انتهای این مقاله همراه ما باشید.
چرا بلاکچینها به مکانیسمهای اجماع نیاز دارند؟
مکانیسمهای اجماع، ستون فقرات همه بلاکچینها هستند و موجب افزایش امنیت آنها میشوند. قبل از توضیح انواع الگوریتم اجماع بلاکچین، بهتر است ابتدا تعریف بلاکچین را مرور کنیم. بلاکچین، یک دفتر کل دیجیتال غیرمتمرکز، توزیع شده و اغلب عمومی است که از آن برای ثبت تراکنشها استفاده میشود. هر یک از این تراکنشها باید قبل از اضافه شدن به زنجیره، بهطور مستقل توسط شبکههای رایانهای همتا به همتا تأیید شوند. این کار به ایمنسازی بلاکچین در برابر فعالیتهای تقلبی کمک کرده و مشکل «double spending» را برطرف میکند.
شبکههای بلاکچینی مانند بیتکوین و اتریوم به منظور تضمین اینکه همه نودهای شبکه بر روی یک نسخه از تاریخچه توافق دارند از مکانیسمهای اجماع استفاده میکنند. بهطورکلی میتوان گفت که هدف این مکانیسمها مقاوم کردن شبکه در برابر خطاها است. جهت آشنایی بیشتر با مبانی ارز دیجیتال کلیک کنید
مکانیسم اجماع چیست؟
اجماع فرآیندی است که طی آن گروهی از نودها در شبکه مشخص میکنند که کدام تراکنشها معتبر بوده و کدام تراکنشها معتبر نیستند. در واقع، مکانیسمهای اجماع روشهایی هستند که برای دستیابی به این توافق استفاده میشوند و به محافظت از شبکه در برابر رفتارهای مخرب و حملات هک کمک میکنند. بسته به بلاکچین و کاربرد آن، انواع مختلفی از الگوریتم اجماع بلاکچین وجود دارد.
همانطور که میدانید، شبکههای بلاکچین در میزان مصرف انرژی، امنیت و مقیاسپذیری با یکدیگر متفاوت هستند اما همه آنها یک هدف مشترک دارند و آن هدف، اطمینان از صحت و درستی سوابق ثبت شده بر روی شبکه است. بعد از آشنایی با مفاهیم اولیه، بهتر است با مهمترین الگوریتمهای اجماع بلاکچین آشنا شوید.
انواع الگوریتم اجماع بلاکچین
۱) اثبات کار (Proof of Work)
اولین الگوریتم اجماع بلاکچین، مکانیسم اثبات کار (PoW) است که توسط بیتکوین، اتریوم و بسیاری دیگر از بلاکچینهای عمومی استفاده میشود. بهطورکلی الگوریتم اثبات کار به عنوان قابل اعتمادترین و ایمنترین مکانیسم اجماع در نظر گرفته میشود و مهمترین معضل آن، بحث مقیاسپذیری شبکه است. در مکانیسم اثبات کار، ماینرها برای حل پازلهای محاسباتی بسیار پیچیده با استفاده از رایانههای قدرتمند به رقابت با یکدیگر میپردازند. اولین ماینری که عدد ۶۴ رقمی هگزادسیمال «هش» را به دست آورد، حق تشکیل بلوک جدید و تأیید تراکنشها را دارد. این ماینر، مقدار از پیش تعیین شدهای رمزارز به عنوان «پاداش بلوک» دریافت میکند.
از آنجا که در این روش به مقادیر زیادی منابع محاسباتی و انرژی برای تولید بلوکهای جدید نیاز است، هزینههای عملیاتی آن بسیار بالا بوده و این موضوع، مانعی برای ورود ماینرهای جدید است. علاوه بر بحث هزینه، رایجترین انتقاد به مکانیسم اجماع اثبات کار، تأثیر مصرف بالای برق بر محیط زیست است که همین این امر باعث شده است که بسیاری از افراد به دنبال پروتکلهای اجماع پایدارتر و کارآمدتر مانند اثبات سهام (PoS) باشند.
۲) اثبات سهام (Proof of Stake)
همانطور که از نام آن پیداست، این مکانیسم اجماع حول فرآیندی با نام استیکینگ یا سهامداری فعالیت میکند. در الگوریتم اثبات سهام (PoS)، ماینرها ملزم به استیک کردن داراییهای دیجیتال خود هستند تا شانس انتخاب خود را به عنوان اعتبارسنج افزایش دهند. این روند، بی شباهت به قرعهکشی نیست چرا که در قرعهکشی هر چه سکههای بیشتری را شرطبندی کنید، شانس شما برای برنده شدن بیشتر میشود.
الگوریتم اثبات سهام به عنوان یک جایگزین پایدارتر و سازگار با محیط زیست برای مکانیسم اثبات کار در نظر گرفته میشود و از طرف دیگر در برابر حملات ۵۱ درصدی ایمنتر است. پلتفرمهای برجستهای که از الگوریتم اثبات سهام استفاده میکنند عبارتند از: Cardano، Solana و Tezos.
۳) اثبات سهام واگذار شده (Delegated Proof of Stake)
به مکانیسم اثبات سهام اصلاح شده، مکانیسم اثبات سهام واگذارشده (DPoS) میگویند. در این مکانیسم، دستیابی به اجماع بر یک سیستم رأیگیری مبتنی بر شهرت متکی است. کاربران شبکه با رأیگیری به انتخاب شاهدان (witnesses) که به عنوان «تولیدکنندگان بلوک» نیز شناخته میشوند، کمک میکنند. در این سیستم، فقط شاهدانی که بیشترین رأی را به دست آورند، حق اعتبارسنجی تراکنشهای بلاکچین را دارند. به منظور رأی دادن، کاربران باید توکنهای خود در یک استخر استیک کنند و هر چه کاربر، توکن بیشتری استیک کرده باشد، قدرت رأی بیشتری دارد.
توجه داشته باشید که شاهدان منتخبی که با موفقیت تراکنشها را در یک بلوک تأیید میکنند، پاداش میگیرند و معمولاً این پاداش با کسانی که به آنها رأی دادهاند، تقسیم میشود.اگرچه DPoS کمتر از PoS رایج است، اما از نظر بسیاری از متخصصین این حوزه، کارآمدتر، دموکراتیکتر و از نظر مالی فراگیرتر از نسخه قبلی خود است. در حال حاضر، این مکانیسم توسط Lisk (LSK)، EOS.IO (EOS)، Steem (STEEM)، BitShares (BTS) و Ark (ARK) استفاده میشود.
۴) اثبات فعالیت (Proof of Activity)
اثبات فعالیت (PoA) یک الگوریتم اجماع بلاکچین است که از ترکیب مکانیسمهای اجماع PoW و PoS ایجاد میشود و در حال حاضر در پروژههای Decred (DCR) و Espers (ESP) در حال استفاده است. در مکانیسم PoA، فرآیند ماینینگ مانند PoW آغاز میشود، و ماینرها برای حل یک مسئله ریاضی پیچیده با استفاده از قدرت محاسباتی با یکدیگر رقابت میکنند. تفاوت این مرحله با مکانیسم اثبات کار در این است که بلوک استخراج شده فاقد تراکنش بوده و تنها حاوی هدر و آدرس پاداش ماینر است. بعد از استخراج بلوک خالی، مکانیسم به سیستمی مشابه اثبات سهام تغییر میکند و از هدر بلوک برای انتخاب تصادفی یک گروه از اعتبارسنجها استفاده میشود تا بلوک جدید را تأیید کنند.
همانند PoS، هر چه اعتبارسنج، رمزارز بیشتری استیک کرده باشد، شانس او برای انتخاب شدن بیشتر است. هنگامی که اعتبارسنجها بلوک را امضا کردند، آن بلوک به شبکه بلاکچین اضافه شده و آماده ثبت تراکنشها میشود. سپس پاداش بلوک بین ماینر و اعتبارسنج تقسیم میگردد. اگرچه سیستم PoA با هدف ترکیب بهترین ویژگیهای مکانیسم اثبات کار و اثبات سهام طراحی شده است اما منتقدان این روش، به دلیل مصرف انرژی در حین فرایند استخراج و جانبداری نسبت به اعتبارسنجهایی که تعداد بیشتری سکه در اختیار دارند به آن نقد دارند.
۵) اثبات اعتبار (Proof of Authority)
مکانیسم اجماع اثبات فعالیت و اثبات اعتبار هر دو به صورت مختصر PoA نوشته میشود، بنابراین بهتر است همیشه به این موضوع توجه کنید. الگوریتم اجماع اثبات اعتبار، با اعتبارسنجهای خود بر اساس شهرت کار میکند. در واقع، اثبات اعتبار، یک نسخه اصلاح شده از PoS است که توسط همبنیانگذار و مدیر فنی سابق کمپانی اتریوم، گوین وود (Gavin Wood) در سال ۲۰۱۷ پیشنهاد شد.
در این روش، اعتبارسنجها، سکههای خود را استیک نمیکنند. بلکه در عوض، آنها، باید شهرت خود را به خاطر حق اعتبارسنجی بلوکها به خطر بیندازند که این کار بسیار متفاوت از مکانیسمهای اجماع موجود در اکثر شبکههای بلاکچینی است چون معمولاً در اکثر شبکهها نیازی به افشای هویت برای مشارکت در شبکه وجود ندارند.
از آنجایی که این مکانیسم تقریباً به هیچ قدرت محاسباتی نیاز ندارد، نسبت به PoW، بسیار به صرفهتر و یکی از گزینههای کمهزینه برای شبکههای خصوصی، مانند JP Morgan (JPMCoin) است. از جمله پروژههای مبتنی بر PoA میتوان به VeChain (VET) و شبکه آزمایشی Ethereum Kovan اشاره کرد.
۶) اثبات سوزاندن (Proof of Burn)
یکی دیگر از جایگزینهای مناسب الگوریتم اجماع اثبات کار، مکانیسم اثبات سوزاندن (PoB) است. در PoB، ماینرها قدرت استخراج یک بلوک را با «سوزاندن» یا از بین بردن مقداری از توکنهای از پیش تعیینشده به شیوهای قابل تأیید به دست میآورند. در واقع در این روش، این توکنها به آدرس کیف پولی فرستاده میشوند که از آنجا قابل بازیابی نیستند و هر چه یک فرد، تعداد سکههای بیشتری بسوزاند، شانس تصادفی انتخاب شدن بیشتری دارد.
برخلاف مکانیسم اثبات سهام که در آن استخراجکنندگان در صورت خروج از شبکه میتوانند داراییهای قفلشده خود را بازیابی کرده یا بفروشند، در این الگوریتم اجماع، توکنهایی که از بین میروند، قابل بازیابی نیستند.
بهطورکلی میتوان گفت که این روش ماینرها را ملزم به از بین بردن کوتاه مدت ثروت برای به دست آوردن امتیاز مادام العمر ایجاد بلوکهای جدید میکند. همچنین این روش توکنسوزی موجب کاهش تعداد توکن، محدود کردن تورم و افزایش تقاضا میشود. رمزارزهایی که از این الگوریتم اجماع بلاکچین استفاده میکنند عبارتند از: Slimcoin (SLM)، Counterparty (XCP) و Factom (FCT).
۷) تحمل خطای بیزانس عملی (Practical Byzantine Fault Tolerance)
تحمل خطای بیزانسی عملی (PBFT) یک الگوریتم اجماع بلاکچین است که در اواخر دهه ۹۰ توسط باربارا لیسکوف و میگل کاسترو معرفی شد. هدف این الگوریتم اجماع بلاکچین، حل بسیاری از مشکلات مرتبط با راهحلهای تحمل خطای بیزانس است. در واقع، تحمل خطا بیزانس (BFT) ویژگی یک شبکه توزیع شده برای دستیابی به اجماع در شرایطی است که برخی از نودهای شبکه قادر به پاسخگویی نیستند یا با اطلاعات نادرست پاسخ میدهند. هدف این مکانیسم محافظت در برابر خرابی سیستم با کاهش تأثیر نودهای معیوب و استفاده از تصمیمگیری جمعی (با کمک هم نودهای سالم و هم نودهای معیوب) است.
۸) اثبات تاریخ (Proof of History)
متخصصین فنی معتقدند که الگوریتم اثبات تاریخ (PoH) یکی از رقبای جدی مکانیسم اثبات سهام است. در حال حاضر این مکانیسم فقط در بلاکچین Solana در حال استفاده است و هنوز در مقیاس بزرگ آزمایش نشده است. بهطورکلی اجماع بر سر زمان در شبکههای توزیع شده کاری سخت و دشوار است اما توسعهدهندگان سولانا معتقدند که مکانیسم اجماع اثبات تاریخ یک راهحل بینظیر در این زمینه میباشد و شبکه را از فعالیت اعتبارسنجها بینیاز میکند. در این مکانیسم، تاریخچهای از سوابق وجود دارد که نشان میدهد یک تراکنش، قبل و بعد از کدام رویدادها به شبکه اضافه شده است.
جمعبندی
در بخشهای مختلف این مقاله با انواع الگوریتم اجماع بلاکچین و انواع آنها آشنا شدید. هر مکانیسم اجماع، مجموعهای از مزایا و معایب خاص خود را دارد. اگرچه در حال حاضر مطمئناً، PoW و PoS رایجترین الگوریتمهای اجماع هستند اما با پیشرفت این تکنولوژی شاهد افزایش تعداد مکانیسمهای اجماع هستیم. قطعاً آشنایی با این مکانیسمها به ما در درک بهتر این بازار و نحوه فعالیت مؤثر و سودمند در آن کمک خواهد کرد.