Skip to content
الگوریتم اثبات کار (proof of work) چیست و چگونه عمل می کند ؟

الگوریتم اثبات کار (proof of work) چیست و چگونه عمل می کند ؟

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

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

تعریف اثبات کار proof of work

اثبات کار (proof of work) یک مکانیزم اجماع در شبکه‌های بلاکچین است که از آن برای تأیید اعتبار معاملات و اضافه کردن بلوک های جدید به زنجیره بلوک استفاده می شود. اجماع بدین معناست که هر هویت شرکت کننده و فعال در شبکه با دیگران بر سر یک موضوع به اتفاق نظر می رسد و بر اساس دستورالعملی که به تایید همه اعضا رسیده است اقدامات لازم صورت می پذیرد.

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

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

تعریف اثبات کار proof of work

نکات کلیدی در مورد اثبات کار

این الگوریتم را می‌توان دارای نکات زیرساختی مهمی دانست که منجر به پایایی آن در طول زمان می‌شوند که برخی از آنها به شرح زیر هستند:

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

نحوه عملکرد اثبات کار

این الگوریتم عملکردی شفاف دارد که گوشه به گوشه آن قابل مشاهده و در عین حال قابل بحث است. در اینجا نحوه عملکرد آن را مرور می کنیم:

  1. تعیین مسئله پیچیده: شبکه برای ایجاد یک بلوک جدید به گره‌ها یک مسئله پیچیده ریاضیاتی یا پازل می‌دهد که باید حل کنند. این فرایند به این صورت است که گره‌ها باید سعی در حل این مسئله سخت برای یافتن نانس مناسب دارند. نانس عددی است که زمانی که به هدر بلوک اضافه شود، هش بلوک را زیر هدف مشخص شده قرار می دهد. هر گره ای که زودتر نانس معتبر را پیدا کند، حق اضافه کردن بلوک جدید به زنجیره بلوک را به دست می آورد.
  2. تلاش برای حل مسئله: گره ها با توجه به توان پردازشی خود شروع به کار برای حل مسئله می کنند. این تلاش ها شامل تولید مقادیر هش متفاوت با ورودی های مختلف است. تلاش ها برای کشف نانس به صورت تصادفی انجام می شوند.
  3. اثبات محاسباتی: هنگامی که یک گره مقدار هش معتبری را پیدا می کند که با شرایط مسئله مطابقت دارد، نتیجه محاسبات خود را به شبکه اعلام می کند. به این امر اثبات محاسباتی (Computational Proof) گفته می شود و نشان می دهد که گره مدنظر واقعاً زمان و توان محاسباتی خود را صرف حل مسئله کرده است.
  4. تأیید توسط سایر گره‌ها: سایر گره‌های حاضر در شبکه اثبات محاسباتی ارائه شده توسط گره اولیه را تأیید می‌کنند. آن‌ها محاسبه مجدد مقدار هش با استفاده از داده‌های ورودی مسئله و میزان هش ارائه شده توسط گره برنده را انجام می‌دهند و مطمئن می‌شوند که نتیجه مطابقت دارد.
  5. اضافه کردن بلوک به بلاکچین: اگر اثبات محاسباتی گره اولیه تأیید شود، بلوک جدید به بلاکچین اضافه می‌شود و تراکنش های جدید در آن ثبت می‌شوند. این بلوک نیز به عنوان بلوک معتبر (Valid Block) شناخته می‌شود و توسط سایر گره‌ها در شبکه مورد قبول قرار می گیرد.

این فرایند بعد از افزون بلوک جدید به زنجیره از ابتدا تکرار می شود و به شکلی تداوم پیدا می‌کند که هر بلوک در میانگین 10 دقیقه تشکیل بشود. الگوریتم برای اینکه گره‌ها بتوانند به این امر مهم دست بیابند میزانی از سطح پیچیدگی مسئله ریاضیاتی را بعد از تشکیل هر بلوک مجددا محاسبه می کند که به آن “سختی شبکه” گفته می شود.

سختی شبکه بدین معناست که پیچیدگی مسئله ریاضیاتی در سطحی خواهد بود که توان محاسباتی موجود در شبکه بتواند در میانگین ده دقیقه این مسئله را حل کند، حالا هرچه مشارکت کنندگان در شبکه توان محاسباتی بیشتری را وارد کنند سطح سختی شبکه بالاتر می رود و بالعکس.

