سافت فورک چیست؟ توضیح ارتقاء بلاک چین
وقتی یک سافت فورک اتفاق میافتد، قوانین بلاک چین سختگیرانهتر میشوند، نه سهلگیرانهتر. آیا گرههای قدیمی که از ارتقا صرف نظر کردهاند؟ آنها به هر حال به دنبال کردن بلوکهای جدید ادامه میدهند. بدون هیچ مشکلی، بدون تقسیم زنجیره. احتمالاً در نزدیکی بهروزرسانیهای بیتکوین مانند SegWit یا Taproot با اصطلاحاتی مانند SegWit یا Taproot برخورد کردهاید و از خود پرسیدهاید که چه چیزی آن را از یک هارد فورک متمایز میکند.
این نسخه ساده است، از اصطلاحات تخصصی صرف نظر کنید. کریپتو را نگه دارید، یک نود اجرا کنید، یا فقط کنجکاو باشید که چرا برخی از ارتقاءها باعث هرج و مرج میشوند در حالی که برخی دیگر بدون توجه از کنار آنها عبور میکنند؟ معمولاً به همین یک تمایز برمیگردد.
سافت فورک در بلاکچین چیست؟
سافت فورکها قوانین بلاک چین را سختگیرانهتر میکنند، نه اینکه آنها را سهلگیرانهتر کنند. بلاکی که طبق قوانین قدیمی تصویب میشد، ممکن است اکنون رد شود. اما بلاکهایی که از قوانین جدید و سختگیرانهتر پیروی میکنند، نرمافزار قدیمی هنوز آنها را معتبر میداند.
کل ترفند اینجا همین سازگاری یکطرفه است. گرههای قدیمی قوانین جدید را با جزئیات درک نمیکنند و راستش را بخواهید، نیازی هم به درک آن ندارند. آنها فقط بلوکهایی را میبینند که معتبر به نظر میرسند و به کار خود ادامه میدهند، غافل از اینکه بخشی از آنچه قبلاً معتبر بود، دیگر معتبر نیست.
هارد فورکها این را برعکس میکنند. آنها قوانین را به گونهای سست یا کاملاً بازنویسی میکنند که گرههای قدیمی نمیتوانند اعتبارسنجی کنند. سفت کردن در مقابل سست کردن، همین تفاوت تعیین میکند که آیا یک ارتقا همه را روی یک زنجیره نگه میدارد یا شبکه را به دو نیم تقسیم میکند.
این یک تصویر ذهنی بهتر است: یک کتاب قانون در حال کوچک شدن، نه یک کتاب قانون بازنویسی شده. قبل از فورک، محدوده خاصی از بلوکها معتبر محسوب میشوند. پس از آن، آن محدوده کمی کوچکتر میشود. برخی از بلوکهایی که قبلاً عبور میکردند، اکنون توسط گرههای ارتقا یافته برگشت میخورند. با این حال، نکته کلیدی این است که هر بلوکی که تحت قوانین جدید پذیرفته میشود، قبلاً تحت قوانین قدیمی نیز خوب بود. هیچ چیز جدیدی اجازه ورود پیدا نمیکند. چیزی قدیمی قفل میشود. به همین دلیل است که نرمافزارهای پچ نشده طوری اجرا میشوند که انگار هیچ اتفاقی نیفتاده است.
یک سافت فورک واقعاً چگونه کار میکند؟
سازوکار ماجرا به رفتار گره و اعتبارسنجی قوانین برمیگردد. تقریباً، روند کار به این صورت است:
- توسعهدهندگان تغییری را پیشنهاد میدهند که مجموعه تراکنشها یا بلوکهای معتبر را محدود میکند، معمولاً برای رفع یک محدودیت یا افزودن یک قابلیت جدید.
- جامعه و اپراتورهای گره، اغلب از طریق یک فرآیند رسمی مانند پیشنهادهای بهبود بیتکوین (BIP)، پیشنهاد را بررسی، آزمایش و مورد بحث قرار میدهند.
- ماینرها یا اعتبارسنجها شروع به اعلام حمایت از قوانین جدید میکنند، اغلب از طریق مکانیسمی که در بلوکهایی که تولید میکنند تعبیه شده است.
- زمانی که سیگنالدهی به آستانهی فعالسازی برسد، که معمولاً چیزی حدود ۹۰ تا ۹۵ درصد از بلاکهای اخیر را شامل میشود، قوانین جدید توسط گرههای ارتقا یافته اجرا میشوند.
- گرههای ارتقا نیافته، اعتبارسنجی بلوکها را با استفاده از منطق موجود خود ادامه میدهند. از آنجا که قوانین جدید زیرمجموعهای از قوانین قدیمی هستند، بلوکهایی که قوانین جدید را برآورده میکنند، قوانین قدیمی را نیز برآورده میکنند، بنابراین گرههای ارتقا نیافته آنها را بدون مشکل میپذیرند.
- این شبکه به عنوان یک زنجیره واحد به فعالیت خود ادامه میدهد، به طوری که گرههای ارتقا یافته قوانین سختگیرانهتر را اجرا میکنند و گرههای ارتقا نیافته بدون اینکه از نظر فنی آنها را اجرا کنند، بیسروصدا از آنها سود میبرند.
نتیجه: یک ارتقاء زنده که نیازی به اقدام همزمان همه شرکتکنندگان ندارد. دقیقاً به همین دلیل است که سافت فورکها ابزار اصلی برای اکثر بهبودهای معمول بلاک چین هستند. نکتهای که باید به آن توجه کرد این است که گرههای ارتقاء نیافته، خودشان به طور فعال قوانین جدید را اجرا نمیکنند. آنها فقط با این واقعیت پیش میروند که قدرت هش غالب شبکه، آن قوانین را برای همه اجرا میکند. به همین دلیل است که پذیرش ماینرها برای سرعت و ایمنی یک سافت فورک بسیار مهم است.

