فورک در ارز دیجیتال چیست ؟ وقتی از شما خواسته میشود یکی از برنامههای تلفن همراه خود را به روز کنید، احتمالاً بدون معطلی اینکار را انجام میدهید. حتی شاید تلفن همراه شما به صورت خودکار آپدیت شده و شما حتی متوجه این اتفاق نشوید. هر چه باشد اینکار فرآیندی ضروری است. اگر آخرین نسخه یک نرمافزار را نصب نکنید، دسترسی به خدمات جدید آن نخواهید داشت. در این مقاله، به شما میآموزیم که چطور میتوان شبکه ارزهای دیجیتال را علی رغم غدم وجود اختیارات مرکزی، ارتقا داد. برای این کار، از دو مکانیسم مختلف استفاده میشود: هارد فورک و سافت فورک
ماهیت غیرمتمرکز بلاکچینهای عمومی (مانند بیت کوین و اتریوم) بدین صورت است که شرکت کنندگان در شبکه باید بتوانند در مورد وضعیت بلاکچین (دفترکل و بلاکهای عمومی مشترک و پروتکل بلاکچین) به توافق برسند. اتفاق نظر در میان گرههای شبکه منجر به ایجاد یک بلاکچین منفرد میشود که حاوی دادههای تأیید شده (تراکنشها) است. با این حال ،اکثر مواقع، گرههای موجود در شبکه نمیتوانند در مورد وضعیت آینده بلاکچین اتفاق نظر داشته باشند. این رویداد به فورک یا انشعاب منجر میشود ، یعنی زنجیره ایدهآل به دو یا چند زنجیره تقسیم میشود که همه معتبر هستند.
فورک (Fork) چیست؟
برای درک طریقه کار فورک ، بهتر است اول با اعضایی که در این فرایند سهیم هستند آشنا شوید. به طور کلی در بیتکوین، 3 مجموعه اصلی (توسعهدهندگان، استخراج کنندگان و گرهها) در این فعالیت نقش دارند. این مجموعهها به شبکه کمک میکنند.
توسعهدهندگان: توسعهدهندگان به صورت کلی مسئول ساخت و به روزرسانی کد ها هستند. در کوین شما، هرکسی میتواند در این فرایند سهیم باشد. این کد به صورت عمومی در دسترس قرار میگیرد، بنابراین تغییرات برای بررسی سایر توسعه دهندگان در دسترس قرار میگیرد.
ماینر: امنیت شبکه بر عهده ماینرهاست. آنها کد ارز دیجیتال را اجرا کرده و با استفاده از منابع خود، بلوکهای جدید را به بلاکچین اضافه میکنند. برای مثال، در بیتکوین این فرایند با استفاده از الگوریتم اثبات کار انجام میشود. این ماینرها به خاطر تلاشهایشان بلوکی به عنوان پاداش میگیرند.
گرههای اصلی: گرههای اصلی ستون فقرات شبکه ارزهای دیجیتال هستند. آنها بلوکها و تراکنشها را تایید، ارسال و دریافت میکنند و کپی از آنها در بلاکچین حفظ میکنند.
اگر افراد تصمیم بگیرند از شبکه استفاده نکنند، کوین مستقیماً ارزش خود را از دست میدهد. این فرایند تاثیر مستقیمی بر ماینرها خواهد گذاشت (زیرا ارزش پاداش آنها کمتر میشود). در نتیجه نرمافزار اختصاصی نیست. و کاربران میتوانند تغییرات دلخواه خود را ایجاد کنند. اگر کسی نرمافزار اصلاح شده شما را استفاده کند، در این صورت شما یک فورک ایجاد کردهاید.
Fork چگونه عمل میکند؟
هر گره دارای اطلاعات کامل بلاکچین است و از این رو میتوان هر گره را به عنوان یک دفتر حساب کرد. به همین دلیل است که بلاکچین اغلب با عنوان “فناوری توزیع شده لجر” (DLT) نیز شناخته می شود. هر گره در یک بلاکچین از اختیارات یکسانی برخوردار است. اگر توافق در مورد اعتبار تراکنشها حاصل شود ، هر گره میتواند یک بلاک جدید اضافه کند. برای دستیابی به این اجماع، یک گره مجبور است برای حل یک معما رمزنگاری و ارائه شواهدی از آن، عملیات قابل توجهی را با سرعت بالا انجام دهد. این فرایند اثبات کار (POW) نامیده می شود. به طور خلاصه ، برای افزودن یک بلاک جدید ، یک گره باید به اجماع برسد.
برای مثال در یک بلاکچین، پروتکل موجود بلوک هایی با اندازه 1 مگابایت (MB) را الزام می کند. “ماینرها” ، از این قانون 1 مگابایتی پیروی می کنند تا بتوانند پاداش استخراج خود را دریافت کنند. حال اگر ماینر تصمیم بگیرد بلوک 2 مگابایتی ایجاد کند، در ابتدا سایر ماینرها این بلوک را نادیده میگیرند زیرا با قوانین مطابقت ندارد. به یاد داشته باشید که سایر ماینرها به دنبال جوایزی هستند و برای این کار باید به قوانین پایبند باشند. بیایید فرض کنیم ماینری همچنان به ایجاد بلوکهای 2 مگابایتی ادامه دهد. اگر سایر ماینرها همچنان این بلوک ها را نادیده بگیرند، در نهایت زنجیره بلوک های 2 مگابایتی کوتاه ترین زنجیره خواهد بود.
اگر 25٪ از استخراج کنندگان در شبکه احساس کنند که باید بلاکهای 2 مگابایتی به جای 1 مگابایت ایجاد شوند، و شروع به اضافه کردن بلاکها در بالای بلاکهای 2 مگابایتی کنند، یک Fork یا انشعاب واقعی داریم! اگر یک ماینر همچنان به اجرای نرم افزار قدیمی ادامه دهد ، معاملات جدید را فاقد اعتبار می داند مثل زمانی که Ethereum بر سر سازمان مستقل غیر متمرکز خود (DAO) فورک شد و به دو نهاد Ethereum و Ethereum Classic تبدیل شد.
چرا فورک اتفاق میافتد؟
- اضافه کردن قابلیت های جدید:
کد بلاکچین به طور مرتب ارتقا مییابد. از آنجا که اکثر زنجیرههای بلوکی عمومی منبع باز هستند ، توسط افرادی از سراسر جهان ساخته میشود. مشکلات ایجاد شده حل و فصل میشوند و نسخههای جدید در صورت مناسب بودن منتشر میشوند.
- رفع مشکلات امنیتی:
بلاکچین و ارزهای رمزنگاری شده یک فناوری نسبتاً جدید در مقایسه با ارز سنتی (اسکناس ، سکه ، چک) است . تحقیقات برای درک کامل آن هنوز ادامه دارد. بنابراین، نسخهها بهم ریخته و به روزرسانی میشوند تا مشکلات امنیتی پیش آمده را برطرف کنند.
- برگشت دادن مبالغ از دست رفته:
در صورت مشاهده نقض قوانین و سواستفاده، کلیه تراکنشهای یک دوره خاص می تواند باطل شود.
تفاوت هارد فورک و سافت فورک
فورک یا انشعاب می تواند براساس سازگاری به عقب، پروتکل زنجیره بلاک و زمان لحظه استخراج بلاک جدید ایجاد شود. انواع Fork به شرح زیر است:
Soft Fork: وقتی پروتکل بلاکچین به روشی سازگار با گذشته تغییر میکند.
Hard Fork: هنگامی که پروتکل بلاکچین به روشی غیر سازگار با گذشته تغییر میکند.
Temporary Fork یا فورک موقت: هنگامی که دو استخراج کننده همزمان بلوک جدیدی استخراج میکنند.
سافت فورک (Soft Fork)
سافت فورک، یک بروزرسانی سازگار با نسخه قدیمی (backward-compatible) است. در این حالت گرههای ارتقا یافته، همچنان میتوانند با گرههایی که به روز نیستند ارتباط برقرار کنند. معمولاً در سافت فورک، شاهد قوانینی هستیم که با قانون قدیمی مغایرت ندارد. برای مثال، کاهش اندازه بلوک توسط Soft Fork اتفاق میافتد. اگرچه محدودیتی در اندازه بلوک ایجاد شده، اما این محدودیت مختص بلوکهای بزرگ است و بلوکهای کوچک محدودیتی ندارند.
هنگامی که تغییری در نرم افزار اجرا شده روی گره ها (گره های کامل) به عنوان یک شرکت کننده در شبکه ایجاد میشود، این تغییر به گونه ای است که بلاک های جدید براساس قوانین جدید استخراج میشوند. همچنین توسط نسخه قدیمی نرم افزار معتبر شناخته می شوند. این ویژگی به عنوان سازگاری به عقب نیز خوانده می شود. Soft Fork شامل آپدیت های اختیاری هستند.
به روزرسانی SegWit شبکه Bitcoin کلاس جدیدی از آدرس (Bech32) را اضافه کرد. با این حال ، این تغییر آدرس P2SH موجود را بی اعتبار نمیکند. یک گره کامل با آدرس نوع P2SH میتواند تراکنش معتبری را با گرهای از آدرس نوع Bech32 انجام دهد.
هارد فورک (Hard Fork)
هارد فورک به این معنی است که وقتی تغییری در زنجیره بلوک رخ دهد ، غیرقابل برگشت خواهد بود. معمولاً به این دلیل است که تغییرات با نسخههای قدیمی بلاکچین سازگار نیستند. در نتیجه، هنگامی که به روزرسانی یا تغییر در بلاکچین اعمال میشود، نسخه جدید از بلاکچین اصلی فورک میشود و در واقع دو بلاکچین فعال وجود دارد. نسخه اصلی و نسخه جدید که دارای قوانین جدید است هر کاربری که مایل به اتصال به شبکه تازه انشعاب شده باشد باید به نسخه جدید ارتقا یابد.
اگر تغییر به گونه ای باشد که بلاکهای جدید استخراج شده بر اساس قوانین جدید (در پروتکل Blockchain) از نظر نسخه قدیمی معتبر شناخته نشوند، هارد فورک ایجاد می شود. وقتی هارد فورک اتفاق می افتد ، ارز جدیدی به وجود می آید (با ارز اصلی معتبر) مانند اتریوم و بیت کوین. Hard Fork ها معمولاً قوانین اجماع را تغییر میدهند (به عنوان مثال اندازه بلوک ، الگوریتم استخراج یا پروتکل اجماع). به عنوان مثال به روزرسانی جدید Casper در Blockchain Ethereum که در آن پروتکل اجماع از نوع Proof of Work (Pow) به Proof of Stake (PoS) تغییر خواهد کرد. گرههایی که به روزرسانی Casper را نصب میکنند از پروتکل اجماع جدید استفاده می کنند. گرههای کامل که نصب به روزرسانی Casper را انتخاب نکنند با گرههای کامل سازگار نیستند.
3 نوع هارد فورک وجود دارد:
هاردفورک برنامه ریزی شده (Planned Hard Forks): هارد فورک برنامه ریزی شده به یک به روزرسانی اشاره دارد که قبلاً در نقشه راه پروژه ترسیم شده و به صورت عمومی شناخته شده است. این بروزرسانی مشابه به روزرسانی های نرم افزاری است که مورد نیاز برنامههای گوشیهای هوشمند شما است. Hard Fork های برنامه ریزی شده به خوبی مورد استقبال جامعه قرار میگیرند، زیرا ابتکاری برای افزایش تواناییهای بلاکچین است.
هارد فورکهای بحث انگیز (Contentious Hard Forks): این نوع هارد فورک به دلیل اختلاف داخلی در یک پروژه برای حل یک مسئله خاص اتفاق میافتد. در نتیجه اختلاف نظر، بخشی از جامعه با ایجاد یک زنجیره جدید، که در نتیجه تغییر در کد منبع اصلی برای افزایش ویژگی های خاص ایجاد می شود ، منحرف می شوند. از آنجا که این هارد فورک به اتفاق آرا نیست. و همه ذینفعان جامعه از آن پشتیبانی نمی کنند ، یک سکه جدید به همراه زنجیره جدید ایجاد می شود.
سکه های اسپین آف یا مشتق شده (Spin-Off Coins): به دلیل ماهیت منبع باز ارزهای رمزنگاری شده ، به ویژه بیت کوین، کد آن برای عموم آزاد است. و هر کسی می تواند با ایجاد تغییر در ویژگی های مختلف، سکه جدیدی را ایجاد کند.
کدام یک از فورکها بهتر است ؟
از نظر فاندمنتال، هرکدام از این فورکها اهداف متفاوتی را اجرا میکنند. Hard Fork های بحث انگیز ممکن است جامعه را از هم جدا کنند و باعث تولید کوین جدید شوند. در صورتی که هارد فورک برنامهریزی شده به شما امکان اصلاح نرمافزار را میدهد که اینکار باعث خشنودی کاربر میشود. سافت فورکها گزینههای ملایمترین برای ایجاد تغییرات هستند. مهمترین تفاوت، محدود شدن در اعمال تغییر است؛ تا زمانی که تغییرات جدید با قوانینی که از قبل وجود داشت ناسازگاری نداشته باشند، قادر به اصلاح پلتفرم خواهید بود.
جمع بندی
انتظار می رود که در آینده شاهد انشعابات بیشتر و بیشتری باشیم. چرا که دنیای رمز ارزها مدام در حال تغییر است. Hard Fork و Soft Fork برای موفقیت طولانی مدت شبکه های بلاکچین بسیار مهم هستند. آنها به ما اجازه میدهند، علی رغم عدم وجود یک مرجع مرکزی، در سیستمهای غیرمتمرکز تغییر و به روزرسانی داشته باشیم. فورک یا انشعاب امکان ایجاد یکپارچه سازی ویژگیهای جدید در بلاکچینها و ارزهای رمزپایه را فراهم میکنند. بدون این مکانیزمها، ما به یک سیستم متمرکز با کنترل از بالا به پایین نیاز داریم.