FORK

آشنایی با انواع فورک و تاثیر آن‌ها روی بلاک چین

فورک با کپی کردن کد منبع یک پروژه‌ی در حال اجرا و ثبت تغییرات خاص در آن ایجاد می‌شود. در واقع با این تغییرات یک برنامه جدید از دل همان برنامه قبل متولد می‌شود.

تعریف فورک در دنیای ارز دیجیتال

فورک در انگلیسی به‌معنی چنگال و در اصطلاح به‌معنی نشعاب است. اما چرا تعبیر را در دنیای رمزارزها به کار می‌برند و معنای آن چیست؟ واقعیت این است که fork در بلاک چین دو معنای عمده دارد:

اتفاقی که باعث می‌شود یک بلاک چین شکسته شده و هر شاخه در دو مسیر جداگانه حرکت کنند.

تغییر در پروتکل بلاک چین یک ارز دیجیتال

آیا فورک باعث تغییر بستر بلاک چین می‌شود؟

مهم‌ترین ویژگی که از ابتدا برای بستر بلاک چین تعریف شده و از اصلی‌ترین ویژگی‌های آن به شمار می‌رود، این است که در بلاک چین ارزهای دیجیتال هیچ‌چیز قابل تغییر نیست. در حقیقت این زنجیره اطلاعاتی تا زمانی‌که مورد توافق و پذیرش افراد قرار دارد، به شکلی منظم و تعیین شده به مسیر خود ادامه می‌دهد.

از طرفی ما در هر رمز ارز با قوانین مشخصی روبه‌رو هستیم که به آن‌ها پروتکل می‌گویند و شبکه با همین قوانین فعالیت می‌کند. این پروتکل‌ها شامل سرعت تراکنش‌ها، اندازه هر بلاک و از این موارد هستند با این حال در بسیاری از موقعیت‌ها، همه افراد حاضر در شبکه با قوانین موافق نیستند و قصد تغییر آن‌ها را دارند. درست در همین شرایط پای Fork به بازار ارزهای دیجیتال باز می‌شود.

فورک با کپی کردن کد منبع یک پروژه‌ی در حال اجرا و ثبت تغییرات خاص در آن ایجاد می‌شود. در واقع با این تغییرات یک برنامه جدید از دل همان برنامه قبل متولد می‌شود.

در دنیای ارزهای دیجیتال نیز این اتفاق به همین ترتیب رخ می‌دهد. زمانی‌که در شبکه یک رمز ارز fork ایجاد می‌شود، آن را به دو بخش تقسیم می‌کند و به این ترتیب شبکه به‌روزرسانی می‌شود.

علت ایجاد فورک چیست؟

سه دلیل عمده برای ایجاد انشعاب در شبکه وجود دارد:

۱-اختلاف فنی

یکی از فورک‌های بیت کوین، بیت کوین کش است. علت ایجاد آن نیز نظرات مختلف درخصوص مقیاس‌ پذیری بیت کوین بود. گروهی که از میزان سرعت و کارمزدها در معامله بیت کوین ناراضی بودند، تغییرات بزرگی ایجاد کردند که نتیجه آن بیت کوین کش با سایز بلاک بزرگ‌تر و قوانین جدید بود.

۲-بازگشت سرمایه و اعتماد اعضا

سال ۲۰۱۶ رخنه‌ای امنیتی در اتریوم ایجاد شد و میلیون‌ها دلار  سرمایه کاربران از دست رفت. پس از این حادثه اتریوم به اجبار فورک شد و اکثر اعضای جامعه آن به شبکه جدید منتقل شدند. نسخه قدیمی اتریوم تحت عنوان اتریوم کلاسیک باقی ماند و برخی از اعضا همان‌جا ماندند.

۳-آپدیت برای افزودن قابلیت‌های جدید

شبکه بلاک چین مانند هر اکوسیستم زنده و فعال دیگری نیازمند آن است تا به‌روزرسانی شده و قابلیت‌های جدیدی در اختیار کاربران بگذارد. خیلی اوقات فورک‌‌ها به همین دلیل ایجاد می‌شوند.

انواع فورک کدامند؟

در برنامه‌نویسی ما با دو نوع fork مواجه هستیم که هر کدام از آن‌ها ویژگی‌های خاص خود را دارند. فورک‌‌ها به دو گروه هارد فورک و سافت فورک تقسیم می‌شوند. در ادامه به بررسی هر کدام از آن‌ها می‌پردازیم.

