11 اردیبهشت 1404

7 دقیقه

متوسط

تعاریف و توضیحات کامل هارد فورک و سافت فورک

وقتی از شما خواسته می‌شود اپلیکیشن بانکی خود را روی گوشی هوشمند به‌روزرسانی کنید، احتمالاً بدون فکر کردن این کار را انجام می‌دهید. شاید گوشی شما حتی به‌صورت خودکار به‌روزرسانی شود بدون اینکه متوجه شوید. این فرآیند ضروری است؛ اگر آخرین نسخه نرم‌افزار را نصب نکنید، ممکن است دسترسی به خدمات آن قطع شود.

اما در ارزهای دیجیتال متن‌باز، اوضاع کاملاً متفاوت است. برای استفاده از بیت‌کوین نیازی به خواندن تک‌تک خطوط کد آن ندارید، اما داشتن این امکان مهم است. در اینجا هیچ سلسله‌مراتبی وجود ندارد و هیچ بانکی نمی‌تواند به‌صورت خودکار به‌روزرسانی‌ها را اعمال کند یا تغییراتی ایجاد کند. در نتیجه، پیاده‌سازی ویژگی‌های جدید در شبکه‌های بلاکچین می‌تواند چالش‌برانگیز باشد.

در این مقاله، بررسی می‌کنیم که چگونه شبکه‌های ارز دیجیتال بدون وجود یک مقام مرکزی ارتقا می‌یابند.

برای این منظور، آن‌ها از دو مکانیزم استفاده می‌کنند: هارد فورک و سافت فورک.

چه کسی در شبکه بلاکچین تصمیم‌گیری می‌کند؟

برای درک نحوه عملکرد فورک‌ها، ابتدا باید شرکت‌کنندگان در فرآیند تصمیم‌گیری (یا حاکمیت) شبکه را بشناسیم.

در بیت کوین، می‌توان به‌طور کلی سه گروه از شرکت‌کنندگان را متمایز کرد:

توسعه‌دهندگان، ماینرها و کاربران نود کامل.

این‌ها کسانی هستند که واقعاً به شبکه کمک می‌کنند. نودهای سبک (مانند کیف پول‌های روی گوشی یا لپتاپ) به‌طور گسترده استفاده می‌شوند، اما از نظر شبکه به‌عنوان “شرکت‌کننده” محسوب نمی‌شوند.

توسعه‌دهندگان

توسعه‌دهندگان مسئول ایجاد و به‌روزرسانی کد هستند. در یک ارز دیجیتال معمولی، هر کسی می‌تواند در این فرآیند مشارکت کند. کد به‌صورت عمومی در دسترس است، بنابراین آن‌ها می‌توانند تغییراتی پیشنهاد دهند تا توسط سایر توسعه‌دهندگان بررسی شود.

ماینرها

ماینرها شبکه را ایمن می‌کنند. آن‌ها کد ارز دیجیتال را اجرا کرده و منابعی را برای افزودن بلوک‌های جدید به بلاکچین اختصاص می‌دهند. در شبکه بیت‌کوین، این کار از طریق اثبات کار (Proof of Work) انجام می‌شود. آن‌ها برای تلاش‌هایشان پاداش بلوک دریافت می‌کنند.

کاربران نود کامل

نودهای کامل، ستون فقرات شبکه ارز دیجیتال هستند. آن‌ها بلوک‌ها و تراکنش‌ها را اعتبارسنجی، ارسال و دریافت می‌کنند و نسخه‌ای از بلاکچین را نگه‌داری می‌کنند.

اغلب این دسته‌ها با هم تداخل دارند. برای مثال، ممکن است شما هم توسعه‌دهنده باشید و هم کاربر نود کامل، یا ماینر و کاربر نود کامل. حتی می‌توانید هر سه نقش را داشته باشید یا هیچ‌کدام. در واقع، بسیاری از کاربران ارزهای دیجیتال هیچ‌کدام از این نقش‌ها را بر عهده ندارند و به‌جای آن از نودهای سبک یا خدمات متمرکز استفاده می‌کنند.

