آشنایی با الگوریتم اجماع اثبات کار (PoW)

آشنایی با الگوریتم اجماع اثبات کار (PoW)

  • clock زمان مطالعه: 8:35 دقیقه
  • calendar انتشار: 14 تیر 1402
آنچه در این مقاله میخوانید

    احتمالا تاکنون مطالبی در ارتباط با این مسئله که در شبکه‌های بلاک چینی هیچگونه نهاد یا سازمان مرکزی خاصی به منظور تائید و ثبت اطلاعات و همچنین نظارت بر روند انجام تراکنش‌ها وجود ندارد، شنیده‌اید؛ اما آیا تا به حال این سوال را از خود پرسیده‌اید که اگر هیچ نهاد متمرکزی بر فعالیت و تراکنش کاربران در شبکه‌های بلاک چینی نظارت ندارد، پس چگونه این شبکه به صورت امن و دقیق به کار خویش ادامه داده و روز به روز بر دامنه فعالیت آن در جوامع بشری افزوده می‌شود؟!

    مطمئنا پاسخ این سوال نقش کلیدی در جلب حداکثری اعتماد کاربران داشته و می‌تواند ذهنیت روشنی را در اختیار افرادی قرار دهد که در ارتباط با نحوه کار و تائید تراکنش‌ها در این شبکه‌های غیرمتمرکز نوظهور کنجکاو هستند. همان طور که گفته شد این شبکه‌ها، فعالیت خویش را به صورت غیرمتمرکز ادامه می‌دهند و همین عدم تمرکز، تضمین کننده امنیت آن‌هاست و در واقع کلیه کاربران فعال در شبکه متناسب با الگوریتم اجماع در نظر گرفته شده در این شبکه‌های بلاک چینی نظیر الگوریتم اجماع اثبات کار (PoW) بر روی درستی اطلاعات به اجماع رسیده و اطلاعات کاملا یکسانی را به دفتر کل توزیع شده ارسال می‌کنند تا عملا مانع انجام هرگونه خرابکاری در شبکه بلاک چینی گردند.

    اما منظور از الگوریتم اجماع چیست؟ نحوه کار الگوریتم اجماع اثبات کار به چه شکل است؟ بازیگران اصلی این الگوریتم اجماع چه کسانی هستند؟ مطمئنا بررسی پاسخ چنین سوالاتی دیدی بسیار روشن در ارتباط با نحوه عملکرد شبکه‌های بلاک چینی در اختیار کاربران قرار خواهد داد و به همین علت ما این مقاله از بلاگ کریپتوباز را به معرفی و بررسی دقیق الگوریتم اجماع اثبات کار اختصاص داده‌ایم؛ اگر شما هم در این زمینه کنجکاو هستید تا انتهای این مطلب با ما همراه باشید.

    مروری بر ماهیت الگوریتم اجماع (Consensus Algorithms)

    قبل از آن که بتوانیم به معرفی الگوریتم اجماع اثبات کار بپردازیم، ضرورت دارد که نگاهی اجمالی بر خود ماهیت الگویتم اجماع شبکه‌های بلاک چینی داشته باشیم تا پس از آن با دیدی روشن‌تر بتوانید مطالبی که در ادامه خواهند آمد را مطالعه نمائید. در شبکه‌های متمرکز نظیر آنچه که در بانک‌ها و دولت‌ها وجود دارد، نهاد و قدرت مرکزی می‌تواند هرگونه تغییری را ایجاد نماید و بر کلیه روند تراکنش‌ها و فعالیت کاربران نظارت داشته باشد؛ اما این مسئله در سیستم‌های غیرمتمرکز که هیچگونه نهاد مرکزی وجود ندارد، به گونه دیگری رقم خورده است و در واقع الگوریتم‌های اجماع ایجاد شده‌اند تا وحدت سیستم غیرمتمرکز حفظ شده و هر فردی در شبکه راه خودش را نرود و کلیه کاربران بر روی یک نسخه واحد از سیستم توافق نمایند. 
    بنابراین کارکرد اصلی الگویتم‌های اجماع در دستیابی به هماهنگی و پذیرش کلیه اعضای شبکه بلاک چینی بر سر تغییر یا به‌روزرسانی شبکه نهفته است که چنین کارکردی در نهایت کاربردهای دیگری همچون امکان تائید تراکنش‌ها و تضمین یکدستی سیستم‌های غیرمتمرکز را برای شبکه‌های بلاک چینی به ارمغان خواهد آورد. به بیان ساده‌تر، بدون وجود چنین الگوریتمی عملا سیستم‌های چند عاملی و توزیع شده نظیر آنچه که در دنیای ارزهای دیجیتال وجود دارد از کار خواهد افتاد؛ چراکه این الگوریتم اجماع است که امکان ثبت تاریخچه تراکنش‌ها و سایر فعالیت کاربران در شبکه غیرمتمرکز مورد نظر را فراهم می‌آورد و با استفاده از این الگوریتم‌هاست که قوانین شبکه برای مشروعیت بخشیدن به برخی کاربران و دخالت دادن آن‌ها در ثبت و تائید تراکنش‌ها، تدوین می‌گردد. 

    الگوریتم‌های اجماع با در پیش گرفتن سیاست پاداش دهی، بسیاری از کاربران فعال در حوزه تائید تراکنش‌ها را به انجام مشارکت‌های صادقانه تشویق می‌کنند و همین مسئله موجب می‌شود تا امنیت شبکه به طور کامل تامین شده و احتمال انجام هرگونه خرابکاری یا حتی دستکاری در داده‌های یک بلاک به طور کلی از بین برود. از جمله الگوریتم‌های مشهور و محبوب در دنیای کریپتوکارنسی می‌توان به مواردی همچون الگوریتم اجماع اثبات کار (PoW) و اثبات سهام (PoS) و پروتکل اثبات ذخیره در صرافی های متمرکز (POR) اشاره کرد.

    الگوریتم اجماع اثبات کار (Proof of Work)

    یکی از شناخته شده‌ترین الگوریتم‌های اجماع مورد استفاده در دنیای کریپتوکارنسی، الگوریتم اجماع اثبات کار (PoW) نام دارد که بسیاری از شبکه‌های ارز دیجیتال بزرگ نظیر بلاک چین بیت کوین از آن بهره برده‌اند؛ در واقع این الگوریتم اجماع محبوب به وسیله ساتوشی ناکاموتو در سال 2008 معرفی شد و اولین الگوریتم اجماعی بود که پا به عرصه فناوری بلاک چین‌ها گذاشت. الگوریتم اجماع اثبات کار که به منظور حفظ امنیت شبکه، تائید تراکنش و تولید بلاک‌ها مورد استفاده قرار می‌گیرد. این الگوریتم یکی از راه حل‌های موجود برای جلوگیری از انجام حملات دابل اسپندینگ (Double Spending) به شمار می‌رود و این اجماع و توافق سرتاسری مانع از این می‌شود که کاربران از طریق دو بار خرج کردن رمزارزهای خویش امنیت شبکه را برهم زده و اعتماد عمومی را نسبت به شبکه‌های بلاک چینی جریحه‌دار نمایند.

    در واقع قبل از ایجاد شبکه بلاک چینی بیت کوین این مسئله ذهن ناکاموتو (که از او به عنوان خالق دنیای کریپتو نیز یاد می‌شود) را به خود مشغول ساخته بود که چگونه می‌توان با توجه به ماهیت ارز دیجیتال که در اصل یک داده اطلاعاتی است را طوری طراحی کرد که کاربران متقلب نتوانند به راحتی آن را کپی کرده و دو بار آن را خرج نمایند؟! مطمئنا امروزه هیچ فردی نمی‌تواند یک پول کاغذی و ارز فیات را دو بار خرج کند؛ اما آیا چنین مسئله‌ای در ارتباط با ارزهای دیجیتالی نیز صادق است؟ آیا به هنگام کار با رایانه شخصی نمی‌توانید از یک فایل دیجیتالی کپی گرفته و دو نمونه مجزا از آن را در اختیار داشته باشید؟ مسلما پاسخ به این سوالی منفی خواهد بود و در دنیای امروز کپی کردن فایل‌های دیجیتالی امری بسیار ساده تلقی می‌شود؛ ولی خوشبختانه ناکاموتو با به کارگیری الگوریتم اجماع اثبات کار که در واقع شامل حل مسائل بسیار پیچیده ریاضی است، این مشکل را برطرف نمود. 

    البته جالب است بدانید که ناکاموتو خالق این الگوریتم اجماع نبوده، بلکه این الگوریتم چندین سال قبل از پیدایش مارکت رمزارزی و در سال 1993 به وسیله افرادی به نام سینتیا دوورک (Dwork) و مونی نوار (Naor) به منظور جلوگیری از انجام حملات اسپم ایمیل و DOS راه‌اندازی شد. 

    معادلات ریاضی الگوریتم اجماع PoW

    گفته شد که الگوریتم اجماع اثبات کار، شامل حل مسائل پیچیده ریاضی است و کاربران برای آن که بتوانند بر روی ایجاد یک بلاک جدید به اجماع برسند، در قدم اول باید در یک رقابت محاسباتی شرکت کرده و خروجی مورد نظر شبکه که جواب معادله است را به دست آورند؛ اما این معادلات ریاضی مورد استفاده در الگوریتم اجماع اثبات کار شبکه‌های بلاک چینی دارای چه ویژگی‌های هستند؟! طبیعتا وقتی امری به امنیت شبکه ارتباط داشته باشد، سطح آن بالا می‌رود و معادلات مورد استفاده در این الگوریتم اجماع نیز از این قاعده مستثنی نیستند و حل آن‌ها به توان محاسباتی بسیار زیادی نیاز دارد و همین مسئله موجب می‌شود تا ماینرها با صرف انرژی و توان محساباتی خویش میزان صداقت خود را به شبکه بلاک چینی نشان دهند. 

    به خاطر داشته باشید که با رشد شبکه بلاک چینی میزان سختی شبکه نیز افزایش می‌یابد و رفته رفته سطح معادلات نیز بالاتر رفته و برای حل آن‌ها باید توان هش بسیار بالایی در اختیار داشته باشید. به طور کلی سطح معادلات ریاضی الگوریتم اجماع اثبات کار کاملا به مسئله سختی شبکه گره خورده است؛ چراکه پیچیدگی این معادلات نباید به قدری باشد که تولید بلاک‌های جدید به زمان بیشتری نیاز داشته باشند، مطمئنا بروز چنین مسئله‌ای کارایی شبکه بلاک چینی را زیر سوال خواهد بود و برخلاف اصل مقیاس پذیری موجود در شبکه‌های بلاک چینی محسوب می‌شود. البته از سوی دیگر این معادلات ریاضی نباید به قدری آسان طراحی شوند که شبکه در معرض انجام انواع حملات DDoS حملات اسپم و DOS قرار بگیرد. 

    نحوه کار الگوریتم اجماع اثبات کار

    رقابت اصلی موجود در میان ماینرها در شبکه‌هایی که از الگوریتم اجماع اثبات کار بهره برده‌اند در حل معادلات پیچیده ریاضی منحصر شده و در واقع هر ماینری که موفق شود زودتر از سایر رقبا معادله را حل کند، پاداش بلاک که همان ارز دیجیتال شبکه بلاک چینی است را دریافت خواهد کرد. اجازه دهید نحوه کار الگوریتم اجماع اثبات کار در شبکه‌های بلاک چینی را با یک مثال عملی مورد بررسی قرار دهیم:

    فرض کنید فردی به نام هادی قصد دارد 2 ارز دیجیتال بیت کوین را در این شبکه بلاک چینی به احسان ارسال نماید؛ برای انجام چنین کاری، هادی بایستی مشخصات تراکنش را در کیف پول بیت کوینی خویش وارد کرده و ارسال نماید. هادی در واقع با ثبت چنین اطلاعاتی و ارسال آن به شبکه، امضا دیجیتالی خویش را بر روی تراکنش مورد نظر قرار می‌دهد تا این اطمینان برای کاربران فعال در شبکه حاصل گردد که تراکنش مورد نظر از سوی هادی ارسال شده است. پس از ارسال تراکنش به وسیله هادی، ماینرها در قدم اول به بررسی دقیق اطلاعات فرستنده پرداخته و سپس امکان‌پذیری انجام چنین تراکنشی از سوی وی را مورد ارزیابی قرار می‌دهند؛ در صورت امکان‌پذیر بودن، تراکنش یاد شده به لیست تراکنش‌های تائید نشده در ممپول (Mempool) اضافه شده و سپس ماینرها این تراکنش‌ها را انتخاب کرده و در یک بلاک جدید قرار می‌دهند و با حل معادله ریاضی به استخراج بلاک یاد شده می‌پردازند.جالب است بدانید که هر یک از تراکنش‌های انجام یافته در شبکه بلاک چینی دارای هش مخصوص به خود بوده که این هش به وسیله درخت مرکل (Merkel Tree) به یکدیگر متصل شده و ریشه مرکل (Merkel Root) را ایجاد می‌کنند و به این صورت امنیت حداکثری شبکه بلاک چینی تامین می‌گردد؛ چراکه کوچک‌ترین تغییر در هر تراکنش، موجب ایجاد تغییراتی در ریشه مرکل شده و در نهایت بلاک مورد نظر را از اعتبار ساقط می‌نماید.

    مزایا و معایب الگوریتم اجماع اثبات کار

    شاید با مطالعه مطالب فوق، یک تصور کلی از مزایا و معایب استفاده از الگوریتم اجماع کار از سوی شبکه‌های بلاک چینی مختلف در ذهن‌تان شکل گرفته باشد؛ اما برای شفاف‌سازی بیشتر و روشن شدن میزان کارایی چنین الگوریتمی، در این بخش از مقاله کریپتوباز قصد داریم به طور تفصیلی و دقیق این مزایا و معایب را مورد بررسی قرار دهیم:

    مزایای الگوریتم اجماع اثبات کار

    به طور کلی دو مزیت اصلی را می‌توان برای این الگوریتم در نظر گرفت که این دو مزیت به شرح زیر است:

    •    تاثیر نداشتن میزان دارایی دیجیتالی در استخراج بلاک‌ها: یکی از مزایای اصلی استفاده از الگوریتم اجماع اثبات کار از سوی شبکه‌های بلاک چینی به این مسئله مربوط می‌شود که شرط مقدار توکن حداقلی برای ماینرها در نظر گرفته نشده است و کلیه کاربرانی که حتی هیچ توکنی در اختیار ندارند نیز می‌توانند در فرآیند استخراج و ماین شرکت کرده و به این شبکه علاوه بر تامین امنیت شبکه، پاداش استخراج شبکه را نیز دریافت نمایند. صرفا آنچه برای شبکه مهم است، توان محاسباتی کاربر است و افراد با تهیه دستگاه ماین می‌توانند فرآیند استخراج بلاک در شبکه را آغاز کنند.
    •    ممانعت از انجام انواع حملات DOS و دو بار خرج کردن: در نحوه کار الگوریتم اجماع کار مشاهده کردید که در این الگوریتم ماینرها ورودی‌های مورد نظر را به دستگاه ماین و استخراج داده و این دستگاه‌ها نیز متناسب با توان و قدرت پردازشی خویش این ورودی‌ها را به خروجی‌هایی که به آن‌ها کد هش گفته می‌شود تبدیل می‌کنند که این کدهای هش اختصاصی بوده و از این طریق عملا انجام هرگونه خرابکاری و حملات DDOS به شبکه را منتفی می‌کنند.

    معایب الگوریتم اجماع اثبات کار

    در کنار مزایای بسیار زیاد الگوریتم اجماع کار، این الگوریتم نیز همچون هر ماهیت سودمند دیگری دارای معایبی است که این معایب به شرح زیر می‌باشند:
    •    تمرکزگرایی استخراج: با بالا رفتن سختی شبکه، عملا فرآیند استخراج با دستگاه‌های ماین عادی و به صورت انفرادی کاری غیرممکن به نظر می‌رسد و همین مسئله منجر به ایجاد استخرهای استخراج شده، امری که در نهایت برخلاف ماهیت ذاتی شبکه‌های بلاک چینی که کاملا غیرمتمرکز هستند، به تمرکزگرایی منجر خواهد شد. در حال حاضر حدودا 3 استخر ماین بیش از 50 درصد قدرت محاسباتی شبکه بلاک چینی بیت کوین را در اختیار دارند.
    •    امکان انجام حملات 51 درصدی: در حالتی که یک شخص حقیقی یا حقوقی بیش از 50 درصد توان محاسباتی شبکه را در اختیار داشته باشد، احتمال انجام حمله 51 درصدی چندان دور از انتظار نخواهد بود و چنین شخصی قادر خواهد بود با افزودن یک بلاک نامعتبر به شبکه بلاک چینی، امنیت آن را به خطر اندازد.
    •    مصرف بالای انرژی: یکی از معایب دیگری که عموما سبب شده تا الگوریتم اجماع اثبات کار بسیار مورد انتقاد فعالان محیط زیستی قرار بگیرد، به مسئله مصرف بالای انرژی و برق از طریق آن مربوط می‌شود. در واقع ماینرها برای آن که بتوانند معادلات ریاضی این الگوریتم اجماع را حل کنند، بایستی دستگاه‌های استخراج خویش را به صورت 24 ساعته و آن هم در طول کل روزهای هفته روشن نگه دارند؛ امری که مسلما تاثیر قابل توجهی بر مصرف انرژی داشته و می‌تواند تاثیرات زیست محیطی مخربی از خود برجای بگذارد.

    مقایسه الگوریتم PoS و PoW

    یکی از الگوریتم‌های اجماع محبوب دیگر فعال در حوزه کریپتوکارنسی، الگوریتم اجماع اثبات سهام (PoS) نام دارد که مقایسه آن با الگوریتم اجماع اثبات کار می‌تواند اطلاعات بسیار جالبی را در اختیار مخاطبان قرار دهد. عموما از الگوریتم PoS به عنوان پروتکلی با میزان مصرف انرژی کمتر یاد می‌شود و به همین علت انتقادات فعالان محیط زیست نسبت به استفاده از الگوریتم اثبات سهام در مقایسه با الگوریتم اجماع PoW بسیار کمتر است. در واقع در پروتکل اجماع اثبات سهام، ولیدیتورها نیازی به تهیه دستگاه استخراج نداشته و صرفا با سپرده‌گذاری و قفل کردن دارایی‌های دیجیتالی، فرصت حضور در رای‌گیری‌های شبکه بلاک چینی، نظارت بر فعالیت‌ها و تائید تراکنش‌ها را به دست می‌آورند. 

    در حال حاضر شبکه بلاک چینی اتریوم (پس از مرج) از الگوریتم اجماع اثبات سهام استفاده می‌کند و کاربران با استیک 32 قیمت اتریوم ETH می‌توانند به عنوان یک ولیدیتور به فعالیت خویش در اکوسیستم اتریوم ادامه دهند. این درحالی است که برای ورود به پروسه تائید و نظارت بر تراکنش‌های انجام یافته در شبکه‌های بلاک چینی که از الگوریتم اجماع اثبات کار استفاده می‌کنند، ماینرها حتما باید دستگاه استخراج با توان محاسباتی بالا در اختیار داشته باشند و عملا بدون تهیه چنین دستگاهی، شانسی برای ماین ارز دیجیتال و استخراج بلاک جدید در شبکه نخواهند داشت. 

    الگوریتم اجماع اثبات کار؛ نگهبانی مطمئن برای تامین امنیت شبکه

    امروزه شبکه‌های بلاک چینی با استفاده از الگوریتم‌های اجماع، امنیت شبکه را تامین کرده و اعتماد کاربران برای سرمایه‌گذاری در پروژه‌های بلاک چینی را جلب کرده‌اند. یکی از الگوریتم‌های اجماع محبوب موجود، الگوریتم PoW نام دارد که ماینرها را تشویق به پیروی از قوانین کرده و با اعطای پاداش استخراج وفاداری آن‌ها نسبت به امنیت شبکه را تثبیت می‌نماید. با توجه به اهمیت نقش الگوریتم اجماع اثبات کار در شبکه‌های بلاک چینی، ما این مقاله از بلاگ کریپتوباز را به بررسی دقیق این الگوریتم اختصاص دادیم و همان طور که در مطالب فوق مشاهده کردید، این الگوریتم شامل حل معادلات پیچیده ریاضی بوده که از این طریق مانع انجام حملات اسپم و DDOS به شبکه بلاک چینی می‌شود و در اصل روشی است که توسعه‌دهندگان به واسطه آن از درستی تراکنش‌های انجام یافته در شبکه مطمئن می‌شوند. اولین رمزارزی که از الگوریتم اجماع اثبات کار استفاده نمود، بیت کوین نام دارد که پس از آن، امروزه این الگوریتم مورد استفاده بسیاری از ارزهای دیجیتالی دیگر نیز قرار گرفته است. ناگفته نماند که اگر در ارتباط با ماهیت و چیستی الگوریتم اجماع اثبات کار سوالی دارید که در این مقاله به پاسخ آن اشاره‌ای نشده است، می‌توانید سوال خود را در بخش نظرات مطرح کنید تا کارشناسان ما در اسرع وقت به سوال شما پاسخ دهند.

     

    سوالات متداول

    علت وابستگی ارزهای دیجیتال به الگوریتم اجماع اثبات کار چیست؟

    ارزهای دیجیتال به صورت غیرمتمرکز به فعالیت خویش ادامه می‌دهند و استفاده از این الگوریتم راهی برای تامین امنیت حداکثری آن‌ها در برابر انواع حملات هکری و خرابکارانه است.

    کدام ارزهای دیجیتالی مبتنی بر الگوریتم اجماع اثبات کار فعالیت می‌کنند؟

    رمزارزهایی همچون بیت کوین، شیبا اینو، دوج کوین، مونرو، لایت کوین، بیت کوین کش و غیره مبتی بر الگوریتم PoW به فعالیت خود ادامه می‌دهند.

    مزایای اصلی استفاده از الگوریتم اجماع اثبات کار برای شبکه‌های بلاک چینی در چیست؟

    فراهم شدن امکان استخراج بدون داشتن محدودیتی در میزان توکنی که ماینر در اختیار دارد و تامین امنیت شبکه از مزایای اصلی این الگوریتم به شمار می‌روند.