اکثر کاربران نرم افزار با به روز رسانی برنامهها آشنا هستند. بلاکچین هم روز رسانیهایی برای افزایش کارایی ارائه میدهد. با این حال، در بلاکچین برخلاف برنامههای روزمره، نمیتوان تنها با فشار دادن یک دکمه آن را ارتقاء داد. در واقع، برنامه های غیرمتمرکز مانند ارزهای دیجیتال در بلاک چین به رویکرد متفاوت و پیچیده تری نیاز دارند. به عنوان مثال، بلاکچینها پروتکلهای غیرمتمرکز منبع باز هستند که فاقد قدرت مرکزیاند. به این ترتیب، تصمیم برای ارتقاء به پروتکل مستلزم اجماع همه کاربران در شبکه است. این فرآیند منحصر به فرد به روز رسانی یا ارتقاء یک بلاک چین، فورک نامیده می شود. فورکها را میتوان بسته به هدفشان به دو دسته فورکهای نرم (سافت) یا سخت (هارد) تقسیم کرد. برای شناخت بهتر فورک ها این مقاله را در سکویا مگ همراهی کنید.
سازوکار فورک از کجا مدیریت میشود؟
از آنجایی که بلاکچین توسط هیچ مرجع مرکزی اداره نمیشود، این مسئولیت مشارکت کنندگان در شبکه است که توافق کنند و تغییراتی را باعث افزایش کارایی میشود را انجام دهند.
با این حال، بلاکچینها دارای زیرمجموعههای مختلفی از شرکتکنندگان هستند که از استخراجکنندگان گرفته تا کاربران و توسعهدهندگان را شامل میشود. بنابراین، چه کسی در مورد اینکه چه تغییراتی باید در شبکه اعمال شود، حرف آخر را می زند؟ از آنجایی که هر زیر مجموعه به طور متفاوتی به شبکه کمک می کند، برخی از شرکت کنندگان قدرت رای بیشتری نسبت به دیگران دارند.
به عنوان مثال، ماینرها که شبکه را با اختصاص منابع محاسباتی برای اعتبارسنجی بلوک ایمن میکنند، تمایل دارند امنیت و محبوبیت نسخههای فورک را تعیین کنند. از آنجایی که ماینرها منابع محاسباتی لازم برای اجرای شبکه را فراهم میکنند، هر نسخه فورکی که مورد تایید ماینرها باشد، موفقیت بالایی دارد.
بیشتر بلاکچینهای منبع باز امکان تداخل مسئولیتها و در نتیجه مسئولیت مشترک در فرآیند تشکیل فورک را فراهم میآورند. سایر نقشهای زیرمجموعه شامل توسعهدهندگانی است که کدی را که در داخل بلاکچین اجرا میشود را ایجاد و بهروزرسانی میکنند.
هارد فورک چیست؟
فورک ها به روز رسانی یا ارتقاء پروتکل نرم افزاری بلاکچین گفته میشوند که شکاف در شبکه اصلی بلاکچین ایجاد میکنند. به عنوان مثال، اگر یک ارز دیجیتال روی یک بلاک چین قدیمی اجرا شود، فورک در آن بلاکچین منجر به ایجاد یک ارز دیجیتال دوم در بلاک چین جدید میشود.
با یک هارد فورک، قوانین پروتکل بلاکچین بهروزرسانی یا تغییر میکنند تا بلاکچین قدیمی ناکارآمد به حساب بیاید.
این بدان معناست که گرههای قدیمی بلوکهای بهروزرسانیشده جدید را نمیپذیرند و بلاک چین جدید بر اساس قوانین جدیدی عمل میکند که به طور مداوم بلوکهای بلاک چین قدیمی را رد میکنند. این اغلب به عنوان یک به روزرسانی نرم افزار “ناسازگار با عقب” شناخته میشود.
به عنوان مثال، یک هارد فورک در بلاک چین بیت کوین به دلیل اختلاف نظر در جامعه بیت کوین بر سر بهترین رویکرد برای مقیاس گذاری شبکه ایجاد شد. در یک طرف بحث اعضایی بودند که میخواستند اندازه بلوک را افزایش دهند. در طرف دیگر آن دسته از اعضایی بودند که با چنین تغییراتی مخالف بودند. بنابراین، کسانی که میخواستند اندازه بلوک را افزایش دهند، فورک بیت کوین کش را دنبال کردند. در حالی که مخالفان چنین تغییراتی در شبکه اصلی بیت کوین باقی ماندند. به همین دلیل، در حالی که هر دو سکه (یعنی بیتکوین و بیتکوین کش) روی بلاکچینهای متفاوتی اجرا میشوند، هنوز هم سابقه یکسانی قبل از فورک دارند.
سافت فورک چیست؟
در حالی که هارد فورک یک ارتقاء ناسازگار با عقب برای بلاکچین است، سافت فورک تغییری سازگار با جلو در قوانین است. از آنجایی که فورک یک تغییر سازگار با جلو است، بلاکچین قدیمی همچنان بلاکهایی را از پروتکل بلاکچین بهروزرسانی شده میپذیرد، حتی اگر به دلیل نرمافزار جدید تغییری در قوانین وجود داشته باشد.
به زبان ساده، سافت فورک، بلاکچین قدیمی را فریب میدهد تا قوانین جدید را بپذیرد و همزمان بلوکهای به روز شده و بلوکهای قدیمی تراکنشها را میپذیرند. بنابراین، بر خلاف هارد فورک، سافت فورک با حفظ دو خط با مجموعه قوانین مختلف، بلاک چین قدیمی را حفظ میکند. نمونهای از سافت فورک که با موفقیت پیاده سازی شد، به روزرسانی پروتکل بیت کوین Segregated Witness (SegWit) در سال ۲۰۱۵ بود.
قبل از بهروزرسانی SegWit، پروتکل بیتکوین هم پرهزینهتر بود. سازندگان چیزی که تبدیل به بهروزرسانی SegWit میشود، تشخیص دادند که دادهها حدود ۶۵ درصد از یک بلوک تراکنشی را تشکیل میدهند. بنابراین، SegWit پیشنهاد کرد که اندازه بلوک موثر را از ۱ مگابایت به ۴ مگابایت افزایش دهد.
ایده پشت این افزایش، جداسازی یا حذف دادههای امضا از دادههای تراکنش در هر بلوک در بلاکچین بود، و فضا را برای خروجی تراکنش بیشتر در هر بلوک آزاد میکرد. با استفاده از سافت فورک، بلاکچین قدیمی بیت کوین توانست همزمان بلوک های ۴ مگابایتی و بلوکهای۱ مگابایتی جدید را بپذیرد. از طریق روشی هوشمندانه که قوانین جدیدی را بدون شکستن قوانین قبلی قالببندی میکرد، سافت فورک به گرههای قدیمی اجازه داد تا بلوکهای جدید را هم تأیید کنند.
هارد فورک در مقابل سافت فورک
جوامع بلاک چین و کریپتو در مورد اینکه کدام نوع فورک برای ارتقای شبکههای بلاک چین بهترین است، اختلاف نظر دارند. در حالی که هر نوع فورک نقاط قوت و ضعف خود را دارند.
سافت فورک ها گزینه مناسبتری به حساب میآیند، اما خطرات خاص خود را دارند. برجستهترین این خطرات این واقعیت است که یک سافت فورک میتواند توسط بازیگران بد برای فریب کاربران فول نود و ماینرها برای تأیید اعتبار بلوکهایی که قوانین بلاکچین را نقض میکنند، استفاده شوند.
کاربران فول نود به عنوان حسابرسان یک بلاکچین عمل کرده و یک نسخه کامل از بلاکچین را همیشه حفظ میکنند. وظیفه آنها این است که اطمینان حاصل کنند که هر بلوک جدید با قوانین بلاکچین قدیمی مطابقت دارد. اگر گروهی از افراد در بلاکچین موفق به ایجاد قوانین جدید بدون اطلاع کاربران گره کامل در شبکه شوند، امنیت شبکه میتواند به خطر بیفتد.
از سوی دیگر، هارد فورک ها بدون مجموعهای از چالشها نیستند. اول، هارد فورک ها برای تقسیم کردن جوامع شناخته شدهاند. برخلاف سافت فورک، هیچ حد وسطی با هارد فورک وجود ندارد. بسیاری معتقدند که هارد فورک ها خطرناک هستند زیرا قدرت هش شبکه را تقسیم میکنند. بنابراین امنیت و ظرفیت پردازش شبکه را به طور کلی کاهش میدهند.
نتیجه گیری: تکامل بلاک چین ها
صرف نظر از نوع فورک، واضح است که کارهای زیادی برای اطمینان از انتقال روان به روز رسانی ها و ارتقاء بلاکچین انجام میشود. اکثر ماینرها و سرمایه گذاران، بلاکچین هارد فورک ها را ترجیح می دهند، زیرا خطر اعتبارسنجی یا استخراج بلوکهای نامعتبر را محدود میکنند.
هارد فورکها تضمین میکنند که استخراجکنندگان و بازرگانان بلاکچین عقب نمانند یا مورد کلاهبرداری قرار نگیرند. با این حال، هارد فورک ها منابع محاسباتی زیادی را اشغال می کنند و برای آینده ارزهای دیجیتال مضر هستند.
با وجود خطرات ذاتی، سافت فورک ها راه حل بسیار سریع تری برای ارتقای نرم افزار در بلاکچین بدون استفاده بیش از حد از منابع محاسباتی ارائه میدهند. سافت فورکها همچنین به دلیل تواناییشان در پیادهسازی بهروزرسانیها بدون تقسیم جامعه مورد تحسین قرار میگیرند.