آشنایی با الگوریتم اجماع | همه چیز درمورد POW
الگوریتم های اجماع فرایندی در علوم کامپیوتر هستند که از طریق آن، توافق بین سیستمهای توزیع شده درباره یک مقدار واحد برای داده به دست می آیند. الگوریتم های اجماع جهت دستیابی به قابلیت اطمینان در یک شبکه که دربرگیرنده چندین نود غیرقابل اعتماد است، طراحی شده اند. حل این مسئله – که به عنوان مشکل اجماع شناخته می شود – در مباحثی مانند محاسبات توزیع شده و سیستم های چند عاملی ضروری است.
بلاک چین، دفتر کل توزیع شده که بیشتر نام آن را در ارتباط با بیت کوین شنیده اید، برای رسیدن به توافق بین نودها نیز به الگوریتم های اجماع متکی است. یک بلاک چین را می توان به عنوان یک پایگاه داده غیرمتمرکز در نظر گرفت که توسط رایانه های توزیع شده در یک شبکه همتا به همتا (P2P) اداره می شود.
ارز دیجیتال بیت کوین از الگوریتم اثبات کار (PoW) برای اطمینان از امنیت در شبکه استفاده می کند. بیت کوین مکانیسم هایی را به کار می گیرد تا تضمین شود که تلاش های انجام شده برای استخراج، در چارچوب بلاک ثبت شده توسط ماینر ارائه شده است.
سایر الگوریتم های اجماع رایج عبارت اند از:
- الگوریتم تحمل خطای بیزانسی (PBFT)
- الگوریتم اثبات سهام (PoS)
- الگوریتم اثبات سهام واگذار شده (DPoS).
اثبات کار (PoW) چیست؟
اثبات کار (Proof of Work)، اولین الگوریتم های اجماع در شبکه بلاک چین است. این الگوریتم برای تایید تراکنش استفاده می شود و یک بلاک جدید برای زنجیره بلاک ها ایجاد می کند.
در این الگوریتم، ماینرها (گروهی از افراد) برای تکمیل تراکنش در شبکه با یکدیگر رقابت می کنند. به فرایند رقابت با یکدیگر، ماینینگ یا استخراج می گویند. به محض اینکه ماینرها با موفقیت یک بلاک معتبر ایجاد کردند، پاداش دریافت می کنند. بیت کوین معروف ترین شبکه ای است که از اثبات کار (PoW) استفاده می کند.
الگوریتم اجماع اثبات کار (PoW) نیاز دارد هر نود در شبکه یک مسئله ریاضی را حل کند. اولین نودی که مسئله را حل می کند، مجوز اضافه کردن یک بلاک جدید را دریافت می کند و به این ترتیب به ماینرها برای انجام کارشان پاداش تعلق می گیرد. نودها بدنه اجرایی بلاک چین هستند و مشروعیت تراکنش های هر بلاک را تایید می کنند. هنگامی که یک بلاک از تراکنش ها مورد تأیید قرار گرفت، داده ها در بلاک چین نوشته و ثبت می شوند.
اثبات سهام (PoS) چیست؟
مفهوم اثبات سهام (PoS) بیان می کند که یک شخص می تواند بر اساس تعداد کوین هایی که در اختیار دارد، تراکنش های بلاک را استخراج یا آنها را اعتبار سنجی کند. این بدان معناست که هر چه تعداد کوین های تحت مالکیت یک ماینر بیشتر باشد، آنها قدرت ماینینگ و تاثیرگذاری بیشتری دارند.
پروتکل اجماع اثبات سهام (PoS) به عنوان یک الگوریتم جایگزین برای رسیدگی به دغدغه های مقیاسپذیری و پایداری محیطی که در ارتباط با پروتکل اثبات کار (PoW) مطرح شده بود، ایجاد شده است.
چگونه اثبات سهام قدرت ماینینگ را نشان می دهد؟
استخراج به قدرت محاسباتی زیادی برای اجرای محاسبات رمزنگاری شده مختلف نیاز دارد. قدرت محاسباتی به مقدار زیادی برق نیاز دارد که برای اثبات کار استفاده می شود.
الگوریتم PoW ، الگوریتمی ناپایدار در نظر گرفته می شود، زیرا مصرف انرژی موردنیاز برای استخراج بیت کوین، آثار کربن (آلودگی زیست محیطی) قابل توجهی را ایجاد می کند. علاوه بر این، ماینرهای بیت کوین مقادیر زیادی ضایعات الکتریکی تولید می کنند، زیرا دستگاههای ASIC که برای استخراج بیت کوین استفاده می شوند، تنها یک کارکرد و عمر محدودی دارند.
با این حال الگوریتم PoS، به دنبال حل این مشکل با جایگزینی موثر برای قدرت محاسباتی است که به موجب آن قدرت استخراج یک فرد به درصد مالکیت وی محدود می شود. این به این معناست که مصرف انرژی و ساخت سخت افزارهای تک منظوره، مانند ماشین های ASIC، به شدت کاهش می یابد، زیرا دیگر برای قدرت محاسباتی به آنها احتیاجی نیست.
اثبات سهام (PoS) با واگذاری قدرت استخراج به نسبت کوین هایی که هر ماینر نگهداری می کند، به دنبال رفع این مشکل است. به این ترتیب، به جای استفاده از انرژی برای انجام محاسبات PoW، قدرت یک ماینر PoS به استخراج درصدی از تراکنش ها محدود می شود که منعکس کننده میزان سهم مالکیت وی است. به عنوان مثال، ماینری که ۳ درصد از کوین های موجود را در اختیار دارد، از نظر تئوری می تواند تنها ۳ درصد از بلاک ها را استخراج کند.
DPos یا واگذاری اثبات سهام چیست؟
واگذاری اثبات سهام (DPoS) به نودهایی که سهام دارند اجازه می دهد تا تأییدکنندگان بلاک یا سازندگان بلاک را انتخاب کنند. این شیوه تأیید کردن باعث می شود که ذینفعان به جای ایجاد بلاک ها، حق ایجاد بلاک ها را به نمایندگانی که از آنها حمایت می کنند، بدهند، بنابراین مصرف توان محاسباتی آنها را به صفر کاهش می دهد.
DPoS مانند یک سیستم پارلمانی است، اگر نمایندگان نتوانند در نوبت خود بلاک ایجاد کنند، کنار گذاشته می شوند و ذینفعان نودهای جدیدی را برای جایگزینی آنها انتخاب می کنند. DPoS بیشترین استفاده را از آرای سهامداران جهت دستیابی به اجماع از طریق روشی منصفانه و دموکراتیک می کند.
در مقایسه با PoW و PoS، DPoS یک پروتکل توافقی کم هزینه و با کارایی بالا است. برخی از ارزهای رمزنگاری شده مانند BitShares و EOS از DPoS استفاده می کنند. نسخه جدید EOS DPoS را به BFT-DPoS که مخفف Byzantine Fault Tolerance-DPoS است تبدیل کرده است.
PBFT یا تحمل خطای عملی بیزانسی چیست؟
PBFT یک نوع پروتکل BFT است که پیچیدگی الگوریتمی پایین تر و عملکرد بالایی در سیستم های توزیع شده دارد.
PBFT شامل پنج مرحله است:
- درخواست
- پیش آماده سازی
- آماده سازی
- تعهد
- پاسخ
نود اولیه، پیام ارسال شده توسط مشتری را به سه نود دیگر ارسال می کند. در صورتی که نود ۳ از کار بیفتد، یک پیام از پنج مرحله عبور می کند تا بین این نودها به اجماع برسد. در نهایت، این نودها به مشتری پاسخ می دهند تا یک دور اجماع تکمیل شود.
PBFT تضمین می کند که نودها یک حالت مشترک را حفظ کرده و در هر دور از اجماع یک اقدام ثابت انجام می دهند. هدف PBFT سازگاری قوی است، بنابراین یک پروتکل اجماع نهایی مطلق است. همان طور که پیش تر گفته شد، EOS یک پروتکل اجماع ترکیبی را اتخاذ می کند. EOS از PBFT برای کار همزمان با اعتبارسنجی و ایجاد بلاک در DPoS استفاده می کند که زمان موردنیاز برای یک دور اجماع را تا حد زیادی کاهش می دهد.
تجزیه و تحلیل و مقایسه الگوریتم های اجماع
در این بخش، پروتکل های اجماع اصلی ذکر شده در این مقاله را از نظر شرایط تحمل خطا، محدودیت، مقیاس پذیری و کاربردهایشان تحلیل می کنیم. نتایج تجزیه و تحلیل و مقایسه در جدول زیر به صورت خلاصه آورده شده است.
تحمل خطای عملی بیزانسی | واگذاری اثبات سهام | اثبات سهام | اثبات کار | سهام |
---|---|---|---|---|
قطعیت مطلق | قطعیت احتمالی | قطعیت احتمالی | قطعیت احتمالی | نوع |
۳۳ % | ۵۰ % | ۵۰ % | ۵۰ % | میزان تحمل خطا |
قابل اغماض | کم | کم | زیاد | توانایی مصرف |
بد | خوب | خوب | خوب | مقیاس پذیری |
مجاز است | عمومی | عمومی | عمومی | کاربرد |
سوالات متداول:
نظرتان را دربارهی مقاله «آشنایی با الگوریتم اجماع | همه چیز درمورد POW» با ما درمیان بگذارید.
این brc_20آیا همون بلاکچین بیتگرت #briseهست؟ یا فرق میکنه؟