فورک یا انشعاب معمولاً به‌نوعی، آپدیت یا به روزرسانی یک نرم‌افزار گفته می‌شود که می‌تواند به روشی سازگار با قبل (backward-compatible) یا ناسازگار با قبل (backward-uncompatible) باشد. (دربارهٔ این موضوع در ادامه صحبت می‌کنیم). به‌طور خلاصه، واژهٔ فورک یا انشعاب فقط یک اصطلاح برای زمانی است که یک نرم‌افزار یا یک پروتکل، آپدیت می‌شود. در حوزهٔ ارزهای دیجیتال و بلاک‌چین فورک زمانی اتفاق می‌افتد که شبکه به دو بخش تقسیم شود.
 سافت فورک یک بروزرسانی در نرم‌افزار بوده که با نسخه‌های قدیمی سازگار (backwards compatible) است. این بدین معناست که شرکت‌کنندگانی که نرم‌افزار خود را آپدیت نکرده باشند نیز می‌توانند در اعتبارسنجی (Validation) و تأیید (Verification) تراکنش‌ها شرکت کنند. پیاده‌سازی سافت فورک به نسبت آسان‌تر بوده چرا که تنها نیاز است اکثریت شرکت‌کنندگان نرم‌افزار خود را آپدیت کنند. همهٔ شرکت‌کنندگان چه نرم‌افزار خود را آپدیت کرده و چه نکرده باشند، می‌توانند بلاک‌های نو را تشخیص دهند و فعالیت‌هایشان با شبکه سازگار است. نکتهٔ قابل تأمل این است که عملکرد شرکت‌کننده‌ای که نرم‌افزار خود را آپدیت نکرده تحت تأثیر قرار می‌گیرد. یک مثال برای سافت فورک این است که مثلاً سایز بلاک‌ها از ۱ مگابایت به ۸۰۰ کیلوبایت تغییر پیدا کرده‌است. نودهایی از شبکه که نرم‌افزار خود را آپدیت نکرده‌اند در سافت فورک می‌توانند تراکنش‌های نو را ببینند. مشکل زمانی به وجود می‌آید که ماینری که نرم‌افزار خود را آپدیت نکرده‌است، بخواهد بلاک نویی را ثبت نماید و بلاک او توسط شبکه رد می‌شود. از این رو سافت فورک یک مکانیزم ارتقاء تدریجی را نشان می‌دهد که افرادی که نرم‌افزار خود را آپدیت نکرده‌اند با محدود شدن قابلیت‌هایشان، انگیزهٔ کافی برای اینکار را پیدا کنند.
 (به انگلیسی: Hard Fork) زمانی اتفاق می‌افتد یک زنجیره از بلوک‌ها از جدا شوند و به‌طور مستقل فعالیت کنند. برای ایجاد یک ، برنامه‌نویسان یک سری کد روی زنجیرهٔ بلوکی می‌نویسند که این کد کاملاً قابل دسترس است ( ) و همه می‌توانند آن را ببینند؛ بنابراین یک ارز مجازی با ماهیت یک کوین روی بستر یک (زنجیرهٔ بلوکی) پیاده می‌شود. اگر تغییرات یا اصلاحاتی روی کد نوشته شده اعمال شود، فورک اتفاق می‌افتد.
 اگر تغییرات به گونه‌ای باشد که گره‌های شبکه (کسانی که در شبکه سرویس می‌دهند. برای مثال در کسانیکه نرم‌افزار بیت‌کوین را روی سیستم‌های خود نصب کرده و بیت کوین می‌کنند) که برای ثبت تراکنش‌ها با یکدیگر در ارتباط بوده‌اند، دیگر نتوانند با یکدیگر ارتباط داشته باشند، فورک سخت اتفاق افتاده‌است. به بیان ساده، اگر آپدیت جدید برای یک کوین داده شود و گرهٔ آن را روی سیستم خود نصب کند و پس از آن به تراکنش‌های روی زنجیرهٔ بلوکی پیشین دسترسی نداشته باشد، در حقیقت فعالیت خود را روی یک زنجیرهٔ بلوکی نو، برای یک ارز نو و تراکنش‌های نو ادامه خواهد داد؛ یعنی با اتفاق افتادن هارد فورک، یک ارز نو با زنجیرهٔ بلوکی و گره‌های نو ایجاد خواهد شد. 
 هارد فورک زمانی اتفاق می‌افتد که ارتباط میان اعضای شبکه (مثلاً کسانی که بیت‌کوین ماین می‌کنند) قطع شود. به عبارت دیگر چنانچه برای یک ارز دیجیتال، به‌روزرسانی انجام شود، در واقع تراکنش‌ها روی یک زنجیرهٔ بلوکی نو و با نوع متفاوتی صورت می‌گیرند. بر سر انجام و عدم انجام هارد فورک، میان برنامه‌نویسان یا توسعه‌دهنگان، گاهی صلح و گاهی جنگ است که پس از گفت‌وگوها و تبادل نظرهای کش‌مکش‌دار رخ می‌دهد. وقوع هارد فورک می‌تواند به تولد یک ارز دیجیتال نو منجر شود؛ مانند آنچه در بیت‌کوین کش رخ داد.
 هاردفورک برنامه‌ریزی شده، یک بروزرسانی در پروتکل است که از ابتدا در نقشهٔ راه (Roadmap) پروژه در نظر گرفته می‌شود. از آنجایی که این بروزرسانی در راستای قابلیت‌ها و ویژگی‌های می‌باشد، تمامی شرکت‌کنندگان به رهبری توسعه‌دهندگان اصلی به زنجیرهٔ نو رفته و نرم‌افزار خود را بروزرسانی می‌کنند چرا که این تغییرات در سطح کدنویسی پایهٔ شبکه صورت می‌پذیرند. در این فورک زنجیرهٔ پیشین از میان می‌رود و دلیلی نیز برای حمایت از آن وجود ندارد. در این فورک، کوین نویی به وجود نخواهد آمد.
 مثال‌های این نوع هارد فورک :فورک : در ژانویهٔ ۲۰۱۷، هارد فورکی در شبکهٔ جهت اضافه‌شدن ویژگی نویی به نام حلقهٔ معاملات محرمانه (RCT) برای بهبود حریم خصوصی و امنیت شبکه، به وقوع پیوست.
 هاردفورک بحث‌برانگیز به علت اختلاف نظر میان اعضای شبکه اتفاق می‌افتد و موجب می‌شود بخشی از شرکت‌کنندگان، زنجیرهٔ نویی که از نظر خودشان بهتر است را با تغییرات عمده‌ای در کد ایجاد کنند.
{"title": "فورک (زنجیره بلوکی)", "link": "https://fa.wikipedia.org//w/index.php?title=%D9%81%D9%88%D8%B1%DA%A9_(%D8%B2%D9%86%D8%AC%DB%8C%D8%B1%D9%87_%D8%A8%D9%84%D9%88%DA%A9%DB%8C)&oldid=35004565", "language": "fa"}