با توجه به توضیحات بالا، ممکن است فکر کنید توسعه‌دهندگان و ماینرها تصمیم‌گیرندگان اصلی شبکه هستند. توسعه‌دهندگان کد را ایجاد می‌کنند؛ بدون آن‌ها، نرم‌افزاری برای اجرا وجود نداشت و کسی برای رفع اشکالات یا افزودن ویژگی‌های جدید نبود. ماینرها شبکه را ایمن می‌کنند؛ بدون رقابت سالم در ماینینگ، زنجیره ممکن است هک شود یا متوقف گردد.

اما اگر این دو گروه سعی کنند با زور شبکه را تحت کنترل خود درآورند، نتیجه خوبی نخواهد داشت. برای بسیاری، قدرت واقعی در دست نودهای کامل است. این به دلیل ماهیت اختیاری (opt-in) شبکه است، به این معنی که کاربران می‌توانند نرم‌افزاری را که می‌خواهند اجرا کنند.

توسعه‌دهندگان شما را مجبور نمی‌کنند که نرم‌افزار Bitcoin Core را دانلود کنید. اگر ماینرها با رویکرد “یا راه من یا هیچ‌چیز” بخواهند تغییری ناخواسته را به کاربران تحمیل کنند، کاربران به‌سادگی مسیر دیگری را انتخاب می‌کنند.

این گروه‌ها ارباب‌های همه‌چیزدان نیستند؛ آن‌ها ارائه‌دهندگان خدمات هستند. اگر مردم تصمیم بگیرند از شبکه استفاده نکنند، ارزش ارز کاهش می‌یابد. این کاهش ارزش مستقیماً روی ماینرها تأثیر می‌گذارد (پاداش‌هایشان به دلار ارزش کمتری خواهد داشت). در مورد توسعه‌دهندگان هم کاربران می‌توانند آن‌ها را نادیده بگیرند.

نرم‌افزار اختصاصی نیست. شما می‌توانید هر تغییری که می‌خواهید اعمال کنید و اگر دیگران نرم‌افزار تغییریافته شما را اجرا کنند، می‌توانید با هم ارتباط برقرار کنید. در این صورت، شما نرم‌افزار را فورک کرده و شبکه جدیدی ایجاد می‌کنید.

فورک چیست؟

فورک نرم‌افزاری زمانی رخ می‌دهد که نرم‌افزاری کپی و تغییر داده می‌شود. پروژه اصلی ادامه می‌یابد، اما حالا از پروژه جدید که مسیر متفاوتی را دنبال می‌کند، جدا شده است. فرض کنید تیم وب‌سایت مورد علاقه شما در حوزه ارز دیجیتال درباره نحوه ادامه کار اختلاف نظر داشته باشد. بخشی از تیم ممکن است سایت را در دامنه دیگری کپی کند. از آن پس، آن‌ها محتوای متفاوتی نسبت به سایت اصلی منتشر می‌کنند.

این پروژه‌ها از یک پایه مشترک شروع شده و تاریخچه‌ای مشترک دارند. مانند جاده‌ای که بعداً به دو مسیر تقسیم می‌شود، حالا یک انشعاب دائمی در مسیر آن‌ها وجود دارد.

این نوع اتفاق در پروژه‌های متن‌باز بسیار رایج است و مدت‌ها پیش از ظهور بیت‌کوین یا اتریوم رخ می‌داد. اما تمایز بین هارد فورک و سافت فورک تقریباً مختص فضای بلاکچین است. بیایید این دو را بیشتر بررسی کنیم.

هارد فورک در مقابل سافت فورک

با وجود نام‌های مشابه و هدف یکسان، هارد فورک و سافت فورک تفاوت‌های قابل‌توجهی دارند. بیایید هر کدام را بررسی کنیم.

هارد فورک چیست؟

