اجماع و انواع آن در بلاکچین

تا به اینجا در مبحث زنجیره‌بلوک یا بلاک چین با مفاهیم کلیدی آن یعنی دفترکل توزیع‌شده، رمزنگاری، اجماع و قرارداد هوشمند آشنا شدید، هدف از توسعه این فناوری یعنی انتقال ارزش را متوجه شدید و علت نام‌گذاری این فناوری را دانستید. در ادامه همین مبحث و در این نوشتار، اجماع و انواع آن بررسی می‌شود.در نوشتار «زنجیره‌بلوک: مفاهیم کلیدی» دیدید که برای پاسخ به سوالاتی مانند «چه چیزی در زنجیره‌بلوک ثبت شود؟» یا «چه کسی تراکنش‌ها را ثبت کند؟»، از روش‌های اجماع استفاده می‌شود. برای توضیح اجماع کمی باید درباره ساختار شبکه‌های مبتنی بر زنجیره‌بلوک بدانید.مهم‌ترین اعضای شبکه‌های مبتنی بر زنجیره‌بلوک، گره‌ها (Nodes) هستند. هر شخصی می‌تواند با نصب یک نرم‌افزار، گره این شبکه باشد. گره‌ها تراکنش‌های تایید نشده را از بیرون شبکه دریافت و بین یکدیگر دست‌به‌دست می‌کنند و پس از تایید شدن یک تراکنش (البته در قالب یک بلوک) آن را به کپی دفترکل خود می‌افزایند. همان‌طور که احتمالا متوجه شدید، از میان مراحل دریافت، تایید و ثبت تنها یک مرحله بر عهده گره‌ها نیست؛ «تایید». تایید تراکنش‌ها چالش‌برانگیزترین مرحله است؛ زیرا در این رابطه سوالاتی باید پاسخ داده شود:چگونه می‌شود انگیزه‌ای برای تاییدکنندگان ایجاد کرد که نسبت به تراکنش‌های غلط بی‌تفاوت نباشند؟چگونه می‌شود برای افراد انگیزه‌ای ایجاد کرد تا در فرایندِ تایید شرکت کنند؟از میان تاییدکنندگان نظر چه کسی پذیرفته شود؟و ازاین‌دست سوالات.اولین پاسخ مناسبی که به این سوالات داده شد، به بیت‌کوین و سازوکار اجماع آن یعنی اثباتِ کار (Proof of work) برمی‌گردد. در این روش اجماع که در پروتکل بیت‌کوین نیز از آن استفاده می‌شود، گره‌ها نظر کسی را می‌پذیرند که مسئله‌ای ریاضی- کامپیوتری را با توان پردازشی که خریداری کرده‌اند، زودتر از دیگران، حل کند. تاییدکنندگان تراکنش‌های تاییدنشده را از گره‌ها دریافت می‌کنند، آن‌ها را در قالب یک بلوک و در کنار یکدیگر می‌چینند و سپس با توان پردازشی سخت‌افزارهای خود به حل مسئله با این بلوک می‌پردازند. هر تاییدکننده که سریع‌تر این مسئله را حل کند، به گره‌ها اعلام می‌کند و آن‌ها بلوک او را به زنجیره‌بلوک اضافه می‌کنند و دوباره این روند تکرار می‌شود. درواقع با یافتن پاسخ مسئله، تاییدکننده اثبات می‌کند که برای شبکه کار کرده است که مسلما باید در قبال آن پاداش بگیرد. این پاداش در اغلب موارد از جنس توکن شبکه است؛ بدین ترتیب انگیزه تاییدکننده برای بی‌تفاوت نبودن به پایداری شبکه نیز تامین می‌شود؛ «اگر شبکه ناپایدار شود، پاداش تاییدکننده هم بی‌ارزش می‌شود.»توکنی که به تاییدکننده منتخب در هر مرحله داده می‌شود، در همان لحظه ایجاد شده است و به دلیل شباهت به استخراج طلا، به این فرایند استخراج یا ماینینگ و به تاییدکننده استخراج‌کننده یا ماینر می‌گویند.بنا بر مطالب گفته‌شده یک‌بار دیگر چرخه عمر یک تراکنش را مرور می‌کنیم. تراکنش توسط کاربر ایجاد و از طریق یک گره به شبکه ارسال می‌شود. گره‌ها یکی پس از دیگری تراکنش را دریافت می‌کنند و در اختیار استخراج‌کنندگان قرار می‌دهند. استخراج‌کنندگان چند تراکنش را در کنار یکدیگر قرار می‌دهند و یک بلوک می‌سازند. پس‌ازآن استخراج‌کنندگان با بلوکی که ساخته‌اند، به حل مسئله می‌پردازند. هر کس که زودتر از دیگران مسئله را حل کند، بلوک خود را به گره‌ها ارسال می‌کند. گره‌ها بلوک موردنظر را به زنجیره‌بلوک خود اضافه می‌کنند و دوباره این فرایند تکرار می‌شود.لازم به ذکر است، گره‌ها مختار هستند که بلوک ارسالی را به زنجیره‌بلوک خود اضافه نکنند. به این معنی که اگر بلوک و تراکنش‌های آن مورد تایید گره نباشد، می‌تواند آن را نپذیرد. حتی ممکن است گروهی از گره‌ها یک بلوک را نپذیرند؛ درحالی‌که گروهی دیگر آن را قبول کرده باشند. بدین‌ترتیب شبکه دوشاخه می‌شود. در این شرایط شاخه قوی‌تر یعنی شاخه‌ای که اعضای بیشتری آن را پذیرفته باشند، انتخاب می‌شود.اثباتِ کار در حال حاضر پرکاربردترین سازوکار اجماع در شبکه‌های مبتنی بر زنجیره‌بلوک است؛ اما سازوکارهای دیگری هم توسعه یافته است. برای مثال در سازوکار اجماع اثباتِ سهام، تاییدکننده بلوک‌ها بر اساس مقدار توکنی که در اختیار دارد به‌همراه برخی الگوریتم‌های تصادفی انتخاب می‌شود.اگر سوالی در ارتباط با موضوعات بررسی‌شده داشتید، در بخش کامنت‌ها بپرسید.منبع: ققنوس