گواه اثبات کار یا Proof of Work چیست؟
در سال 1993، برای جلوگیری از حمله به سرویسها، گواه اثبات کار به دنیا معرفی شد. این نوع آوری از فعالیت اجباری کاربران برای جلوگیری از هرگونه فساد و دستکاری در شبکه استفاده میکند.
سالها بعد و در سال 2009، بیت کوین روشی نوآورانه برای استفاده Proof of Work را بعنوان یک الگوریتم اجماع معرفی کرد. این الگوریتم برای اعبتارسنجی و استخراج بلوکهای جدید در بلاکچین استفاده میشود. این الگوریتم بعدها گسترش پیدا کرد و به یک الگوریتم اجماع پرکاربرد در ارزهای دیجیتال مختلف تبدیل شد.
اما گواه اثبات کار چگونه کار میکند؟
بطور خلاصه، سیستمهای درون شبکه یا همان نودها و ماینرها برای حل یک مسئله یا پازل پیچیده با یکدیگر در رقابت هستند. حل این مسائل واقعا دشوار است اما به مراتب تایید آنها راحت تر میباشد.زمانی که یک ماینر راه حل این پازل را پیدا کند، بلوکی را برای شبکه ساخته و آن را منتشر میکند، سپس سایر ماینرها این بلوک (یا راه حل ماینر اول) را تایید میکنند.
با یک مثال ادامه دهیم؛ قبلا گفته شد که بیت کوین یک بلاکچین غیرمتمرکز است که به واسطه نودها فعالیت میکند. نودهایی که بتوانند مسئله را حل کنند ماینر خوانده شده و بلوک جدیدی را به بلاکچین اضافه میکنند. حال این ماینرها باید برای حل مسئله، عددی تصادفی را حدث بزنند که nonce نام دارد. این عدد با دادههای بلوک ترکیب و توسط هش رمزنگاری شده و سپس به زبان بلاکچین تبدیل میشود. پس از طی این مراحل، نتیجه باید با شروط لازم تطابق داشته و کاملا صحیح باشد. وقتی نتیجه منطبق پیدا شد و بقیه نودها این نتیجه را تایید کردند، نود ماینر پاداش بلوک و زحمت خود را دریافت میکند.
بنابراین اضافه کردن بلوک جدید به زنجیره اصلی بدون پیدا کردن nonce معتبر امری غیرممکن است. پس nonce شرط و ورودی لازم و کافی برای تابع هش میباشد. از آنجایی که ماینرها باید "کاری" را انجام دهند، این الگوریتم گواه اثبات کار نام دارد.
این الگوریتم از حمله به شبکه جلوگیری میکند، زیرا برای شکستن الگوریتم به قدرت پردازشی در حد ابرکامپیوترها نیاز است. حتی ابر کامپیوترها هم برای شکستن الگوریتم زمان زیادی احتیاج دارند پس تقریبا هک شبکه غیر ممکن است.
یکی از ایراداتی که معمولا برای این الگوریتم ذکر میشود، احتیاج آن به سخت افزار بسیار قوی و گران قیمت است. همچنین مصرف انرژی آن بسیار زیاد بوده و از طرفی محاسبات هر روز سخت تر میشوند. با این تفاسیر، ممکن است که الگوریتم Proof Of Work کارآمد ترین راه حل نباشد، اما همچنان یکی از محبوب ترین آنها است.
در حال حاضر الگوریتمها و راه حلهای زیادی برای جایگزینی با Proof Of Work پیشنهاد شدهاند اما کارآمدی آنها فقط با گذر زمان مشخص خواهد شد.