هارد فورک‌ها به‌روزرسانی‌های نرم‌افزاری ناسازگار با نسخه‌های قبلی هستند. معمولاً زمانی رخ می‌دهند که نودها قوانین جدیدی اضافه می‌کنند که با قوانین نودهای قدیمی در تعارض است. نودهای جدید فقط می‌توانند با نودهایی که نسخه جدید را اجرا می‌کنند ارتباط برقرار کنند. در نتیجه، بلاکچین به دو شبکه جداگانه تقسیم می‌شود: یکی با قوانین قدیمی و دیگری با قوانین جدید.

تصویر ذهنی:

نودها هنگام به‌روزرسانی به رنگ آبی درمی‌آیند. نودهای زرد قدیمی‌تر آن‌ها را رد می‌کنند، در حالی که نودهای آبی به یکدیگر متصل می‌شوند.

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

مثال: بلاکچین در بلوک ۶۰۰,۰۰۰ فورک می‌شود.

از آنجا که تاریخچه مشترکی وجود دارد، اگر قبل از فورک ارزی در اختیار داشته باشید، در هر دو شبکه ارز خواهید داشت. فرض کنید در زمان فورک در بلوک ۶۰۰,۰۰۰، شما ۵ بیت‌کوین (BTC) داشتید. می‌توانید این ۵ بیت‌کوین را در زنجیره قدیمی در بلوک ۶۰۰,۰۰۱ خرج کنید، اما در بلوک ۶۰۰,۰۰۱ زنجیره جدید خرج نشده‌اند. اگر رمزنگاری تغییر نکرده باشد، کلیدهای خصوصی شما همچنان ۵ سکه در شبکه فورک‌شده را کنترل می‌کنند.

مثال واقعی:

فورک سال ۲۰۱۷ که بیت‌کوین به دو زنجیره جداگانه تقسیم شد: بیت‌کوین اصلی (BTC) و بیت‌کوین کش (BCH). این فورک پس از بحث‌های فراوان درباره بهترین روش برای مقیاس‌پذیری رخ داد. طرفداران بیت‌کوین کش خواستار افزایش اندازه بلوک بودند، در حالی که طرفداران بیت‌کوین با این تغییر مخالف بودند.

افزایش اندازه بلوک نیازمند تغییر قوانین بود. این اتفاق پیش از فورک سافت SegWit (که بعداً توضیح داده می‌شود) رخ داد، بنابراین نودها فقط بلوک‌های کوچک‌تر از ۱ مگابایت را قبول می‌کردند. اگر بلوکی ۲ مگابایتی ایجاد می‌کردید که در غیر این صورت معتبر بود، نودهای دیگر آن را رد می‌کردند.

فقط نودهایی که نرم‌افزار خود را برای پذیرش بلوک‌های بزرگ‌تر از ۱ مگابایت تغییر داده بودند، می‌توانستند این بلوک‌ها را بپذیرند. البته، این کار آن‌ها را با نسخه قبلی ناسازگار می‌کرد، بنابراین فقط نودهایی با تغییرات پروتکل مشابه می‌توانستند ارتباط برقرار کنند.

سافت فورک چیست؟

سافت فورک یک ارتقای سازگار با نسخه‌های قبلی است، به این معنی که نودهای به‌روزرسانی‌شده همچنان می‌توانند با نودهای به‌روزرسانی‌نشده ارتباط برقرار کنند. در سافت فورک معمولاً قانون جدیدی اضافه می‌شود که با قوانین قدیمی‌تر در تضاد نیست.

برای مثال، کاهش اندازه بلوک می‌تواند از طریق سافت فورک پیاده‌سازی شود. برای توضیح،再 به بیت‌کوین نگاه می‌کنیم: اگرچه محدودیتی برای حداکثر اندازه بلوک وجود دارد، اما محدودیتی برای حداقل اندازه آن نیست. اگر بخواهید فقط بلوک‌های زیر یک اندازه خاص را بپذیرید، کافی است بلوک‌های بزرگ‌تر را رد کنید.

