مفاهیم پایه ارز دیجیتال
/25 مهر، 1402
25 مهر، 1402
چگونه بیت کوین را به روز رسانی کنیم
از حدود سال ۲۰۱۷ یکی از داغترین بحثها در مورد بیت کوین، فعالسازی سافت فورکها در بلاکچین این رمز ارز بوده است. در طی این مدت شاهد فعالسازی متعدد به روزرسانی بیت کوین بودیم که هدف هر کدام از آنها ایمن سازی و جلوگیری از ایجاد هر گونه اختلالی در خلق ویژگیهای جدید این شبکه بوده که در ادامه منجر به تکامل شبکه این ارز دیجیتال میشود.
تا قبل از سال ۲۰۱۷، اختلاف چندانی در تغییر مکانیزمهای به روزرسانی بیت کوین وجود نداشت و شاهد یک اجماع عمومی بودیم اما در طی استقرار به روزرسانی سگویت (SegWit) این موضوع دستخوش تغییر شد که در نهایت شاهد کش و قوصهای فراوان در شبکه بلاکچین بیت کوین بودیم. در ادامه این مطلب قصد داریم تا به انواع فعالسازی بیت کوین بپردازیم، پس تا انتهای این مطلب همراه ما باشید.
چگونه بیت کوین را به روز رسانی کنیم؟
همانطور که پیشتر اشاره کردیم تا سال ۲۰۱۷ شاهد اختلافات چندانی در مورد اجماع شبکه بیت کوین نبودیم؛ اما ارتقا سگویت این مسئله را تغییر داد. این به روزرسانی منجر به ایجاد تنشهای زیادی میان کاربران این شبکه و ماینرها شد. در ادامه با استقرار ارتقای BIP9، موضوع کمی تغییر کرد. در حقیقت با ارسال سیگنال یک ماینر طی این ارتقا در جهت پیاده سازی قوانین اجرایی شبکه، بسیاری از ماینرها که قاعدتاً میبایست در جهت موافق سیگنال دهی میکردند، از این موضوع سرپیچی کرده و از دادن این سیگنالها مبنی بر فعالسازی بلاکهای خود خودداری کردند. در ادامه این موضوع، بسیاری از کاربران این شبکه از این که برخی ماینرها با نوعی باجگیری به دنبال ایجاد یک هارد فورک برای افزایش تعداد بلاکها بودند ابراز نارضایتی کردند.
در آن زمان بود که شاهد اطلاعات نادرستی در مورد ارتقای سگویت بودیم. در بسیاری از محافل اینطور تلقی میشد که ارتقا قرار است تا در برابر ایجاد قابلیتهای جدید شبکه بیت کوین مقاومت ایجاد کند. در ادامه ارتقا BIP148 و سافت فورک فعال شده توسط کاربران یا همان UASF موجب شد تا ماینرها به سمت فعالسازی سگویت بروند. با ادامه این روند یکی از بلاکهای بزرگ شبکه متوقف و در نتیجه از سایر بلاکهای موجود در شبکه به طور کامل جدا شد. همین موضوع موجب شد تا هولدرهای بیت کوین دیگر علاقه چندانی نسبت به جنجال در خصوص ارتقاهای جدید در شبکه بیت کوین نداشته باشند.
پس بد نیست در ادامه مروری به برخی از مکانیزمهای ارتقا شبکه بیت کوین داشته باشیم. این مکانیزمها قابلیت این را دارند که هم در هارد فورک و هم در سافت فورک به کار گرفته شوند؛ اما در یک هارد فورک شاهد یک شکاف زنجیرهای خواهیم بود. از سمتی دیگر امکان ایجاد یک هارد فورک در طی یک سافت فورک به شرطی که یک ارتقا به طور صحیحی اجرا نشود وجود خواهد داشت.
فعالسازی Flag Day
ساتوشی ناکامتو، خالق بیت کوین تأثیر زیادی در ایجاد تغییرات در شبکه بیت کوین داشت. او در بسیاری از نقاط اظهار نظرهایی کرد که راه گشای فعالیتهای شبکه بیت کوین بود. یکی از مسائل مهم در شبکه بیت کوین سایز بلاکها است؛ به عبارت دیگر این موضوع که چند تراکنش در یک بلاک بیت کوین قرار میگیرد مهم است و تأثیر زیادی در سرعت کارکرد این شبکه خواهد داشت.
وقتی که کاربران شبکه بیت کوین درخواست داشتند تا اندازه بلاکها افزایش یابد، ناکاموتو مخالفت کرد. او معتقد بود تا زمانی که الزامی برای انجام این عمل نباشد، نیازی به عملیاتی کردن آن وجود نخواهد داشت. از طرفی دیگر وی اشاره کرد که اگر اکثریت جامعه بیت کوین این موضوع را درخواست کنند، افزایش سایز بلاکها قابل انجام خواهد بود.
برای انجام این کار که به فعالسازی روز پرچم یا Flag Day معروف است، یک block height و یک برچسب زمانی خاص انتخاب شده و گرههای به روزرسانی شده میتوانند از آن نقطه قوانین جدید را اجرایی کنند. این موضوع نیاز به هیچگونه سیگنالینگ نداشته و هر ماینر با دانلود کلاینتهای جدید و ارتقای نودهای خود میتواند شروع به اجرای این ارتقا کند؛ به عبارت دیگر Flag Day یک سافت فورک فعال شده توسط کاربران است و در آن، گرههای شبکه شروع به فعالسازی یک خاصیت جدید و اجرای قوانین مربوط به آن فعالسازی بیت کوین خواهند کرد.
ارتقا BIP9 بر روی بروزرسانی بیت کوین
ارتقا BIP9 یکی دیگر از به روزرسانی بیت کوین بود. در این آپدیت بیت کوین بنا بود تا گرهها یا همان ماینرها سیگنالهایی را در بلاکهای استخراج شده قرار دهند تا در نهایت، از خطر شکافت زنجیرهای در زمان انجام سافت فورکها جلوگیری شود. در این حین ماینرها با استفاده از نرم افزار جدید خود وقتی فعالسازی ویژگیهای جدید را شروع میکنند که اکثریت ماینرها یعنی بیش از ۹۵ درصد آنها سیگنالهای شروع فعالسازی بیت کوین را ارسال کنند. با انجام این امر مشخص میشود که چه تعدادی از ماینرها پیش از شروع اجرای قوانین جدید این ویژگی را اجرا میکردند.
در حقیقت استقرار قفلهای زمانی CLTV (Check Lock Time Verify)، CSV (Check Sequence Verify) و پیاده سازی سگویت توسط این به روزرسانی بیت کوین در این شبکه نهادینه شدند؛ اما این به روزرسانی یک مشکل عمده داشت و این بود که تعداد کمی از ماینرها میتوانستند با عدم همکاری در این آپدیت، ایجاد ویژگیهای جدید در شبکه را متوقف کنند.
ارتقا BIP148 و UASF
BIP148 به روزرسانی بیت کوین بود که هدفی به عنوان رفع نقص به روزرسانی پیشین را دنبال میکرد. در حقیقت این به روزرسانی سعی در تصحیح فعالیت ماینرهایی داشت که در جهت توقف فعالسازی ویژگیهای شبکه فعالیت میکردند و به اجماع رسیده بودند.
هدف از طراحی این فعالسازی بیت کوین تضمین پیاده سازی دستهای از فعالسازیهای به روزرسانی BIP9 بود که قبل از سگویت ارائه شده بودند. با پایان یافتن آخرین دوره تنظیم سختی در آن بازه زمانی، کلاینتهای BIP148 با اجماع خود موجب ایجاد این الزام شدند که تمامی بلاکها در آخرین پنجره فعالسازی سگویت اقدام به انجام سیگنال دهی کنند.
ارتقای BIP91 و بروزرسانی بیت کوین
به روزرسانی بیت کوین تحت عنوان BIP91 یکی از طرحهای فعالسازی بیت کوین بود که طی سال ۲۰۱۷ و در راستای به روزرسانی سگویت به کار گرفته شد. در آن زمان ماینرهای شبکه بیت کوین تمایلی برای پذیرش BIP148 از خود نشان نمیدادند؛ اما با وجود این موضوع ماینرها نگران عواقب این آن نیز بودند که اگر ارتقا BIP148 بدون سیگنال ماینرها فعال شود باعث تقسیم شدن بلاکچین بیت کوین به دو بلاکچین موازی خواهد شد.
در نتیجه ارتقا BIP91 ایجاد شد تا با ایجاد نوعی صلح بیت ماینر، بلاکچین بیت کوین به صورت واحد باقی بماند و ماینرها در کنار هم و همگام با هم پیش روند. در ادامه این موضوع به نوعی شبیه به چیزی که در ارتقا BIP148 میدیدیم، با ایجاد یک آستانه ۸۰ درصدی، ماینرها طی یک دوره دشواری اقدام به ایجاد سیگنال در هر بلاک میکردند تا ارتقا سگویت انجام شود. در این مسیر تمامی بلاکهایی که اقدام به سیگنال دهی نمیکردند حذف میشدند.
با انجام این فعالسازی بیت کوین، تضمین میشد که این فعالسازی در راستای فعالسازی BIP148 باشد و پس از تثبیت سگویت BIP9 تمامی ماینرها در یک بلاکچین واحد به فعالیت خود ادامه دهند.
ارتقای BIP8 و بروزرسانی بیت کوین
ارتقا BIP8 یک به روزرسانی بیت کوین برای جایگزینی BIP9 بود. دلیل ارائه این آپدیت به خاطر موقعیتی بود که در خلال فعالسازی سگویت مشاهده شد. هدف از ارائه این به روزرسانی ایجاد یک مکانیزم بود که در راستای آن تمامی ماینرهایی که به حد سیگنال دهی ۹۰ درصد رسیدند، توانایی این را داشته باشند که پیشنهاد خود را در هر نقطهای از پنجره فعالسازی اجرا و فعال کنند.
البته موضوع مهمتر اینکه این فعالسازی بیت کوین به شکلی با ارائه یک تضمین، در صورت احتمال ایجاد یک فورک در بلاکچین بیت کوین، ماینرها ارسال سیگنالها را متوقف کنند؛ به عبارت دیگر در این روش با یک متغیر با نام Locking Timeout یا مهلت زمانی قفل شدن رو به رو هستیم. اگر این متغیر به طرز صحیحی تنظیم و اجرا شود، در آخرین دوره سیگنال دهی، موجب اعمال قوانین اجماع شده و در ادامه این امر، تمامی بلاکها ملزم به شرکت در سیگنال دهی خواهند شد. این موضوع دقیقاً مانند به روزرسانی BIP148 تضمین میکند که تمامی ویژگیهای جدید روی شبکه به اجرا در خواهد آمد.
بروزرسانی بیت کوین و ارتقا Speedy Trial
در ادامه توضیح پروسه به روزرسانی بیت کوین، ارتقا آزمایش فوری یا Speedy Trial به این جهت ارائه شد تا نشان دهد که چگونه به روزرسانی تپروت (Taproot) با موفقیت فعالسازی شده است. این مکانیزم از نظر عملکرد بسیار مشابه با ارتقا BIP9 است. در این بین، تفاوت اصلی مربوط به کوتاهتر بودن پنجره فعالسازی آن خواهد بود. همچنین آستانه سیگنال دهی آن نیز همانند ارتقا BIP8 برابر با ۹۰ درصد است. هرچند که این مکانیزم یکی از انتخابهای قابل بحث و تأمل برانگیز از میان دیگر مکانیزمهای ارتقا بود.
با اینکه بسیاری از کارشناسان این حوزه اعتقاد دارند که ارتقا Speedy Trial یک حرکت رو به عقب نسبت به سایر ارتقاهای شبکه بیت کوین بود، اما منطق پشت این ارتقا این بوده که اگر یک مسئله به وسیله اجماع عملیانی نشد یک BIP8 LOT یا استقرار واقعی منتشر شود.
کلام آخر
فاجعه به روزرسانی بیت کوین، SegWit در سال ۲۰۱۷ نشان داد که یک جمع کوچک از استخراجکنندگان قدرت دخالت در توافقات شبکه و اجرای ویژگیها داشتند. برای تصحیح این وضعیت، باید از طریق یک روش فعالسازی پیچیده و همزمان با چند مکانیسم فعالسازی مختلف اقدام کرد که باعث تعاملات پیچیده بین آنها شد. این موضع واقعاً یک وضعیت بسیار پرخطر بود که خوشبختانه موفقیتآمیز به پایان رسید، اما به راحتی میتوانست به طور فاجعهآمیزی پایان پیدا کند.
هدف اصلی از عبور از BIP9 عدم ایجاد توانایی تکرار چنین وضعیتی بود. برخی افراد ممکن است بر این باور باشند که Speedy Trial به دلیل مدت زمان کوتاهتری که پیش از بسته شدن پنجره فعالسازی وجود دارد، این کار را به درستی انجام میدهد. همچنان خطر این موضوع وجود دارد که فرآیند فعالسازی به دلیل عدم پاسخگویی تعداد کمی از استخراجکنندگان ناموفق باشد و مهمتر از آن، این تصور در جامعه بیت کوین ایجاد شود که جمع کوچکی از ماینرها توانایی وتو کردن تصمیمات بزرگ برای ایجاد ویژگیهای جدید در شبکه را دارا باشند که با ذات غیرمتمرکز بودن شبکه بیت کوین در تضاد کامل است.
سوالات متداول
۱. چه لزومی به ایجاد به روزرسانیهای مختلف در شبکه بیت کوین وجود دارد؟
با گذشت زمان و گسترش شبکه بیت کوین، ممکن است برخی از پارامترهای آن مانند مقیاسپذیری و امنیت دچار اختلال شوند. پس برای حل این مسائل است تا با توافق اعضای شبکه بیت کوین تغییرات لازم انجام پذیرد.
۲. ارتقا BIP9 چه مشکلاتی داشت؟
این ارتقا به واسطه امکان ایجاد مشکل با عدم ارسال سیگنالینگ از طریق طیف کوچکی از ماینرها شبکه را با مشکل رو به رو میکرد و از این نظر موجب اشکالاتی میشد که در ارتقاهای بعدی شاهد تلاش برای رفع آن بودیم.
۳. در صورت ناموفق بودن فرآیند به روزرسانی امکان بروز چه رخدادی وجود دارد؟
به روزرسانیها عمدتاً موجب ایجاد سافت فورکهایی میشوند که در جهت بهبود ویژگیهای شبکه عمل میکنند؛ اما در صورت شکست خوردن یک به روزرسانی ممکن است با هارد فورکها و تقسیم شدن بلاکچین به چند رشته موازی رو به رو شویم.
تحریریه ایکس پی
19 آبان، 1402سلام وقتتون بخیر