هنگامی که در مورد استخراج بیت کوین میشنوید، در ذهنتان سکههایی را مجسم خواهید کرد که از زمین حفر میشوند. اما بیت کوین یک شئ فیزیکی نیست، پس چرا از واژهی استخراج استفاده میکنیم؟
استخراج بیت کوین مشابه استخراج طلا است. در طراحی پروتکل بیت کوین، تمامی بیت کوینها وجود دارد همانطور که هنوز در زیر زمین معادن طلایی وجود دارد که حفر نشده و طلای آن استخراج نشده است.
براساس پروتکل بیت کوین، حداکثر 21 میلیون بیت کوین وجود دارد. کاری که ماینرها انجام میدهند استخراج آنها به مرور زمان است. هنگامی که ماینرها استخراج تمام بیتکوینها را به پایان رساندند، دیگر بیت کوین جدیدی تولید نخواهد شد. مگر اینکه پروتکل بیت کوین تغییر کند تا امکان عرضه بیشتر را فراهم کند. ماینرها کارمزد تراکنشها را در ازای تأیید تراکنشها و قراردادن آنها در بلاکچین دریافت میکنند.
برای درک نحوه استخراج بیت کوین، بیایید کمی به عقب برگردیم و دربارهی نودها (گره) صحبت کنیم. نود یک کامپیوتر قدرتمند است که نرم افزار بیت کوین را اجرا میکند و تراکنشها و بلاکها را تأیید میکند. از آنجا که بیت کوین یک شبکهی غیرمتمرکز است، همهی نودها مسئول تأیید تراکنشهای در حال انجام هستند.
هر کسی میتواند تنها با دانلود نرمافزار رایگان بیت کوین یک نود را اجرا کند. تنها اشکال این است که این کار انرژی و فضای ذخیرهسازی زیادی در حدود صدها گیگابایت مصرف میکند. نودها تراکنشهای بیت کوین را در سراسر شبکه منتشر میکنند. یک نود اطلاعات را به چندین نودی که میشناسد ارسال میکند، و آن نودها نیز اطلاعات را به نودهای دیگری که میشناسند میفرستند و این کار به همین ترتیب ادامه مییابد. به این ترتیب، تراکنش به سرعت در کل شبکه منتشر میشود.
بعضی از نودها، نودهای استخراج کننده هستند که معمولاً از آنها به عنوان ماینر یاد میشود. این نودها تراکنشهای تأیید شده را به بلاک تبدیل میکنند و آنها را به بلاکچین اضافه میکنند. ماینرها چطور این کار را انجام میدهند؟ با حل یک معمای ریاضی پیچیده که بخشی از برنامه بیت کوین است و شامل جواب در بلاک میباشد.
معمایی که نیاز به حل دارد یافتن عددی است که اگر با دادههای موجود در بلاک ترکیب شود و از یک تابع هش که دادههای ورودی با هر اندازهای را به خروجی با طول ثابت تبدیل میکند، عبور کند نتیجهای در یک دامنهی معین ایجاد میکند. این عدد نانس (nonce) نامیده میشود که مخفف (number used once) است. در بلاکچین، نانس یک عدد صحیح بین 0 و 4،294،967،296 است.
این عدد چگونه پیدا میشود؟ با حدس زدن تصادفی. تابع هش پیش بینی خروجی را غیرممکن میکند. بنابراین، ماینرها عدد را حدس میزنند و تابع هش بر روی ترکیبی از این عدد و دادههای موجود در بلاک اعمال میشود. هش حاصل با تعداد مشخصی صفر شروع میشود. هیچ راهی برای دانستن اینکه کدام اعداد درست هستند وجود ندارد، زیرا دو عدد صحیح پشت سر هم نتایج بسیار متفاوتی را ارائه میدهند. علاوه بر این، ممکن است چندین نانس وجود داشته باشد که به نتیجه مدنظر منجر شود یا ممکن است نانسی پیدا نشود. در این حالت، ماینرها به تلاش خود ادامه میدهند اما در بلاکی با پیکربندی متفاوت.
سختی استخراج (تعداد صفر مورد نیاز در ابتدای رشته هش) به طور مکرر تنظیم میشود، بنابراین پردازش یک بلاک به طور متوسط حدود 10 دقیقه طول میکشد.
چرا 10 دقیقه؟ این مدت، زمانی است که توسعه دهندگان بیت کوین فکر میکنند برای رسیدن به یک جریان پایدار و کاهشی برای استخراج بیتکوینهای جدید تا رسیدن به حداکثر 21 میلیون بیت کوین ضروری است. (در سال 2140)
اولین ماینری که هش را در محدوده مورد نظر به دست میآورد، پیروزی خود را به بقیه شبکه اعلام میکند. همهی ماینرهای دیگر بلافاصله کار در آن بلاک را متوقف کرده و شروع به تلاش برای حل معمای بلاک بعدی میکند. به عنوان پاداش، ماینر تعداد کمی بیت کوین جدید دریافت میکند.
در زمان نوشتن این مقاله، میزان پاداش 25/6 بیت کوین در هر بلاک است که ارزش آن در ژوئن 2020 حدود 56000 دلار است.
با این حال، حل این معما به سادگی که به نظر میرسد، نیست. نودهای ماینر زیادی برای دریافت این پاداش رقابت میکنند. هرچه قدرت محاسبات و پردازش بیشتری داشته باشید، خوش شانس ترید.
همچنین، هزینههای یک نود ماینینگ بودن قابل توجه است، که علت آن نه تنها به خاطر نیاز به نرم افزار قدرتمند بلکه به دلیل مصرف زیاد برق توسط این پردازندههاست.
تعداد بیت کوینهایی که به عنوان پاداش برای حل معما اعطا میشوند کاهش مییابد. این پاداش اکنون 25/6 بیت کوین است، اما تقریباً هر چهار سال نصف میشود (انتظار می رود مورد بعدی در سال 2024 اتفاق بیفتد). ارزش بیت کوین نسبت به هزینه برق و سخت افزار میتواند طی چند سال آینده افزایش یابد تا بخشی از این هزینهها جبران شود، اما این مورد نیز قطعی نیست.