این مقاله یک راهنمای مقدماتی در مورد اثبات کار (Proof of Work) به شما ارائه میدهد. شما خواهید آموخت که این فناوری برای چه مواردی ضروری است، تفاوت بین اثبات کار (Proof of Work) و اثبات سهام (Proof of Stake) چیست و موارد دیگر.
برای پیمایش آسانتر، فهرست مطالب را بررسی کنید:
- اثبات کار چیست؟
- چرا به PoW نیاز داریم؟
- خرج کردن مضاعف چیست؟
- اثبات کار (PoW) چگونه کار میکند؟
- اثبات کار در مقابل اثبات سهام
- نتیجهگیری
- سوالات متداول
اثبات کار چیست؟
اثبات کار (PoW، به اختصار) یک مکانیسم اجماع است (که به عنوان ... نیز شناخته میشود). الگوریتم اجماع) مورد استفاده در ارزهای رمزنگاری شده. کاری که انجام میدهد جلوگیری از خرج کردن دوباره. اثبات کار معمولاً به عنوان روش امنیتی دفتر کل یک ارز دیجیتال شناخته میشود.
اثبات کار، به عنوان اولین الگوریتم اجماع ایجاد شده، هنوز هم در میان سایر الگوریتمهای اجماع، الگوریتم غالب محسوب میشود. ساتوشی ناکاموتو, ، بیت کوین خالق، PoW را در سال ۲۰۰۸ معرفی کرد. اما در واقعیت، فناوری که PoW را ممکن ساخت، شناخته شده بود. قبل از دوره.
معروفترین نمونه از الگوریتم اثبات کار (PoW) در دوران پیش از ارزهای دیجیتال، HashCash ساخته آدام بک است. این الگوریتم به عنوان ابزاری برای کاهش تعداد نامههای اسپم عمل میکرد، به این صورت که فرستندهها را ملزم میکرد قبل از ارسال ایمیل، مقدار مشخصی از محاسبات را انجام دهند. میزان قدرت محاسباتی برای یک فرستنده ایمیل شخصی نسبتاً کم بود، اما برای کسی که ایمیلهای انبوه ارسال میکرد، به طرز چشمگیری افزایش مییافت.
چرا به اثبات کار نیاز داریم؟
برای پاسخ به این سوال، ابتدا باید بررسی کنیم که چگونه فناوری بلاکچین کار میکند.
در شبکه بیت کوین، کاربران برای تأیید تراکنشها به سیستم نیاز دارند، زیرا وقتی تراکنشهای خود را به شبکه ارسال میکنند، شبکه بلافاصله وضعیت تأیید خود را دریافت نمیکند. تراکنشها ابتدا باید به بخشی از سیستم بلاکچین تبدیل شوند. از آنجایی که بلاکچین یک پایگاه داده باز است، هر کاربر میتواند تاریخچه تمام وجوه درون شبکه را دنبال کند. سادهترین راه برای مشاهده آن، یک دفترچه یادداشت است.
ایده این است:
- شما و سه نفر دیگر از دوستانتان از یک دفترچه یادداشت مشترک استفاده میکنید؛;
- شما چهار نفر از این دفترچه یادداشت برای پیگیری تراکنشها و دیدن میزان پولی که هر کدام خرج میکنید، استفاده میکنید؛;
- برای معتبر ساختن هر تراکنش جدید، هنگام انجام آن، به تراکنش قبلی که وجه را فراهم کرده است، مراجعه میکنید؛;
- بنابراین اگر یکی از دوستان شما سعی کند با استفاده از همان وجه، تراکنشی انجام دهد، چنین تراکنشی نامعتبر تلقی شده و مسدود خواهد شد.
اما نکته اینجاست - چنین سیستمی فقط میتواند برای گروه کوچکی از افراد که یکدیگر را میشناسند و ممکن است هنگام انجام تراکنشها و نوشتن جزئیات خود در یک دفترچه یادداشت مشترک به توافق برسند تا عملیاتشان کاملاً شفاف و قابل ردیابی باشد، کار کند. اما اگر بخواهید همین کار را برای گروه بزرگی از کاربران آنلاین، مثلاً ۱۰،۰۰۰ نفر یا بیشتر، انجام دهید، چه؟ در این حالت، رویکرد دفترچه یادداشت کار نخواهد کرد زیرا هیچ کس مشتاق نخواهد بود که به غریبهها اجازه دهد تراکنشها را مدیریت کنند.
و به همین دلیل است که شبکه ارز دیجیتال به یک سیستم اثبات کار نیاز دارد. این مکانیسم به عنوان بلوکی برای کاربر عمل میکند تا داراییهایی را که حق خرج کردن آنها را ندارد، خرج کند. الگوریتم اثبات کار ترکیبی از نظریه بازیها و رمزنگاری، به این ترتیب به کاربران بلاک چین بیت کوین اجازه میدهد دادههای تراکنش بیت کوین را مطابق با سیستم بهروزرسانی کنند.
اثبات کار (PoW) چگونه کار میکند؟
ماینینگ چیست؟
برای درک اینکه اثبات کار واقعاً چگونه کار میکند، ابتدا باید یاد بگیریم که استخراج چیست.
هنگام اضافه کردن تراکنشها به بلاکچین، نمیتوانید آنها را جداگانه اضافه کنید - باید آنها را در بلوکها جمعآوری کنید. به محض اینکه تراکنشها در شبکه ظاهر میشوند، مفهوم به شرح زیر است: آنها باید به نوع خاصی از بلوک به نام ... اضافه شوند. بلوک کاندید. سپس این بلوک کاندید منتظر اعتبارسنجی خود میماند تا معتبر شود - به عبارت دیگر، به بلاکچین اضافه شود.
ایجاد یک بلوک جدید ارزانترین فرآیند نیست. به منبع خاصی نیاز دارد که همان قدرت محاسباتی است. یا قدرت استخراج، زیرا کسی که یک بلوک را ایجاد میکند، ماینر نامیده میشود. یک ماینر (با استفاده از یک کامپیوتر مدرن با CUP کافی) یک معمای محاسباتی را حل میکند - یعنی, هش کردن دادههای بلوک.
هش کردن دادههای بلوک به چه معناست؟ به معنای پردازش دادهها از طریق ... تابع هش که یک هش بلوک تولید میکند. پس از پردازش از طریق توابع هش، یک بلوک جدید کد منحصر به فرد خود را دریافت میکند - نوعی اثر انگشت. این “اثر انگشت” به دادههای ورودی بلوک شما یک هویت منحصر به فرد میدهد.
شما نمیتوانید دادههای ورودی را از هش یک بلوک استخراج کنید. با این حال، اگر یک ورودی را بدانید، میتوانید تشخیص دهید که آیا آن بلوک صحیح است یا خیر. تنها کاری که برای این کار نیاز دارید این است که ورودی را از طریق تابع هش پردازش کنید و مطمئن شوید که خروجی دقیقاً همان است.
اثبات کار مستلزم آن است که هش دادهها با شرایط خاصی مطابقت داشته باشد. برای اطمینان از اینکه هش دادهها با شرایط مطابقت دارد، باید آن را از طریق تابع هش اجرا کنید. اگر پس از بررسی، دادهها مطابقت نداشته باشند، باید با کمی تغییر آن را اصلاح کنید. مهم است بدانید که حتی یک تغییر یک کاراکتری تفاوت زیادی ایجاد میکند، به طوری که نتیجه خروجی کاملاً غیرقابل پیشبینی است.
نکته اصلی این است که ایجاد یک بلوک کاری است که نمیتوانید پیشبینی کنید. همه چیز به هش کردن تعدادی تراکنش با سایر دادههای حیاتی خلاصه میشود. چیزی که همیشه به آن نیاز دارید، تکمیل یک مجموعه داده ثابت با یک قطعه داده متغیر است. بدون آن، خروجی هش شما همیشه بدون تغییر خواهد بود.
قطعه داده متغیری که به آن اشاره کردیم، a نامیده میشود. نانس. این عددی است که هر بار تغییر میکند و هشهای متفاوتی به شما میدهد. خود این فرآیند، استخراج (mining) نامیده میشود.
خب، اصلاً استخراج چیست؟
- استخراج، فرآیند جمعآوری دادههای بلاک چین و هش کردن آن با یک نانس (nonce) با هدف یافتن یک هش خاص است. هنگامی که یک ماینر هشی را پیدا میکند که با شرایط تعیینشده توسط پروتکل مطابقت دارد، حق پخش بلوکهای جدید را به شبکه پیدا میکند. در همان زمان، بلاک چین توسط سایر کاربران شبکه که بلوکهای جدید را اضافه میکنند، بهروزرسانی میشود.
شرایطی که باید در طول فرآیند استخراج رعایت شوند، بین ارزهای دیجیتال متفاوت است. به عنوان مثال، ارزهایی با شرایط بسیار چالش برانگیز وجود دارند. همه چیز به ... بستگی دارد. نرخ هش از شبکه - هرچه نرخ هش بالاتر باشد، یافتن یک هش معتبر دشوارتر است. همه اینها بخشی از یک طراحی است - اگر نرخ هش پایین باشد، ماینرها خیلی سریع کوین پیدا میکنند و تعداد آنها به سرعت در حال افزایش است.
با این حال، استخراج غیرممکن نیست. ایده این است که باید نسبتاً سخت باشد. در غیر این صورت، هیچ دلیلی برای پیوستن سایر ماینرها وجود نخواهد داشت. استخراج یک رقابت است. ماینرها هر روز با یکدیگر رقابت میکنند. در نهایت، ماینرها با کاری که انجام میدهند، پاداش میگیرند و این باعث افزایش اشتیاق آنها برای استخراج بیشتر میشود.
همانطور که قبلاً اشاره کردیم، استخراج (یعنی حل یک معمای ریاضی) به مقادیر عظیمی از قدرت محاسباتی نیاز دارد. اما این همه ماجرا نیست. همانطور که میدانید، کامپیوترها برای کار به برق نیاز دارند. بنابراین این امر استخراج را به کاری سنگین با توجه به هزینههای برق تبدیل میکند. اما خبر خوب این است که هشهای معتبر پاداش داده میشوند. این بدان معناست که هر بار که یک ماینر یک هش معتبر پیدا میکند، پاداش یک بلوک را دریافت میکند. ارز دیجیتال.
رمزنگاری کلید عمومی چیست؟
با توجه به تمام اطلاعات ذکر شده، به این نتایج میرسیم:
- استخراج هزینه دارد (سختافزار استخراج + مقدار قابل توجهی برق مصرفی)
- ماینرها برای یافتن بلاکهای معتبر، پاداش بلاک دریافت میکنند.
- با دادههای ورودی، یک کاربر بلاکچین میتواند بدون استفاده بیش از حد از قدرت CPU، از معتبر بودن بلوک اطمینان حاصل کند.
اما مسئله این است که همیشه کسانی هستند که میخواهند راه آسان را بروند. در این مورد، کسانی هستند که میخواهند تقلب کنند. آیا چنین چیزی ممکن است؟ آیا شخصی میتواند تعدادی تراکنش جعلی ایجاد کند، آنها را در یک بلوک هش کند و با ایجاد یک بلوک معتبر جدید، از مجازات فرار کند؟ از نظر فنی، پاسخ مثبت است. اما راهی برای جلوگیری از سوءاستفاده افراد شرور از بلاکچین عمومی به نفع خودشان وجود دارد.
برای اطمینان از اینکه آیا کاربر حق خرج کردن وجوه را دارد یا خیر، از یک مکانیزم رمزنگاری ویژه استفاده میشود - که رمزنگاری کلید عمومی نامیده میشود. مفهوم آن به شرح زیر است:
- پس از ایجاد تراکنش، کاربر باید امضا کن;
- امضا عمومی است و هر کاربری به آن دسترسی دارد؛;
- سایر کاربران میتوانند امضا را با کلید عمومی مقایسه کنند - اگر مطابقت داشته باشند، تراکنش معتبر است.;
- کاربران همچنین میتوانند مطمئن شوند که آیا ایجادکننده تراکنش واقعاً میتواند وجوه خود را خرج کند و آیا مبلغ خروجی کمتر از مبلغ ورودی است یا خیر.
برای جزئیات بیشتر،, لطفا این مقاله را بخوانید.
شبکه هر بلوک تراکنش نامعتبر را حذف میکند که منجر به ضرر مالی هنگفتی میشود. بنابراین تقلب در شبکه بلاکچین واقعاً بسیار پرهزینه است. و این ایده واقعی پشت اثبات کار (و سایر مکانیسمهای اجماع) است:
- مکانیسم اجماع PoW تقلب را پرهزینه میکند، اما از سوی دیگر، شما را تشویق میکند که صادقانه عمل کنید و با این کار سود زیادی به دست آورید.
خرج مضاعف چیست؟
وقتی در مورد اثبات کار صحبت میکنیم، یک اصطلاح اساسی وجود دارد که باید در مورد آن بدانید. این اصطلاح، خرج کردن دوباره (double spending) است.
A دوبار خرج کردن اساساً صندوقی است که کاربر سعی میکند بیش از یک بار آن را خرج کند. این یک اصطلاح رایج برای عملیات پول دیجیتال است. دلیل آن این است که صندوقهای دیجیتال با پول فیات - یعنی پولی که واقعاً در دنیای فیزیکی وجود دارد - یکسان نیستند. از این گذشته، در برههای، هر شخصی که با ارزهای دیجیتال سروکار دارد، باید اعتراف کند که آنها هیچ ارزش واقعی در دنیای واقعی ندارند. اما باز هم، به دلایل مختلف، ارزهای دیجیتال در چند سال گذشته بزرگ شدهاند که منجر به رونق کریپتو و انبوهی از تکنیکهای کلاهبرداری شده است. یکی از این تکنیکها، خرج کردن مضاعف است.
بیایید روشن کنیم:
- شما نمیتوانید دو بار با پول نقد فیزیکی پرداخت کنید، اما میتوانید (حداقل سعی کنید) از همان صندوق ارز دیجیتال برای انجام تراکنشهای بیتکوین استفاده کنید (که البته این یک کلاهبرداری است).
موقعیت زیر را تصور کنید: شما یک فنجان قهوه خریدهاید و هزینه آن را با پول نقد پرداخت کردهاید. حال، اگر یک فنجان قهوه دیگر بخواهید، نمیتوانید هزینه آن را با همان اسکناس یک دلاری پرداخت کنید، زیرا توسط صندوقدار پذیرفته شده و در صندوق قفل شده است. همچنین به دلیلی که قبلاً گفته شد، نمیتوانید از آن اسکناس در فروشگاه دیگری استفاده کنید.
اما با ارزهای دیجیتال، میتوانید این ترفند را به کار بگیرید. از آنجایی که پول دیجیتال فقط مجموعهای از صفر و یکها است (یعنی دادههای فشرده شده در یک فایل)، میتوانید این دادهها را کپی کرده و برای هر تعداد نفری که میخواهید ایمیل کنید. به همین دلیل است که داشتن مکانیسمهایی برای جلوگیری از استفاده افراد از وجوه یکسان در مکانهای مختلف بسیار مهم است. بدون چنین مکانیسمهایی، خرج کردن دوباره، یک ارز را از بین میبرد.
برای اطلاعات بیشتر در مورد دوبار خرج کردن،, این راهنما را بخوانید.
اثبات کار در مقابل اثبات سهام
همانطور که در بالا اشاره کردیم، اثبات کار (PoW) تنها الگوریتم اجماع موجود نیست. در این بخش از راهنمای ما، نگاهی به رقیب بالقوه الگوریتم اثبات کار خواهیم انداخت - اثبات سهام.
اثبات سهام چیست؟
اثبات سهام یکی دیگر از مکانیسمهای اجماع محبوب است که امکان اعتبارسنجی تراکنشها و دستیابی به اجماع را فراهم میکند. اما اثبات سهام از رویکردی کاملاً متفاوت از اثبات کار استفاده میکند. برخلاف اثبات کار، اثبات سهام به صورت مجازی کار میکند.
این بدان معناست که اگرچه PoW برای انجام یک تابع هزینه CPU (یا حل یک معمای محاسباتی) به مقدار زیادی قدرت محاسباتی نیاز دارد، اما ویژگی اصلی PoS استفاده از اعتبارسنجها است. اعتبارسنجها برای جلوگیری از تقلب، سهمی را قفل میکنند. پس از آن، اعتبارسنجها باید تصمیم بگیرند که بلوک بعدی که باید به زنجیره اضافه شود چیست. سپس آنها روی بلوکهای انتخاب شده شرط میبندند. اگر بلوکی در زنجیره ظاهر شود، اعتبارسنجها به نسبت کل سهم، پاداش دریافت میکنند.
آیا PoS بهتر از PoW است؟
اثبات سهام هنوز به طور کامل در بلاک چینهای کریپتو ادغام نشده است. و یکی از آنها که ابتدا باید این کار را انجام دهد، شبکه اتریوم است. جامعه اتریوم مشتاقانه منتظر است تا در آینده نزدیک از اثبات کار به اثبات سهام تغییر کند. دلیل آن این است که اثبات کار مصرف برق بسیار بالایی دارد - عملکرد قیمتگذاری CPU به قدرت استخراج بیشتری نسبت به اعتبارسنجی تراکنش از طریق PoS نیاز دارد. و هرچه تعداد ماینرهایی که به استخرهای استخراج میپیوندند بیشتر باشد، به قدرت بیشتری نیاز است.
بسیاری از مردم در سراسر جهان نگران این میزان مصرف برق هستند. به همین دلیل است که بلاکچین اتریوم میخواهد از مکانیسم اثبات سهام در تلاش خود برای دستیابی به یک راهحل سبزتر استفاده کند.
نکته دیگر در رقابت PoW در مقابل PoS، سرعت (تعداد تراکنشها در ثانیه) است. با اثبات سهام، کاربران میتوانند در مقایسه با فرآیند اثبات کار که به طور قابل توجهی طولانیتر طول میکشد، تنها در چند ثانیه وجه ارسال و دریافت کنند. ضمناً، عامل دوم نیز بر رشد کارمزد تراکنشها در شبکههای رمزنگاری تأثیر میگذارد.
و در نهایت، مسئله امنیت مطرح است. آیا اثبات سهام امنتر از اثبات کار است؟ پاسخ مثبت است. به لطف پروتکل CASPER، اثبات سهام (PoS) به طور بالقوه امنتر از اثبات کار (PoW) است. و حتی بیشتر، حملات هکرها علیه سیستمهای مبتنی بر اثبات سهام گرانتر و در نتیجه نادرتر خواهد شد.
نتیجهگیری
در گذشته، اثبات کار (PoW) مکانیزم اصلی برای تشخیص بود. خرج کردن دوباره درون بیت کوین بلاکچین. ترکیب رمزنگاری،, توابع هش, و نظریه بازیها، اثبات کار (PoW) با ایجاد یک سیستم پایدار مبتنی بر اجماع توزیعشده، عملیاتی ایمنتر را در یک شبکه غیرمتمرکز ایجاد میکند.
سوالات متداول
پروتکل اثبات کار چیست؟
پروتکل PoW مکانیزمی برای اعتبارسنجی تراکنشها در سیستم غیرمتمرکز ارزهای دیجیتال است. با اثبات کار، امکان دوبار خرج کردن - یک تکنیک کلاهبرداری که در آن از یک صندوق برای چندین تراکنش استفاده میشود - غیرممکن میشود.
تفاوت بین اثبات سهام و اثبات کار چیست؟
دو تفاوت اصلی بین دو پروتکل اجماع محبوب وجود دارد. تفاوت اول این است که اثبات سهام رویکردی با بهرهوری انرژی بیشتر اعمال میکند، در حالی که اثبات کار برای کار به مقادیر زیادی انرژی الکتریکی نیاز دارد. تفاوت دوم این است که اثبات سهام به لطف پروتکل CASPER و افزایش هزینههای حملات هکرها، به طور بالقوه ایمنتر است.
منظورتان از “معمای ریاضی” چیست؟”
حل یک “معمای ریاضی” فرآیند استخراج ارزهای دیجیتال است. ماینرها در سراسر جهان از تجهیزات محاسباتی گرانقیمت استفاده میکنند و برق زیادی برای “استخراج” بیتکوین (و سایر ارزهای دیجیتال) مصرف میکنند. این کار با پردازش حجم عظیمی از دادهها برای ایجاد واحدهای جدید و افزودن آنها به بلاکچین انجام میشود.
توکن PoW چیست؟
توکن PoW یک “ارز” است که به عنوان نوعی پرداخت کاذب در تعدادی از برنامهها مانند ایمیل استفاده میشود. اگر یک ایمیل دارای توکن PoW باشد، به این معنی است که ایمیل عاری از هرزنامه است. توکنهای PoW همچنین برای اثبات کار قابل استفاده مجدد استفاده میشوند. بنابراین از نظر فنی، توکنهای PoW عناصری از یک سیستم ضد هرزنامه هستند.








