الگوریتم اجماع برای یکپارچه سازی بلاکچین و توافق بین نودهای موجود در یک شبکه کاربرد دارد. در بسیاری از منابع میخوانیم که این الگوریتمها برای تأمین امنیت بلاکچین به کار میروند. این موضوع درست است، اما سوال از آنجا مطرح میشود که چطور این کار را انجام میدهند.
میدانید که بلاکچین یک دفتر کل توزیع شده است که سیستم مرکزی مشخصی برای ذخیره و نگهداری اطلاعات ندارد. دادههای ذخیره شده در این دفتر کل روی چند هزار کامپیوتر در سراسر جهان ذخیره شدهاند. این کامپیوترها را با نام نود میشناسیم. الگوریتم اجماع برای یکپارچه سازی نودهای موجود در شبکه مورد استفاده قرار میگیرد. در این مقاله قصد داریم توضیحاتی کاربردی درباره انواع الگوریتم اجماع و مقایسه آنها ارائه بدهیم و کاربردها و انواع آنها را مشخص کنیم. با ما همراه باشید.
الگوریتم اجماع چیست؟
در دفاتر کل متمرکز یک نهاد مرکزی وجود دارد که بر صحت اطلاعاتی که روی دفتر ثبت میشوند، نظارت میکند. مثلا در یک بانک، فقط تراکنشهایی که توسط ناظران تایید شده است، ثبت و نهایی میشود. در دفترهای کل غیرمتمرکز چنین سیستمی وجود ندارد؛ به همین دلیل از الگوریتم اجماع استفاده میکنیم.
وقتی یک نود در شبکه بخواهد دادهای را به بلاکچین اضافه کند، باید اعتبار آن را تایید کند. در بلاکچینها برای این کار به هر داده یک عدد هش تعلق میگیرد و نودها با حدس زدن نرخ هش هر بلاک میتوانند آن را تایید کنند. نودی که زودتر از سایرین عدد هش را پیدا کند، به عنوان ثبت کننده بلاک در نظر گرفته میشود. بلاکچین اعتبارسنجی نودی که میخواهد به بلاکچین داده اضافه کند را به سایر نودهای شبکه میسپارد. یعنی آنها با محاسبه نرخ هش، به توافق میرسند که نود اول صادق است و میخواهد داده درستی را به شبکه اضافه کند. این توافق اجماع نام دارد و روشی که برای رسیدن به توافق استفاده میشود، الگوریتم اجماع است.
هرکدام از نودهای عضو شبکه بلاکچین یک نسخه از زنجیره اطلاعات را در حافظهشان ذخیره کردهاند. زمانی که یک داده بعد از تایید به بلاکچین اضافه میشود، همه نودها نسخه بلاکچین خود را بروزرسانی میکنند تا آخرین بلاکهای تشکیل شده هم به آن اضافه شود.
برای الگوریتم اجماع به تایید همه نودها نیاز نیست
اکنون که با مکانیزم اجماع آشنا شدهاید، احتمالا به این فکر میکنید که چطور میتوان در لحظه به همه نودهای شبکه دسترسی داشت تا صحت اطلاعات را تایید کنند؟ این کار عملا امکانپذیر نیست؛ زیرا نودها در نقاط مختلفی فعالیت دارد و هیچ لحظهای وجود ندارد که همه نودها در شبکه فعال باشند.
بلاکچینها روشهای مختلفی برای حل این مشکل ارائه میدهند. یکی از متداولترین روشها این است که بلاکچینها به توافق ۵۱ درصد از نودهای شبکه اعتماد میکنند. یعنی زمانی که تعداد نودهای تاییدکننده صحت اطلاعات، بالای ۵۱ درصد از کل نودهای شبکه باشد، فعالیت نود ثبت کننده داده صحیح قلمداد میشود و اطلاعات مورد نظر روی بلاکچین ذخیره خواهد شد.
اگر کسی بخواهد با الگوریتم اجماع مقابله کند و فعالیتهای مخرب انجام بدهد، باید اختیار ۵۱ درصد از نودهای شبکه را در دست داشته باشد تا با تایید فعالیت مخرب، اجازه ایجاد تغییر روی شبکه را به دست آورد. این یک ریسک احتمالی برای بلاکچینهای گوناگون است، اما از آنجایی که به دست گرفتن اختیار ۵۱ درصد از نودهای شبکه به نیرو و هزینه زیادی نیاز دارد، تنها در چند مورد محدود در طول تاریخ ارزهای دیجیتال این حمله رخ داده است.
کاربرد الگوریتم های اجماع در بلاکچین چیست؟
الگوریتم های اجماع در دفتر کل توزیع شده، وظیفه نهاد مرکزی در دفتر کل متمرکز را انجام میدهند. اولین کاربرد الگوریتم اجماع این است که صحت اطلاعاتی که روی بلاکچین ذخیره میشود را تایید میکنند. هیچ بلاکی نمیتواند یک تراکنش نامعتبر را تایید و به شبکه اضافه کند. حتی نودهایی که فعالیت مخرب داشته باشند هم در فرایند اجماع شناخته و جریمه میشوند.
دومین کاربرد الگوریتمهای اجماع تأمین امنیت اطلاعات است. کاربرانی از که بلاکچین برای ذخیره اطلاعات مختلف استفاده میکنند، میتوانند اطمینان داشته باشند که این دادهها به صورت دائمی روی بلاکچین ذخیره خواهد شد و هیچ نودی نمیتواند آنها را تغییر بدهد.
کاربرد سوم الگوریتمهای اجماع نیز شناخته شدهترین کاربردی است که برای آنها در نظر گرفته میشود. تأمین امنیت شبکه بلاکچین برعهده نودهاست. هرچقدر تعداد نودهای فعال در یک شبکه بیشتر باشد، احتمال حملات مخرب یا از دست رفتن اطلاعات بلاکچین کاهش پیدا میکند.
به طور کلی این مکانیزمها بین نودهای مختلف توافق ایجاد میکنند و بلاکچین را به یک دفتر کل یکپارچه که همه قسمتهای آن باهم هماهنگی دارد، در نظر میگیرند. یکپارچگی بین نودها اهمیت زیادی دارد، زیرا همه نودها باید نسخه مشابهی از بلاکچین را در حافظهشان ذخیره کرده باشند.
انواع مختلف الگوریتم های اجماع
الگوریتمهای اجماع انواع مختلفی دارند. گواه اثبات کار (PoW) اولین مکانیزمی بود که معرفی شد و برای بلاکچین بیت کوین مورد استفاده قرار گرفت. هنوز هم بلاکچینهای زیادی مثل بیت کوین، لایت کوین و اتریوم ۱.۰ از آن استفاده میکنند.
به مرور زمان الگوریتمهای دیگری ایجاد شد که مشکلاتی مثل چالشهای مقیاسپذیری را حل میکردند. در حال حاضر بلاکچینهای گوناگون، الگوریتمهای متفاوتی برای ایجاد توافق بین نودهایشان در نظر گرفتهاند. در ادامه به ۱۱ مکانیزمی که امروزه در بازار ارزهای دیجیتال کاربرد دارد، اشاره میکنیم.
- اثبات کار (PoW)
- اثبات سهام (PoS)
- اثبات سهام نمایندگی شده (DPoS)
- اثبات زمان سپری شده (PoET)
- اثبات اعتبار (PoA)
- اثبات ظرفیت (PoC)
- اثبات فعالیت (PoA)
- اثبات سوزاندن (Proof of Burn)
- تحمل خطای بیزانس (PBFT)
- اثبات اهمیت (POI)
- الگوریتم گراف جهتدار غیرمدور
الگوریتم اجماع اثبات کار
اثبات کار یا Proof of work (POW) رایجترین و معروفترین الگوریتم اجماع است که بلاکچینهای اولیه و بسیار معروفی همچون بیت کوین و اتریوم به کار رفته است. همانطور که از نام این الگوریتم مشخص است، روش انتخاب نودهای شایسته در این الگوریتم با اثبات کار انجام میشود.
هر کدام از نودها که کار بیشتری برای شبکه انجام دهند، شایستگی اعتبارسنجی تراکنشها را خواهند داشت و میتوانند ضمن اعتبارسنجی از شبکه جایزه دریافت کنند. منظور از کار در الگوریتم اثبات کار، مقدار قدرت محاسباتی است که نودها در اختیار شبکه قرار میدهند. در بلاکچین بیت کوین و اتریوم افرادی وجود دارند که با دستگاههای ماینر قوی به استخراج بیت کوین و اتریوم میپردازند و با قدرت محاسباتی قوی دستگاههای خود برای شبکه کار میکنند.
الگوریتم اجماع اثبات سهام
اثبات سهام یا Proof of Stack (POS) دومین الگوریتم اجماع رایج در دنیای رمزارزها است که به دلیل عدم نیاز به استخراج و عدم اتلاف انرژی موردتوجه توسعهدهندگان ارزهای دیجیتال قرار گرفته است. اتریوم به زودی قصد دارد با راهاندازی پروژه اتریوم ۲.۰، الگوریتم اجماع بلاکچین خود را از اثبات کار به اثبات سهام تغییر دهد. در حال حاضر ارزهای دیجیتال معروفی همچون کاردانو از الگوریتم اجماع اثبات سهام استفاده میکنند.
همانطور که از نام این الگوریتم مشخص است، روش انتخاب نودهای شایسته در این الگوریتم با اثبات سهام یا اثبات دارایی انجام میشود. هر کدام از نودها که سرمایه بیشتری در شبکه داشته باشند، شایستگی اعتبارسنجی تراکنشها را خواهند داشت و میتوانند ضمن اعتبارسنجی از شبکه سود دریافت کنند.
بهترین الگوریتم اجماع کدام است؟
هرکدام از الگوریتمهای اجماعی که پیش از این نام بردیم، مکانیزمی تخصصی دارند که باعث ایجاد مزایا و معایبی برای آنها میشود. بسیاری از آنها هنوز به صورت گسترده مورد استفاده قرار نگرفتهاند و نمیدانیم که آیا میتوانند پاسخگوی نیاز کاربران باشند یا خیر.
“هرکدام از الگوریتمهای اجماع مزایا و معایب منحصر به خودشان را دارند. در حال حاضر روز بهروز بر تعداد کاربران بلاکچینهای مختلف افزوده میشود و مهمترین چالش پیش روی آنها، حفظ مقیاسپذیری با هر تعداد کاربر است.” بنابراین الگوریتمی که بتواند در ضمن حفظ امنیت، با بیشترین سرعت و کمترین هزینه نودهای مختلف بلاکچین را به توافق برساند، بهترین است.
کلام آخر
در این مقاله به صورت کلی درباره الگوریتم اجماع و کاربردی که در شبکه بلاکچین دارد، پرداختیم. طی کردن این فرایندها به قدرت پردازشی نیاز دارد و بخشی از منابع ماینرها را صرف میکند. بنابراین بهینهسازی آن نقش مهمی در مقیاسپذیری و سرعت یک بلاکچین خواهد داشت. مثلا الگوریتم PoW که اکنون در بیت کوین و اتریوم به کار میرود، چالشهای بسیاری برای کاربران به وجود آورده و در زمان شلوغی شبکه مشکلات جدی بسیاری به وجود میآورد. به همین دلیل اتریوم قصد دارد در نسخه دوم خود از PoS استفاده کند.
دانستن این مفاهیم درباره بلاکچین و ارزهای دیجیتال برای تریدرها ضروری است، اما درکها آنها بخاطر تخصصی بودن، دشوار است. مجله ارز دیجیتال داموند زیرمجموعهای از صرافی ارز دیجیتال امن داموند است که در زمینه ارائه اطلاعات بلاکچینی به کاربران فارسی زبان فعالیت میکند. کارشناسان این مجله پیچیدهترین اصطلاحات درباره ارزهای دیجیتال را به زبان ساده به کاربران ارائه میدهند و درک آنها را سادهتر میکنند. با مطالعه روزانه داموندمگ، اطلاعات کلیدی مورد نیاز درباره بازار ارزهای دیجیتال را به دست میآورید.
نظرات کاربران