سافت فورک در مقابل هارد فورک: تفاوت واقعی چیست؟
سوال سافت فورک در مقابل هارد فورک دائماً مطرح میشود و پاسخ کوتاه، جهت سازگاری است. یک سافت فورک قوانین را به روشی که نرمافزار قدیمی هنوز میپذیرد، محدود میکند. یک هارد فورک قوانین را به روشی که نرمافزار قدیمی کاملاً رد میکند، تغییر میدهد.
| جنبه | چنگال نرم | هارد فورک |
|---|---|---|
| جهت قانون | سختگیرانهتر، بلوکهای معتبر را محدود میکند | سستتر یا اساساً تغییر یافته |
| سازگار با نسخههای قبلی؟ | بله، گرههای قدیمی بلوکهای جدید را میپذیرند. | خیر، گرههای قدیمی بلاکهای جدید را رد میکنند |
| نیاز به ارتقاء سراسری داره؟ | خیر | بله، وگرنه زنجیر از هم میپاشد |
| خطر شکافتگی زنجیره | کم | اگر اجماع به اتفاق آرا نباشد، بالا است |
| هماهنگی لازم است | سیگنالدهی ماینر/اعتبارسنج | توافقنامه کامل شبکه |
| مثال | سگویت، تپروت | بیت کوین کش از بیت کوین جدا شد |
سافت فورکها معمولاً گزینههای کمدردسرتری هستند، زیرا شبکه مجبور نیست فوراً و به اتفاق آرا موافقت کند. هارد فورکها ذاتاً مخربتر هستند، زیرا هر کسی که به موقع بهروزرسانی نکند، عملاً یک بلاکچین متفاوت و ناسازگار را اجرا میکند.
به همین دلیل است که هارد فورکها معمولاً خبرساز میشوند در حالی که سافت فورکها به ندرت این اتفاق میافتند. یک هارد فورک اغلب با یک نماد جدید، یک لیست جدید در صرافی و یک بحث عمومی در مورد اینکه کدام زنجیره نشان دهنده پروژه "واقعی" است، همراه میشود. یک سافت فورک معمولاً فقط به صورت یک تغییر شماره نسخه در نرمافزار کیف پول شما ظاهر میشود و اکثر کاربران هرگز متوجه تغییر قوانین زیر آن نمیشوند.
نمونههای واقعی از سافت فورکها در بیتکوین و فراتر از آن
سافت فورکها یک مفهوم تئوری نیستند. بیتکوین بارها از آنها برای افزودن قابلیتها استفاده کرده است، بدون اینکه هرگز شبکه را به زور تقسیم کند.
- سگویت (۲۰۱۷): شاهد مجزا، نحوه شمارش دادههای تراکنش نسبت به اندازه بلوک را تغییر ساختار داد، اشکالی به نام انعطافپذیری تراکنش را برطرف کرد و زمینه را برای شبکه لایتنینگ فراهم کرد. این نمونه، همچنان پراستنادترین نمونه سافت فورک در تاریخ بیت کوین است.
- Taproot (2021): امضاهای Schnorr را معرفی کرد و حریم خصوصی و کارایی را برای تراکنشهای پیچیده بهبود بخشید، در عین حال با گرههایی که ارتقا نیافته بودند سازگار ماند.
- P2SH (2012): هش پرداخت به اسکریپت، نحوه نمایش کیف پولهای چندامضایی و اسکریپتهای شبیه قرارداد هوشمند را روی زنجیره ساده کرد، باز هم بدون اینکه باعث تقسیم شبکه شود.
- BIP66 (2015): رمزگذاری دقیق DER را برای امضاهای دیجیتال اعمال کرد و یک حفره فنی را که میتوانست باعث ناسازگاری در اعتبارسنجی شود، بست.
هر یک از این موارد، قوانین بیتکوین را به شیوهای خاص و آگاهانه سختگیرانهتر کردند و بدون تقسیم جامعه به دو کوین رقیب، عرضه شدند.
چرا توسعهدهندگان سافت فورکها را به هارد فورکها ترجیح میدهند؟
با توجه به حق انتخاب، اکثر توسعهدهندگان اصلی بیتکوین و اتریوم ابتدا به سراغ یک سافت فورک میروند، و این فقط به دلیل ترجیح فنی نیست. دلایل آن کاملاً کاربردی است.
اولاً، هیچکس مجبور نیست در همان روز بهروزرسانی کند. کیفپولها، صرافیها، استخرهای استخراج، همه میتوانند به جای رقابت در یک مهلت سخت، طبق برنامه خودشان مهاجرت کنند. در مقیاس بزرگ، این انعطافپذیری بسیار مهم است، زیرا هماهنگ کردن هزاران اپراتور مستقل برای یک بهروزرسانی همزمان واقعاً دشوار است.
سپس نوبت به وحدت میرسد. یک سافت فورک، شبکه و کوین را در یک قطعه نگه میدارد. هیچ توکن رقیبی ظاهر نمیشود. هیچ صرافی مجبور نیست انتخاب کند که کدام زنجیره «واقعی» است. هیچ جامعهای بر سر مشروعیت به گروههای مختلف تقسیم نمیشود. به ویژه برای یک شبکه پرداخت، این نوع ثبات ارزش زیادی دارد.
برگشتپذیری نیز مهم است. از آنجایی که گرههای قدیمی هرگز به طور کامل به اجرای قوانین جدید متعهد نمیشوند، یک سافت فورک ناقص گاهی اوقات میتواند با آشفتگی بسیار کمتری نسبت به باز کردن یک هارد فورک که قبلاً یک کوین معاملاتی مستقل دوم ایجاد کرده است، بازگردانده شود.
خطرات و محدودیتهای سافت فورکها
سافت فورکها (شاخههای نرم) بدون ریسک نیستند، هرچند که عموماً مسیر امنتری در نظر گرفته میشوند. دانستن چند محدودیت واقعی ارزشش را دارد.
- گرههای ارتقا نیافته هنوز بلوکها را تحت قوانین قدیمی اعتبارسنجی میکنند، به این معنی که آنها نمیتوانند به طور مستقل تأیید کنند که شرایط خاص قانون جدید واقعاً به درستی اجرا میشوند، آنها به اکثریت اعتماد دارند.
- اگر اقلیت بزرگی از ماینرها از ارتقا خودداری کنند و فقط تحت قوانین قدیمی به تولید بلاک ادامه دهند، باز هم ممکن است موقعیتهای بحثبرانگیزی پیش بیاید که گاهی اوقات منجر به جدایی بالفعل میشود، حتی اگر فورک از نظر فنی «نرم» بوده باشد.
- وابستگی شدید به سیگنالدهی ماینرها به این معنی است که فعالسازی سافت فورک میتواند تحت تأثیر تمرکز استخر ماینینگ قرار گیرد، که این امر سوالات زیادی را در مورد میزان غیرمتمرکز بودن این فرآیند در عمل ایجاد میکند.
- پیادهسازی ایمن برخی از سافت فورکها پیچیدهتر از آن چیزی است که به نظر میرسد، زیرا توسعهدهندگان باید مطمئن شوند که قوانین جدید واقعاً زیرمجموعهای دقیق از قوانین قدیمی هستند، هرگونه اشتباهی در آنجا میتواند شکافهای اعتبارسنجی غیرمنتظرهای ایجاد کند.
هیچکدام از اینها سافتفورکها را خطرناک نمیکند. این فقط به این معنی است که «سازگار با نسخههای قبلی» با «بدون ریسک» یکسان نیست و هماهنگی حتی زمانی که انشعاب سخت مطرح نباشد، همچنان اهمیت دارد.

