در این بخش، نگاهی دقیقتر خواهیم انداخت به دو بخش (و شرکتکننده) بسیار مهم از شبکه بیتکوین که اولین بار در ماژول ۵ معرفی شدند:
نودهای بیتکوین: نگهبانان اعتبارسنجی که وظیفه اصلیشان نگهداری یک نسخه از دفتر کل بیتکوین و اطمینان از معتبر بودن همه تراکنشها و رعایت قوانین یکسان توسط همه است. با توزیع این وظیفه میان افراد زیادی در سراسر جهان، بیتکوین در برابر تقلب احتمالی مقاوم میماند بدون اینکه به یک مرجع متمرکز وابسته باشد. نودها به قابل اعتماد ماندن سیستم و پایبندی به ماهیت غیرمتمرکز آن کمک میکنند، جایی که هیچ فرد یا گروهی قدرت بیش از حد بر دیگران ندارد.
ماینرهای بیتکوین: معماران امنیت که با استفاده از کامپیوترهای قدرتمند و برق، معماهای رمزنگاری را حل میکنند. آنها تراکنشها را بررسی و تأیید میکنند تا همه چیز امن باشد. کار محاسباتی آنها باعث میشود دفتر کل (یا بلاکچین) در برابر خرابکاری مقاوم باشد، چرا که تغییر دادن بلاکچین از نظر مصرف انرژی بسیار پرهزینه است.
نودها و ماینرهای بیتکوین با هم به عنوان یک تیم کار میکنند تا سیستمی غیرمتمرکز، امن و قدرتمند را حفظ کنند — یک نظام پولی کاملاً نوآورانه که مردم سراسر جهان میتوانند به آن اعتماد کنند. بیایید این نقشها را با جزئیات بیشتری بررسی کنیم تا بفهمیم چگونه به پروتکل بیتکوین کمک میکنند.
9.1 نودها و ماینرهای بیتکوین
نودهای بیتکوین ممکن است فنی به نظر برسند، اما در واقع فقط نرمافزاری هستند که یک نسخه از بلاکچین بیتکوین را روی یک کامپیوتر نگه میدارند. بلاکچین یک سابقه مشترک از تمام تراکنشهای بیتکوین است.
وقتی نود خودتان را اجرا میکنید، تراکنشهای بیتکوین را خودتان تأیید میکنید و به جای اعتماد به دیگران، مستقل عمل میکنید. این کار به شما استقلال بیشتری میدهد و به غیرمتمرکز ماندن شبکه بیتکوین کمک میکند.
میتوانید یک نود بیتکوین را مانند یک افسر راهنمایی دیجیتال تصور کنید که چند وظیفه مهم دارد.
یک نسخه از بلاکچین را نگه میدارد که همان تاریخچه تمام تراکنشهای بیتکوین است.
نودها با دیگر نودها در سراسر جهان ارتباط برقرار میکنند و اطلاعات را به اشتراک میگذارند. یکی از این اطلاعات، فهرست تراکنشهای جدیدی است که منتظر تأیید هستند و به آن ممپول گفته میشود.
نودها بررسی میکنند که هر تراکنش مطابق با قوانین بیتکوین باشد. اگر تراکنشی نامعتبر باشد، نود آن را رد میکند.
نودها همچنین به نودهای جدید برای پیوستن به شبکه کمک میکنند و بلاکچین را با آنها به اشتراک میگذارند. با این حال، هر نود جدید همچنان همه قوانین را به طور مستقل بررسی میکند.
هر کسی میتواند با نصب نرمافزاری مانند Bitcoin Core و دانلود بلاکچین، یک نود راهاندازی کند. پس از راهاندازی، نود هر حدود ۱۰ دقیقه بلاکهای جدید را دریافت میکند و قبل از افزودن آنها به نسخه خود از بلاکچین، آنها را تأیید میکند.
اجرای یک نود به امنتر و غیرمتمرکزتر شدن شبکه بیتکوین کمک میکند، زیرا افراد بیشتری به طور مستقل سیستم را بررسی میکنند.
نود بیتکوین چیست؟
هدف استخراج، ایجاد بیتکوین جدید نیست؛ این فقط سیستم انگیزشی است. استخراج مکانیزمی است که امنیت بیتکوین را غیرمتمرکز میکند. آندریاس ام. آنتونوپولوس
ماینرها تراکنشهای تأییدنشده را جمعآوری میکنند، یک بلاک تشکیل میدهند و با مصرف انرژی، کلیدی را پیدا میکنند که بلاک را اضافه و ایمن میکند.
ماینرها برای افزودن بلاک بعدی تراکنشها به بلاکچین با هم رقابت میکنند. برای این کار باید عدد خاصی را پیدا کنند که هش معتبر بلاک را ایجاد کند. میتوانید آن را مانند جستجوی کلید درست در میان میلیاردها احتمال تصور کنید. اولین ماینری که هش صحیح را پیدا کند، برنده مسابقه است و حق افزودن بلاک خود به بلاکچین را به دست میآورد.
وقتی یک ماینر هش معتبر را پیدا میکند، بلاک خود را با شبکه به اشتراک میگذارد. سایر ماینرها به سرعت بررسی میکنند که راهحل درست باشد. اگر درست باشد، بلاک به بلاکچین اضافه میشود و به ایمن ماندن دفتر کل عمومی بیتکوین کمک میکند.
ماینرها به دو روش بیتکوین دریافت میکنند:
پاداش بلاک: بیتکوینهای جدید ایجاد میشوند و به ماینری داده میشوند که با موفقیت یک بلاک را به بلاکچین اضافه کند.
کارمزد تراکنش: وقتی افراد بیتکوین ارسال میکنند، مبلغ کمی به عنوان کارمزد اضافه میکنند. ماینری که بلاک را اضافه میکند، کارمزد تراکنشهای موجود در آن بلاک را دریافت میکند.
هاوینگهای بیتکوین
۲۰۰۹
۲۰۱۲
۲۰۱۶
۲۰۲۰
۲۰۲۴
۵۰ BTC
۲۵ BTC
۱۲.۵ BTC
۶.۲۵ BTC
۳.۱۲۵ BTC
پاداش ماینرها برای تکمیل هر بلاک، هر ۲۱۰٬۰۰۰ بلاک (تقریباً هر چهار سال) نصف میشود.
بیتکوین حداکثر عرضه ثابتی برابر با ۲۱٬۰۰۰٬۰۰۰ بیتکوین دارد، اما همه آنها هنگام شروع بیتکوین ایجاد نشدند. در عوض، بیتکوینهای جدید به تدریج از طریق استخراج وارد گردش میشوند.
وقتی ماینرها با موفقیت یک بلاک جدید از تراکنشها را به شبکه بیتکوین اضافه میکنند، یک پاداش بلاک به صورت بیتکوین دریافت میکنند. در روزهای ابتدایی بیتکوین، این پاداش ۵۰ بیتکوین برای هر بلاک بود. این پاداش افراد را تشویق میکرد تا با استفاده از قدرت محاسباتی و برق به ایمنسازی شبکه کمک کنند.
تقریباً هر ۲۱۰٬۰۰۰ بلاک (حدوداً هر ۴ سال)، پاداش بلاک نصف میشود. این رویداد به نام هاوینگ شناخته میشود. هاوینگ سرعت ایجاد بیتکوینهای جدید را کاهش میدهد و کمک میکند تا عرضه کل هرگز از ۲۱ میلیون فراتر نرود. با گذشت زمان، این موضوع باعث کمیابتر شدن بیتکوین میشود.
عرضه در گردش به مجموع مقدار موجود یک ارز گفته میشود. در بیتکوین، عرضه در گردش تعداد سکههایی است که استخراج شدهاند و در هر لحظه در گردش هستند.
برنامه زمانبندی عرضه بیتکوین برنامه از پیش تعیینشده و عمومی برای انتشار بیتکوینهای جدید در گردش است که با هدف حفظ کمیابی بیتکوین در طول زمان طراحی شده است.
پس از هر رویداد هاوینگ، پاداش بیتکوینی که ماینرها برای افزودن یک بلاک دریافت میکنند نصف میشود. این کار سرعت ایجاد بیتکوینهای جدید را کاهش میدهد.
ماینرها همچنان کارمزد تراکنشهایی را که در بلاک استخراجشدهشان وجود دارد، دریافت میکنند. با گذشت زمان انتظار میرود این کارمزدها بخش بزرگتری از درآمد ماینرها را تشکیل دهند.
هاوینگها در پروتکل بیتکوین تعبیه شدهاند و به طور خودکار تقریباً هر چهار سال یکبار اتفاق میافتند. به همین دلیل، برنامه عرضه بیتکوین قابل پیشبینی و شفاف است.
جدول زیر هاوینگهای آینده را نشان میدهد، از جمله تاریخ تقریبی، شماره بلاک هنگام وقوع، پاداش جدید بلاک و درصد کل عرضه بیتکوین که تا آن زمان استخراج شده است.
رویداد
تاریخ
بلاک
پاداش
استخراج شده
پنجمین هاوینگ
۲۰۲۸
۱٬۰۵۰٬۰۰۰
۱٫۵۶۲۵ BTC
۹۸٫۴۴٪
ششمین هاوینگ
۲۰۳۲
۱٬۲۶۰٬۰۰۰
۰٫۷۸۱۲۵ BTC
۹۹٫۲۲٪
هفتمین هاوینگ
۲۰۳۶
۱٬۴۷۰٬۰۰۰
۰٫۳۹۰۶۲۵ BTC
۹۹٫۶۱٪
با استخراج بیتکوینهای بیشتر، عرضه در گردش همچنان افزایش مییابد تا زمانی که حداکثر عرضه ۲۱٬۰۰۰٬۰۰۰ بیتکوین برسد که انتظار میرود حدود سال ۲۱۴۰ اتفاق بیفتد. چون با گذشت زمان بیتکوینهای جدید کمتری ایجاد میشود، اگر تقاضا افزایش یابد، قیمت بیتکوین میتواند بالا برود. این موضوع همچنین ماینرها را تشویق میکند تا با اختصاص قدرت محاسباتی خود، امنیت شبکه را حفظ کنند.
هش معتبر بلاک در بیتکوین چیست؟
در بیتکوین، ماینرها برای پیدا کردن یک کد ویژه به نام هش بلاک با هم رقابت میکنند. این کد یک بلاک از تراکنشها را شناسایی میکند و اجازه میدهد به بلاکچین اضافه شود.
هر بلاک شامل اطلاعاتی درباره تراکنشهای اخیر است و همچنین هش بلاک قبلی را در خود دارد. این موضوع باعث میشود همه بلاکها به هم متصل شوند و زنجیرهای از اولین بلاک (بلاک پیدایش) تا جدیدترین بلاک تشکیل دهند.
یک هش مانند اثر انگشت دیجیتال برای دادههای داخل بلاک عمل میکند. اگر هر اطلاعاتی در بلاک تغییر کند، اثر انگشت هم تغییر خواهد کرد. این موضوع باعث میشود هر کسی بتواند به راحتی مطمئن شود که تاریخچه تراکنشهای بلاکچین تغییر نکرده و به امنیت شبکه کمک میکند.
ساتوشی ناکاموتو، خالق بیتکوین، بلاک پیدایش را استخراج کرد که مجموعاً ۵۰ بیتکوین آزاد کرد.
مسابقه برای استخراج یک بلاک
ماینرها برای پیدا کردن یک هش معتبر بلاک با هم رقابت میکنند. اولین ماینری که موفق شود، میتواند بلاک جدید را به بلاکچین اضافه کند و پاداش بیتکوین دریافت کند.
برای معتبر بودن، هش بلاک باید کمتر از عددی باشد که توسط شبکه تعیین شده و به آن هدف سختی گفته میشود. چون هشها تصادفی هستند، ماینرها باید ورودیهای مختلفی را امتحان کنند تا یکی را پیدا کنند که جواب بدهد.
اگر تعداد زیادی ماینر رقابت کنند، بلاکها خیلی سریع پیدا میشوند. اگر تعداد کمی ماینر شرکت کنند، پیدا کردن بلاکها خیلی طول میکشد. برای اینکه سیستم به طور روان کار کند، بیتکوین به طور خودکار هر ۲۰۱۶ بلاک (تقریباً هر دو هفته) سختی را تنظیم میکند.
این تنظیم باعث میشود که به طور میانگین، هر ۱۰ دقیقه یک بلاک جدید به بلاکچین اضافه شود.
سطح سختی در استخراج بیتکوین نشان میدهد که پیدا کردن یک هش معتبر بلاک چقدر دشوار است. شبکه این سختی را هر ۲۰۱۶ بلاک (تقریباً هر دو هفته) تنظیم میکند تا بلاکهای جدید تقریباً هر ۱۰ دقیقه به بلاکچین اضافه شوند. هرچه سختی بالاتر باشد، پیدا کردن هش معتبر برای ماینرها سختتر است.
با پیدا کردن یک هش معتبر بلاک، ماینر ثابت میکند که کار لازم برای اضافه کردن بلاک جدید به بلاکچین را انجام داده است. این فرآیند به نام اثبات کار (PoW) شناخته میشود. این مکانیزم امنیتی است که به بیتکوین اجازه میدهد تراکنشها را تأیید کند و بلاکهای جدید به بلاکچین اضافه کند. ماینری که اولین بار هش معتبر را پیدا کند، پاداشی به صورت بیتکوین دریافت میکند که شامل پاداش بلاک و کارمزد تراکنشهای داخل آن بلاک است.
اثبات کار (PoW) به حفظ امنیت بیتکوین کمک میکند، زیرا تلاش برای تقلب یا کنترل شبکه را بسیار پرهزینه میکند. در عوض، پیروی از قوانین بسیار سودآورتر است.
ماینرها چهار نقش اصلی دارند:
جمعآوری تراکنشها: ماینرها تراکنشهایی را که به شبکه ارسال شدهاند انتخاب میکنند و آنها را در یک بلاک پیشنهادی قرار میدهند.
انجام اثبات کار: ماینرها برای حل یک معمای ریاضی دشوار با پیدا کردن یک هش معتبر بلاک با هم رقابت میکنند.
بلوک را پخش کنید: اولین ماینری که راهحل معتبر را پیدا میکند، بلوک جدید را با شبکه به اشتراک میگذارد.
دریافت پاداش: اگر بلوک معتبر باشد، به زنجیره بلوکی اضافه میشود و ماینر بیتکوینهای تازه ایجاد شده به همراه کارمزد تراکنشها را دریافت میکند.
ماینرهای زیادی در سراسر جهان همزمان تلاش میکنند تا بلوک بعدی را ایجاد کنند. وقتی یک ماینر راهحل معتبر را پیدا کند، شبکه بلوک را بررسی میکند. اگر همه چیز درست باشد، بلوک به زنجیره بلوکی اضافه میشود. سایر بلوکهای رقیب کنار گذاشته میشوند. این فرایند باعث میشود شبکه به توافق برسد و از دوبار خرج کردن جلوگیری شود.
ماینرها کامپیوترهایی هستند که به نگهداری و بهروزرسانی دفتر کل بیتکوین کمک میکنند.
آنها تراکنشها را جمعآوری کرده و در یک بلوک گروهبندی میکنند. سپس دادههای بلوک را از طریق یک الگوریتم هش عبور میدهند تا یک کد منحصر به فرد به نام هش ایجاد کنند.
ماینرها این فرایند را بارها تکرار میکنند و به دنبال هشی میگردند که با قوانین بیتکوین مطابقت داشته باشد. اولین ماینری که هش معتبر را پیدا کند، بیتکوینهای تازه ایجاد شده را به عنوان پاداش دریافت میکند و بلوک او به زنجیره بلوکی اضافه میشود.
هش هر بلوک همچنین آن را به بلوک قبلی متصل میکند. اگر کسی بخواهد یک تراکنش گذشته را تغییر دهد، هشها دیگر مطابقت نخواهند داشت و شبکه زنجیره تغییر یافته را رد میکند. این همان چیزی است که دفتر کل بیتکوین را ایمن نگه میدارد.
9.2 ممپول چیست؟
ممپول، که مخفف «حافظه موقت» است، مانند یک اتاق انتظار برای تراکنشهای بیتکوین عمل میکند. وقتی بیتکوین ارسال میکنید، تراکنش شما ابتدا به شبکه پخش میشود و در ممپول قرار میگیرد.
میتوانید آن را مانند صف انتظار در یک رستوران تصور کنید. نام شما در لیست قرار میگیرد و منتظر میمانید تا میزی خالی شود. به همین شکل، تراکنش شما در ممپول منتظر میماند تا یک ماینر آن را در یک بلاک قرار دهد.
نودهای بیتکوین هر تراکنش جدید را بررسی میکنند تا مطمئن شوند معتبر است و بیتکوینی که خرج میشود قبلاً استفاده نشده است. اگر تراکنش معتبر باشد، در ممپول باقی میماند تا زمانی که تأیید شود.
ماینرها تراکنشها را از ممپول انتخاب میکنند و آنها را در بلاکهای جدید قرار میدهند. معمولاً تراکنشهایی که کارمزد بالاتری دارند، زودتر انتخاب میشوند.
وقتی یک تراکنش در یک بلاک قرار میگیرد، تأیید میشود و به طور دائمی در بلاکچین بیتکوین ثبت میگردد.
فعالیت: کاوش ممپول
این فعالیت دانشآموزان را با یک ابزار رایگان و متنباز آشنا میکند که استفاده از آن نیاز به مهارت فنی ندارد. این ابزار برای بیتکوینرها در همه سطوح، از مبتدی تا حرفهای، مفید است.
نکات کلیدی
ممپول به لیست تراکنشهای تأییدنشدهای اشاره دارد که توسط هر نود بیتکوین نگهداری میشود، نه یک سرویس یا پلتفرم خاص.
هیچ ممپول واحد و جهانی وجود ندارد. Mempool.space یکی از بسیاری از آنهاست.
Mempool.space یک ابزار متنباز است و به خاطر رابط کاربری ساده و تصویری خود برای مشاهده بلاکها شناخته شده است. این ابزار دادههای لحظهای درباره تراکنشهای تأییدنشده، نرخ کارمزدها و سایر فعالیتهای شبکه ارائه میدهد.
نکته برای دانشآموزان
Mempool.space فقط برای نمایش بلاکها نیست. بخشهای دیگر اکوسیستم بیتکوین را نیز بررسی کنید: مانند لایتنینگ، استخراج، نرخ هش، استخرها و «عینکهای» فضای بلاک.
9.3 نحوه کار تراکنشها
حالا که کلیدهای عمومی و خصوصی و همچنین نقش نودها و ماینرها را فهمیدید، اینجا نحوه انجام یک تراکنش بیتکوین از ابتدا تا انتها را توضیح میدهیم.
آرش میخواهد بیتکوین برای علی بفرستد. او یک تراکنش با آدرس علی، مقدار مورد نظر برای ارسال و کارمزد ایجاد میکند.
آرش تراکنش را با کلید خصوصی خود امضا میکند تا مالکیت را اثبات کند.
او تراکنش را به شبکه بیتکوین ارسال میکند.
نودها آن را دریافت کرده و بررسی میکنند که مطابق قوانین باشد، از جمله صحت امضا و اینکه آرش به اندازه کافی بیتکوین داشته باشد.
اگر معتبر باشد، تراکنش در سراسر شبکه به اشتراک گذاشته شده و به ممپول اضافه میشود، جایی که تراکنشهای در انتظار قرار میگیرند.
ماینرها تراکنشها را از ممپول انتخاب کرده و آنها را در بلاکی که قصد استخراج آن را دارند قرار میدهند.
وقتی یک ماینر با موفقیت یک بلاک را استخراج میکند، آن را با شبکه به اشتراک میگذارد و سایر نودها آن را بررسی میکنند.
اگر معتبر باشد، بلاک به بلاکچین اضافه میشود. علی بیتکوین را دریافت میکند.
با اضافه شدن بلاکهای بیشتر، تراکنش تأییدیههای بیشتری میگیرد و امنیت آن افزایش مییابد.
وقتی تراکنش در یک بلاک قرار گرفت، تأیید میشود. آرش دیگر نمیتواند آن بیتکوین را دوباره خرج کند و علی میتواند بیتکوینی که دریافت کرده را در یک تراکنش جدید خرج کند.
تراکنش و کارمزد انتخاب میشود → توسط کیف پول امضا و ارسال میشود → توسط نودها توزیع میشود → ماینر تراکنش را به قالب بلاک اضافه میکند → ماینر مسابقه اثبات کار را میبرد → بلاک جدید اعتبارسنجی میشود → بلاک جدید توسط نودها توزیع میشود