استخراج یکی از مفاهیم بنیادی ارزهای رمزنگاری شدهای همچون بیت کوین است که شبکهشان از الگوریتم اجماع اثبات کار پیروی میکند. در این نوشتار به بیان معنی و مفهوم استخراج بیت کوین پرداخته شده است و همچنین مفاهیمی همچون هش نیز توضیح داده شدهاند.
هنگامی که تراکنشی در شبکه بلاکچینی بیت کوین انجام میشود و مقداری بیت کوین از یک شخص به شخص دیگری منتقل میشود، حدود 10 دقیقه برای تایید این تراکنش زمان صرف میشود. در مدت این 10 دقیقه استخراجکنندههای زیادی از سراسر دنیا بر روی کد هش (Hash) بلوکی که این تراکنش در آن وجود دارد کار میکنند و در صورتی که این استخراجکنندهها بتوانند کد هش بلوک مورد نظر را حدس بزنند، تراکنشهای موجود در آن بلوک تایید میشود و مقداری بیتکوین به استخراجکنندهای که آن کد را حدس زده است پاداش داده میشود. بیتکوینی که از طرف شبکه به استخراجکننده اهدا میشود برای کسی نیست و استخراجکننده مالک اول آن محسوب میشود، به همین دلیل به این عمل استخراج میگویند.
هنگامی که کاربران اطلاعاتی بر روی شبکه بیتکوین ایجاد میکنند (تراکنش انجام میدهند) این اطلاعات بر روی یک بلوک جدید از یک شبکه بلاکچین قرار میگیرند، شبکه برای هر بلوک یک کد رمزی ایجاد میکند، این کد رمزی با استفاده از اطلاعات درون بلوک و استفاده از کدهای بلوکهای قبلی و پارامترهای دیگری که موسس شبکه تعیین کرده تولید میشود، به کد رمزی تولید شده برای هر بلوک کد هش آن بلوک گفته میشود (برای متوجه شدن مفهوم بلاکچین اینجا را بخوانید).
وظیفه یک استخراجکننده این است که کد Hash یک بلوک جدید را حدس بزند و صحت تراکنشهای موجود در آن بلوک را تایید کند، در هر بلوک از شبکه بیتکوین یک مگابایت تراکنش جای میگیرد و هر استخراجکننده با حدس کد هش آن بلوک جدید، علاوه بر آنکه چند بیتکوین از شبکه پاداش میگیرد، کارمزدی را که کاربران برای انجام تراکنشهای آن بلوک پرداختهاند را نیز دریافت میکند (نرخ کارمزدهای انتقال بیتکوین متفاوت است)، در سال 2009 و هنگام تاسیس بیتکوین، استخراجکنندهها میتوانستند با CPU یک کامپیوتر معمولی کدهای هش را حدس بزنند و به راحتی بیتکوین استخراج کنند، اما با افزایش کاربران بیتکوین و افزایش تعداد استخراج کنندگان، فرمولبندی کدهای هش سختتر شد و پس از آن استخراج کنندگان برای حدس این کد باید از کامپیوترهایی با قدرت پردازش بسیار بالاتر استفاده میکردند.
کد هش که در شبکه بیتکوین مورد استفاده قرار میگیرد، یک کد 64 رقمی هگزادسیمال است، این کد 64 رقمی شکلی مانند کد زیر دارد:
c708cf0130d95e27c5819203e9f967ac56e4df589dd
همانطور که میبینید در ترکیب این کد حروف الفبا نیز وجود دارد، این موضوع به این علت است که یک کد هگزادسیمال میتواند تا عدد 16 را در خود داشته باشد، اما سیستم فقط قادر به تشخیص اعداد 0 تا 9 است، به همین دلیل برای آنکه ارزش اعداد بزرگتر از 9 را نیز تعریف کنیم، به ترتیب از حروف الفبای a،b،c،d،e،f استفاده میکنیم؛ یک استخراجکننده نیازی ندارد که کدی برابر با این کد را حدس بزند و حتی اگر کدی با ارزش پایینتر از این کد را نیز حدس بزند، کار او مورد قبول است.
در ابتدای تاسیس بیتکوین در سال 2009 این پاداش 50 بیتکوین بود، اما از آنجا که قانون سیستم بر این است که هر چهار سال پاداش استخراج بیتکوین به نصف کاهش یابد، این پاداش در سال 2012 به 25 بیتکوین رسید و در سال 2016 نیز به 12.5 بیتکوین بابت حل هر بلوک کاهش یافت و در سال 2020 نیز این مقدار به 6.25 بیتکوین کاهش خواهد یافت. هر استخراجکننده علاوه بر پاداشی که از سیستم استخراج دریافت میکند، کارمزد تراکنشهای موجود در آن بلوک را نیز دریافت میکند، به همین دلیل پیشبینی میشود با کاهش پاداش بیتکوین در سالهای آینده، بیشتر استخراجگران به دنبال تایید تراکنشهایی باشند که کارمزد بیشتری را برای انتقال پرداخت کرده باشند.
به دلیل حجم بالا و پیچیده محاسباتی که در استخراج بیتکوین مطرح است، باید از یک سیستم کامپیوتری بسیار سریع و پیشرفته استفاده کرد، زیرا در حال حاضر استخراج بیتکوین با یک کامپیوتر معمولی شاید سالها به طول بینجامد. استخراجکنندهها در ابتدا از متصل کردن گرافیکهای مخصوص بازی به یکدیگر، یک سیستم پردازشی قوی از GPUها میساختند و اقدام به استخراج بیتکوین میکردند، اما این وسیله برق زیادی مصرف میکرد، بسیار داغ میشد و مشکلات زیادی با خود به همراه داشت، تا آنکه با پیشرفت کار استخراج بیتکوین پردازندههای بسیار قوی به نام ASIC تولید شدند، این پردازندهها به صورت اختصاصی برای استخراج بیتکوین تولید شدهاند و برخی از این پردازندهها قادرند تا یک ترابایت هش در ثانیه را پردازش کنند، طبیعی است که هر چه قدرت سیستمی که یک استخراح کننده استفاده میکند، بیشتر باشد و بتواند تعداد هش بیشتری را در ثانیه پردازش کند، قیمت آن سیستم نیز بالاتر میرود، به طوری که تهیه یک سیستم مناسب برای یک استخراجکننده، میتواند بین 500 تا 10 هزار دلار هزینه داشته باشد.
موضوع دیگری که در هزینه استخراج بسیار مهم است، هزینه برقی است که برای راه اندازی سیستمهای کامپیوتری استفاده میشود، سیستمهای کامپیوتری پیشرفته بسیار پرمصرف هستند و برای خنک کردن آنها باید از فنهای بزرگی استفاده کرد، این سیستمها باید مدت بسیار زیادی به منظور استخراج بیتکوین روشن باشند و همین قضیه میتواند باعث مصرف انرژی بسیار بالایی شود که موجب بالا رفتن شدید هزینه برق میشود.
برای آنکه متوجه شوید که آیا استخراج بیتکوین سودآور است یا خیر، میتوانید از سایت Cryptocompare برای محاسبه هزینهی استخراج بیتکوین استفاده کنید. این سایت با استفاده از نرخ برق در منطقه شما و سرعت پردازش هش سیستم شما، میتواند اطلاعات جالبی در اختیار شما قرار دهد.
جواب منفی است. فقط یکی از استخراج کنندگان که سریعتر از دیگران این کد را تشخیص دهد، موفق به استخراج بیتکوین خواهد شد و بنابراین به سایر استخراج کنندگان که کد را دیرتر تشخیص دادهاند، پاداشی تعلق نمیگیرد. در صورتی که دو استخراجکننده به صورت همزمان به جواب برسند، پاداش بنابر قانون 51 درصد به استخراجکنندهای تعلق میگیرد که سابقه استخراج بیشتری داشته باشد. پس از این قضیه میتوان نتیجه گرفت که استخراج بیتکوین، علاوه بر آنکه به تجهیزات نیاز دارد، به شانس نیز وابسته است و ممکن است یک استخراجکننده پس از صرف مدت زیادی وقت و انرژی به هیچ چیز دست نیابد.
یک نوع استراتژی برای استخراج سریعتر است، به این صورت که تعدادی استخراجکننده با یکدیگر شبکهای تشکیل میدهند و با یکدیگر توافق میکنند بیتکوینی را که استخراج میکنند با یکدیگر قسمت کنند. تشکیل این شبکهها علاوه بر افزایش شانش استخراج، موجب افزایش سرعت استخراج نیز میشود و روش موثری برای استخراج میباشد، سایتهای زیادی وجود دارند که میتوان در آنها عضو شد و از mining poolهای موجود در آن، برای پیوستن به سایر استخراج کنندگان استفاده کرد، لیستی از این سایتها را میتوانید در اینجا ببینید.
اگر میخواهید جز استخراجکنندگان بیتکوین باشید، اما به علت به صرفه نبودن هزینهی برق و خرید سیستم قادر به انجام اینکار را نیستید، میتوانید از استخراج ابری استفاده کنید. شرکتهایی وجود دارند که به معدن بیتکوین مشهورند و در واقع ساختمانهایی عظیمی هستند که تعداد بسیار زیادی کامپیوتر در آن وجود دارد و شما میتوانید با پرداخت کارمزدی (که غالبا کم هم نیست) در این معدنها عضو شده و به وسیلهی اتصال از راه دور به کامپیوترهای این مجموعه، اقدام به استخراج بیتکوین کنید. البته استفاده از این روش همیشه به صرفه نیست.
گفته میشود که در حال حاضر بیش از 16.5 میلیون بیتکوین از 21 میلیون بیتکوین موجود در شبکه بیت کوین استخراج شده است، و تنها 4.5 میلیون بیتکوین به صورت استخراج نشده باقی مانده است، پیشبینی میشود آخرین بیتکوین در سال 2040 استخراج شود، علت به طول انجامیدن این قضیه، کم کردن پاداش بیتکوین در هر چهار سال است.
اگر تمام بیتکوینها استخراج شوند، باز هم شبکه بیتکوین و مبادلات آن پا بر جا خواهد بود و مسالهای برای آن پیش نخواهد آمد، منتها استراتژی استخراج کنندگان به سمت حل بلوک تراکنشهایی با کارمزد بالاتر خواهد رفت، به همین دلیل امکان دارد در آن زمان، نرخ کارمزد انتقال در شبکه بیتکوین افزایش یابد.
استخراجکنندهها علاوه بر آنکه موجب تولید بیتکوینهای جدید میشوند، بر تراکنشهای شبکه نیز نظارت میکنند و باعث میشوند، انتقالات بیتکوین در این شبکه به صورت امن و بدون تقلب صورت گیرد، بنابراین متوجه میشویم که استخراجکنندگان نقش کلیدی در بقای شبکهی بیتکوین دارند.