فورک (Fork) یکی از مفاهیم کلیدی در دنیای بلاکچین است که در عین سادگی، تاثیر زیادی بر نحوه عملکرد شبکههای بلاکچینی میگذارد. در این مقاله بهطور جامع به توضیح مفهوم فورک، انواع آن، دلایل بهوجود آمدن فورکها و نحوه تاثیرگذاری آنها بر بلاکچینها خواهیم پرداخت.
مفهوم فورک در بلاک چین
فورک در بلاکچین به تغییرات یا بهروزرسانیهایی اطلاق میشود که در کد شبکه بلاکچین اعمال میشود و باعث ایجاد انشعاب یا تغییرات در زنجیره بلوکها میگردد. بهعبارت ساده، فورک یعنی زمانی که بلاکچین به دو نسخه تقسیم میشود و این نسخهها ممکن است از یکدیگر متفاوت باشند.
در بلاکچینها، دادهها به صورت بلوکهایی از اطلاعات ذخیره میشوند و هر بلوک به بلوک قبلی متصل است تا یک زنجیره ایجاد شود. فورک زمانی رخ میدهد که گروهی از گرههای شبکه تصمیم بگیرند بهروزرسانیهایی انجام دهند که با نسخه قبلی شبکه سازگار نباشد و باعث تغییرات اساسی در قوانین شبکه و نحوه تایید تراکنشها شود.
بلاکچینها بهطور معمول از یک توافق جمعی (consensus) پیروی میکنند که در آن تمام شرکتکنندگان در شبکه باید به یک توافق مشترک برسند. هر تغییر عمده در این توافقها میتواند به فورک منجر شود.
انواع فورک در بلاک چین
فورکها در بلاکچین بهطور کلی به دو نوع اصلی تقسیم میشوند: فورک نرمافزاری (Soft Fork) و فورک سختافزاری (Hard Fork). این دو نوع فورک، تفاوتهای اساسی در نحوه ایجاد و تاثیرگذاری بر شبکه دارند.
فورک نرم افزاری (Soft Fork)
فورک نرمافزاری تغییراتی در کد بلاکچین است که معمولاً با نسخههای قبلی شبکه سازگار است. این نوع فورک زمانی رخ میدهد که تغییرات در قوانین شبکه بهگونهای باشد که گرههای قدیمی (قدیمیتر از نسخه جدید) هنوز بتوانند با شبکه جدید ارتباط برقرار کنند، اما گرههای جدید (با نسخه جدید) از آن قوانین تبعیت میکنند. در نتیجه، شبکه همچنان بهطور کلی قابلاستفاده باقی میماند.
- سازگاری با نسخه قبلی: فورکهای نرمافزاری معمولاً بهطور سازگار با نسخههای قبلی عمل میکنند.
- نیاز به همزمانی کمتر: فورک نرمافزاری به دلیل سازگاری با نسخههای قبلی نیاز به پذیرش کامل از سوی همه شرکتکنندگان ندارد.
- انعطافپذیری بالا: این فورکها معمولاً در شرایطی اعمال میشوند که تغییرات جزئیتری نیاز است.
فورک سخت افزاری (Hard Fork)
فورک سختافزاری زمانی بهوجود میآید که تغییرات اعمالشده در پروتکل بلاکچین بهقدری اساسی است که باعث ایجاد ناسازگاری کامل با نسخههای قبلی میشود. این نوع فورک نیاز به تغییرات عمده در شبکه دارد و میتواند موجب ایجاد یک بلاکچین کاملاً جدید شود. در فورک سختافزاری، تمامی گرهها باید بهروزرسانی کنند و ممکن است در نهایت شبکههای جدیدی با قوانین مختلف از یکدیگر جدا شوند.
- ناهماهنگی با نسخههای قبلی: فورک سختافزاری باعث ایجاد شبکههای جدید با ویژگیها و قوانین متفاوت میشود.
- نیاز به پذیرش عمومی: برای اجرای این نوع فورک، تمامی شرکتکنندگان باید قوانین جدید را پذیرفته و بهروزرسانیهای لازم را انجام دهند.
- تفاوتهای اساسی در قوانین اجماع: این فورکها ممکن است شامل تغییرات در الگوریتمهای اجماع، اندازه بلاکها یا مدت زمان تایید تراکنشها باشند.
چرا فورک در بلاک چین به وجود می آید؟
فورکها معمولاً بهدلیل نیاز به بهروزرسانیهای فنی، امنیتی یا حتی تغییرات اجتماعی بهوجود میآیند. دلایل مختلفی برای ایجاد فورکها وجود دارد، از جمله اصلاح مشکلات امنیتی، بهبود عملکرد شبکه یا ایجاد تغییرات اساسی در قوانین شبکه.
۱. بهبود امنیت
یکی از دلایل اصلی برای ایجاد فورک، رفع مشکلات امنیتی است. بلاکچینها بهدلیل ویژگیهای خاص خود، ممکن است با تهدیدات امنیتی روبهرو شوند. فورکها میتوانند برای اصلاح آسیبپذیریها و افزایش امنیت شبکه انجام شوند. بهعنوان مثال، فورکهای نرمافزاری میتوانند تغییراتی در الگوریتمهای هشینگ یا زمانبندی تراکنشها اعمال کنند تا امنیت شبکه را تقویت کنند.
۲. افزایش مقیاس پذیری
با افزایش استفاده از بلاکچینها، نیاز به پردازش تعداد بیشتری از تراکنشها بهطور همزمان نیز افزایش مییابد. فورکها میتوانند بهمنظور افزایش مقیاسپذیری و توان پردازش شبکه بهوجود آیند. بهعنوان مثال، افزایش اندازه بلوکها یا استفاده از تکنولوژیهای جدید مانند “Segregated Witness” (SegWit) میتواند به کاهش زمان تایید تراکنشها و افزایش ظرفیت بلاک کمک کند.
۳. اختلافات اجتماعی و فنی
بلاکچینها جامعهای از توسعهدهندگان، استخراجکنندگان و کاربران دارند که بهطور مداوم با یکدیگر در حال تعامل هستند. گاهی اوقات اختلافات اجتماعی یا فنی باعث ایجاد فورک میشود. بهعنوان مثال، ممکن است گروهی از اعضای جامعه تصمیم بگیرند که تغییرات خاصی در شبکه اعمال کنند که با دیدگاههای سایر اعضا همخوانی ندارد. این امر میتواند بهصورت یک فورک سختافزاری یا نرمافزاری منجر شود.
۴. بهبود پروتکل ها
پروتکلهای بلاکچین بهطور مداوم نیاز به بهروزرسانی دارند. برای اضافه کردن ویژگیهای جدید یا بهینهسازی شبکه، فورکها بهوجود میآیند. بهعنوان مثال، تغییراتی در قوانین اجماع، شفافیت تراکنشها یا کارمزدها میتواند موجب بهروزرسانیهایی شود که در نهایت به فورک میانجامد.
فورک های مشهور در تاریخ بلاک چین
در تاریخ بلاکچین، چندین فورک مهم و معروف وجود داشته است که تاثیرات زیادی بر دنیای ارزهای دیجیتال و فناوری بلاکچین داشتهاند.
۱. فورک بیت کوین و بیت کوین کش (Bitcoin Cash)
در سال ۲۰۱۷، بهدلیل اختلافات در مورد مقیاسپذیری شبکه بیتکوین، یک فورک سختافزاری بهوجود آمد که در نتیجه آن بیتکوین کش (Bitcoin Cash) ایجاد شد. این فورک بهمنظور افزایش اندازه بلوکها از ۱ مگابایت به ۸ مگابایت انجام شد تا ظرفیت شبکه برای پردازش تراکنشها بیشتر شود. این فورک بهدلیل اختلافات میان جامعه توسعهدهندگان و استخراجکنندگان بیتکوین صورت گرفت و بهطور قابلتوجهی توجهات زیادی را به خود جلب کرد.
۲. فورک اتریوم و اتریوم کلاسیک (Ethereum Classic)
در سال ۲۰۱۶، پس از حمله هکری به DAO (یک سازمان غیرمتمرکز در شبکه اتریوم)، فورک سختافزاری در اتریوم بهوجود آمد که موجب شد اتریوم به دو بخش تقسیم شود: اتریوم (ETH) و اتریوم کلاسیک (ETC). این فورک بهدلیل تصمیم برای بازگشت به وضعیت قبل از حمله هکری ایجاد شد، که باعث ایجاد نسخهای از اتریوم شد که تغییرات را در بلاکچین خود اعمال نکرد.
۳. فورک لایت کوین و لایت کوین کلاسیک (Litecoin Classic)
پس از موفقیت لایتکوین، برخی از توسعهدهندگان تصمیم به ایجاد یک فورک جدید گرفتند که بیشتر به ویژگیهای اولیه لایتکوین پایبند باشد. این فورک به لایتکوین کلاسیک تبدیل شد.
نتیجه گیری
فورکها در بلاکچین نهتنها بهعنوان تغییرات فنی شناخته میشوند، بلکه میتوانند باعث ایجاد شبکههای جدید با ویژگیهای مختلف شوند. هر نوع فورک بسته به شرایط فنی و اجتماعی میتواند تاثیرات عمیقی بر روی نحوه عملکرد شبکه بلاکچین و آینده آن بگذارد. درک علتها، انواع فورکها و تاریخچه آنها کمک میکند تا درک بهتری از چگونگی تکامل بلاکچینها داشته باشیم و بتوانیم بهطور مؤثری از این فناوری استفاده کنیم.