سافت فورک (Soft fork) چیست؟

یک گروه فورک‌ها backwards compatible هستند؛ به این معنا که با نسخه‌های قبلی خود سازگاری دارند. این دسته را به نام سافت فورک می‌شناسیم. حال باید بررسی کنیم که این سازگاری چگونه اتفاق می‌افتد؟

زمانی‌که یک soft fork ایجاد می‌شود نیازی نیست که همه اعضای جامعه شبکه (شرکت کنندگان) نرم‌افزار خود را به‌روزرسانی کنند، اگر اکثریت افراد این کار را بکنند کافی است.

آن‌ها می‌توانند حتی با استفاده از نسخه‌های قبلی اعتبارسنجی و تاییدیه‌ها را انجام دهند، بلاک‌های جدید را شناسایی کنند و رفتار آن‌ها کاملا با شبکه‌ سازگار است. البته موضوعی که باید اشاره کرد این است که فعالیت گروهی که آپدیت را دریافت نکرده‌اند، تحت تاثیر قرار می‌گیرد.

بگذارید این موضوع را با یک مثال آسان‌تر کنیم:

تصور کنید سایز بلاک‌ها از ۱ مگابایت به ۷۰۰ کیلوبایت تغییر کند. اگر چنین اتفاقی بیفتد حتی نودهایی که هنوز شبکه خود را به‌روزرسانی نکرده‌اند در همان سافت‌فورک ایجاد شده می‌توانند تمام تراکنش‌های جدید را رصد کنند.

چالش اصلی زمانی است که یک از ماینرهای شبکه، آپدیت را انجام نداده باشد؛ در این‌صورت اگر بخواهد بلاک جدیدی را ثبت کند، شبکه درخواست او را رد می‌کند. همین وقفه‌ای که در کار استخراج‌کنندگان رمز ارز ایجاد می‌شود، بهانه‌ای است تا آن‌ها هم برای دریافت نسخه جدید شبکه اقدام کنند.

نمونه‌های soft fork:

BIP66: برای اعتبارسنجی امضای شبکه بیت ‌کوین

P2Sh: برای افزودن قابلیت آدرس‌های چند امضایی روی شبکه‌ی بیت کوین

هارد فورک (Hardfork) چیست؟

برخلاف سافت ورک، هارد فورک شکلی از تغییرات نرم‌افزاری شبکه است که با نسخه‌های قدیمی خود سازگار نیست و به اصطلاح آن را not backwards compatible می‌دانند.

زمانی‌که شبکه چنین به‌روزرسانی را تجربه می‌کند تمام اعضای جامعه (شرکت کنندگان) باید نرم‌افزار خود را آپدیت کنند تا فعالیت آن‌ها برای تایید تراکنش‌ها و اعتبارسنجی مورد پذیرش شبکه قرار بگیرد. به این ترتیب هر نودی که به‌روزرسانی جدید را اجرا نکند فعالیتش متوقف و از شبکه جدا می‌شود.

با ایجاد هر Hard fork شبکه برای همیشه به دو شاخه کاملا مجزا تقسیم می‌شود. البته بلاک چین قدیمی تا زمانی‌که اعضای آن فعال باشند، به حیات خود ادامه می‌دهد.

معروف‌ترین هاردفورک‌‌هایی که در شبکه بلاک چین اتفاق افتادند بیت کوین کش و اتریوم کلاسیک هستند که تغییرات بزرگی به همراه آوردند.

انواع هارد فورک بر اساس تغییرات شبکه

هاردفورک براساس تغییراتی که در شبکه ایجاد می‌کند به سه نوع تقسیم می‌شود:

۱-هارد فورک برنامه‌ریزی شده

Planned Hard Forks مفهومی است که در برنامه بلندمدت پروژه مورد نظر قرار دارد. این به‌روزرسانی در پروتکل برای آن است که تغییراتی در ویژگی‌های بلاک چین ایجاد شود. مسئله مهم در این هارد فورک لزوم تمام اعضای شبکه به آپدیت است.

بیزانس یک hard fork اتریوم بود که از قبل در Roadmap (نقشه راه) آن تعریف شده بود. این به‌روزرسانی در واقع فاز اول اتریوم ۲ بود که در اکتبر ۲۰۱۶ اتفاق افتاد. هدف این فورک بهبود مقیاس‌پذیری و یکپارچه‌سازی تراکنش‌های خصوصی بود.

