الگوریتم اثبات کار یا POW که مخفف Proof of Work می باشد به زبان ساده الگوریتم اصلی اجماع در شبکهی بلاک چین است. در ادامه این مقاله قصد داریم به معنی و مفهوم Proof of Work بپردازیم، همراه داتیس نتورک باشید.
الگوریتم اثبات کار یا POW چیست؟
الگوریتم اثبات کار یا POW که مخفف Proof of Work می باشد به زبان ساده الگوریتم اصلی اجماع در شبکهی بلاک چین است.
این الگوریتم در بلاک چین برای تایید تراکنشها و تولید بلوکهای جدید در زنجیره مورد استفاده قرار میگیرد.
استخراجکنندگان با استفاده از این الگوریتم با یکدیگر بر سر تکمیل تراکنشهای شبکه و گرفتن پاداش رقابت میکنند.
الگوریتم اثبات کار (یا به اختصار PoW) مکانیسمی برای جلوگیری از دوبار خرج کردن است.
بسیاری از ارزهای دیجیتال بازار از PoW به عنوان الگوریتم اجماع استفاده میکنند.
این الگوریتم اولین الگوریتم اجماعی بود که ابداع شد، و تا به امروز همچنان کاربرد دارد.
اگرچه این الگوریتم توسط ساتوشی ناکاموتو معرفی شد، اما این تکنولوژی مدتها قبل اختراع شده بود.
ایده PoW برای اولین بار توسط Dwork و Naor در سال 1993 ارائه شد. آنها ایده استفاده از الگوریتم اثبات کار را برای مقابله با هرزنامه ایمیل(spam) مطرح کردند.
طبق پیشنهاد آنها ، ارسال كننده ایمیل باید یک معمای ریاضی پرمصرف را حل کرده و راه حل آن را در ایمیل به عنوان اثبات انجام کار، ارائه دهد.
گیرنده ایمیل فقط در صورت تأیید راه حل، ایمیل را می پذیرد. در محیط بلاکچین نیز، مفهوم مشابهی اتخاذ شده است.
دوباره خرج کردن یا پرداخت مضاعف چیست؟
دوباره خرج کردن (Double-spend) زمانی اتفاق میافتد که یک وجه ثابت، بیشتر از یکبار خرج شود.
این اصطلاح تقریبا به طور اختصاصی فقط برای پول دیجیتال کاربرد دارد، نمیتوانید به کافیشاپ رفته و با پول یک قهوه، دو فنجان قهوه بخرید زیرا امکان خرج پول فیزیکی بیشتر از یکبار وجود ندارد.
اما در بازار ارزهای دیجیتال، این امکان وجود دارد. همانطور که میتوانید یک ایمیل یکسان را به چندین نفر بفرسید.
از آنجایی که پول دیجیتال یک داده است، ممکن است افرادی این دادهها را کپی کرده و بیشتر از یکبار در مکانهای مختلف خرج کنند. در این صورت ارز دیجیتال شما ریزش میکند.
مکانیزم الگوریتم اثبات کار
در این سیستم ماینرها با یک دیگر بر سر حل معماهای پیچیده محاسباتی به رقابت میپردازند.
این معما ها به سختی حل میشوند، اما بلافاصله پس از حل شدن امکان تایید شدن آن توسط دیگران وجود دارد.
بنابراین زمانی که یک ماینر پاسخ این یک معما را که در واقع هش یک بلوک است را پیدا میکند، آن بلوک را به شبکه ارسال مینماید.
سایر ماینرها این پاسخ را تایید میکند و بلوک مذکور طی مدت کوتاهی تایید میشود.
منظور از یک معمای ریاضی چیست؟
منظور مسئلهای است که حل آن نیازمند توان محاسباتی بالایی است. از جمله این مسائل میتوان به موارد ذیل اشاره کرد:
توابع هش (Hash Functions): چگونگی جستجوی یک ورودی که خروجی را میشناسد.
تجزیه اعداد طبیعی (Integer Factorization): یا به عبارتی، چگونگی نمایش یک عدد به عنوان حاصل ضرب دو عدد دیگر.
پروتکل معمای هدایت شده (GTP): درصورتی که سرور به بروز حمله DoS مشکوک شود، برخی از گرهها را در یک ترتیب معین ملزم به محاسبه توابع هش خواهد کرد.
مسئله اصلی در این جا نحوه پیدا کردن زنجیرهای از مقادیر تابع هش است.
همراه با رشد شبکه، مشکلات بیشتری نیز ایجاد خواهد شد و حل الگوریتمها نیازمند توان هش بیشتری خواهد بود. بنابراین پیچیدگی کار موضوع حساسی است.
چرا باید از الگوریتم اجماع اثبات کار استفاده کرد؟
مزیت اصلی آن ضدهک بودن آن و تاثیر حداقلی سهام بر امکان استخراج در آن میباشد.
دفاع در مقابل حملات. الگوریتم اثبات کار محدودیتهایی را بر کنشهای موجود در شبکه اعمال میکند.
اجرای این الگوریتم نیازمند تلاش زیادی است. حملات کارآمد برای انجام محاسبات نیازمند نیروی رایانشی و زمان زیادی هستند.
بنابراین همیشه احتمال حمله وجود دارد اما چون هزینهها خیلی بالا هستند، این کار عملاً بیفایده میشود.
امکان استخراج. مهم نیست که چقدر پول در کیف پولتان دارید. مهم این است که نیروی رایانشی قویای برای حل پازلها و ایجاد بلوکهای جدید داشته باشید.
بنابراین دارندگان مقادیر زیاد پول مسئول تصمیمگیری دربارهی کل شبکه نیستند.
الگوریتم اثبات کار معمولا کجا اجرا میشود؟
این الگوریتم در بسیاری از ارزهای رمزنگاری شده به کار گرفته شده است.
مشهورترین کاربرد آن در بیت کوین است و این بیت کوین بود که این نوع از اجماع را پایهریزی کرد. پازل آن هشکش (Hashcash) است.
این الگوریتم اجازهی تغییر پیچیدگی یک پازل را بر اساس نیروی کل شبکه میدهد.
زمان میانگین شکلگیری بلوک ۱۰ دقیقه است. ارزهای مبتنی بر بیت کوین، مانند لایتکوین، همین سیستم را دارند. پروژهی بزرگ دیگری که از این الگوریتم استفاده میکند اتریوم است.
با علم به اینکه سهچهارم پروژهها در پلتفرم اتریوم اجرا شدهاند، میتوان با اطمینان گفت که اکثر اپلیکیشنهای بلاک چین از مدل اجماع اثبات کار استفاده میکنند.
معایب این الگوریتم چیست؟
مهمترین معایب این الگوریتم عبارتند از هزینههای گزاف، بیفایده بودن محاسبات و حملات 51 درصدی.
هزینههای گزاف: در فرآیند استخراج برای اجرای الگوریتمهای پیچیده به سختافزار کامپیوتری بسیار تخصصی نیاز است و هرکسی از پس مخارج آن بر نمیآید. به همین دلیل استخراج تنها برای استخرهای مخصوص استخراج امکانپذیر است.
راهاندازی این دستگاههای مخصوص مصرف برق بالایی را میطلبد که باعث افزایش هزینهها خواهد شد.
هزینههای گزاف تهدیدی برای تمرکز سیستم محسوب میشود زیرا خود سیستم نیز از آن منتفع خواهد شد.
به راحتی میتوان این موضوع را در بیت کوین مشاهده کرد.
بیفایده بودن محاسبات: ماینرها برای تولید بلاکها تلاش زیادی کرده و انرژی زیادی مصرف میکنند.
اما محسباتی که انجام میدهند در هیچ کجای دیگر قابل استفاده نیست.
آنها امنیت شبکه را تضمین میکنند اما این امنیت را نمیتوان در کسبوکار، دانش یا هر زمینه دیگری استفاده کرد.
سخن پایانی
الگوریتم اثبات کار، راه حل اصلی برای مشکل دوبار خرج کردن است.
این الگوریتم ثابت کرده که ایمن و قابل اعتماد عمل میکند.
استفاده هوشمندانه از علم رمزنگاری، توابع هش و تئوری بازی، به کاربران این امکان را میدهد تا در یک محیط غیرمتمرکز درباره وضعیت پایگاه داده مالی به توافق برسند.
امیدواریم مقاله آشنایی با الگوریتم اثبات کار یا POW مفید بوده باشد.
داتیس نتورک را در شبکه های اجتماعی خصوصا تلگرام دنبال کنید.