با این حال، این کار شما را به‌طور خودکار از شبکه جدا نمی‌کند. شما همچنان با نودهایی که این قوانین را اجرا نمی‌کنند ارتباط برقرار می‌کنید، اما برخی از اطلاعاتی که به شما منتقل می‌کنند را فیلتر می‌کنید.

مثال واقعی:

فورک Segregated Witness (SegWit) که کمی پس از تقسیم بیت‌کوین/بیت‌کوین کش رخ داد. SegWit به‌روزرسانی‌ای بود که فرمت بلوک‌ها و تراکنش‌ها را تغییر داد، اما هوشمندانه طراحی شده بود. نودهای قدیمی همچنان می‌توانستند بلوک‌ها و تراکنش‌ها را اعتبارسنجی کنند (فرمت جدید قوانین را نقض نمی‌کرد)، اما آن‌ها را درک نمی‌کردند. برخی فیلدها فقط زمانی قابل‌خواندن هستند که نودها به نرم‌افزار جدیدتر سوئیچ کنند، که به آن‌ها امکان تجزیه داده‌های اضافی را می‌دهد.

حتی دو سال پس از فعال‌سازی SegWit، همه نودها به‌روزرسانی نکرده بودند. مزایایی برای به‌روزرسانی وجود دارد، اما چون تغییر شبکه‌شکنی نبود، هیچ فوریتی وجود نداشت.

هارد فورک در مقابل سافت فورک – کدام بهتر است؟

در اصل، هر دو نوع فورک اهداف متفاوتی را دنبال می‌کنند. هارد فورک‌های بحث‌برانگیز می‌توانند جامعه را تقسیم کنند، اما هارد فورک‌های برنامه‌ریزی‌شده امکان اصلاح نرم‌افزار را با توافق همه فراهم می‌کنند.

سافت فورک‌ها گزینه ملایم‌تری هستند. به‌طور کلی، شما در آنچه می‌توانید انجام دهید محدودتر هستید، زیرا تغییرات جدید نباید با قوانین قدیمی در تضاد باشند. با این حال، اگر به‌روزرسانی شما به‌گونه‌ای طراحی شود که سازگار باقی بماند، نیازی به نگرانی درباره تقسیم شبکه نخواهید داشت.

جمع‌بندی

هارد فورک‌ها و سافت فورک‌ها برای موفقیت بلندمدت شبکه‌های بلاکچین حیاتی هستند. آن‌ها به ما امکان می‌دهند در سیستم‌های غیرمتمرکز بدون وجود یک مقام مرکزی، تغییرات و ارتقاها را اعمال کنیم.

فورک‌ها امکان ادغام ویژگی‌های جدید را در بلاکچین‌ها و ارزهای دیجیتال فراهم می‌کنند. بدون این مکانیزم‌ها، یا به یک سیستم متمرکز با کنترل از بالا به پایین نیاز داشتیم، یا برای همیشه به قوانین اولیه پروتکل محدود می‌شدیم.

سلب مسئولیت:
تمامی تحلیل‌ها، مقالات و اطلاعات ارائه شده در وب‌سایت آریومکس صرفاً با هدف آموزش و اطلاع‌رسانی تهیه شده‌اند و نباید به‌ عنوان سیگنال خرید، فروش یا توصیه سرمایه‌گذاری تلقی شوند. بازار ارزهای دیجیتال دارای نوسانات بالا و ریسک‌های قابل‌ توجهی است و ممکن است باعث از دست رفتن بخشی یا تمام سرمایه شما شود. آریومکس هیچ‌گونه مسئولیتی در قبال تصمیمات سرمایه‌گذاری کاربران و زیان‌های احتمالی ناشی از آن‌ها ندارد. پیش از هرگونه سرمایه‌گذاری یا معامله، ضروری است تحقیقات شخصی دقیق انجام داده و در صورت نیاز، با مشاوران مالی متخصص مشورت کنید. استفاده از محتوای وب‌سایت آریومکس به معنای پذیرش مسئولیت کامل کاربر در قبال تصمیمات مالی و نتایج آن‌ها است.

منبع

آکادمی بایننس

آناهیتا مرادی