استخراج کنندگان بیت کوین چگونه کار می کنند؟ در درس قبلی، شما آموختید که یک استخراج کننده بیت کوین چیست، چگونه تراکنش های جدید را در استخر حافظه خود ذخیره می کند و سپس با ایجاد یک بلوک کاندید، فرآیند “استخراج” را آغاز می کند.
اگر آنچه نوشتم برای شما مانند یک زبان خارجی به نظر می رسد، اکیداً توصیه می کنم با درس اول راهنمای مبتدیان برای استخراج بیت کوین شروع کنید. اگر هنوز با من هستید، بیایید نگاه دقیق تری به بلوک کاندید بیندازیم… درست مانند شما که با سر و بدن به دو قسمت اصلی تقسیم می شوید، یک بلوک کاندید را می توان به دو قسمت تقسیم کرد: هدر بلوک (ناحیه زرد) بدنه بلوک (ناحیه خاکستری) اگر به یک بلوک کاندید نگاه دقیق تری بیندازیم، در واقع فقط حاوی تراکنش نیست.
هنگامی که یک استخراج کننده بیت کوین یک بلوک کاندید ایجاد می کند، یک “هدر بلوک” (ناحیه زرد) را در آن قرار می دهد. “بدنه” بلوک (ناحیه خاکستری) تراکنش ها را نگه می دارد.
علاوه بر اینکه یک بلوک کاندید حاوی تراکنش است، همچنین حاوی برخی از متادیتاهایی است که خلاصه ای از بلوک را ارائه می دهد. متادیتا فقط داده هایی هستند که اطلاعات مربوط به داده های دیگر را ارائه می دهند. در این مورد، متادیتا اطلاعاتی در مورد خود بلوک ارائه می دهد. این اطلاعات به عنوان “هدر بلوک” شناخته می شود. در داخل هدر بلوک، چندین قطعه داده وجود دارد. به منظور این درس، قصد دارم آنچه را که داخل هدر بلوک است ساده کنم. تمبرها اولین قطعه داده داخل هدر بلوک «تمهور زمان» است. تمهور زمان نشان می دهد که بلوک چه زمانی ایجاد شده است.
هش بلوک قبلی داده بعدی “بلوک قبلی” یا به طور خاص “هش بلوک قبلی” نامیده می شود. هش بلوک قبلی، هش بلوک بلوک قبلی در بلاکچین است. برای اینکه بفهمیم این به چه معناست، باید نگاهی به فایل بیندازیم. حالا که داخل فایل نگاه می کنیم، می بینیم که داده ها به روش خاصی ساختار یافته اند. بیایید این را به عنوان بلاکچین تصور کنیم. بلوک کاندیدی که استخراج کننده ایجاد کرده است باید روی آخرین بلوک اضافه شود. بگوییم بلوک اخیر به رنگ آبی است.
از آنجایی که هش بلوک بلوک رنگی در آبی، آخرین بلوک موجود در فایل (بلاکچین) است، پس آن بلوکی است که استخراج کننده می خواهد روی آن بنا کند. هش بلوک را مانند یک شناسه تولید شده سفارشی برای یک بلوک در نظر بگیرید. بنابراین کاری که استخراج کننده انجام می دهد این است که آن را به عنوان “هش بلوک قبلی” در هدر بلوک بلوک کاندید خودش اضافه کند.
“خلاصه تراکنش” هش داده بعدی چیزی است که من آن را “خلاصه تراکنش” هش نامگذاری می کنم. همانطور که از نامش پیداست، خلاصه ای از تمام تراکنش های موجود در بلوک را به صورت رشته ای از کاراکترها ارائه می دهد. بدون اینکه وارد جزئیات شویم، اتفاقی که می افتد این است که تمام تراکنش های موجود در بلوک (با رنگ قرمز برجسته می شوند) در یک تابع هش قرار می گیرند و به ترتیب خاصی هش می شوند و در نهایت یک هش واحد به دست می آورید.
این هش همان چیزی است که به عنوان “خلاصه تراکنش” هش استفاده می شود. آنچه این هش ارائه می دهد یک ” اثر انگشت ” منحصر به فرد است که بر اساس تمام تراکنش های موجود در یک بلوک است. این به اطمینان از دستکاری نشدن تراکنش ها کمک می کند. این “خلاصه تراکنش” هش در واقع به عنوان “مرکل روت” شناخته می شود.
به یاد داشته باشید، یک تغییر کوچک در داده ها به طور کلی هش را به طور کامل تغییر می دهد. این بدان معناست که اگر کسی در آینده سعی کند هر تراکنشی را در بلوک تغییر دهد، باعث می شود “خلاصه تراکنش” هش تغییر کند و کاملاً با مقدار اصلی موجود در هدر بلوک متفاوت باشد.
وظیفه:
همانطور که در درس قبلی آموختیم، وظیفه اصلی یک استخراج کننده، تأیید و اضافه کردن تراکنشهای جدید به زنجیره بلوکی بیت کوین است. این کار با استفاده از فرآیندی به نام “اثبات کار” (PoW) انجام میشود. در PoW، استخراج کنندگان از قدرت محاسباتی کامپیوترهای خود برای حل معادلات ریاضی پیچیده استفاده میکنند. اولین استخراج کنندهای که معادله را حل کند، “حق” اضافه کردن بلوک بعدی به زنجیره را به دست میآورد. به عنوان پاداش، آن ها مقداری بیت کوین جدید و همچنین کارمزد تراکنشهای موجود در آن بلوک را دریافت میکنند.
خلاصه:
در اینجا خلاصهای از مراحلی که یک استخراج کننده برای تأیید و اضافه کردن یک بلوک جدید به زنجیره بلوکی بیت کوین انجام میدهد، آورده شده است:
- تراکنشهای جدید را جمع آوری کنید: یک استخراج کننده تراکنشهای جدید را از شبکه بیت کوین جمع آوری میکند.
- یک بلوک کاندید ایجاد کنید: استخراج کننده یک بلوک کاندید ایجاد میکند که شامل تراکنشهای جمع آوری شده، هدر بلوک و سایر متادیتاها است.
- به هدر بلوک هش اضافه کنید: استخراج کننده یک هش از هدر بلوک ایجاد میکند. این هش مانند یک اثر انگشت منحصر به فرد برای بلوک است.
- معادله اثبات کار را حل کنید: استخراج کننده از قدرت محاسباتی کامپیوتر خود برای حل یک معادله ریاضی پیچیده استفاده میکند. اولین استخراج کنندهای که معادله را حل کند، “حق” اضافه کردن بلوک خود به زنجیره را به دست میآورد.
- بلوک را به زنجیره اضافه کنید: پس از حل معادله، بلوک کاندید به زنجیره بلوکی بیت کوین اضافه میشود.
نقش هدر بلوک:
همانطور که قبلاً ذکر شد، هدر بلوک بخش مهمی از یک بلوک کاندید است. این شامل متادیتاهایی است که اطلاعاتی در مورد خود بلوک ارائه میدهد، از جمله:
- تمهور زمان: این نشان میدهد که بلوک چه زمانی ایجاد شده است.
- هش بلوک قبلی: این هش بلوک قبلی در زنجیره بلوکی است.
- خلاصه تراکنش: این یک هش از تمام تراکنشهای موجود در بلوک است.
- وظیفه: این یک عدد تصادفی است که برای حل معادله اثبات کار استفاده میشود.
- نسخه: این نسخه نرمافزاری بیت کوین است که برای ایجاد بلوک استفاده شده است.
هدر بلوک نقش مهمی در حفظ امنیت و یکپارچگی زنجیره بلوکی بیت کوین ایفا میکند. هش بلوک قبلی به اتصال بلوکها به یکدیگر و ایجاد یک زنجیره زمانی کمک میکند. خلاصه تراکنش تضمین میکند که تراکنشها دستکاری نشدهاند. و وظیفه برای حل معادله اثبات کار استفاده میشود، که به جلوگیری از اضافه شدن بلوکهای نامعتبر به زنجیره کمک میکند. استخراج کنندگان بیت کوین نقش مهمی در عملکرد شبکه بیت کوین ایفا میکنند. آنها با تأیید و اضافه کردن تراکنشهای جدید به زنجیره بلوکی، به ایمن و کارآمد نگه داشتن شبکه کمک میکنند. درک نحوه عملکرد استخراج کنندگان و نقش هدر بلوک برای درک کامل نحوه عملکرد بیت کوین ضروری است.
- استخراج بیت کوین میتواند یک فرآیند پیچیده و رقابتی باشد.
- برای استخراج بیت کوین به تجهیزات محاسباتی قدرتمندی نیاز است.
- استخراج بیت کوین میتواند پرمصرف برق باشد.
- پاداش برای استخراج بیت کوین با گذشت زمان کاهش مییابد.