هارد فورک چه تفاوتی با سافت فورک دارد؟
هارد فورکها بهروزرسانیهای نرمافزاری هستند که با نسخههای قبلی ناسازگار هستند. به طور معمول، این اتفاق زمانی میافتد که نودها قوانین جدیدی اضافه میکنند که با قوانین نودهای قدیمی در تضاد است. نودهای جدید تنها میتوانند با کاربرانی که از نسخه جدید استفاده میکنند ارتباط برقرار کنند. نتیجه این است که بلاکچین تقسیم میشود و دو شبکه جداگانه ایجاد میشود: یکی با قوانین قدیمی و دیگری با قوانین جدید.
هنگامی که نوتیفیکیشنی برای بروز رسانی اپلیکیشن بانکتون دریافت میکنید، بدون شک آن را بروز رسانی میکنید. زیرا میدانید که بروزرسانی آن ضروری است و اگر آخرین نسخه نرمافزار را نصب نکنید، احتمالا دسترسیتان به خدمات آن قطع میشود.
در رمزارزهای منبعباز، شرایط متفاوت است. در اینجا هیچ سلسلهمراتبی وجود ندارد و هیچ بانکی نمیتواند بهدلخواه بهروزرسانی و تغییرات انجام دهد. در نتیجه، پیادهسازی ویژگیهای جدید در شبکههای بلاکچین یک چالش میباشد.
توسعه دهندگان
توسعهدهندگان مسئول ایجاد و بهروزرسانی کد هستند. در اکثر کوین ها، هرکسی میتواند به این فرآیند کمک کند. کد به صورت عمومی در دسترس است، بنابراین آنها میتوانند تغییرات را ایجاد کنند تا توسعهدهندگان دیگر بتوانند آن را بررسی کنند.
ماینرها
ماینر ها افرادی هستند که امنیت شبکه را فراهم میکنند. آنها کد رمزارز را اجرا کرده و برای ضافه کردن بلوکهای جدید به بلاکچین از منابع خود استفاده میکنند. به عنوان مثال، در شبکه بیتکوین، این کار را از طریق الگوریتم اثبات کار (Proof of Work) انجام میدهند و در قبال فعالیت هایشان پاداش بلوک را دریافت میکنند.
کاربران نود کامل
نود های کامل ستون اصلی شبکه رمزارز هستند. آنها بلوکها و تراکنشها را اعتبارسنجی، ارسال و دریافت میکنند و یک نسخه از بلاکچین را حفظ میکنند.
گاهی پیش میاد که یک نفر همزمان چند نقش رو داشته باشد مثلا هم توسعهدهنده و هم کاربر نود کامل باشد و یا ماینر و کاربر نود کامل باشد. و البته کاربرانی هم هستند که هیچ نقشی در شبکه نمیپذیرند. بو در عوض ترجیج میدهند از از نود های سبک یا ارائه دهنده های خدمات متمرکز استفاده کنند.
با توجه به توضیجات داده شده میتوان در یافت که توسعهدهندگان و ماینرها تصمیمگیران اصلی شبکه هستند. توسعهدهندگان کد را ایجاد میکنند؛ بدون آنها، هیچ نرمافزاری برای انجام معاملات وجود ندارد، باگها رفع نمیشود و یا ویژگیهای جدیدی به پلتفرم اضافه نمیشوذ. ماینرها امنیت شبکه را فراهم میکنند؛ بدون حس رقابت در حوزه استخراج، احتمال دارد زنجیره توسط اشخاص غیرمجاز تصاحب شود و یا متوقف بشود.
فورک چیست؟
سافت فورکافزاری همگامی رخ میدهد که نرمافزار کپی و اصلاح میشود. پروژه اصلی همچنان وجود دارد، اما اکنون جدا از پروژه جدید است که به جهت مختلفی هدایت میشود. فرض کنید تیم وبسایت محتوای مورد علاقهتان در زمینه رمزارز با یک اختلاف بزرگ در مورد چگونگی پیشرفت مواجه شده باشد. یک بخش از تیم ممکن است سایت را در یک دامنه متفاوت کپی کرده و محتواهای متفاوتی نسبت به سایت اصلی منتشر کنند.
این پروژهها بر پایه یک موضوع مشترک ساخته میشوند و تاریخچه یکسانی دارند. مانند یک جاده یکپارچه که بعداً به دو قسمت تقسیم میشود.
توجه داشته باشید که این نوع اتفاقات در پروژههای منبعباز اغلب رخ میدهد و مدت ها قبل از ظهور بیتکوین یا اتریوم اتفاق میافتاده است.
فورک تصادفی
این فورکها زمانی رخ میدهند که چندین ماینر همزمان یک بلوک را استخراج کنند. همانطور که از نامش پیداست، فورکهای تصادفی به صورت تصادفی رخ میدهند و هیچ تغییری در پروتکل یا ساختار بلاکچین باعث ایجاد این فورکها نمیشود.
فورک عمدی
همانطور که از نامش پیداست، فورکهای عمدی به صورت عمدی اتفاق میافتند. کاربران از اقداماتی که باعث ایجاد این فورکها میشوند مطلع هستند و آن ها را تایید کرده اند. این تغییرات نحوه عملکرد بلاکچین را تغییر میدهند و منجر به ایجاد فورک میشوند.
فورکهای عمدی شامل سافت فورکها و هارد فورکها هستند.
مقایسه هارد فورک و سافت فورک
با وجود نامهای مشابه و در نهایت خدمت در راه هدف یکسان، هارد فورکها و سافت فورکها به طور قابل توجهی از یکدیگر متفاوت هستند.
هارد فورک چیست؟
هارد فورکها بهروزرسانیهای نرمافزاری هستند که با نسخههای قبلی ناسازگار هستند. به طور معمول، این اتفاق زمانی میافتد که نودها قوانین جدیدی اضافه میکنند که با قوانین نودهای قدیمی در تضاد است. نودهای جدید تنها میتوانند با کاربرانی که از نسخه جدید استفاده میکنند ارتباط برقرار کنند. نتیجه این است که بلاکچین تقسیم میشود و دو شبکه جداگانه ایجاد میشود: یکی با قوانین قدیمی و دیگری با قوانین جدید.
حالا دو شبکه بهصورت موازی در حال اجرا هستند. هر دو به ادامه اضافه کردن بلوکها و تراکنشها ادامه خواهند داد، اما دیگر روی یک بلاکچین یکسان کار نمیکنند. تا قبل از فورک، همه نودها یک بلاکچین یکسان داشتند (و آن تاریخچه باقی میماند)، اما پس از آن بلوکها و تراکنشهای مختلفی خواهند داشت.
از آنجایی که تاریخچه بلاکچین مشترک است، اگر قبل از فورک کوین داشته باشید پس از فورک کوین هایتان در هر دو شبکه وجود خواهد داشت. فرض کنید که زمانی که فورک در بلوک 600,000 رخ داد، شما 5 بیتکوین داشتید. میتوانید این 5 بیتکوین را در زنجیره قدیمی بلوک 600,001 خرج کنید، اما آنها هنوز در بلوک 600,001 بلاکچین جدید خرج نشدهاند. با فرض اینکه رمزنگاری تغییر نکرده باشد، کلیدهای خصوصی شما هنوز پنج کوین را در شبکه فورک شده نگه میدارند.
طرفداران بیتکوین کش میخواستند اندازه بلوک را افزایش دهند، در حالی که طرفداران بیتکوین مخالف این تغییر بودند.
افزایش اندازه بلوک نیاز به اصلاح قوانین دارد. این موضوع پیش از سافت فورک SegWit بود، بنابراین نودها تنها بلوکهای کوچکتر از 1 مگابایت را قبول میکردند. اگر بلوکی به اندازه 2 مگابایت بسازید که در سایر نواحی معتبر باشد، نودهای دیگر همچنان آن را رد خواهند کرد.
تنها نودهایی که نرمافزار خود را تغییر دادهاند تا بلوکهای بزرگتر از 1 مگابایت را قبول کنند، میتوانند این بلوکها را قبول کنند. البته این امر باعث ناسازگاری با نسخههای قبلی میشود، بنابراین تنها نودهایی با پروتکل اصلاح شده یکسان میتوانند با یکدیگر ارتباط برقرار کنند.
فورک های برنامه ریزی شده
در فورکهای برنامهریزیشده، نودها داوطلبانه نرمافزار خود را بهروزرسانی میکنند تا از قوانین جدید پیروی کنند و نسخه قدیمی را کنار بگذارند. کسانی که بهروزرسانی نکنند، در زنجیره قدیمی که دیگر افراد کمی در آن باقی مانده اند استخراج انجام میدهند.
سافت فورک چیست؟
سافت فورک یک بهروزرسانی سازگار با نسخههای قبلی است، به این معنا که نودهای بهروزرسانی شده همچنان میتوانند با نودهای بهروزنشده ارتباط برقرار کنند. در سافت فورک، معمولاً شاهد افزودن یک قانون جدید هستیم که با قوانین قدیمی تداخل ندارد.
به عنوان مثال، کاهش اندازه بلوک میتواند توسط سافت فورک اجرا شود. یک نمونه عملی موفق از سافت فورک، همان فورک Segregated Witness یا SegWit است که قبلا به آن اشاره کردیم. این فورک کمی پس از تجزیه بیتکوین به بیتکوین و بیتکوین کش تقسیم شد. SegWit یک بهروزرسانی بود که قالب بلوکها و تراکنشها را تغییر داد، اما با زرنگی طراحی شده بود. نودهای قدیمی همچنان میتوانستند بلوکها و تراکنشها را اعتبارسنجی کنند (قالببندی قوانین را نقض نمیکرد)، اما فقط نمیتوانستند آنها را درک کنند. برخی از فیلدها تنها زمانی قابل خواندن هستند که نودها از نرمافزار جدید استفاده کنند، در این صورت میتوانستند دادههای تکمیلی را تحلیل کنند.
حتی دو سال پس از فعالسازی SegWit، هنوز همه نودها بهروزرسانی نشدهاند. مزایایی برای این کار وجود دارد، اما چون هیچ تغییری نمایانگر اختلال در شبکه نیست،ضروریتی برای آن وجود ندارد.
کلام آخر
سافت فورک و هارد فورک از اهمیت بسیار زیادی برای موفقیت بلندمدت شبکههای بلاکچین برخوردارند. آنها به ما اجازه میدهند تا با وجود عدم حضور یک سازمان کنترل کننده در سیستمهای غیرمتمرکز تغییرات و بهروزرسانی ایجاد کنیم.
منبع خبر: nipoto.com/mag