9 ماه پیش
زمان مطالعه : 5 دقیقه
فورک بلاکچین چیست؟ معرفی هارک فورک و سافت فورک بلاکچین
هارد فورک چه تفاوتی با سافت فورک دارد؟
هارد فورکها بهروزرسانیهای نرمافزاری هستند که با نسخههای قبلی ناسازگار هستند. به طور معمول، این اتفاق زمانی میافتد که نودها قوانین جدیدی اضافه میکنند که با قوانین نودهای قدیمی در تضاد است. نودهای جدید تنها میتوانند با کاربرانی که از نسخه جدید استفاده میکنند ارتباط برقرار کنند. نتیجه این است که بلاکچین تقسیم میشود و دو شبکه جداگانه ایجاد میشود: یکی با قوانین قدیمی و دیگری با قوانین جدید.
هنگامی که نوتیفیکیشنی برای بروز رسانی اپلیکیشن بانکتون دریافت میکنید، بدون شک آن را بروز رسانی میکنید. زیرا میدانید که بروزرسانی آن ضروری است و اگر آخرین نسخه نرمافزار را نصب نکنید، احتمالا دسترسیتان به خدمات آن قطع میشود.
در رمزارزهای منبعباز، شرایط متفاوت است. در اینجا هیچ سلسلهمراتبی وجود ندارد و هیچ بانکی نمیتواند بهدلخواه بهروزرسانی و تغییرات انجام دهد. در نتیجه، پیادهسازی ویژگیهای جدید در شبکههای بلاکچین یک چالش میباشد.
در این مقاله، به بررسی این موضوع خواهیم پرداخت که چگونه شبکههای رمزارز بدون حضور یک سازمان کنترل کننده میتوانند بهروزرسانی شوند. برای انجام این کار، از دو مکانیسم مختلف به نام هاردفورک و سافت فورک استفاده میشود.
در این رابطه بخوانید : اکسی اینفینیتی چیست؟ و چگونه کار میکند؟
در شبکه بلاکچین تصمیم گیری ها با چه کسی است؟
برای درک نحوه عملکرد فورک ها، در ابتدا باید افرادی که در فرآیند تصمیمگیری (یا حاکمیت) شبکه نقش دارند را به درستی درک کنیم.
در بیتکوین (BTC)، به طور کلی سه نوع شرکتکننده در تصمیم گیری ها نقش دارند که عبارت اند از: توسعهدهندگان، ماینرها و کاربران نود کامل (full node). این افراد به شبکه کمک میکنند. نود سبک (Light nodes) (به عبارتی، ولت هایتان) به شدت استفاده میشوند، اما از نظر شبکه “شرکتکننده” نمیباشند.
توسعه دهندگان
توسعهدهندگان مسئول ایجاد و بهروزرسانی کد هستند. در اکثر کوین ها، هرکسی میتواند به این فرآیند کمک کند. کد به صورت عمومی در دسترس است، بنابراین آنها میتوانند تغییرات را ایجاد کنند تا توسعهدهندگان دیگر بتوانند آن را بررسی کنند.
ماینرها
ماینر ها افرادی هستند که امنیت شبکه را فراهم میکنند. آنها کد رمزارز را اجرا کرده و برای ضافه کردن بلوکهای جدید به بلاکچین از منابع خود استفاده میکنند. به عنوان مثال، در شبکه بیتکوین، این کار را از طریق الگوریتم اثبات کار (Proof of Work) انجام میدهند و در قبال فعالیت هایشان پاداش بلوک را دریافت میکنند.
کاربران نود کامل
نود های کامل ستون اصلی شبکه رمزارز هستند. آنها بلوکها و تراکنشها را اعتبارسنجی، ارسال و دریافت میکنند و یک نسخه از بلاکچین را حفظ میکنند.
همچنین بخوانید : الگوریتم اجماع اثبات سوزاندن چیست؟ و چگونه کار میکند؟
گاهی پیش میاد که یک نفر همزمان چند نقش رو داشته باشد مثلا هم توسعهدهنده و هم کاربر نود کامل باشد و یا ماینر و کاربر نود کامل باشد. و البته کاربرانی هم هستند که هیچ نقشی در شبکه نمیپذیرند. بو در عوض ترجیج میدهند از از نود های سبک یا ارائه دهنده های خدمات متمرکز استفاده کنند.
با توجه به توضیجات داده شده میتوان در یافت که توسعهدهندگان و ماینرها تصمیمگیران اصلی شبکه هستند. توسعهدهندگان کد را ایجاد میکنند؛ بدون آنها، هیچ نرمافزاری برای انجام معاملات وجود ندارد، باگها رفع نمیشود و یا ویژگیهای جدیدی به پلتفرم اضافه نمیشوذ. ماینرها امنیت شبکه را فراهم میکنند؛ بدون حس رقابت در حوزه استخراج، احتمال دارد زنجیره توسط اشخاص غیرمجاز تصاحب شود و یا متوقف بشود.
اگر این دو دسته سعی کنند سایر اجزای شبکه را به انجام خواستههای خود وادار کنند، با احتمال زیاد موفق نخواهند شد. بسیاری از افراد اعتقاد دارند که قدرت واقعی در دست نودهای کامل است.
توسعهدهندگان نمیتوانند شمارا به انجام کاری واردار کنند. این افراد فرمانروا نیستند آنها ارائهدهندگان خدمات هستند. اگر مردم تصمیم بگیرند از شبکه استفاده نکنند، پس کوین ارزش خود را از دست میدهد. از دست دادن ارزش بهصورت مستقیم بر ماینرها تأثیر میگذارد (ارزش پاداش آنها کم میشود). اما در مورد توسعهدهندگان، آنها ممکن است توسط کاربران نادیده گرفته شوند. متوجه شدید، عملکرد بلاکچین مانند نرمافزارهای اختصاصی نیست.
فورک چیست؟
سافت فورکافزاری همگامی رخ میدهد که نرمافزار کپی و اصلاح میشود. پروژه اصلی همچنان وجود دارد، اما اکنون جدا از پروژه جدید است که به جهت مختلفی هدایت میشود. فرض کنید تیم وبسایت محتوای مورد علاقهتان در زمینه رمزارز با یک اختلاف بزرگ در مورد چگونگی پیشرفت مواجه شده باشد. یک بخش از تیم ممکن است سایت را در یک دامنه متفاوت کپی کرده و محتواهای متفاوتی نسبت به سایت اصلی منتشر کنند.
این پروژهها بر پایه یک موضوع مشترک ساخته میشوند و تاریخچه یکسانی دارند. مانند یک جاده یکپارچه که بعداً به دو قسمت تقسیم میشود.
توجه داشته باشید که این نوع اتفاقات در پروژههای منبعباز اغلب رخ میدهد و مدت ها قبل از ظهور بیتکوین یا اتریوم اتفاق میافتاده است. در ادامه به تفاوت بین هارد فورکها و سافت فوررکها در فضای بلاکچین خواهیم پرداخت.
فورک تصادفی
این فورکها زمانی رخ میدهند که چندین ماینر همزمان یک بلوک را استخراج کنند. همانطور که از نامش پیداست، فورکهای تصادفی به صورت تصادفی رخ میدهند و هیچ تغییری در پروتکل یا ساختار بلاکچین باعث ایجاد این فورکها نمیشود.
فورک عمدی
همانطور که از نامش پیداست، فورکهای عمدی به صورت عمدی اتفاق میافتند. کاربران از اقداماتی که باعث ایجاد این فورکها میشوند مطلع هستند و آن ها را تایید کرده اند. این تغییرات نحوه عملکرد بلاکچین را تغییر میدهند و منجر به ایجاد فورک میشوند.
فورکهای عمدی شامل سافت فورکها و هارد فورکها هستند.
مقایسه هارد فورک و سافت فورک
با وجود نامهای مشابه و در نهایت خدمت در راه هدف یکسان، هارد فورکها و سافت فورکها به طور قابل توجهی از یکدیگر متفاوت هستند.
هارد فورک چیست؟
هارد فورکها بهروزرسانیهای نرمافزاری هستند که با نسخههای قبلی ناسازگار هستند. به طور معمول، این اتفاق زمانی میافتد که نودها قوانین جدیدی اضافه میکنند که با قوانین نودهای قدیمی در تضاد است. نودهای جدید تنها میتوانند با کاربرانی که از نسخه جدید استفاده میکنند ارتباط برقرار کنند. نتیجه این است که بلاکچین تقسیم میشود و دو شبکه جداگانه ایجاد میشود: یکی با قوانین قدیمی و دیگری با قوانین جدید.
حالا دو شبکه بهصورت موازی در حال اجرا هستند. هر دو به ادامه اضافه کردن بلوکها و تراکنشها ادامه خواهند داد، اما دیگر روی یک بلاکچین یکسان کار نمیکنند. تا قبل از فورک، همه نودها یک بلاکچین یکسان داشتند (و آن تاریخچه باقی میماند)، اما پس از آن بلوکها و تراکنشهای مختلفی خواهند داشت.
از آنجایی که تاریخچه بلاکچین مشترک است، اگر قبل از فورک کوین داشته باشید پس از فورک کوین هایتان در هر دو شبکه وجود خواهد داشت. فرض کنید که زمانی که فورک در بلوک 600,000 رخ داد، شما 5 بیتکوین داشتید. میتوانید این 5 بیتکوین را در زنجیره قدیمی بلوک 600,001 خرج کنید، اما آنها هنوز در بلوک 600,001 بلاکچین جدید خرج نشدهاند. با فرض اینکه رمزنگاری تغییر نکرده باشد، کلیدهای خصوصی شما هنوز پنج کوین را در شبکه فورک شده نگه میدارند.
یک نمونه از هارد فورک، فورکی بود که در سال 2017 باعث تجزیه بیتکوین به دو زنجیره جداگانه شد. نسخه اصلی به نام بیتکوین (BTC) و نسخه جدید به نام بیتکوین کش (BCH) است. این فورک پس از بسیاری از اختلافات در مورد بهترین رویکرد برای افزایش مقیاس پذیری رخ داد. طرفداران بیتکوین کش میخواستند اندازه بلوک را افزایش دهند، در حالی که طرفداران بیتکوین مخالف این تغییر بودند.
افزایش اندازه بلوک نیاز به اصلاح قوانین دارد. این موضوع پیش از سافت فورک SegWit بود، بنابراین نودها تنها بلوکهای کوچکتر از 1 مگابایت را قبول میکردند. اگر بلوکی به اندازه 2 مگابایت بسازید که در سایر نواحی معتبر باشد، نودهای دیگر همچنان آن را رد خواهند کرد.
تنها نودهایی که نرمافزار خود را تغییر دادهاند تا بلوکهای بزرگتر از 1 مگابایت را قبول کنند، میتوانند این بلوکها را قبول کنند. البته این امر باعث ناسازگاری با نسخههای قبلی میشود، بنابراین تنها نودهایی با پروتکل اصلاح شده یکسان میتوانند با یکدیگر ارتباط برقرار کنند.
فورک های برنامه ریزی شده
در فورکهای برنامهریزیشده، نودها داوطلبانه نرمافزار خود را بهروزرسانی میکنند تا از قوانین جدید پیروی کنند و نسخه قدیمی را کنار بگذارند. کسانی که بهروزرسانی نکنند، در زنجیره قدیمی که دیگر افراد کمی در آن باقی مانده اند استخراج انجام میدهند.
فروک های بحث برانگیز
اما اگر در جامعه درباره بهروزرسانی اختلاف نظری وجود داشته باشد، فورک بهعنوان فورک بحث برانگیز در نظر گرفته میشود. در این مرجله، اغلب پروتکل به دو بلاکچین ناسازگار فورک میشود. و در نتیجه آن دو رمزارز مختلف ایجاد میشود. هر یک از بلاکچین ها جامعه خود را دارند و توسعهدهندگان یکی از آنها را انتخاب میکنند که به آن باور دارند یا به دیگری ترجیح میدهند.
از آنجا که فورک جدید بر اساس بلاکچین اصلی کار میکند، تمام تراکنشهای از بلاکچین اصلی نیز به فورک جدید کپی میشوند. به عنوان مثال، اگر یک کاربر 100 کوین از یک رمزارز به نام کوین A دارد و یک هارد فورک بر اساس این رمزارز یک رمزارز جدید به نام کوین B ایجاد کند، کاربر نیز 100 کوین از کوین B دریافت میکند.
سافت فورک چیست؟
سافت فورک یک بهروزرسانی سازگار با نسخههای قبلی است، به این معنا که نودهای بهروزرسانی شده همچنان میتوانند با نودهای بهروزنشده ارتباط برقرار کنند. در سافت فورک، معمولاً شاهد افزودن یک قانون جدید هستیم که با قوانین قدیمی تداخل ندارد.
به عنوان مثال، کاهش اندازه بلوک میتواند توسط سافت فورک اجرا شود. بیایید دوباره از بیتکوین استفاده کنیم تا این نکته را توضیح دهیم: اگرچه یک محدودیت بر روی اندازه یک بلوک وجود دارد، اما محدودیتی بر روی حداقل اندازه وجود ندارد. اگر بخواهید تنها بلوکهایی را قبول کنید که زیر یک حداکثر مشخصی هستند، کافی است بلوکهای بزرگتر را رد کنید.
اینکار بهطور خودکار شما را از شبکه جدا نمیکند. هنوز با نودهایی که از این قوانین پیروی نمیکنند ارتباط برقرار میکنید، اما بخشی از اطلاعاتی که به شما منتقل میشود را فیلتر میکنید.
یک نمونه عملی موفق از سافت فورک، همان فورک Segregated Witness یا SegWit است که قبلا به آن اشاره کردیم. این فورک کمی پس از تجزیه بیتکوین به بیتکوین و بیتکوین کش تقسیم شد. SegWit یک بهروزرسانی بود که قالب بلوکها و تراکنشها را تغییر داد، اما با زرنگی طراحی شده بود. نودهای قدیمی همچنان میتوانستند بلوکها و تراکنشها را اعتبارسنجی کنند (قالببندی قوانین را نقض نمیکرد)، اما فقط نمیتوانستند آنها را درک کنند. برخی از فیلدها تنها زمانی قابل خواندن هستند که نودها از نرمافزار جدید استفاده کنند، در این صورت میتوانستند دادههای تکمیلی را تحلیل کنند.
حتی دو سال پس از فعالسازی SegWit، هنوز همه نودها بهروزرسانی نشدهاند. مزایایی برای این کار وجود دارد، اما چون هیچ تغییری نمایانگر اختلال در شبکه نیست،ضروریتی برای آن وجود ندارد.
کلام آخر
سافت فورک و هارد فورک از اهمیت بسیار زیادی برای موفقیت بلندمدت شبکههای بلاکچین برخوردارند. آنها به ما اجازه میدهند تا با وجود عدم حضور یک سازمان کنترل کننده در سیستمهای غیرمتمرکز تغییرات و بهروزرسانی ایجاد کنیم.
فورکها این امکان را فراهم میکنند تا بلاکچینها و رمزارزها با ویژگیهای جدید سازگار شوند. بدون این مکانیزمها، به یک سیستم مرکزی نیاز داشتیم. در غیر این صورت، باید در تمام عمر پروتکل از همان قوانین یکسان پیروی میکردیم.
ترجمه سده توسط مجله خبری نیپوتو
خرید و فروش ارزهای دیجیتال از امروز شروع کنید
ممکن است علاقه مند باشید
ثبت دیدگاه
لیست نظرات (0)
انتخاب سردبیر
مفاهیم پایه
بیشتر بخوانید