ماینینگ یعنی چی؟ ماینینگ چطوری کار میکنه؟

ماینینگ یعنی چی؟ ماینینگ چطوری کار میکنه؟
هدف ماین کردن شاید اول کار یه ذره گیجکننده به نظر برسه. توی ماینینگ، کوینهای جدید تولید نمیشه!
ماینینگ یه سازوکاره که باعث میشه بلاکچین یه سیستم غیرمتمرکز باشه، و نیاز به وجود یه مرجع رو از بین میبره. وجود ماینینگ میتونه از بلاکچین دربرابر حملات محافظت کنه.
برای این که ماینر بشیم، باید به شبکه بپیونده و به بقیه نودها (node)، یا همون گرهها متصل بشه. وقتی کامپیوتر ماینر وارد شبکه شد، پنج تا کار رو باید انجام بده.
اول از همه، ماینرها باید منتظر تراکنشهای جدید در شبکه باشن، اونا رو تأیید کنن و در یک استخر حافظه ذخیره کنن. تراکنشهای غیرمجاز رو هم باید رد کنن.
دوم، یک ماینر از بقیه ماینرهای حاضر در شبکه درخواست میکنه تا اطلاعات همه بلاکهای قبلی که در بلاکچین وجود دارن رو براشون ارسال کنه، و منتظر میمونه تا اطلاعات بلاکهای جدیدی که وارد شبکه میشن رو دریافت کنه.
این بلاکهای جدید باید تایید بشن. تاییدشون اینجوریه که ماینر باید چک کنه هش بلاک قبلی از بلاک بعدی کوچکتر باشه. بعد ماینر اطلاعات بلاک رو به بقیه ماینرها میفرسته تا به بقیه بلاکچین اضافه بشه.
وظیفه بعدی ماینرها اینه که تراکنشها رو از استخر حافظه گروهبندی کنن و به در یه گراف درختی در بلاک جدید قرار بدن. یکی از تراکنشهایی که ماینر در بلاک جدید قرار میده، تراکنش ارسال پاداش انجام محاسبات مربوط به این تراکنشها به ولت (wallet) خودشه.
وظیفه چهارم ماینرها اینه که یک عدد که بهش میگیم «نانس» (nounce) رو به ابتدای بلاک قبلی اضافه میکنه و او رو در تابع رمزنگاری هش قرار میده و این کار رو انقدر تکرار میکنه تا اول عبارت حاصله، از حد مشخصی صفرهای بیشتری داشته باشه.
تعداد صفرها بستگی به سختی شبکه داره. سختی پس از مدت معینی دوباره تعیین مقدار میشه، تا با افزایش تعداد ماینرها و افزایش بهرهوری، مدت زمانی که طول میکشه تا یک بلاک ماین بشه ثابت بمونه.
حدس زدن عدد نانس خاصی که هش مناسب رو تولید میکنه، بدون این که عددها دونهدونه امتحان بشن تقریباً محاله، چون حتی یه تغییر خیلی کوچیک هم کل هش خروجی از تابع رمزنگاری رو تغییر میده.
بیشتر وقتها، ماینرها نمیتونن با امتحان کردن همه عددهای ممکن هم هش خروجی مناسب رو بهدست بیارن. اما یه نانس دیگه هم در تراکنش پایه وجود داره که برای حصول هش خروجی مد نظر، میتونه تغییر داده بشه. به محض این که ماینر یه هش با عدد ابتدایی کمتر از حد معین پیدا میکنه، یعنی اثبات انجام کار کافی برای یک بلاک جدید رو انجام داده، و این موضوع رو به کل شبکه مخابره میکنه.
بعد همه اعضای شبکه میتونن درستی این موضوع رو تأیید کنن و بلاکهای بعدی رو روی این بلاک قرار بدن. این اتفاق به یه مقدار به شانس هم احتیاج داره، چون ممکنه یه ماینر دیگه هم همزمان هش مناسب رو پیدا کنه. اون موقع بقیه ماینرها باید تصمیم بگیرن که بلاک بعدی روی کدوم یکی از اون دو بلاک باید ساخته بشه. از بین این دو بلاک، اونی که کاربران بیشتری انتخاب کردن در شبکه باقی میمونه.
بلاکهایی که با موفقیت ماین شدن اما توی بلاکچین، بلاک جدید روی اونا ساخته نشده یه بلاک بیمصرف هستن.
خب، حالا چرا باید کسی به ماینر شدن علاقهمند بشه؟
انگیزه ماینرها بستگی به بلاکچینی که روی اون ماین میکنن بستگی داره. در اغلب موارد، برای پیدا کردن بلاکهای جدید ماینرها پاداش دریافت میکنن، و همچنین از انجام تراکنشها کارمزد دریافت میکنن.