سه‌شنبه 29 اسفند 1402

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

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

کد های شبکه های بلاکچین معمولا منبع باز هستند، به این معنی که همه افراد به صورت آزادانه به آن دسترسی دارند.


بلاک چین چیست


انجام تغییرات روی این کدها، بخشی اساسی از پیشرفت دنیای رمزارز ها محسوب می شود و به روزرسانی نرم افزارهای بلاکچین را تسهیل می کند. این تغییرات گاهی منجر به ایجاد یک رمزارز جدید و گسترش دنیای ارزهای دیجیتال می شود که به این فرآیند هاردفورک گفته می شود.

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

هاردفورک

به طور کلی دو دسته بندی برای انواع فورک در دنیای ارزهای دیجیتال وجود دارد:

فورک تصادفی: این نوع فورک وقتی اتفاق می افتد که دو ماینر به طور همزمان بلاکی را کشف کنند. در این حالت فورک در شبکه برطرف می شود و نتیجه ای را برای شبکه در بر نخواهد داشت، بلاکچین ها همواره تمهیداتی را برای حل این تصادف در نظر می گیرند.

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

فورک های عمدی به دو دسته سافت فورک (Soft Fork) و هاردفورک (Hard Fork) تقسیم می شوند.

۱. سافت فورک (Soft fork)

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

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

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

یک سافت فورک ممکن است تغییراتی مانند سفت و سخت کردن قوانین اعتبار سنجی یا افزودن برخی عملکردهای اضافی را بدون تأثیر بر ساختار شبکه ایجاد کند. بنابراین، قوانینی که به طور مثال اندازه بلوک را از 1 مگابایت به 500 کیلوبایت کاهش می دهند در دسته بندی سافت فورک ها قرار می گیرند.

عموما هدف از ایجاد سافت فورک ایجاد شرایط سخت تر در شبکه با اهداف متفاوتی از جمله کنترل رشد شبکه است.

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

سافت فورک تنها در صورتی نتیجه بخش خواهد بود که اکثر کاربران به نسخه جدید ارتقا پیدا کنند.

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

مثال هایی موفق از سافت فورک

محدودیت اندازه بلوک بیتکوین: بیت کوین محدودیت اندازه بلوک نداشت، محدودیت 1 مگابایتی از طریق سافت فورک در شبکه اعمال شد.

هش اسکریپت: این عملکرد آدرس های چند امضایی را در شبکه بیت کوین فعال کرد، بنابراین بدون تغییر ساختار کد را تغییر می دهد.

۲. هاردفورک (Hardfork)

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

پس این بلوک‌ها به این صورت قرار می‌گیرند.

هاردفورک

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

هاردفورک

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

اما هاردفورک چه انواعی دارد؟

۱. ارتقای شبکه

در این حالت تنها یک زنجیره تشکیل می‌شود و قوانین شبکه در زنجیره جدید تغییر می‌کند. در این حالت سکه جدیدی تولید نمی‌شود و تنها ارتقایی (آپدیت) در شبکه روی می‌دهد. شکل زیر این حالت را نشان می‌دهد.

ارتقای شبکه

۲. ایراد ماینینگ

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

هاردفورک

در این شکل زنجیره آبی زنجیره اصلی و قرمز یتیم است.

۳. حمله به شبکه

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

در شکل زیر این حالت را مشاهده می‌فرمایید. در اینجا زنجیره قرمز ساخت هکرها است.

حمله به شبکه

۴. انشعاب و سکه جدید

ممکن است گروهی بخواهند سکه جدیدی در زنجیره ایجاد کنند. در این حالت زنجیره اصلی به مسیر خود رفته و زنجیره جدید ایجاد شده و به مسیر خود خواهد رفت. هرکس در زنجیره اصلی و پیش از انشعاب دارای سکه بوده در زنجیره جدید نیز صاحب سکه خواهد بود.

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

۵. بازیابی سرمایه در خطر

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

یک مثال موفق از این گونه هاردفورک ها اتریوم است، از زمان پیدایش اتریوم، ظاهرا همه چیز به خوبی در حال پیش رفتن بود، تا این که در تاریخ 17 ژوئن 2016، یک هکر ناشناس موفق شد با استفاده از باگ امنیتی در کد این شبکه، بیش از 50 میلیون دلار اتریوم را به حساب خود منتقل نماید. این اتفاق منجر شد تا قیمت اتر در طی چند روز، از 20 دلار به 12 دلار سقوط کند.

هک شدن کد DAO در اصل شوک بزرگی بود که باعث شد نام اتریوم کلاسیک و پلتفرم های آن خدشه دار شوند. از دست دادن 50 میلیون دلار اتریوم برای این شبکه تازه کار، فاجعه ای هولناک بود. در قوانین زنجیره اتریوم ۲۸ روز زمان برای برداشت وجه در نظر گرفته شده بود که این زمان خوبی برای پیدا کردن راهی برای جلوگیری از نابودی سرمایه کاربران بود.

توسعه دهندگان معروف به گروه رابین هود تصمیم گرفتند با ایجاد هاردفورک سرمایه کاربران را نجات دهند. رأی گیری رخ داد و در ژوئیه سال 2016 مقرر شد یک هاردفورک را در کد اتریوم پیاده سازی و اترها را به یک قرارداد هوشمند جدید منتقل کنند تا از این طریق بتوان ضرر کاربران را جبران نمود.