پیشنهاد مطالعه: استخر استخراج ( استخر ماینینگ) چیست؟ آن چه باید در مورد استخر استخراج بدانید؟

دلایل اهمیت گواه اثبات کار

دلایل اهمیت گواه اثبات کار

همانطور که قبلا گفته شد این الگوریتم به دلیل ایجاد اجماع توزیع شده و غیرمتمرکز، تامین امنیت، و حفاظت در برابر حملات سایبری از اهمیت به‌سزایی برخوردار است و در ادامه نیز با چند مورد دیگر آشنا خواهیم شد:

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

نحوه تامین امنیت در گواه اثبات کار

برای تأمین امنیت در مکانیزم اثبات کار، چند روش اصلی وجود دارد:

  • نیاز به توان محاسباتی بالا: یافتن نانس معتبر برای اضافه کردن بلوک جدید نیازمند توان محاسباتی زیادی است. هر چقدر توان بیشتر، احتمال موفقیت بالاتر است. چرا این موضوع به تأمین امنیت کمک می‌کند؟ زیرا هر کسی که در این زمینه سرمایه گذاری کند و انرژی را به عنوان آورده‌ی سرمایه‌ای به شبکه اضافه کند قطعاً اجازه‌ی کاهش امنیت را به شبکه نمی‌دهد و بر رای اکثریت مبتنی بر الگوریتم اجماع تاکید دارد.
  • تأیید تراکنش توسط اکثریت: بلوک جدید تنها زمانی معتبر شناخته می‌شود که توسط اکثریت گره‌های شبکه تأیید شود. این نکته از این نظر حائز اهمیت است که چه افرادی که ایجاد تراکنش کرده اند و چه کسانی که زحمت محاسبات را بر دوش گرفته‌اند از بابت تغییرناپذیری اطلاعات و تراکنش ها خاطرجمع هستند؛ از این رو هر چه تعداد گره‌ها بیشتر باشد امنیت نیز بالاتر می‌رود چراکه کسی نمی‌تواند اعمال کنترل متمرکز بر شبکه داشته باشد یا با در دست داشتن بیش از 51% از گره‌ها یا ماینرها بر اتفاق نظر مشارکت کنندگان در شبکه سلطه بیابد.
  • تناسب میان سختی شبکه و توان محاسباتی: دشواری حل مسئله‌ی ریاضی در هر ده دقیقه یا دقیق تر بگوییم بعد از ایجاد هر بلوک به گونه‌ای تنظیم می‌شود که همواره نیازمند توان متوازن باشد.
  • پاداش برای ماینرها: پاداش‌هایی که به ماینرها ارائه می‌شود، آن‌ها را تشویق به حفظ امنیت شبکه می‌کند و هیچ ماینری حاضر نیست که یا یک نهاد متمرکز پاداش ها را کنترل کند یا یک ماینر دیگر درامد متقلبانه داشته باشد. همین سیاست عرضه بیتکوین و هاوینگ‌های تقریباً چهار ساله ایمنیِ سیستم اثبات کار را تضمین می کنند.
  • رمزنگاری: در این الگوریتم از رمزنگاری SHA-256 استفاده می شود که یک الگوریتم رمزنگاری سک طرفه است که در آن هر ورودی به یک خروجی 256 بیتی تبدیل می شود. به‌عنوان مثال در اثبات کار بیتکوین، هر بلوک حاوی یک هدر است که شامل هش بلوک قبلی و سایر اطلاعات است. هش این هدر با استفاده از SHA-256 محاسبه می‌شود و سپس برای یافتن نانس، هدر با نانس‌های مختلفی هش می‌شود تا هشی کمتر از هدف تعیین شده بدست آید. بنابراین یافتن یک نانس که هش معتبر ایجاد کند، تنها از طریق آزمون و خطا ممکن است و نیازمند توان محاسباتی زیادی است؛ و امنیت SHA-256 به این دلیل است که عملاً غیرممکن است بتوان برای یک هش خروجی، ورودی متناظر آن را بازیابی کرد. در نهایت، ویژگی‌هایی مانند یکتایی، تصادفی بودن، مقاومت در برابر تغییر، و پیچیدگی محاسباتی این الگوریتم از پایه های تامین امنیت در الگوریتم اثبات کار هستند و منجر به عدم دستکاری زنجیره می‌شوند.

