اثبات کار (PoW)
آخرین ویرایش: @sipbikardi(opens in a new tab), ۱۰ فروردین ۱۴۰۳
شبکه اتریوم با استفاده از یک مکانیزم اجماعی که شامل اثبات کار (PoW) بود، شروع به کار کرد. این موضوع به گره های شبکه اتریوم اجازه داد روی وضعیت تمام اطلاعات ثبت شده روی زنجیره بلوکی اتریوم به توافق برسند و از انواع خاصی از حملات اقتصادی جلوگیری کنند. با این حال، اتریوم اثبات کار را در سال 2022 خاموش کرد و به جای آن شروع به استفاده از اثبات سهام کرد.
پیشنیازها
برای درک بهتر این صفحه، توصیه میکنیم ابتدا تراکنشها، بلوکها و مکانیزمهای اجماع را مطالعه کنید.
اثبات کار (PoW) چیست؟
اجماع ناکاموتو، که از اثبات کار استفاده می کند، مکانیزمی است که زمانی به شبکه غیرمتمرکز اتریوم اجازه می داد در مورد چیزهایی مانند موجودی حساب و ترتیب تراکنش ها به اجماع برسد (یعنی همه گرهها توافق کنند). این کار جلوی «خرج کردن دوباره» کوینهای کاربران را گرفت و باعث حصول اطمینان از این موضوع شد که حمله و خرابکاری در زنجیره اتریوم فوقالعاده سخت است. این ویژگی های امنیتی اکنون به جای استفاده از مکانیزم اجماع معروف به Gasper، از اثبات سهام به دست می آیند.
اثبات کار و استخراج
اثبات کار الگوریتمی اساسی است که دشواری و قوانین کاری که استخراجگران باید انجام دهند را در زنجیره های بلوکی اثبات کار تعیین می کند. استخراج، خودِ «کار» است. این همان عمل اضافه کردن بلوکهای معتبر به زنجیره است. این موضوع از آن جهت اهمیت دارد که طول زنجیره به شبکه کمک می کند تا از فورک صحیح زنجیره بلوکی پیروی کند. هر چه «کار» بیشتری انجام شود، زنجیره طولانیتر میشود و هر چه شماره بلوک بیشتر شود، شبکه از وضعیت فعلی مطمئنتر میشود.
اطلاعات بیشتر دربارهی استخراج
اثبات کار اتریوم چگونه کار می کرد؟
تراکنشهای اتریوم به بلوکها پردازش میشوند. در اتریوم اثبات کار که اکنون منسوخ شده است، هر بلوک شامل موارد زیر بود:
- سختی بلوک - برای مثال: 3,324,092,183,262,715
- mixHash - برای مثال:
0x44bca881b07a6a09f83b130798072441705d9a665c5ac8bdf2f39a3cdf3bee29
- نانس (Nonce) - برای مثال:
0xd3ee432b4fb3d26b
این داده بلوکی ارتباط مستقیمی با اثبات کار داشت.
کار در اثبات کار
پروتکل اثبات کار، Ethash، نیاز داشت که استخراجگران برای پیدا کردن نانس به روش آزمون و خطا به رقابت شدید بپردازند. تنها بلوک های دارای نانس (Nonce) معتبر میتوانستند به زنجیره اضافه شوند.
استخراجگر در هنگام مسابقه برای ساخت بلوک، به طور منظم و تکراری یک مجموعهداده را، که فقط با دانلود و اجرای همه زنجیره به دست میآید (همان طور که استخراجگر هم دانلود و اجرا میکند)، از یک تابع ریاضی عبور میدهد. مجموعه داده ها برای ایجاد mixHash در زیر یک هدف که توسط سختی بلوک دیکته شده است، استفاده شد. بهترین راه برای انجام این کار آزمون و خطاست.
سختی برای هش یک هدف تعیین کرد. هر چه هدف کمتر باشد، مجموعه هشهای معتبر کوچکتر است. وقتی ساخته شد، راستی آزمایی آن برای دیگر استخراجگران و کاربرها بسیار ساده بود. حتی اگر یک تراکش تغییر کند، هش کاملاً متفاوت خواهد بود و سیگنال تقلب خواهد داد.
هش کردن باعث میشود که به آسانی بتوان تقلبها را کشف کرد. اما اثبات کار در مقام یک فرایند، یک بازدارنده مهم حملات به زنجیره هم بود.
اثبات کار و امنیت
استخراجگران برای انجام این کار روی شبکه اصلی اتریوم تشویق شدند. مشوق کمی برای زیرمجموعهای از استخراجگران که زنجیره خودشان را بسازند وجود داشت - که سیستم را تضعیف میکند. زنجیرههای بلوکی بر یک وضعیت بهعنوان منبع حقیقت متکی هستند.
هدف اثبات کار افزایش زنجیره بود. بلندترین زنجیره قابل قبولترین زنجیره به عنوان زنجیره معتبر است، چرا که بیشترین میزان کار پردازشی برای تولید آن انجام شده بود. در سیستم اثبات کار اتریوم، ساخت بلوکهای جدیدی که تراکنشها را پاک کند، تراکنشهای جعلی بسازد یا یک زنجیره دوم را نگهداری کند، تقریباً غیرممکن بود. دلیل این موضوع آن است که استخراجگر بداندیش نیاز خواهد داشت که نانس (Nonce) بلوک را همواره زودتر از هر کس دیگر پیدا کند.
استخراجگر بد اندیش برای این که بهطور مداوم بتواند بلوکهای معتبر اما بداندیش بسازد نیاز دارد بیش از 51% توان استخراج شبکه را داشته باشد تا از بقیه جلو بیفتد. این مقدار "کار" به قدرت محاسباتی بسیار گران قیمت نیاز دارد و انرژی صرف شده حتی ممکن است از سود حاصل از یک حمله بیشتر باشد.
اقتصاد اثبات کار
اثبات کار همچنین مسئول صدور ارز جدید به درون سیستم و تشویق استخراجگران به انجام کار بود.
از زمان ارتقا Constantinopld، استخراج گرانی که با موفقیت بلوک میساختند پاداشی برابر با دو اتر و بخشی از کارمزد تراکنش ها دریافت میکردند. بابت ساخت بلوک های عمو همچنین ۱٫۷۵ اتر پرداخت میشود. بلوک های عمو، بلوک های معتبری بودند که یک استخراجگر همزمان با اسخراجگر دیگر آن را به موازات زنجیره ابتدایی ساخته است، که در نهایت با این تصمیم که روی کدام بلوک زنجیره ادامه پیدا میکند مشخص میشوند. بلوکهای عمو معمولا به علت تأخیر شبکه رخ میدادند.
قطعیت
یک تراکنش روی اتریوم زمانی «قطعیت» دارد که عضوی از بلوکی باشد که نتواند عوض شود.
از آنجا که استخراجگران به شکل غیر متمرکز کار کرده اند، دو بلوک معتبر میتوانند در یک زمان استخراج شوند. این کار یک فورک موقت ایجاد میکند. در نهایت، یکی از این زنجیرهها، پس از آنکه بلوک های بعدی استخراج شده به آن اضافه شد و در نتیجه بلندتر شد، زنجیره پذیرفتهشده خواهد شد.
برای پیچیدهتر کردن بیشتر موضوع، تراکنشهایی که در فورک موقت رد شدهاند ممکن است در زنجیره پذیرفتهشده وجود نداشته باشند. این به این معنا است که شرایط میتواند معکوس شود. پس قطعیت به زمانی گفته میشود که یک تراکنش غیرقابل معکوس شدن باشد. زمانی که اتریوم از مکانیزم اجماع اثبات-کار استفاده میکرد، هر چه تعداد بلوک بیشتری روی بلوک N
استخراج می شد، اطمینان بیشتری حاصل میشد که تراکنش های بلوکN
موفق بوده اند و بازگردانده نمی شوند. حالا، با اثبات سهم، نهایی شدن، یک دارایی صریح بلوک است تا احتمالی.
استفاده از انرژی اثبات کار
یکی از بزرگترین انتقادها به اثبات کار، میزان مصرف انرژی مورد نیاز برای ایمن نگه داشتن شبکه است. برای حفظ امینت و عدم تمرکز شبکه، اتریوم با اثبات کار انرژی زیادی صرف میکرد. پیش از گذار به اثبات سهام، استخراج گران اتریوم رو هم دیگر حدود ۷۰ تراوات ساعت برق سالانه مصرف میکردند (حدودا برابر با مصرف برق جمهوری چک طبق امارdigieconomist(opens in a new tab)در ۱۸ جولای ۲۰۲۲).
نقاط مثبت و منفی
نقاط مثبت | نقاط منفی |
---|---|
اثبات کار خنثی است. شما برای شروع و گرفتن پاداش بلوکها و حرکت از 0 اتر به موجودی مثبت، نیازی به اتر ندارید. با اثبات سهام، شما برای شروع نیاز به اتر دارید. | اثبات کار به حدی انرژی مصرف میکند که برای محیط زیست بد است. |
اثبات کار یک مکانیزم اجماع آزمودهشده است که بیتکوین و اتریوم را برای سالها ایمن و غیرمتمرکز نگه داشته است. | اگر میخواهید استخراج کنید، نیاز به دستگاههای مخصوصی دارید که برای شروع، سرمایهگذاری گرانی است. |
در مقایسه با اثبات سهام، پیادهسازی راحتتری دارد. | با توجه به پردازش موردنیاز روزافزون، استخرهای استخراج احتمالاً تبدیل به غولهای بازی استخراج میشوند و این به ریسک متمرکز شدن و عدم امنیت منجر میشود. |
در مقایسه با اثبات سهام
در سطح بالا، اثبات سهام همان هدفی را دارد که اثبات کار دارد: کمک به شبکه غیرمتمرکز برای رسیدن به اجماع بهطور امن. اما تفاوتهایی در فرایند و پرسنل دارد:
- اثبات سهام بهجای توان پردازشی به اتر سهامگذاری شده اهمیت میدهد.
- اثبات سهام استخراجگرها را با اعتبارسنجها جایگزین میکند. اعتبارسنجها اتر خود را سهامگذاری میکنند تا توانایی ساختن بلوک جدید را فعال کنند.
- اعتبارسنجها برای ساختن بلوک با هم مسابقه ندارند و بهجای آن بهصورت تصادفی توسط یک الگوریتم انتخاب میشوند.
- قطعیت واضحتر است: در برخی نقاط زمان، اگر 2/3 اعتبارسنجها بر سر وضعیت بلوک به توافق برسند، این بلوک قطعی در نظر گرفته میشود. اعتبارسنجها باید تمام سهام خود را شرطبندی کنند و اگر بخواهند تبانی کنند تمام سهام خود را از دست میدهند.
اطلاعات بیشتر دربارهی اثبات سهام