ارزهای دیجیتال بر بستر شبکه بلاکچین «Blockchain» فعالیت میکنند. در بلاکچین هیچ سرور مرکزی وجود ندارد تا اطلاعات و تراکنشهای صورت گرفته را تأیید کند. هیچ از خود پرسیدهاید: «پس چطور و برچه اساس، اطلاعات وارد زنجیره بلاکچین میشوند؟» در ادامه میخواهیم با بررسی موضوع «الگوریتم اجماع» به سؤالی که مطرح شد، پاسخ بدهیم. در واقع، الگوریتم اجماع در بلاک چین میتواند وظیفه تأیید اطلاعات این شبکه را برعهده بگیرد. اما این تأیید با روشهای مختلفی انجام میشود. در ادامه، ضمن تعریف الگوریتم اجماع، انواع آن را بررسی خواهیم کرد. اگر شما نیز مایل هستید تا بیشتر از فرآیند این الگوریتمها آگاه شوید، با ما همراه باشید.
الگوریتم اجماع چیست؟
فهرست مطالب
الگوریتم اجماع «Consensus Algorithms» فرآیندی در بلاکچین و دیگر شبکههای توزیع شده است که برای دستیابی به توافق روی یک مقدار داده واحد بین نودها استفاده میشود. نود «Node» به هر سیستمی گفته میشود که در شبکه بلاکچین حضور دارد. اطلاعات بلاکچین روی تمام کامپیوترهای موجود در این شبکه ذخیره میشوند. یعنی اگر یک نود یا سیستم از بین برود، اطلاعات آن روی بینهایت نود دیگر باقی ماندهاند. نودها در واقع مسئول حفظ دادههای بلاکچین هستند. اما وقتی یک بهروزرسانی در بلاکچین ایجاد شود، باید تمام نودها آن را بپذیرند. طبیعتاً به روزرسانی بینهایت نود کار سختی است. به همین خاطر برای این امر از الگوریتم اجماع استفاده میشود. به طوری که الگوریتم اجماع در بلاک چین وظیفهی یکپارچه سازی شبکه را برعهده دارد. الگوریتم اجماع تضمین میکند که هر بلاک جدیدی که به زنجیره بلاکچین افزوده میشود، به عنوان یک نسخه واقعی، توسط تمام نودهای این شبکه تأیید شده است.
کاربردهای الگوریتمهای اجماع در بلاک چین
الگوریتم اجماع در بلاک چین کاربردهای ضروری و مهمی دارد. در واقع، بدون الگوریتم اجماع، عملاً بلاکچین کارایی خود را از دست میدهد. کاربردهای حیاتی الگوریتم اجماع در بلاک چین شامل چنین مواردی هستند:
- یکپارچه ساختن اطلاعات جدید روی تمام نودهای شبکه بلاکچین (بهروزرسانی کلی)
- مدیریت شبکه بلاکچین
- بررسی تراکنشهای صورت گرفته بر بستر بلاکچین و تأیید صحت آنها
- انتخاب برخی از نودها به عنوان رهبر در شبکه بلاکچین
- محافظت از بلاکچین در برابر حملات سایبری
برای این که کاربردهای زیر به درستی اجرا شوند، باید بیش از 50 درصد نودها، بلاک را تأیید کنند. بنابراین اگر در جریان یکپارچهسازی یا تأیید اطلاعات، 51 ٪ نودها نظر موافق داشته باشند، آن بلاک به زنجیره بلاکچین افزوده میشود. در غیر اینصورت، بلاک صلاحیت ورود به بلاکچین را در اجماع کسب نمیکند. به یک گروه کاری بیندیشید. قرار است برای یک موضوع خاص در بین این گروه تصمیمگیری شود. اگر بیشتر افراد گروه با این موضوع موافق باشند، تأیید خواهد شد و اگر بیشتر اعضا موافق نباشند، تأیید نمیشود. حالا اگر اعضا نتوانند نظر درستی بدهند و تصمیم را نهایی کنند، سرپرست یا رهبر گروه این امر را انجام خواهد داد. شیوه فعالیت الگوریتم اجماع هم دقیقاً به همین صورت است!
هش در بلاک چین به چه معناست؟
هش «Hash» یک تابع است. تابعی که اطلاعات دنیای خارجی را به داده قابل ورود بلاکچین تبدیل میکند. اما هش یک تابع یکطرفه است، به طوری که اطلاعات تأیید شده توسط نودهای شبکه در الگوریتم اجماع را وارد شبکه بلاکچین میکند؛ اما نمیتواند اطلاعات را از بلاکچین خارج کند. البته باید به همین صورت هم باشد. چراکه اگر قرار باشد اطلاعات از بلاکچین خارج شوند، امنیت این شبکه به خطر اُفتاده و امکان دستکاری دادهها بهوجود میآید. اما هش با ورود یکطرفه اطلاعات به بلاکچین از این امر جلوگیری میکند. قدرت یک شبکه رمزارزی هم با نرخ هش آن سنجیده میشود. هر شبکه رمزارزی که بتواند هش بالاتری انجام دهد، موفقتر خواهد بود.
ضرورت الگوریتمهای اجماع
الگوریتمهای اجماع یا Consensus Algorithms بیشتر برای هماهنگ سازی اعضای یک شبکه کاربرد دارند. این کاربرد به تنهایی میتواند هدف بلاکچین را محقق سازد. اگر الگوریتم اجماع نباشد، باید مانند سیستمهای سنتی و متمرکز، از یک سرور مرکزی برای ذخیره اطلاعات و تأیید آنها استفاده کرد. بلاکچین بهوجود آمده تا تمرکزگرایی سیستمهای مرکزی را به چالش بکشد و امور مالی غیرمتمرکز را جایگزین آن کند. الگوریتم اجماع، اصلیترین ابزار بلاکچین و دیگر شبکههای توزیع شده برای محقق کردن این هدف است. بنابراین هر رمزارز جدیدی که به لیست کریپتوکارنسیها اضافه میشود، باید حتماً یک الگوریتم اجماع داشته باشد. در ادامه به معرفی انواع الگوریتم اجماع میپردازیم.
درست کار نکردن الگوریتمهای اجماع چه مشکلاتی در پی دارد؟
اگر تا به اینجا مفهوم الگوریتم اجماع یا Consensus Algorithms را به درستی درک کرده باشید، حتماً میتوانید حدس بزنید که درست کار نکردن الگوریتم اجماع، چه مشکلاتی را میتواند به همراه داشته باشد. وقتی تراکنشهای شبکه بلاکچین به درستی تأیید نشوند، کاربرانی که از تراکنشهای رمزارزی استفاده میکنند، دچار زیان خواهند شد. در نتیجه، امنیت و تمام کاربردهای بلاکچین زیر سؤال میرود. به طوری که هکرها راههای بسیاری برای نفوذ به این شبکه پیدا میکنند. بلاکچین برای غیرمتمرکز و قدرتمند باقی مانده به شدت به الگوریتمهای اجماع وابسته است. حالا اگر این الگوریتمها وظیفه خود را به درستی انجام ندهند، بلاکچین به خطر میاُفتد.
الگوریتم اجماع بهینه چه ویژگیهایی دارد؟
یک الگوریتم اجماع بهینه، باید بتواند کاربردهایی که برای الگوریتمهای اجماع یا Consensus Algorithms نام بردیم را به درستی مدیریت و هدایت کند. اما سرعت نیز در این فرآیند اهمیت پیدا میکند. بنابراین الگوریتم اجماع بهینه باید قدرت هش بالایی داشته باشد و بتواند به سرعت عمل یکپارچهسازی نودها و تأیید تراکنشها را به انجام برساند. بنابراین دقت و سرعت بالا را میتوان جزء مهمترین ویژگیهای یک الگوریتم اجماع بهینه در نظر گرفت. البته فاکتورهای دیگری هم در این بهینگی نقش دارند که در بررسی انواع الگوریتم اجماع، آنها را تا حد زیادی تشخیص خواهید داد.
انواع الگوریتم اجماع در بلاک چین
الگوریتم اجماع در بلاک چین، نوعی رأیگیری است. اما قوانین رأیگیری در هر مدل از الگوریتمهای اجماع با هم تفاوت دارد. هر الگورتیم اجماع در بلاک چین، قوانین و شیوه عملکرد خاص خود را دارند. الگوریتمهای اجماع بسیاری در شبکه بلاکچین وجود دارند، اما برخی از آنها کاربرد بیشتری به نسبت بقیه دارند. از جمله پرکاربردترین الگوریتمهای اجماع در بلاک چین میتوان موارد زیر را بررسی کرد:
-
الگوریتم اثبات کار «PoW»
الگوریتم گواه اثبات کار «Proof of Work» اولین، مهمترین و مشهورترین الگوریتم اجماع در بلاکچین است. بیتکوین «Bitcoin» اولین ارز دیجیتال جهان بود که در سال 2008 پا به عرصه ظهور نهاد. شبکه بیتکوین از این الگوریتم اجماع استفاده میکند. در این الگوریتم، نودهای شبکه برای پیدا کرده هشهای صحیح شبکه به رقابت میپردازند. آنگاه نودی که بتواند هش صحیح را پیدا کند، باید آن را در اختیار تمام نودهای دیگر قرار دهد تا آنها را تأیید کنند. اگر 51 درصد نودها برای تأیید آن با نود یابنده موافق باشند، عملیات هشینگ و تولید بلاک جدید بیتکوین صورت خواهد گرفت. در این بین، نود یابنده هش صحیح، از شبکه پاداش میگیرد. همهی این فعالیتها در پی یک فرآیند تحت عنوان استخراج یا ماینینگ «Mining» صورت میگیرند.
- مزایای الگوریتم اثبات کار
از جمله مزیتهای این الگوریتم میتوان به «مکانیزم پاداش دهی به نودهای شبکه»، «عدم نیاز به مجوز» و «سابقه درخشان» آن اشاره کرد. در واقع بزرگترین مزیت الگوریتم اثبات کار، جوابگو بودن آن است. میدانیم که این الگوریتم عمل میکند و کارایی بالایی دارد.
- معایب الگوریتم اثبات کار
از جمله معایب الگوریتم اثبات کار میتوان «مصرف بالای انرژی»، «حمله 51 درصدی» و «سرعت نسبتاً پایین» آن را نام برد. ماینرها در استخراج ارزهای دیجیتالی چون بیتکوین، لایت کوین، دوجکوین و دیگر رمزارزهایی که از این الگوریتم استفاده میکنند، برای دریافت پاداش از شبکه، به مصرف برق بالا و قدرت پردازش پردازندههای قوی نیاز دارند. همچنین در این الگوریتم، اگر یک شخص یا سازمان بتواند 51 درصد قدرت شبکه را در دست بگیرد، عملاً بر شبکه حکومت کرده و میتواند امنیت آن را به خطر بیندازد. رمزارزهایی که از این الگوریتم استفاده میکنند، چند بار مورد حمله 51 درصد قرار گرفتهاند.
-
الگوریتم اثبات سهام «PoS»
الگوریتم اثبات سهام «Proof of stake» برخلاف الگوریتم اثبات کار، نیازی به استخراج یا مصرف انرژی بالا ندارد. در این الگوریتم، نیازی به استفاده از دستگاههای ماینر نیست. بلکه در اثبات سهام، میتوان با سپردهگذاری توکنهای بومی یک شبکه، از آن پاداش دریافت کرد. به این عمل، استیکیگ «Staking» گفته میشود. اتریوم «Etherum» که پس از بیتکوین، دومین ارز دیجیتال مشهور در جهان است، سعی دارد تا در سالهای آینده الگوریتم اثبات کار خود را به الگوریتم اثبات سهام تبدیل کند. از جمله ارزهایی که در حال حاضر از این الگوریتم برای شبکه خود استفاده میکنند، میتوان توکنهای بومی شبکههای یونی سوآپ «UNI»، ایاس «EOS»، ترون «TRX»، نم «XEM» و …. را نام برد. سیستم اضافه کردن بلاک جدید در این الگوریتم، شبیه به سودهای بانکی است. هرچقدر مقدار توکن بومی سپردهگذاری شده، بیشتر باشد، شانس دریافت پاداش بیشتری از شبکه را خواهید داشت.
- مزایای الگوریتم اثبات سهام
از جمله مزایای الگوریتم اثبات سهام میتوان «سرعت بالا»، «سازگار با محیط زیست به دلیل مصرف انرژی کمتر» و «به حداقل رسیدن خطر حمله 51 درصد» را نام برد.
- معایب الگوریتم اثبات سهام
از جمله معایب الگوریتم اثبات سهام میتوان «نیاز به داشتن ارز برای ورود به عمل استیکینگ» را نام برد. این موضوع سبب افزایش قدرت سهام داران عمده رمزارزی میشود. چراکه هرچقدر ارز بیشتری داشته باشید، کارمزد بیشتری از شبکه میگیرید. بنابراین شانس دریافت سود بیشتر از استیک این شبکه متعلق به سهامداران عمده است. سهامداران خرده و مردم عادی، کارمزد کمتری از این شبکه دریافت میکنند.
-
الگوریتم اثبات ظرفیت «PoC»
الگوریتم اثبات ظرفیت «Proof of Capacity» الگوریتم دیگری است که در آن برای تأیید تراکنشهای شبکه از فضای هارد دیسک استفاده میشود. هرچقدر سیستمهای اعتبارسنج بتوانند فضای هارد بیشتری را در اختیار قرار دهند، شانس بیشتری برای استخراج بلاک جدید رمزارز و دریافت پاداش از شبکهی آن را دارند. از جمله ارزهای دیجیتالی که از این الگوریتم استفاده میکنند میتوان ارز دیجیتال چیا «XCH»، ستورج «STORJ» و … را نام برد.
- مزایای الگوریتم اثبات ظرفیت
از جمله مزایای الگوریتم اثبات ظرفیت میتوان «بینیازی از پردازنده برای استخراج»، «امکان استخراج به کمک هارددیسکهای معمولی» و «امکان آزاد کردن هارد پس از عمل استخراج» را نام برد.
- معایب الگوریتم اثبات ظرفیت
از جمله معایب الگوریتم اثبات ظرفیت میتوان به «بحران هارد دیسک» اشاره کرد. چراکه استخراج گران این سیستمها بر سر دریافت فضای بیشتر برای استخراج به رقابت میپردازند. اگر در روش اثبات کار، دستگاههای ماینر بحران ایجاد کردهاند، در این الگوریتم، حافظههای ذخیره سازی میتوانند بحران ایجاد کنند.
بیشتر بخوانید:
برخی از سؤالات رایج درباره الگوریتم اجماع
- منظور از الگوریتم اجماع در بلاکچین چیست؟
الگوریتم اجماع «Consensus Algorithms» اساس کار شبکههای توزیع شده چون بلاکچین است. این الگوریتمهای اجماع هستند که امکان تأیید تراکنشها در بلاکچین بدون وجود سرور مرکزی را ممکن میکنند.
- چند نوع الگوریتم اجماع وجود دارد؟
چندین نوع الگوریتم اجماع مختلف وجود دارد. الگوریتم اثبات کار «PoW» و الگوریتم اثبات سهام «PoS» از جمله مهمترین آنها هستند.
- کدام الگوریتم اجماع بهتر است؟
هر الگوریتم اجماع، مزایا و معایب مختص به خود را دارد. برای مثال، الگوریتم اثبات کار، پاداش بیشتری به استخراجگران شبکه میدهد، اما مصرف انرژی بسیار بالایی دارد. الگوریتم اثبات سهام، مصرف انرژی پایین اما کارمزد کمتری به نسبت روش اثبات کار دارد. دیگر الگوریتمها نیز به همین صورت دارای مزایا و معایب خاص خود هستند.