احتمالا تا به امروز در زمان استفاده از خدمات بانکی بارها مجبور شدید تا برنامههای پرداخت و بانکی خود را به روزرسانی کنید. توسعهدهندگان این برنامهها به هدف رفع مشکلات و اضافه کردن خدمات جدید، نسخههای جدیدی را عرضه میکنند و کاربران در صورت عدم به روزرسانی ممکن است دسترسی خود را به این برنامهها از دست دهند.
چنین فرآیندی برای ارزهای دیجیتال و فناوری بلاک چین نیز وجود دارد، بسیاری از ارزهای دیجیتال بازار مانند اتریوم به طور مداوم در حال توسعه و پیشرفت هستند و با رفع مشکلات گذشته، خدمات جدیدی را به کاربران معرفی میکنند. اعمال این تغییرات در شبکههای بلاک چینی اغلب از دید کاربران پنهان است و اکثر استفادهکنندگان و معامله گران ارزهای دیجیتال حتی متوجه اعمال به روزرسانیها نمیشوند.
البته اعمال تغییرات و به روزرسانیها در فضای بلاک چین فرآیند سادهای نیست زیرا به طور کلی قوانین شبکه غیرقابل تغییر هستند. پس چگونه میتوان شبکههای ارزهای دیجیتال را بدون تحت تاثیر قرار دادن سلامت شبکه و به اختلال انداختن تراکنشها ارتقا داد؟
دو مکانیزم مختلف هارد فورک و سافت فورک پاسخی برای این سوال هستند. آشنایی با این مکانیزمها به شما کمک میکند تا نحوه اعمال تغییرات جدید در شبکههای بلاک چینی را بهتر درک کنید و آمادگی بیشتری برای نوسانات قیمتی داشته باشید.
بنابراین مطالعه ادامه این مقاله را از دست ندهید زیرا علاوه بر ماهیت هارد فورک و سافت فورک، تفاوتهای میان این دو را نیز بررسی میکنیم.
فورک چیست؟
قبل از بررسی فورک، آشنایی با ماهیت فناوری بلاک چین و نحوه کار آن اهمیت دارد. بلاک چین مجموعهای از بلاکها است که به یکدیگر وصل شده و زنجیرههای بلاکی را تشکیل دادهاند. وظیفه هر بلاک، ذخیره داده، پیروی از قوانین شبکه و در نهایت اتصال به بلاکهای معتبر قبلی است.
هر بلاک جدید در شبکههای بلاک چینی در نهایت به این زنجیره متصل میشود و باعث میشود تا اطلاعات بلاکهای قبلی غیرقابل تغییر باشند، زیرا هر تغییری در بلاکهای قبلی توسط بلاکهای بعدی شناسایی و از آن جلوگیری میشود.
هر بلاک برای اتصال به این زنجیره، باید از مجموعهای قوانین و شرایط توافق شده در شبکه پیروی کند و اعمال هر تغییر و بهینهسازی برای سیستم، مستلزم اعمال آن تغییر در تمام بلاکها است. با این حال، همانطور که گفته شد اعمال تغییر در بلاکهای گذشته امکانپذیر نیست و بنابراین انجام چنین کاری غیرممکن است.
بنابراین به جای بازسازی هر بلاک، از فرآیندی به نام فورک (Fork، چنگال) استفاده میشود تا تغییرات به جای اعمال بر تک تک بلاکهای قدیمی، بر روی زنجیره بلاکی اعمال شود. در فرآیند فورک کد برنامهنویسی اولیه زنجیره و شبکه کپی میشود و سپس تغییرات مورد نیاز در آن اعمال میشود تا نسخه جدید مورد استفاده قرار گیرد.
چه کسی فورک را انجام میدهد؟
بلاک چین یک فناوری غیرمتمرکز است و هیچ سازمان یا اشخاص خاصی به تنهایی وظیفه مدیریت و هدایت آن را بر عهده ندارند. هر جامعه شبکه بلاک چینی دارای زیر مجموعههای مختلفی است، اما به طور کلی آنها را میتوانیم در توسعهدهندگان، مشارکتکنندگان و کاربران دستهبندی کنیم.
توسعهدهندگان وظیفه ساخت و تغییر کدها را دارند و ارتقاها را پیشنهاد میدهند، مشارکتکنندگان نیز وظیفه پردازش تراکنشها، بلاکها و اطمینان حاصل کردن از ادامه فعالیت ایمن و بیعیب شبکه را برعهده دارند. در نهایت کاربران نیز جامعه بزرگ استفادهکنندگان شبکه و ارز دیجیتال آن هستند و شامل افراد مختلفی از جمله معامله گران، هولدرها و دیگر موارد میشوند.
فعالیت کاربران اهمیت زیادی در شبکههای بلاک چینی دارد و بدون آنها، توکنها دیگر ارزشی نخواهند داشت و توسعهدهندگان و مشارکتکنندگان نیز دلیلی برای ادامه فعالیت ندارند. با این حال، در بسیاری از مواقع کاربران نقش چندانی در اجرای تغییرات ندارند و تنها در برخی شبکهها میتوانند در رایگیری اینکه کدام تغییرات در شبکه اعمال شود مشارکت داشته باشند.
تصمیمگیری نهایی و اجرای تغییرات برعهده توسعهدهندگان و مشارکتکنندگان است. در حالی که توسعهدهندگان توانایی اعمال ارتقا نرمافزاری یا تغییرات جزئی را دارند، مشارکتکنندگان شبکه نیز باید با این تغییرات موافقت کنند و فعالیت خود را ارتقا دهند.
پس از موافقت و اجماع، فورک میتواند به دو شکل هارد فورک یا سافت فورک انجام شود.
هارد فورک چیست؟
همانطور که در بخشهای قبلی مقاله توضیح داده شد، فورکها تغییراتی در الگوریتم و قوانین شبکه بلاک چین هستند که منجر به تقسیم شدن شبکه اولیه بلاک چین میشود. برخی زمانها این تغییرات بنیادی هستند و منجر به دو شبکه کاملا مجزا میشود. به این فرآیند هارد فورک گفته میشود.
در هارد فورک مقررات و قوانین بلاک چین ارتقا یا تغییر پیدا میکنند و در نتیجه بلاک چین قبلی و جدید دیگر با یکدیگر سازگار نیستند. به همین دلیل مشارکتکنندگان باید انتخاب کنند که در کدام شبکه و زنجیره فعالیت داشته باشند. زیرا مشارکتکنندگان قدیمی دیگر قادر به پردازش تراکنش و بلاک زنجیره جدید و برعکس، مشارکتکنندگان زنجیره جدید قادر به پردازش تراکنش و بلاک زنجیره قدیمی نیستند.
هارد فورک معمولا به دلیل ایجاد اختلاف میان جامعه یک شبکه بلاک چینی رخ میدهد. به عنوان مثال، در گذشته بخشی از جامعه شبکه بیت کوین پیشنهادی مبنی بر افزایش اندازه بلاک برای بهبود مقیاسپذیری این ارز دیجیتال را مطرح کردند. این پیشنهاد با حمایت اکثر جامعه همراه نبود، اما طرفداران این طرح با کپی از کدنویسی بیت کوین، هارد فورکی را انجام دادند و شبکه جدیدی را به نام بیت کوین کش ایجاد کردند.
در نتیجه، کسانی که موافق پیشنهاد افزایش اندازه بلاک بودند فعالیت خود را به شبکه جدید منتقل کردند، در حالی که جامعه مخالف این تغییر در شبکه اصلی بیت کوین باقی ماندند. اگرچه هم اکنون هر دو ارز بیتکوین و بیتکوین کش روی بلاکچینهای جداگانه کار میکنند، اما تاریخچههای آنها قبل از فورک یکسان است.
البته هارد فورک همیشه منجر به ایجاد ارز دیجیتال جدیدی نمیشود و برخی مواقع، توسط توسعهدهندگان اصلی پروژه و برای اعمال یک تغییر بزرگ در شبکه از آن استفاده میشود. به عنوان مثال، اخیرا یکی از مهمترین هارد فورکهای شبکه اتریوم به نام مرج (Merge) انجام شد و استخراج ارز دیجیتال ETH متوقف شد.
پس از این هارد فورک، نحوه فعالیت پروتکل به کلی تغییر کرد اما توکن اتریوم همان باقی ماند و سرمایهگذاران نیازی به تبدیل ارزهای ETH خود نداشتند.
سافت فورک چیست؟
در حالی که هارد فورک زنجیره مجزایی را ایجاد میکند، سافت فورک به عنوان یک اصلاح و تغییر جزئی در همان شبکه اصلی عمل میکند. سافت فورک در واقع باعث میشود تا شبکه بلاک چینی قدیمی قوانین تغییر یافته و جدید را بپذیرد، در نتیجه مشارکتکنندگان قوانین جدید و قدیمی میتوانند در کنار یکدیگر به فعالیت ادامه دهند تا در نهایت تمام مشارکتکنندگان فعالیت خود را به نسخه جدیدتر منتقل کنند.
تفاوت هارد فورک و سافت فورک چیست؟
هدف هر دو فورک اعمال تغییرات در قوانین شبکههای بلاک چینی است و هرکدام کاربرد، مزایا و معایب خود را دارند.
در حالی که سافت فورک معمولا برای اعمال تغییرات بزرگ و اساسی در شبکه کاربرد ندارد، اما توسعهدهندگان با سافت فورک این امکان را دارند تا برخی تغییرات و بهبودهای شبکه را بدون نیاز ایجاد زنجیره مجزا اعمال کنند، شرایطی که خطرات کمتری دارد و از ایجاد شبکههای جدید و دو دستگی در جامعه جلوگیری میکند. هرچند اعمال برخی تغییرات بنیادی با سافت فورک امکانپذیر نیست و توسعهدهندگان مجبور به اعمال هارد فورک میشوند.
هارد فورک میتواند مشکلات اساسی را رفع کند و بهبودهای قابل توجهی را برای شبکه به همراه داشته باشد، موضوعی که گامی بزرگ و مثبت برای اکثریت جامعه آن ارز دیجیتال به شمار میرود و میتواند جایگاه ارز را در بازار ارتقا دهد.
اما تغییرات هارد فورک میتواند مخالفان خود را داشته باشد که منجر به چند دستگی میان جامعه یک ارز دیجیتال و ایجاد شبکههای جداگانه میشود. بنابراین چیزی به نام بهترین نوع فورک وجود ندارد و توسعهدهندگان ارزهای دیجیتال در طول عمر و فعالیت ارز، از هر دو نوع فورک برای بهبود شبکه و اعمال تغییرات استفاده میکنند.
در نهایت لازم به ذکر است که هر دو سافت و هارد فورک میتوانند بر روندهای قیمتی ارز دیجیتال تاثیرگذار باشند، پس سرمایهگذاران و معامله گران باید توجه کافی را به این تغییرات شبکه داشته باشند و برای نوسانات قیمتی آن آماده باشند.