در مونرو هم اینگونه بود که یک ویژگی جدید تحت عنوان حلقه معاملات محرمانه (RCT) به بلاک چین اضافه شد تا هدف بهبود حریم خصوصی و امنیت را دنبال کند.

۲-هاردفورک بحث‌برانگیز

Contentious Hard Forks زمانی اتفاق می‌افتد که اعضای یک شبکه بر سر برخی تغییرات هم‌نظر نباشند. به این ترتیب گروهی روی شبکه، یک زنجیره جدید تعریف می‌کنند تا کدهای مدنظرشان را ایجاد کنند.

بیت کوین کش و اتریوم کلاسیک حاصل چنین هارد فورکی هستند.

۳-سکه‌های مشتق شده

یکی دیگر از هارد فورک‌ها برای شبکه Spin-off Coins است. به این ترتیب که هرکس می‌تواند با استفاده از کد منبع بیت کوین یک رمز ارز جدید بسازد. خالق رمز ارز جدید می‌تواند براساس سلیقه شخصی ویژگی‌های تازه‌ای به ارز خود اضافه کند. لایت کوین را می‌توان مثال مناسبی برای این مورد دانست. این سکه در واقع فورک بیت کوین بود که چنین تغییراتی داشت: کاهش زمان ساخت بلاک از ۱۰ به ۲.۵ دقیقه، استفاده از الگوریتم Scrypt، افزایش تعداد سکه‌ها به ۸۴ میلیون در حالی‌که برای بیت کوین ۲۱ میلیون است.

آیا fork روی تغییر قیمت ارز دیجیتال تاثیر دارد؟

تا اینجادانستیم که هر کسی به دسترسی به کد منبع به‌راحتی می‌تواند یک فورک ایجاد کند ولی مسئله این است که همه آن‌ها نمی‌توانند اثر خاصی داشته باشد. آن چیزی که می‌تواند دنیای یک رمز ارز را به‌طور کلی تغییر دهد، فورک‌های بزرگ با پشتیبانی رهبران فضای ارز دیجیتال هستند.

چرا رهبران فضای ارز دیجیتال تا این حد اهمیت دارند؟ شما تصور کنید شخص X  مالک ۴۰۰۰۰ بیت کوین باشد. با توجه به قیمت این ارز، چنین شخصی یک از اعضای مهم جامعه بیت کوین است و همیشه اخبار مهم حوزه را دنبال می‌کند. با آگاهی که او از فضا دارد، برای ایجاد فورک بیت کوین کش آماده می‌شود.

اگر خوش‌شانس باشد و کیف پول مورد استفاده او از بیت کوین کش هم پشتیبانی کند، به ازای هر بیت کوین، توکن بیت کوین کش خواهد داشت. این یعنی همان ۴۰۰۰۰ بیت کوین کش!

همین چرخه سبب می‌شود تا او به این فورک علاقه بیشتری پیدا کند و باعث اثرگذاری صعودی آن شود. به همین صورت دیگر سرمایه‌داران نیز حامی یک فورک می‌شوند.

در نظر داشته باشید زمانی که در شبکه ارز دیجیتال  فورک اتفاق می‌افتد، ارزشش در زنجیره پخش می‌شود. مثال دقیق این اتفاق قیمت بیت کوین قبل و بعد از فورک بیت کوین کش است.

فورک؛ همراه جدانشدنی از دنیای کریپتو

فورک‌ها بخش جدایی ناپذیری از دنیای رمزارزها و بلاک چین هستند. در تاریخ کوتاه این تکنولوژی دفعات بسیاری پیش آمده که فورکی منفی بوده و به کلاه‌برداری ختم شده است اما نمی‌توانیم همیشه نسبت به آن‌ها بدبین باشیم.

در بسیاری از مواقع یک فورک باعث بهبود وضعیت شبکه و رشد آن خواهد شد. در واقع می‌توانیم بگوییم این دسترسی آزاد به کد منبع و امکان تولد کوین‌هایی بر اساس سلیقه و دیدگاه افراد، همان ویژگی محبوب و جذاب بیت کوین و بلاک چین است.

افراد در یک محیط غیرمتمرکز با در دست داشتن منبع باز امکان این را دارند تا آزادانه عمل کنند و تصمیم بگیرند. این‌چنین است که می‌توان گفت در این جامعه هر کس صدایی دارد و می‌تواند با همان صحبت کند تا دیدگاهش شنیده‌ شود.