خانه / استخراج / روش محاسبات در استخراج بیت‌کوین

روش محاسبات در استخراج بیت‌کوین

در این مقاله کریپتولند (cryptooland) به این مطالب می‌پردازیم که محاسبات ماینینگ چگونه است؟ چرا و چگونه تعداد بیت‌کوین‌ها محدود به ۲۱ میلیون است؟ سختی شبکه چگونه محاسبه می‌شود؟ دانستن این آمارها چرا مهم است و به چه کاری می‌آیند؟

مقدار کار مورد نیاز

کمترین فاکتورهای مورد نیاز برای تأیید بلاک بیت کوین، به شکل تغییر ناپذیر در کد منبع آن نوشته شده است؛ مثلاً اینکه تعداد هش‌های مورد نیاز که برای حل کردن یک بلاک انتظار می‌رود، ۲۳۲ هش است. ریگ‌های ماینینگ فعلی در این مقیاس، عملکردی حدود ۲۴۴ −۲۴۵ هش بر ثانیه دارند؛ این در حالیست که کل شبکه معادل ۲۶۳ هش بر ثانیه قدرت دارد. آستانه‌ی تأیید تراکنش به شکل منظمی توسط شبکه بازبینی می‌شود و مثلاً به طور تقریبی ۱۰ دقیقه زمان می‌برد تا با جستجو از تمام ماینرها، یک بلاک مورد تأیید واقع شود که این همان Block Time(زمان بلاک) برای بیت‌کوین است. سختی شبکه (دیفیکالتی) فعلی برای حل کردن بلاک، به شکل فاکتوری از حداقل سختی شبکه (دیفیکالتی) غیرقابل تغییر بیان می‌شود. در واقع کار پیش‌بینی شده در یک سختی شبکه (دیفیکالتی) در سطح D برابر است با:

D * 232 h/s

دریافت سختی شبکه (دیفیکالتی) از زنجیره بلوک

کمترین سختی شبکه (دیفیکالتی) در بلاکچین در هر بلاک ثبت می‌شود؛ بنابراین بلاکچین، منبع معتبر آن است. عملیات انکودینگ(کدگذاری) آن نسبتاً خاص است و از روی کد منبع بیت‌کوین به صورت مهندسی معکوس طراحی شده است:
۷۳امین بایت از بلاک به عنوان عدد مثبت X و ۷۴-۷۵امین بایت به عنوان یک عدد بزرگ مثبت Y تفسیر می‌شود.
سختی شبکه (دیفیکالتی) کدگذاری شده به شکل زیر خواهد بود:


اصلاح سختی شبکه (دیفیکالتی)

شبکه طوری سختی استخراج را تنظیم می‌کند که انتظار می رود که مجموع ماینرها، در عرض ۱۰ دقیقه یک راه حل جدید پیدا کنند؛ این بازبینی سختی شبکه (دیفیکالتی) هر ۲۰۱۶ بلاک، یک بار انجام می‌شود که یعنی:


سرعت شبکه