چگونه یک سافت فورک در بلاکچین فعال میشود؟
کد جدید به تنهایی نمیتواند سافت فورک را اجرا کند. کسی باید تأیید کند که شبکه واقعاً آماده است و این یک کار هماهنگی است.
بیت کوین برای این کار از چندین روش استفاده کرده است. سیگنالدهی به سبک BIP9 روش کلاسیک است: ماینرها یک نشانگر کوچک را در بلوکهایی که استخراج میکنند میاندازند، که اساساً دستشان را بالا میبرند. "آماده". وقتی تعداد کافی از بلوکهای اخیر، معمولاً نزدیک به ۹۵٪، دستشان را در یک بازه زمانی مشخص بالا بردند، قوانین جدید قطعی میشوند. اجرای آنها به دنبال آن میآید.
روشهای فعالسازی جدیدتر، مانند Speedy Trial و انواع مختلف سافتفورکهای فعالشده توسط کاربر، تا حدودی به این دلیل ظهور کردهاند که سیگنالدهی خالص ماینرها میتواند در صورت کندی پاسخ استخرهای ماینینگ یا عدم تمایل سیاسی، متوقف شود. این مکانیسمهای جایگزین به اپراتورهای گره و جامعه وسیعتر، نفوذ مستقیمتری بر روی اینکه آیا واقعاً ارتقاء اتفاق میافتد یا خیر، میدهند، نه اینکه تصمیمگیری را کاملاً به ماینرها واگذار کنند.
فعالسازی Taproot در سال ۲۰۲۱ نمونهی خوبی از چگونگی همکاری این روشها است. این روش از یک فرآیند سیگنالدهی اصلاحشده به نام Speedy Trial استفاده میکرد که یک بازه زمانی کوتاهتر و مشخص برای ماینرها جهت اعلام آمادگی تعیین میکرد، با یک مسیر جایگزین که به جامعه اجازه میداد ارتقا را حتی بدون پشتیبانی کامل ماینرها فعال کند. این مسیر جایگزین در عمل اهمیت کمتری داشت، زیرا سیگنالدهی به راحتی انجام شد، اما وجود آن نشان میدهد که طراحی فعالسازی از زمان سافت فورکهای اولیهی بیتکوین که صرفاً توسط ماینرها هدایت میشدند، چقدر پیشرفت کرده است.
نکات پایانی
آرام، تدریجی، بدون از هم گسیختگی، این روشی است که اکثر شبکههای بلاکچین در واقع تکامل مییابند. اگر قوانین را به جای سست کردن، سختگیرانهتر کنید، یک شبکه میتواند ویژگیها را اضافه کند، اشکالات را از بین ببرد، سبکتر اجرا شود، در حالی که برای کسانی که هرگز فرصت ارتقا را نداشتهاند، قابل استفاده باقی میماند. کسبوکارهایی که زیرساخت کریپتو را انتخاب میکنند باید همین را بخواهند. پیشرفتهایی که بر پایه یک پایه پایدار و یکپارچه بنا شدهاند، نه وقفههای مخرب. پلیسیو نیز به همین سمت متمایل است: پایدار، سازگار، ساخته شده برای ادامه کار در حالی که شبکههای زیر آن دائماً تغییر شکل میدهند.