فورک چیست؟
دوره بنیادین ارزهای دیجیتال - جلسه پنجم
فورک چیست؟
هارد فورک چیست؟
سافت فورک چیست؟
فورک به چه دلیلی رخ میدهد و چرا برایمان اهمیت دارد؟
تأثیر فورک بر عملکرد بلاک چین چگونه است و آیا باعث تغییر قیمت ارزهای دیجیتال خواهد شد؟
اگر در فضای ارزهای دیجیتال نسبتاً تازه وارد هستید، احتمالاً گاهی با اصطلاحاتی مواجه میشوید که معنای آنها در داخل و بیرون از دنیای بلاک چین، زمین تا آسمان فرق دارد! یکی از این اصطلاحات فورک است که احتمالأ در دنیای فیزیکی شما را یاد چنگال (!) یا انشعابات لولهکشی ساختمان میاندازد! مسأله وقتی بغرنجتر میشود که هاردفوک و سافت فورک را هم به این مجموعه اصطلاحات اضافه کنیم و بخواهیم از معنی ظاهریشان نقش آنها را در بلاک چین حدس بزنیم. اگر شما هم در درک مفهوم فورک و نقش فورکها در بلاک چین با مشکل مواجهید، این جلسه آموزشی را تا انتها بخوانید.
پیش از هرچیز، بهتر است با معنی فورک در نرمافزارها آشنا شویم. اصطلاح فورک در توسعه نرمافزارهای متنباز، برای اشاره به تقسیمشدن یک پروژه به دو یا چند نسخه دیگر به کار میرود که معمولاً مسیر نسخه اصلی پروژه را قبول ندارند و آن را طی نمیکنند. در حقیقت با کپیکردن کد منبع یک پروژه و ایجاد تغییراتی در آن، برنامهای جدید از دل برنامه قبلی بیرون میآید. در بلاک چین هم که نوعی پروتکل نرمافزاری است، فورک به «تقسیم بلاک چین» منجر میشود؛ شرایطی که در آن بلاک چین به دو زنجیره مختلف تقسیم میشود و هرکدام قوانین اجماع مطلوب خود را دنبال میکنند.
این روش اغلب زمانی بهکار گرفته میشود که یک گروه خاص یا تیم پروژه، مایل به راهاندازی مسیر جدید یا نسخه جدیدی از نرمافزار بهصورت همزمان باشند. فورکهایی که در این مقاله شرح میدهیم، فورکهایی هستند که یا برای تغییر قوانین اجماع، یا برای اعمال قوانین جدید در همان بلاک چین بهکار میروند.
بهبیان ساده، فورک (fork) یکی از راههای بهروزسانی، اعمال تغییرات و ارتقای بلاک چین است که باعث تغییر در کد یا پروتکل اصلی شبکه میشود. بعضی از این تغییرات با پروتکل قبلی سازگاری دارند که اصطلاحاً آنها را سافت فورک (soft fork) یا انشعاب نرم مینامیم و برخی دیگر، باعث ایجاد تغییرات پایهای در عملکرد بلاک چین میشوند بهنحوی که با پروتکل قبلی ناسازگار خواهند بود. این دسته از فورکها را هارد فورک (hard fork) مینامیم. همانطور که احتمالاً میدانید، اطلاعات ثبت شده در بلاک چین قابل تغییر نیستند و وقتی یک بلاک چین فعالیت خود را آغاز میکند، تا زمانی که کاربران آن را بپذیرند، هیچ کس نمیتواند جلوی کار آن را بگیرد. در هر کدام از ارزهای دیجیتال یک سری قوانین که اصطلاحاً به آن پروتکل میگوییم را برنامهنویسان تعیین کردهاند و یک بلاک چین براساس همان پروتکل و قوانین تا ابد به کار خود ادامه میدهد.
مثلاً چند مورد از قوانین اصلی شبکه بیت کوین شامل موارد زیر است:
- زمان هر بلاک۱۰ دقیقه باشد؛
- هر بلاک ۱ مگابایت ظرفیت داشته باشد؛
- عرضه کل ۲۱ میلیون واحد باشد.
اما اگر کسی با قوانین بیت کوین یا هر ارز دیجیتال دیگری مخالف باشد و بخواهد نسخه دلخواه خود را با استفاده از کد بلاک چین اولیه ایجاد کند، چگونه این کار را انجام میدهد؟ اگر در شبکه یک ارز دیجیتال، یک باگ یا رخنه امنیتی کشف شود که داراییهای کاربران را تهدید کند، چگونه میتوان آن را رفع کرد؟ اگر برای افزایش قابلیتهای یک بلاک چین و پیشرفت آن نیاز به ایجاد تغییراتی در کد بلاک چین داشته باشیم چه؟
راهحل ساده است. بهروزرسانی یا ایجاد بلاک چین جدید که اصطلاحاً به آن فورک میگویند. وقتی گروهی از برنامهنویسان از شرایط و قوانین یک ارز دیجیتال ناراضی باشند یا اینکه شبکه با مشکلاتی مواجه باشد که حل آن ضروری است، راهحلی به نام فورک پیش روی این افراد است.
فورکها میتوانند به روشی سازگار با قبل (backward-compatible) و یا ناسازگار با قبل (backward-uncompatible) در شبکه اعمال شوند. (درباره این موضوع در ادامه صحبت میکنیم). بهطور خلاصه، واژه فورک یا انشعاب فقط یک اصطلاح برای زمانی است که یک نرمافزار یا یک پروتکل، بهروزرسانی میشود. در حوزه ارزهای دیجیتال و بلاک چین فورک زمانی اتفاق میافتد که شبکه به دو بخش تقسیم شود.
برای دیدن جلسه آموزشی قبلی لینک را دنبال نمایید.
برای دیدن جلسه آموزشی بعدی لینک را دنبال نمایید.