این هارد فورک تمام اترهای سرمایه گذاری شده در DAO را به یک قرارداد هوشمند جدید منتقل کرد و به صاحبان اصلی اتر اجازه داد که مبلغ کامل را دریافت کنند.

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

نمونه های موفق در هاردفورک

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

Bitcoin XT: در سال ۲۰۱۵ این انشعاب رخ داد و اولین هاردفورک جدی بیتکوین بود در این هاردفورک سکه جدیدی تشکیل شد و قانون جدید آن افزایش سایز بلوک به ۸ مگابایت بود و هرکس که پیش از آن بیتکوین داشت می‌تواند سکه جدید را نیز بگیرد. این سکه جدید در حال حاضر استفاده نمی‌شود و اصطلاحاً مرده است.

Bitcoin Classic: پس از مرگ بیتکوین ایکس‌تی این سکه جدید ایجاد شده که سایز بلوک را به دو مگابایت می‌رساند. این سکه تا اواسط ۲۰۱۶ فعال بود.

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

Segregated Witness: این هاردفورک که در انتهای ۲۰۱۵ رخ داد یک آپدیت شبکه بود سکه جدیدی ایجاد نکرد و در آن جای امضای تراکنش تغییر کرد. هنوز برخی از نودهای بیتکوین این آپدیت را قبول نکرده‌اند. در این آپدیت حجم هر تراکنش کمتر شده و آدرس‌های آن با BC1 شروع می‌شود. این هاردفورک هنوز فعال است و با نام Segwit شناخته می‌شود.

Bitcoin Cash: پس از هاردفورک Segwit گروهی در مورد سایز بلوک مباحثه کردند و خواستار افزایش سایز بلوک شدند. پس از به توافق نرسیدن این گروه در آگوست ۲۰۱۷ انشعاب کرده و بیتکوین جدیدی به نام بیتکوین کش ایجاد کردند.

Bitcoin Gold: این هارد فورک در ۲۴ اکتبر ۲۰۱۷ در شبکه بیتکوین اتفاق افتاد و طی آن سکه جدیدی ایجاد شد. این هارد فورک به منظور آن بود که برای ماینینگ نتوان از دستگاه‌های مخصوص به نام اسیک استفاده کرد و ماینینگ با کامپیوترهای شخصی انجام شود.

Bitcoin SV: ۱۵ نوامبر ۲۰۱۸ این هاردفورک در شبکه بیتکوین کش اتفاق افتاد. طرفداران کریگ رایت که خود را ساتوشی ناکاماتو می‌داند، این هارد فورک را انجام داده و حجم بلوک را نامحدود کردند.

هاردفورک ناخواسته بیتکوین در مارس ۲۰۱۳: در این هاردفورک ناخواسته دو بلوک یتیم تشکیل شد.

هاردفورک برنامه ریزی نشده ۲۰۱۸ بیتکوین: یک ایراد کوچک برنامه ‌اصلی بیتکوین رفع شد چون از قبل اعلام نشده بود برخی نودها متوجه نشده و آپدیت نکرده بودند.

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

مزایای ایجاد هاردفورک

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

علاوه بر این، فورک ها امکان ایجاد ایده های نوآورانه در فناوری بلاکچین را فراهم می کنند. شبکه بلاکچین مطلوب شبکه ای است که از شبکه های دیگر فورک شده باشد و مشکلات آن را برطرف کرده باشد. هرچه تعداد هاردفورک های یک شبکه بیشتر باشد، بلاکچین های بهتر و پیشرفته تری تولید می شوند، زیرا با هر بار وقوع هاردفورک در شبکه، بسیاری از ایده های ابتکاری و نوآورانه بر شبکه اعمال می شود.

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

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

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

کد خبر: 1400012411TSMCMF

مطالب مرتبط:

رفع شکاف بین اپلیکیشن های غیرمتمرکز و مشاغل با فناوری بلاک چین

بر خلاف وب اولیه، بلاک چین به حمایت دولتی نیاز ندارد

ضرورت توجه بزرگان دیتا به فناوری بلاک چین

محتوای غیرقانونی و بلاک چین

بیشتر بخوانید

آشنایی با ارز دیجیتال سندباکس (SAND)

سندباکس که در سال 2011 راه اندازی شد، یک دنیای مجازی مبتنی بر بلاک چین است که به کاربران امکان می دهد دارایی های...

آشنایی با ارز دیجیتال استراتیس (STRAX)

استراتیس یک پلتفرم بلاک چین به عنوان یک سرویس است که چندین محصول و خدمات را برای شرکتها ارائه می دهد، از جمله راه...

توکن و استاندارد ERC20 چیست؟

ERC-20 مجموعه ‌ای از قوانینی است که باید روی یک توکن پیاده‌ سازی شود تا امکان فعالیت روی شبکه اتریوم برای آن ایجاد شود. ERC-20ها...

آشنایی با ارز دیجیتال تتا (THETA)

تتا یک شبکه مبتنی بر بلاک چین است که برای پخش ویدئو ساخته شده است. در مارس 2019 راه اندازی شد، و شبکه اصلی...

LEAVE A REPLY

Please enter your comment!
Please enter your name here

مطالب مرتبط

مقدمه ای بر الگوریتم Paxos: یک الگوریتم اجماع برای سیستم های توزیع شده

Paxos (پاکسوس) خانواده ای از پروتکل ها برای ایجاد اجماع در شبکه ای از پردازنده های غیرقابل اعتماد است. در سیستم های توزیع شده،...

مطالب داغ هفته