ارز های مبتنی برگواه اثبات کار

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

  • بیتکوین (Bitcoin – BTC)
  • لایت‌کوین (Litecoin – LTC)
  • بیتکوین‌کش (Bitcoin Cash – BCH)
  • دوج‌کوین (Dogecoin – DOGE)

البته تعداد رمزارزهای استفاده کننده از این الگوریتم زیاد است و این ارزها با توجه به ویژگی‌ها و اهداف مختلف، ممکن است تفاوت‌هایی در جزئیات الگوریتم خود داشته باشند، مثلا در نوع عرضه یا تعداد عرضه ارز بومی خود.

تفاوت اثبات کار با اثبات سهام چیست

تفاوت اثبات کار با اثبات سهام چیست

تفاوت اصلی اثبات کار با اثبات سهام (Proof of Stake) در نحوه تایید تراکنش‌ها و اضافه کردن بلوک‌های جدید به بلاک‌چین است. در یک مقایسه می‌توان برجسته‌ترین تفاوت‌ها را به شکل زیر بیان کرد:

  1. معنی و عملکرد اصلی:

    1. اثبات کار: در این الگوریتم، ماینرها با حل مسائل پیچیده ریاضی (معمولاً مسائل هش) تلاش می‌کنند و اثبات محاسباتی معتبری ارائه می‌دهند تا بتوانند بلاک‌های جدید به بلاک‌چین اضافه کنند. پاداش این فرآیند به ماینرها از طریق دریافت رمزارز (مانند بیت‌کوین) اهدا می‌شود. این الگوریتم به اصل شواهد محاسباتی اعتماد می‌کند.
    2. اثبات سهام: در این الگوریتم، تراکنش‌ها و بلاک‌های جدید توسط دارندگان ارز رمزی که در وضعیت تسمه داشته و به عنوان “سهام” شناخته می‌شوند، تأیید می‌شوند. هرچه شخص دارای بیشترین مقدار سهام در دسته معاملاتی باشد، احتمال تولید بلاک جدید بیشتری دارد. این الگوریتم به اصل اهتمام و سهام‌داری اعتماد می‌کند.
  2. مصرف انرژی:

    1. اثبات کار: این الگوریتم به دلیل نیاز به حل مسائل پیچیده و محاسباتی زیاد برای تولید بلاک‌ها، به میزان زیادی انرژی مصرف می‌کند. این مصرف انرژی اغلب به عنوان یک انتقاد از اثبات کار مطرح می‌شود.
    2. اثبات سهام: این الگوریتم به طور کلی کمترین مصرف انرژی را نسبت به اثبات کار دارد. این به دلیل عدم نیاز به محاسبات پرقدرت برای حل مسائل پیچیده است.
  3. تراز توزیعی:

    1. اثبات کار: این الگوریتم توزیع قدرت غیرمتمرکز را تشویق می‌کند، اما ممکن است بزرگترین ماینرها تأثیر بیشتری در شبکه داشته باشند که می‌تواند به تمرکز بزرگترین استخرهای ماینینگ منجر شود. باید در نظر داشت که این موضوع از نقدهای بزرگ به اثبات سهام است که همچنان درباره آن بحث می‌شود.
    2. اثبات سهام: این الگوریتم نیز توزیع برابر را تشویق می‌کند و به طور معمول به افرادی که بیشترین مقدار سهام دارند، بیشترین تأثیر را می‌دهد. این عمل می‌تواند منجر به ایجاد ارتباط نسبی بازدهی به سرمایه‌گذاری شود.
  4. امنیت:

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

نتیجه گیری

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

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

0 0 رای ها
امتیازدهی به مقاله
guest
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها

آخرین مقالات

ویدیوهای مرتبط

محاسبه‌گر سود

بیت کوین

هش‌ریت (TH)

درآمد برای 1 روز با در نظر گرفتن هزینه استخر
BTC = USD
ساعت
روز
هفته
ماه

بزودی …