مکانیزم اثبات کار (PoW) چیست؟

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

نوشته شده در مفاهیم پایه 5 دقیقه مدت مطالعه · >
مکانیزم اثبات کار

اثبات کار (Proof of Work) به سیستمی اطلاق می شود که نیاز به فعالیت اعضا دارد تا از استفاده غیر مجاز از توان محاسباتی جلوگیری کند. از جمله ارسال ایمیل های اسپم یا راه اندازی حملات دیداس (DDoS). مفهوم اثبات کار اولین بار در سال 2004 توسط هال فینی (Hal Finney) برای تأمین امنیت پول های دیجیتال معرفی شد. سپس این ایده در قالب “اثبات کار چند بار مصرف” با استفاده از الگوریتم SHA-256 مطرح شد. سرانجام در سال 2009، بیت کوین به اولین برنامه ای تبدیل شد که از این ایده استفاده کرد. گیرنده اولین تراکنش بیت کوین نیز هال فینی بود. این مکانیزم، پایه اصلی بسیاری از پروژه های ارز دیجیتال است و اجماع غیر متمرکز را میسر می سازد.

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

اثبات کار به زبان ساده

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

نقش هش (Hash)

اصولاً تشخیص دستکاری ها از طریق “هش” (hash) صورت می پذیرد. هش ها اعدادی متوالی هستند که نقش اثبات کار را ایفا می کنند. کافی است که یک دسته اطلاعات را به صورت هش در بیاورید. خواهید دید که هر دسته اطلاعات، تنها یک هش منحصر به فرد تولید می کند.

بیت کوین از هش SHA-256 استفاده می کند. اما به دلیل “اثر بهمنی” (avalanche effect) در دنیای ریاضیات، یک تغییر کوچک در اطلاعات می تواند یک هش کاملاً اشتباه درست کند. صرف نظر از حجم اطلاعات، طول تابع هش همیشه یکسان است. هش یک تابع یک طرفه است. در واقع، نمی توان از این تابع برای دسترسی به اطلاعات اصلی و ابتدایی استفاده کرد.

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

ملاحظات

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

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

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

مثالی از اثبات کار

مکانیزم اثبات کار نیاز به کامپیوتری دارد که مرتباً درگیر توایع هش باشد تا سرانجام بتواند به یک خروجی با تعداد صفر درست در ابتدای آن برسد. برای مثال، هشی که برای بلاک شماره 660000 در 4 دسامبر 2020 استخراج شد، به صورت زیر بود: (پاداش هش موفق این بلاک برابر با 6.25 BTC بود).

00000000000000000008eddcaf078f12c69a439dde30dbb5aac3d9d94e9c18f6

چنین بلاکی همیشه دارای 745 تراکنش خواهد بود که اندکی بیشتر از 1666 بیت کوین را در خود جای می دهد. سر تیتر بلاک قبلی نیز در بلاک استخراج شده وجود خواهد داشت. اگر کسی بخواهد حتی 0.000001 BTC را در یک تراکنش جا به جا کند، هش تولید شده غیر قابل شناسایی خواهد شد. در نتیجه، شبکه این هش را به عنوان یک عملکرد خطا رد خواهد کرد.

پرسش های رایج

در پایین به برخی از سؤال های رایج در مورد اثبات کار خواهیم پرداخت.

اثبات کار به چه معنا است؟

در مکانیزم اثبات کار، نودها باید شواهدی ارائه دهند که از توان محاسباتی خود (نیروی کار) استفاده کرده اند تا به صورت غیر متمرکز به اجماع برسند. همچنین آنها افراد خاطی را نیز از شبکه دور می کنند.

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

انجام “کار” داوطلبانه است. در بیت کوین، این کار به معنای تکرار الگوریتم های هش SHA-256 است. “برنده” یک دور هش، می تواند تراکنش ها را در بلاک بعدی قرار دهد. از آنجا که شخص موفق به تناسب کار انجام شده به صورت تصادفی انتخاب می شود، همه اعضای شبکه انگیزه خواهند داشت تا نقش سنجش تراکنش ها را به درستی انجام دهند.

چرا پروژه های رمز ارزی به اثبات کار نیاز دارند؟

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

تفاوت مکانیزم اثبات کار (PoW) و اثبات سهام (PoS) در چیست؟

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

مطالب مرتبط

مکانیزم اثبات سهام

مکانیزم اثبات سهام (PoS) چیست؟

نوشته شده در مفاهیم پایه
  ·   5 دقیقه مدت مطالعه
همه چیز درباره توکن و کوین

تفاوت بین توکن و کوین

نوشته شده در مفاهیم پایه
  ·   3 دقیقه مدت مطالعه
استیبل کوین چیست؟

استیبل کوین چیست؟

نوشته شده در مفاهیم پایه
  ·   14 دقیقه مدت مطالعه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *