توسعه دهنده: اسماعیل زاده

اخبار ارزهای دیجیتال

اخبار و خرید و فروش بیت کوین و آلت کوین ها

فورک Fork

“Fork” یا “Forking” معمولا به نوعی، به آپدیت یا بروزرسانی یک نرم‌افزار گفته می‌شود که می‌تواند به روشی سازگار با قبل (backward-compatible) باشد یا به...

فورک Fork

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

فورک Fork
فورک Fork

Fork” یا “Forking” معمولا به نوعی، به آپدیت یا بروزرسانی یک نرم‌افزار گفته می‌شود که می‌تواند به روشی سازگار با قبل (backwardcompatible) باشد یا به روشی ناسازگار با قبل (NonBackward Compatible).

ویا ساده تر؛ فورک (fork) به تغییرات در زیر ساخت و قوانین کدهای یک رمز ارز گفته می‌شود که این اتفاق می‌تواند به صورت کلی (هارد فورک) و یا جزئی (سافت‌ فورک) رخ دهد.

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

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

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

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

در هر حال برای اینکه بتوانید از همه ویژگی‌های برنامه استفاده کنید مجبورید این به‌روزرسانی را انجام دهید.

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

در نتیجه پیاده‌سازی ویژگی‌های جدید در شبکه‌های بلاک چین به یک چالش تبدیل می‌شود.

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

چرا فورک‌ها انجام می‌شوند؟

فورک‌ها به دلایل زیادی رخ می‌دهند ولی دلیل اصلی آنها اغلب وجود اختلاف در بین اجتماع یک ارز یا افزودن یک ویژگی جدید است.

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

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

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

خرید و فروش ارزدیجیتال

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

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

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

فرض کنیم این بلوک ۲ مگابایتی توسط یک گره به‌روزشده تایید می‌شود و به بلاک چین افزوده می‌شود، اگر بلوک بعدی توسط گرهی که با نسخه‌ی قبلی پروتکل کار می‌کند تایید شود آنگاه چه رخ می‌دهد؟ گره سعی می‌کند بلوک خود را به بلاک چین بیفزاید اما متوجه می‌شود که آخرین بلوک اضافه شده معتبر نیست؛

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

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

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

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

راه دیگر آن است که تمامی‌ گره‌ها همزمان به نسخه جدیدتر بیایند؛ انجام این کار در سیستم نامتمرکزی که به شدت گسترده می‌باشد کار بسیار سختی است؛

اگر هیچکدام از این راه‌ها عملی نباشد، بیت کوین منشعب می‌شود. اتفاقی که قبلا افتاده و بیت‌کوین‌کش (bitcoin cash) نمونه آن است.

رفع مشکلات بلاک چین

یکی از مهمترین اتفاقاتی که در سال ۲۰۱۶ در دنیای ارز دیجیتال رخ داد، هک شدن DAO یا پروژه (Decentralized Autonomous Organization) بود که در نتیجه آن یک هکر موفق شد با پیدا کردن باگ امنیتی بیش از ۵۰ میلیون دلار از سرمایه دارندگان اتریوم به سرقت رفت و ارزش اتریوم از ۲۰ دلار به ۱۲ دلار سقوط کرد.

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

ایجاد ارز دیجیتال جدید

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

از جمله ارزهایی که از طریق فورک بیت کوین به‌وجود آمده است می‌توان به لایت کوین، دوج کوین، پیر کوین (Peercoin)، نیم کوین (Namecoin) و … اشاره کرد.

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

فورک Fork
هارد فورک بیت کوین کش و جدا شدن از زنجیره بیت کوین

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

فورک Fork
هاردفورک اتریوم و جدا شدن زنجیره اتریوم و اتریوم کلاسیک

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

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

در واقع در سافت فورک قانون جدیدی به شبکه اضافه می‌شود که با قوانین پیشین تضادی ندارد.

یک مثال خیلی خوب از سافت فورک، سگ‌ویت (Segregated Witness) است که کمی پس از جدا شدن بیت کوین کش از بیت کوین اتفاق افتاد.

سگ ویت (SegWit) یک به‌روزرسانی در فرمت بلوک‌ها و تراکنش‌ها بود، اما طوری هوشمندانه انجام شد که قوانین قدیمی مربوط به فرمت بلوک‌ها را نقض نکرد و نودهای قدیمی همچنان قادر به تایید بلوک‌ها و تراکنش‌ها هستند.

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

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

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

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

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

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

جمع بندی

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

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

خرید و فروش ارزدیجیتال

صفحه اصلی

فورک Forkفورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork-فورک Fork

  • bitcoinBitcoin (BTC) $ 49,429.00
  • ethereumEthereum (ETH) $ 4,113.73
  • tetherTether (USDT) $ 1.01
  • dogecoinDogecoin (DOGE) $ 0.180223