زمانی که انتظار می‌رود یک ماینر در هر ۱۰ دقیقه موفق شود، سرعت محاسباتی کل شبکه(S(d بر حسب هش بر ثانیه برابر است با:

به عنوان مثال با سختی شبکه (دیفیکالتی) فعلی ۱۵۹۰۸۹۶۹۲۷۲۵۸، سرعت کل شبکه بر اساس فرمول بالا برابر است با ۱۱٫۳۸ * ۱۰۱۸ hash/s یا EH/s 11.38 (اگزاهش بر ثانیه)


سهم ماینر از کل مارکت

زمانی که یک ماینر سرعت کل شبکه را بداند، می‌تواند سهم خود را از مارکت بر اساس سرعت محاسباتی خود(S) و سختی شبکه (دیفیکالتی) (d) محاسبه کند:


پاداش ماینینگ

با هر بلاک تولید شده و تأیید شده توسط شبکه، به یک ماینر مقداری بیت‌کوین تعلق می‌گیرد؛ البته میزان پاداش بلاک که بین ماینرها تقسیم می‌شود، هر ۲۱۰۰۰۰ بلاک که معادل ۴ [= ۱۰min * 210000] سال است، نصف می‌شود که با ۵۰ BTC شروع شده است. نرم‌افزار بیت‌کوین تنها از مقادیر محاسباتی صحیح استفاده می‌کند و یک بیت‌کوین را معادل ۱۰۸ ساتوشی می‌داند. سهم ماینرها از بیت‌کوین‌های جدید(N)، بر اساس طول بلاک داده شده(h) به شرح زیر است:

به دلیل رند کردن به پایین اجباری در عملیات‌های اعداد صحیح در زبان ++C، تابع (N(h برای h >= 34 * 210000 به صفر می‌رسد؛ پس از آنجا که شبکه برای تولید یک بلاک در ۱۰ دقیقه تنظیم شده است، انتظار می‌رود دیگر بیتکوین جدیدی بعد از حدود (۶*۲۴*۳۶۵)/۳۴*۲۱۰۰۰۰ ≈ ۱۳۶ سال از شروع به کار شبکه‌ی بیت کوین در سال ۲۰۰۹ تولید نشود. از آنجا که این تنها منبع تولید بیت‌کوین‌های جدید است، با محاسبه‌ی حد مجموع بیت‌کوین‌های تولیدی در می‌یابیم که تعداد کل بیت‌کوین‌های قابل گردش در شبکه‌ی این رمزارز هیچوقت از عدد ۲۰۹۹۹۹۴۹٫۹۷۶۹ ≈ ۲۱ میلیون بیشتر نخواهد شد. در زمان نگارش این مقاله، تعداد کل بیت‌کوین‌های تولید شده تا به این لحظه در حدود ۱۷٫۵ میلیون بیت‌کوین است. ماینرها علاوه بر پاداش بلاک، فی تأیید تراکنش‌ها که در بلاک است را نیز دریافت می‌کنند. در حدود ۱۵% از کارمزد ماینرها از محل تأیید تراکنش‌هاست که انتظار می‌رود در آینده افزایش یابد؛ چرا که پاداش بلاک و صرفه‌ی کار برای ماینرها در حال کاهش است.


تولید بیت‌کوین مورد انتظار

ماینری با سرعت پردازش‌هش‌ یا هشریت(S) که زیرمجموعه‌ای از کل شبکه است، زمانی به تناسب بیشتر از کل شبکه برای حل‌کردن یک بلاک مصرف می‌کند؛ در نتیجه سهمی که از کل پاداش روزانه‌ی شبکه می‌برد، به تناسب اینگونه خواهد بود:

به عنوان مثال، یک ماینر با قدرت (۱۰TH/S (۱۰۱۳ hash/s در طول بلاک ۵۷۵۹۵ (۱۲٫۵=(۵۷۵۹۵)H) و سختی شبکه (دیفیکالتی) فعلی ۱۵۹۰۸۹۶۹۲۷۲۵۸، انتظار تولید ۰٫۰۰۱۵۸۰۶ بیت‌کوین در روز را دارد.


زمان پیداکردن یک بلاک

مهم نیست که چقدر محاسبات از قبل انجام شده است؛ احتمال اینکه هش بعدی پیروز و درست باشد، برابر است با: ۱-(d*232)

بنابراین «تایم بلاک» بعدی برای هشریت (S)، یک توزیع نمایی با تابع چگالی تجمعی زیر است:

احتمال اینکه یک استخر ماینینگ با ۲٫۱۶۲ اگزاهش بر ثانیه در سختی شبکه (دیفیکالتی) ۱۵۹۰۸۹۶۹۲۷۲۵۸، بتواند یک بلاک پیدا کند بر حسب ثانیه

میزان تولید استخر ماینینگ

رویدادهای یافتن یک بلاک، مستقل از تایم آخرین بلاک و مستقل از زمان اتفاق می‌افتند؛ در نتیجه تابع توزیع پوآسون را می‌توان برای شماره‌ی رویدادهای یافتن بلاک در بازه‌ی زمانی خاصی به کار برد. ما می‌توانیم از تابع چگالی احتمال تجمعی در توزیع پوآسون استفاده کنیم تا احتمال یافتن بیش از (K) بلاک در یک روز را محاسبه کنیم:

احتمال برای یک استخر با قدرت ۲٫۱۶۲ اگزاهش بر ثانیه با سختی شبکه (دیفیکالتی) فعلی ۱۵۹۰۸۹۶۹۲۷۲۵۸، برای یافتن بیش از شماره‌ی داده شده از بلاک‌ها در یک روز. (محور X)

مدلسازی سختی شبکه (دیفیکالتی)

به نظر می‌آید که پاداش ماینینگ یک بازخورد و نتیجه‌گیری برای بیشتر اتفاقات تاریخ شبکه‌ی بیت کوین و شتابدهی به ظرفیت محاسباتی شبکه به وجود آورده است.

سختی شبکه (دیفیکالتی) (آبی) و قیمت بیت‌کوین برحسب دلار (صرافی Bitstamp) در نمایش لگاریتمی
درصد تغییرات ماهانه سختی شبکه (دیفیکالتی) در مقیاس لگاریتمی

بهترین مدلسازی تاریخی برای تغییرات سختی شبکه (دیفیکالتی) ماهانه، یک فرآیند تخمینی خودکار به شکل زیر است:

مدلسازی سرعت شبکه بر اساس اگزاهش بر ثانیه برای ۱۲ ماه آینده با استفاده از فرآیند بالا

دیدگاه‌های بالا به ما اجازه می‌دهد که فرض کنیم تغییر سختی شبکه (دیفیکالتی) بر اساس شاخص‌های ماه‌های قبل ادامه می‌یابد. یک مدل ساده با بهره‌گیری از سختی شبکه (دیفیکالتی) ثابت که ضریب افزایش روزانه در آن (r) باشد، می‌تواند برای مقاصد کاربردی در بازه‌های زمانی کوچک کافی باشد. ما برای (t) روز آینده، سختی شبکه (دیفیکالتی) را اینگونه مدلسازی کرده‌ایم:

مدلسازی قبلی نرخ پیش‌بینی r=0.75% را به ما می‌دهد که مطابق است با افزایش سختی شبکه (دیفیکالتی) سالانه %۱۴۲۹.


ورودی بیت‌کوین مورد انتظار

مقدار مورد انتظار بیت‌کوینی که یک ماشین ماینینگ می‌تواند در (t) روز تولید کند، با پاداش بلاک فعلی و افزایش نرخ سختی شبکه (دیفیکالتی) اندازه‌گیری می‌شود. اگر فرض کنیم نصف شدن پاداش بلاک در بازه‌ی زمانی تمام طول عمر دستگاه وجود نداشته باشد، آنگاه N(h)=N است و مقدار بیت کوین تولیدی مورد انتظار برابر است با:

تولید ۱ ساله‌ی یک ماینر بیت‌کوین ۱ تراهشی با فرض افزایش نرخ سختی شبکه (دیفیکالتی)
در مطلب فوق از داده‌های آماری و احتمالات بسیار نزدیک به واقعیت برای انتقال مفهوم استفاده است. لذا در نظر داشته باشید که برخی از داده‌های آماری که در ابتدا و اواسط مطلب آمده است قدیمی بوده و ممکن است سندیت نداشته باشد.

درباره‌ی CryptoAdmin

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *