ماینینگ چیست و چگونه کار میکند؟
ماینینگ دقیقاً چیست؟
به زبان ساده، ماینینگ (Mining) فرآیندی است که طی آن ماینرها مجموعهای از تراکنشهای معتبر را جمعآوری کرده و با انجام محاسبات بسیار زیاد، تلاش میکنند یک بلاک جدید به بلاکچین اضافه کنند.
در شبکههایی که از Proof of Work استفاده میکنند، ماینرها با انجام محاسبات رمزنگاریشده در فرآیند ایجاد بلاک و حفظ امنیت شبکه مشارکت میکنند.
برای مثال در شبکه بیتکوین، تراکنشهای کاربران ابتدا در شبکه منتشر میشوند. ماینرها این تراکنشها را بررسی کرده و تراکنشهای معتبر را در یک بلاک قرار میدهند.
سپس باید یک مسئله محاسباتی را حل کنند. ماینری که زودتر از سایر ماینرها پاسخ معتبر را پیدا کند، بلاک پیشنهادی خود را به شبکه اعلام میکند.
سایر گرههای شبکه پاسخ را بررسی میکنند و در صورت معتبر بودن، بلاک به زنجیره اضافه میشود.
ماینینگ چگونه کار میکند؟
برای درک دقیق ماینینگ باید چند مفهوم اصلی مانند تراکنش، بلاک، Hash، Proof of Work، Nonce، Hashrate و Difficulty را بشناسیم.
۱. تراکنشها
وقتی یک کاربر بیتکوین یا یک رمزارز مبتنی بر Proof of Work را برای کاربر دیگری ارسال میکند، تراکنش در شبکه منتشر میشود.
تراکنش شامل اطلاعاتی مانند فرستنده، گیرنده، مقدار دارایی و اطلاعات رمزنگاریشده مربوط به امضای دیجیتال است.
گرههای شبکه تراکنش را بررسی میکنند تا مشخص شود مثلاً امضای دیجیتال معتبر است و موجودی کافی برای انجام تراکنش وجود دارد.
۲. تشکیل بلاک
ماینرها تراکنشهای معتبر را جمعآوری و در یک ساختار داده به نام Block قرار میدهند.
هر بلاک علاوه بر تراکنشها، اطلاعات دیگری نیز دارد؛ از جمله:
- هش بلاک قبلی
- زمان
- اطلاعات مربوط به سختی شبکه
- مقدار Nonce
- ریشه مرکل یا Merkle Root
- تراکنش مربوط به پاداش ماینر
وجود هش بلاک قبلی باعث میشود بلاکها به یکدیگر متصل شوند و ساختار زنجیرهای بلاکچین شکل بگیرد.
هش چیست؟
Hash خروجی یک تابع رمزنگاری است که دادههای ورودی را به یک مقدار با طول مشخص تبدیل میکند.
برای مثال، اگر دادهای را وارد تابع هش SHA-256 کنیم، خروجی آن یک مقدار ۲۵۶ بیتی خواهد بود.
یکی از ویژگیهای مهم تابع هش این است که تغییر بسیار کوچک در ورودی میتواند خروجی کاملاً متفاوتی ایجاد کند.
همین ویژگی باعث میشود Hash برای ایجاد ارتباط میان بلاکهای بلاکچین و همچنین اجرای فرآیند Proof of Work اهمیت زیادی داشته باشد.
Proof of Work چیست؟
Proof of Work یا «اثبات کار» سازوکاری برای رسیدن به اجماع در یک شبکه غیرمتمرکز است.
در بیتکوین، ماینرها باید بارها و بارها مقادیر مختلف را آزمایش کنند تا هشی پیدا شود که شرایط تعیینشده توسط شبکه را داشته باشد.
این فرآیند نیازمند انجام تعداد بسیار زیادی محاسبه در هر ثانیه است.
نکته مهم این است که ماینر معمولاً نمیتواند پاسخ را به شکل مستقیم محاسبه کند؛ بلکه باید مقادیر مختلف را امتحان کند تا یکی از آنها به نتیجه مطلوب برسد.
به همین دلیل قدرت پردازشی و Hashrate اهمیت زیادی در ماینینگ پیدا میکند.
نانس (Nonce) چیست؟
Nonce مخفف عبارت Number Used Once است.
ماینر با تغییر مقدار Nonce، داده ورودی تابع هش را تغییر میدهد و هش جدیدی تولید میکند.
این فرآیند میتواند میلیونها، میلیاردها یا حتی تعداد بسیار بیشتری بار در ثانیه تکرار شود.
در نتیجه، ماینرها به دنبال پیدا کردن ترکیبی هستند که هش آن مطابق با شرایط تعیینشده توسط شبکه باشد.
هشریت یا Hashrate چیست؟
Hashrate میزان قدرت محاسباتی اختصاص دادهشده به فرآیند استخراج را نشان میدهد.
برای مثال، اگر دستگاهی بتواند یک تریلیون محاسبه هش در هر ثانیه انجام دهد، هشریت آن برابر با:
1 TH/s = 1 تریلیون هش در ثانیه
واحدهای رایج هشریت عبارتاند از:
| واحد | مقدار |
|---|---|
| KH/s | هزار هش در ثانیه |
| MH/s | یک میلیون هش در ثانیه |
| GH/s | یک میلیارد هش در ثانیه |
| TH/s | یک تریلیون هش در ثانیه |
| PH/s | یک کوادریلیون هش در ثانیه |
هرچه هشریت بالاتر باشد، دستگاه میتواند در مدت مشخص تعداد بیشتری حالت را آزمایش کند؛ البته افزایش هشریت شبکه معمولاً با افزایش سختی استخراج نیز همراه میشود.
سختی شبکه یا Mining Difficulty چیست؟
اگر تعداد ماینرها و قدرت پردازشی شبکه افزایش پیدا کند، شبکه باید مکانیزمی داشته باشد تا تولید بلاکها بیش از حد سریع نشود.
در بیتکوین، Difficulty یا سختی استخراج به گونهای تنظیم میشود که میانگین زمان تولید بلاکها تقریباً در محدوده هدف شبکه باقی بماند.
بنابراین اگر قدرت پردازشی شبکه افزایش پیدا کند، مسئله استخراج نیز دشوارتر میشود.
این موضوع یکی از دلایل مهمی است که باعث شده استخراج بیتکوین از یک فعالیت قابل انجام با رایانههای معمولی در سالهای ابتدایی، به صنعتی وابسته به سختافزارهای تخصصی تبدیل شود.
دستگاه ماینر چیست؟
در روزهای ابتدایی بیتکوین، استخراج با CPU رایانههای معمولی امکانپذیر بود.
بعدها ماینرها به سمت استفاده از GPU، سپس FPGA و در نهایت ASIC رفتند.
ASIC چیست؟
ASIC مخفف عبارت Application-Specific Integrated Circuit است و به تراشهای گفته میشود که برای انجام یک وظیفه مشخص طراحی شده است.
در استخراج بیتکوین، ASICها برای اجرای محاسبات مربوط به الگوریتم استخراج بهینه شدهاند.
در نتیجه، دستگاههای ASIC از نظر سرعت و بهرهوری انرژی برای استخراج الگوریتمهای مشخص، نسبت به سختافزارهای عمومی مناسبتر هستند.
استخر استخراج یا Mining Pool چیست؟
با افزایش سختی استخراج، احتمال اینکه یک ماینر به تنهایی بتواند بلاک پیدا کند برای بسیاری از افراد بسیار پایین شده است.
به همین دلیل ماینرها میتوانند به Mining Pool یا استخر استخراج ملحق شوند.
در یک استخر استخراج، قدرت پردازشی تعداد زیادی ماینر با یکدیگر ترکیب میشود.
اگر استخر موفق به استخراج یک بلاک شود، پاداش مطابق قوانین استخر و میزان مشارکت اعضا میان آنها تقسیم میشود.
به این ترتیب، درآمد ماینر معمولاً منظمتر از حالتی میشود که فرد به صورت مستقل اقدام به استخراج کند.
پاداش ماینر از کجا میآید؟
ماینر موفق معمولاً از دو منبع اصلی درآمد برخوردار میشود:
۱. پاداش ایجاد بلاک
شبکه برای ایجاد یک بلاک معتبر، طبق قوانین پروتکل پاداشی را برای ماینر در نظر میگیرد.
۲. کارمزد تراکنشها
کاربران برای قرار گرفتن تراکنشهایشان در بلاکها کارمزد پرداخت میکنند و این کارمزدها نیز میتوانند بخشی از درآمد ماینر باشند.
درآمد ماینر = پاداش بلاک + کارمزد تراکنشها
البته در محاسبه سود واقعی باید هزینه برق، استهلاک تجهیزات، هزینه خنکسازی، نگهداری، اینترنت و سایر هزینههای عملیاتی نیز در نظر گرفته شود.
هاوینگ یا Halving چه تأثیری بر ماینینگ دارد؟
در شبکه بیتکوین، مقدار پاداش ایجاد بلاک طبق یک برنامه از پیش تعیینشده کاهش مییابد.
این رویداد Halving نام دارد.
در هر هاوینگ، پاداش پایهای که به ماینر بابت ایجاد بلاک تعلق میگیرد کاهش پیدا میکند.
در نتیجه، اقتصاد استخراج به عواملی مانند قیمت بیتکوین، هزینه برق، کارایی دستگاه، کارمزد تراکنشها و سختی شبکه وابستهتر میشود.
چرا ماینینگ به برق زیادی نیاز دارد؟
ماینینگ مبتنی بر Proof of Work بر پایه انجام تعداد بسیار زیادی محاسبه است.
ماینرها دائماً هشهای جدید تولید میکنند و تا رسیدن به یک نتیجه معتبر به جستوجوی خود ادامه میدهند.
بنابراین مصرف انرژی بخش مهمی از ساختار PoW است.
مصرف انرژی در شبکههای Proof of Work تنها یک هزینه عملیاتی نیست؛ بخشی از این هزینه با مکانیزم امنیتی شبکه ارتباط دارد، زیرا انجام حملات نیازمند صرف توان محاسباتی و انرژی قابل توجه است.
آیا ماینینگ فقط برای بیتکوین است؟
خیر.
ماینینگ به طور کلی به فرآیند تأمین امنیت و ایجاد بلاک در شبکههایی گفته میشود که از الگوریتمهای مبتنی بر استخراج، بهویژه Proof of Work، استفاده میکنند.
اما همه رمزارزها قابل استخراج نیستند.
برای مثال، Ethereum پس از انتقال به الگوریتم Proof of Stake، دیگر از ماینینگ مبتنی بر GPU یا ASIC برای اجماع شبکه استفاده نمیکند.
در Proof of Stake، به جای رقابت ماینرها برای انجام محاسبات، اعتبارسنجی شبکه بر اساس سازوکار سهامگذاری انجام میشود.
بنابراین باید بین «ارز دیجیتال» و «ارز دیجیتال قابل استخراج» تفاوت قائل شد.
آیا ماینینگ باعث تولید ارز دیجیتال میشود؟
بله، اما این موضوع نیاز به توضیح دارد.
در شبکههایی مانند بیتکوین، پروتکل اجازه میدهد بخشی از عرضه جدید در قالب Block Subsidy به ماینر موفق اختصاص پیدا کند.
بنابراین ماینینگ میتواند یکی از مکانیزمهای عرضه واحدهای جدید ارز باشد.
اما وظیفه ماینینگ بسیار فراتر از «تولید سکه» است.
ماینرها همزمان در موارد زیر نقش دارند:
- پردازش و تأیید تراکنشها
- ایجاد بلاک
- حفظ اجماع
- افزایش امنیت شبکه
- جلوگیری از Double Spending
ماینینگ چگونه از تقلب جلوگیری میکند؟
یکی از مهمترین کاربردهای Proof of Work، افزایش هزینه حمله به شبکه است.
فرض کنید فردی بخواهد یک تراکنش قدیمی را تغییر دهد.
از آنجا که هر بلاک به بلاک قبلی وابسته است، تغییر اطلاعات یک بلاک باعث تغییر هش آن میشود.
در نتیجه، برای بازنویسی آن قسمت از زنجیره، مهاجم باید محاسبات لازم برای ایجاد مجدد بلاک تغییرکرده و بلاکهای پس از آن را انجام دهد و در رقابت با شبکه باقی بماند.
هرچه زنجیره جلوتر میرود، بازنویسی تاریخچه دشوارتر میشود.
این ویژگی یکی از پایههای امنیت شبکههایی مانند بیتکوین است که از Proof of Work استفاده میکنند.
حمله ۵۱ درصد چیست؟
در یک شبکه Proof of Work، اگر یک موجودیت بتواند کنترل اکثریت قابل توجهی از قدرت هش شبکه را به دست آورد، میتواند در شرایط خاص توانایی بیشتری برای سازماندهی مجدد زنجیره و انجام برخی حملات مانند Double Spending پیدا کند.
این موضوع معمولاً با عنوان 51% Attack شناخته میشود.
با این حال، کنترل اکثریت هشریت به معنای کنترل مستقیم دارایی کاربران یا امکان ایجاد بیتکوین نامحدود نیست؛ قوانین پروتکل همچنان محدودیتهای خود را دارند.
تفاوت ماینینگ با استیکینگ چیست؟
دو مفهوم ماینینگ و استیکینگ گاهی با یکدیگر اشتباه گرفته میشوند، در حالی که هرکدام از سازوکار متفاوتی برای مشارکت در اجماع شبکه استفاده میکنند.
| ویژگی | Proof of Work | Proof of Stake |
|---|---|---|
| تأمین امنیت | قدرت محاسباتی | سرمایه سهامگذاریشده |
| مشارکتکننده | Miner | Validator |
| مصرف انرژی | معمولاً بالا | معمولاً بسیار کمتر |
| سختافزار تخصصی | در برخی شبکهها ضروری | معمولاً خیر |
| نمونه معروف | Bitcoin | Ethereum |
بنابراین Mining و Staking دو روش متفاوت برای دستیابی به اجماع در شبکههای بلاکچینی هستند.
آیا ماینینگ هنوز سودآور است؟
سودآوری ماینینگ یک عدد ثابت نیست و به شرایط شبکه، بازار، دستگاه و هزینههای عملیاتی بستگی دارد.
سود = درآمد استخراج − هزینه برق − هزینه نگهداری − استهلاک تجهیزات − سایر هزینهها
مهمترین عوامل مؤثر بر اقتصاد استخراج عبارتاند از:
- قیمت ارز دیجیتال
- هشریت دستگاه
- مصرف برق دستگاه
- قیمت برق
- سختی شبکه
- پاداش بلاک
- کارمزد تراکنشها
- هزینه تجهیزات
- هزینه خنکسازی
- کارمزد استخر استخراج
به همین دلیل ممکن است یک دستگاه در یک کشور یا شرایط خاص اقتصادی قابل استفاده باشد، اما همان دستگاه در شرایطی با هزینه برق بالاتر، نتیجه اقتصادی متفاوتی داشته باشد.
آینده ماینینگ چگونه خواهد بود؟
آینده استخراج به چند عامل مهم وابسته است.
۱. بهرهوری سختافزارها
هر نسل جدید ASIC میتواند قدرت محاسباتی بیشتری را با مصرف انرژی کمتر ارائه کند. بنابراین Efficiency یکی از پارامترهای مهم در توسعه نسلهای جدید تجهیزات استخراج خواهد بود.
۲. قیمت و ساختار بازار رمزارزها
تغییر قیمت دارایی استخراجشده میتواند بر درآمد بالقوه ماینر تأثیر بگذارد.
۳. هزینه و منبع انرژی
دسترسی به برق ارزان و پایدار یکی از عوامل مهم در اقتصاد صنعت استخراج است.
۴. مقررات دولتی
قوانین مربوط به استخراج، مالیات، تعرفه برق و محیطزیست میتوانند بر شرایط فعالیت ماینرها تأثیر بگذارند.
در مجموع، آینده ماینینگ تحت تأثیر همزمان پیشرفت سختافزار، شرایط بازار، هزینه انرژی و قوانین مربوط به استخراج قرار خواهد داشت.
جمعبندی
ماینینگ را نمیتوان صرفاً «روشی برای پول درآوردن با دستگاههای کامپیوتری» دانست.
در شبکههایی مانند بیتکوین، ماینینگ بخش مهمی از زیرساخت امنیتی شبکه است. ماینرها با انجام محاسبات Proof of Work، در ایجاد بلاکهای جدید، پردازش تراکنشها و حفظ یک دفترکل غیرمتمرکز مشارکت میکنند.
فرآیند کلی را میتوان چنین خلاصه کرد:
بنابراین، ماینینگ ترکیبی از رمزنگاری، علوم کامپیوتر، اقتصاد، نظریه بازی، شبکههای توزیعشده و مصرف انرژی است و برای درک واقعی آن باید تمام این جنبهها را در کنار یکدیگر بررسی کرد.