فورک چیست؟ — انواع و تاثیر روی قیمت به زبان ساده
فورک یکی از اصطلاحات رایج ارز دیجیتال است که برای اشاره به بهروزرسانیهای انجام شده در بلاک چین استفاده میشود. فورک پیش از اینکه در فضای بلاک چین استفاده شود، برای پروژههای نرمافزاری منبعباز مورد استفاده قرار گرفته است و به معنی ایجاد یک برنامه جدید با تغییر کد منبع است. در این مقاله، سوال فورک چیست را به همراه دلایل انجام آن بررسی میکنیم. علاوه بر این، انواع فورک در فضای بلاک چین و تاثیر آنها بر روی قیمت ارز دیجیتال نیز در این مقاله مورد بحث و بررسی قرار میگیرد.
فورک چیست ؟
«فورک» (Fork) در علوم کامپیوتر به معنی دریافت کد منبع از یک نرمافزار منبعباز و تغییر کدهای آن به منظور توسعه یک نرمافزار کاملا جدید است. فورک، نتیجه به بنبست رسیدن یک پروژه نرمافزاری است به گونهای که دیگر ادامه کار برای همه یا بخشی از اعضا غیرممکن است. معمولا فورک زمانی اتفاق میافتد که اعضای تیم توسعه قادر به حل تعارضات نباشند یا اینکه بر روی مراحل توسعه بعدی به اجماع نرسند.
در فضای بلاک چین، مفهوم فورک بسیار شبیه به تعریف بالا است. بلاک چینها توسط مجموعهای از قوانین اداره میشوند و اجماع ماینرها با توجه به این قوانین صورت میگیرد. مجموعه این قوانین که به صورت پروتکل تعریف و شناخته میشوند، میتوانند در پیشبرد برنامههای آتی تیم توسعه مشکل ایجاد کنند. در چنین شرایطی، اگر اعضای جامعه به ایده مشترک نرسند، بخشی از آنها با تغییر پروتکل بلاک چین، یک زنجیره جدید برای بلاک چین اصلی ایجاد میکنند و بدین ترتیب، دو زنجیره متفاوت ایجاد میشود که هر کدام پروتکل خاص خود را دارند. البته فورک همواره باعث ایجاد دو ارز دیجیتال مجزا نمیشود. این موضوع را به طور مفصل در بخش انواع فورک چیست بررسی میکنیم.
بنابراین، فورک به بهروزرسانیهای انجام شده در شبکه بلاک چین گفته میشود که میتواند به منظور ارتقای بلاک چین، حل مشکلات موجود در پروتکل و هم چنین ایجاد یک پروژه جدید با پروتکل متفاوت مورد استفاده قرار بگیرد. فورکها بر اساس این که با پروتکل اصلی سازگار هستند یا نه، به دو نوع «سافت فورک» (Soft Fork) و «هارد فورک» (Hard Fork) تقسیم میشوند که در بخشهای بعدی به بررسی آنها خواهیم پرداخت.
فورک بلاک چین چیست ؟
بلاک چین یکی از بهترین نمونههای تکنولوژی «دفتر کل توزیع شده» (Distributed Ledger Technology | DLT) است که به عنوان یک پایگاه داده برای ثبت و نگهداری دادهها عمل میکند. منظور از توزیع شده در این اصطلاح این است که تمامی کاربران شبکه نسخهای از دفتر کل را در اختیار دارند و بهروزرسانی دفتر کل به صورت یکجا، همزمان و توسط تمام اعضا انجام میشود. اعضا برای این که بتوانند بدون شناخت یکدیگر و بدون اعتماد به هم از بلاک چین استفاده کنند، طبق پروتکل تعریف شده فعالیت خود را انجام میدهند.
پروتکل، چهارچوب فعالیت تمامی کاربران را تعیین میکند و اگر کسی برخلاف این پروتکل عمل کند، فعالیت او مورد قبول شبکه و اعضای آن قرار نمیگیرد. از جمله قوانین مهمی که در پروتکل بیت کوین تعریف شده است میتوان به مواردی مثل ظرفیت حداکثری 1 مگابایت برای هر بلاک، زمان 10 دقیقه مورد نیاز برای ثبت بلاک و محدودیت سقف توکنهای شبکه به 21 میلیون واحد اشاره کرد.
پروتکل تعریف شده تا زمانی که کاربران شبکه از آن حمایت میکنند پابرجا است اما این به معنی ازلی و ابدی بودن پروتکل نیست. گاهی اوقات در طی زمان مشخص میشود که پروتکل طراحی شده باگ امنیتی دارد. در برخی از شرایط برای تطبیق با نیازهای روز نیاز است که پروتکلهای طراحی شده به روز شوند تا ویژگیهای جدیدی به شبکه اضافه شوند.
گاهی اوقات نیز برخی از توسعهدهندگان و کاربران به دنبال استفاده از کد منبع بلاک چین برای ایجاد یک شبکه جدید با قابلیتهای متفاوت هستند. در تمامی این موارد میتوان با استفاده از فورک پروتکل شبکه را تغییر داد و مشکلات موجود را حل کرد. توجه داشته باشید که فورک در هر پروژه کریپتوکارنسی ممکن است رخ بدهد و این مساله مختص شبکه بیت کوین نیست.
تفاوت فورک در علوم نرمافزار با فناوری بلاک چین
اگرچه فورک در نرمافزارها و بلاک چین به معنی استفاده از کد منبع یک پروژه برای اعمال تغییرات در آن و ایجاد نسخه جدید است اما یک تفاوت اساسی میان فورک در بلاک چین و نرمافزار وجود دارد. در علوم نرمافزاری، هر نرمافزاری که با استفاده از کد منبع یک برنامه دیگر ایجاد شده باشد به عنوان فورک آن شناخته میشود. در بلاک چین، این اتفاق زمانی به عنوان فورک شناخته میشود که منجر به ایجاد دو زنجیره متفاوت در یک بلاک چین شود.
برای درک بهتر این موضوع بهتر است به نحوه ساخت «لایت کوین» و «بیت کوین کش» بپردازیم. برای ایجاد بلاک چین لایت کوین از منبع کد بیت کوین استفاده شده است. به این صورت که پس از دانلود کد منبع، تغییرات مورد نیاز تیم توسعهدهنده مثل تغییر اندازه بلاکها و تعداد کل سکهها بر روی کد اعمال شده است. سپس ماینرهای جدید خارج از کامیونیتی بیت کوین به عنوان نود وارد شبکه شدهاند و نرمافزار آن را اجرا کردهاند تا شبکه لایت کوین رسما فعالیت خود را آغاز کند. بنابراین، ایجاد لایت کوین هیچ تغییری در زنجیره بیت کوین ایجاد نکرده است و به همین دلیل لایت کوین به عنوان فورک بیت کوین شناخته نمیشود.
حال اگر به نحوه ایجاد بیت کوین کش دقت کنیم، متوجه میشویم که بخشی از کامیونیتی شبکه بیت کوین به دنبال اعمال تغییراتی در پروتکل شبکه بودند که بیشتر اعضا با این تغییرات موافق نبودند. این اعضا تغییرات مد نظر خود را بر روی کد منبع بیت کوین اعمال کردند و در یکی از بلاکهای بیت کوین بلاک جدیدی را با پروتکل جدید به شبکه اضافه کردند. با انجام این کار بلاک چین به دو زنجیره مجزا تبدیل شد که زنجیره اصلی به عنوان بیت کوین و زنجیره دوم به عنوان بیت کوین کش به راه خود ادامه داد.
بنابراین بیت کوین کش به عنوان فورک بیت کوین شناخته میشود و این دو ارز تاریخچه معاملاتی مشترکی دارند و بلاکهای قبل از فورک برای هر دو بلاک چین یکسان است. توکنهای ارز دیجیتال ایجاد شده بیت کوین کش به نسبت دارایی به مالکان بیت کوین اختصاص یافت و از این طریق بخش از کامیونیتی بیت کوین از آن جدا و به شبکه بیت کوین کش پیوست.
دلیل ایجاد فورک چیست ؟
تا اینجا فهمیدیم که فورک چیست و حتی میدانیم معنی فورک در بلاک چین چیست تا حدودی به برخی از دلایل مهم برای ایجاد فورک در رمز ارزها اشاره کردیم. نرمافزارهای استفاده شده در بلاک چین توسط تمامی اعضای شبکه اجرا میشود و هر گونه تغییر در نرمافزار تنها در صورتی قابل قبول خواهد بود که همه یا بخشی از کاربران راضی به استفاده از نرمافزار جدید شوند. بنابراین، برای ایجاد فورک در بلاک چین باید با استناد به دلایل قوی، بخش زیادی از کاربران را متقاعد به استفاده از نرمافزار جدید کرد. در ادامه، اصلیترین دلایلی که برای فورک بلاک چین استفاده میشوند را بررسی میکنیم.
بهروزرسانی شبکه و بهبود ویژگیهای آن
یکی از اصلیترین دلایل ایجاد فورک بهروزرسانی شبکه و بهبود کارایی آن است. بلاک چینها نیز همانند تمام نرمافزارهای دیگر نیاز به اضافه کردن ویژگیهای جدید و یا حذف برخی از محدودیتهای قبلی دارند تا بتوانند قابلیتهای خود را بهبود بدهند. گاهی اوقات این بهروزرسانیها برای مقابله با خطرات امنیتی صورت میگیرد اما در بیشتر مواقع دلیل اصلی این کار بهبود کارایی شبکه است.
بیشتر بهروزرسانیها به نفع شبکه است. به همین دلیل بیشتر نودهای شبکه با انجام این بهروزرسانیها موافق هستند. در چنین شرایطی کاربران نرمافزارهای خود را به روز میکنند و در یک بلاک خاص جهت بلاک چین را با استفاده از پروتکل جدید تغییر میدهند. در این حالت با توجه به عدم استفاده نودها از نرمافزار قدیمی، عملا بلاک چین جدید تشکیل نمیشود و فورک تنها منجر به تغییر پروتکل شبکه میشود. فورک «سگویت» (SegWit) که بر روی شبکه بیت کوین انجام شده از این نوع فورک بود که هدف نهایی آن انعطاف پذیری تراکنشها در بلاک چین بود.
ایجاد بلاک چین جدید
دلیل دوم برای فورک ایجاد یک بلاک چین جدید است. معمولا هدف اصلی در این حالت ایجاد بلاک چین جدید نیست ولی اختلافات بین نودهای شبکه به قدری زیاد است که هیچ کدام از گروهها حاضر به قبول ایدهههای گروه مقابل نیستند. در چنین حالتی شبکه با استفاده از نرمافزار جدید فورک میشود و کامیونیتی بلاک چین اصلی به دو گروه تقسیم میشود. این نوع از هاردفورک باعث ایجاد کوینهای جدید میشود که به نسبت مساوی میان دارندگان توکنهای شبکه اصلی تقسیم میشود. به همین دلیل این نوع فورک را به عنوان مدلی از ایردراپ نیز معرفی میکنند.
بیت کوین کش یکی از معروفترین فورکهای بیت کوین است که به دلیل مشکلات مقیاسپذیری شبکه بیت کوین ایجاد شد. برخی از ماینرهای بیت کوین برای افزایش مقیاسپذیری و سرعت شبکه بیت کوین، به دنبال افزایش حداکثر اندازه بلاکها از 1 مگابایت به 8 مگابایت بودند که این ایده به دلیل مشکلات امنیتی از طرف سایر ماینرها رد میشد. این اختلاف نظر، منجر به ارائه پروتکل جدید و فورک بیت کوین کش از بیت کوین در سال 2017 شد.
برگشت به گذشته بلاک چین
ساختار بلاک چین به گونهای طراحی شده است که دستکاری اطلاعات در آن بسیار سخت است. برای انجام این کار نیاز است که بیش از 51 درصد ماینرهای شبکه بلاک مورد نظر خود و تمامی بلاکهای تشکیل شده پس از آن را دوباره استخراج کنند تا تراکنشهای جدید مورد تایید باشند. همین مساله باعث شده است که دستکاری اطلاعات بلاک چینهای بزرگ عملا غیرممکن باشد اما اگر نیاز به تغییر اطلاعات در بلاکهای قبلی به وجود بیاید چه کار باید کرد؟
از نظر منطق بلاک چین و بیت کوین انجام این کار به هیچ عنوان توصیه نمیشود ولی از آنجایی که فضای بلاک چین فضای دموکراسی است میتوان تمامی بلاکهای تشکیل شده پس از یک بلاک خاص را از حافظه تمام ماینرها حذف کرد و کار استخراج را از آن بلاک خاص ادامه داد. با این کار کلیه تراکنشهای انجام شده و تایید شده پس از فورک نامعتبر میشوند و به همین دلیل است که بسیاری از فعالان بازار این کار را درست نمیدانند.
نمونه عملی این نوع از هاردفورک در هک معروف دائو مربوط به بلاک چین اتریوم اتفاق افتاد. در سال 2016 وجود یک مشکل فنی در قرارداد هوشمند مربوط به دائو منجر به هک میلیونها دلار از سرمایه کاربران شبکه اتریوم به خصوص تیم مدیریتی آن شد. این هک اعتماد به شبکه اتریوم را از بین برده بود و از طرفی بخش زیادی از دارایی تیم مدیریتی نیز در آن به سرقت رفته بود.
این اتفاق منجر به ارائه پیشنهاد فورک شبکه از بلاک قبل از هک شد که منجر به نارضایتی برخی از ماینرهای شبکه شد. حمایت ویتالیک بوترین - بنیانگذار اتریوم - از این بهروزرسانی منجر به فورک شبکه شد. بلاک چین جدید که ویتالیک از آن حمایت میکرد نام اتریوم به خود گرفت و بلاک چین اصلی اتریوم نام خود را به اتریوم کلاسیک تغییر دهد.
ارتباط بین فورک و شاردینگ چیست ؟
«شاردینگ» (Sharding) یکی از روشهای افزایش مقیاسپذیری درونزنجیرهای است. هدف از شاردینگ، افزایش تعداد زنجیرهای یک بلاک چین است تا امکان ثبت تراکنشها به صورت موازی در هر یک از شاردها امکان پذیر باشد. در شاردینگ هر یک از زنجیرههای جدید نودها و اعتبارسنجهای مخصوص خود را دارند و تراکنشها به صورت مستقل از دیگر شاردها تایید و ثبت میشوند اما در نهایت شاردها توسط یک بلاک چین مرکزی به یکدیگر متصل میشوند و اطلاعات نهایی تراکنشها در آن ثبت میشود.
با توجه به مطالب گفته شده، میتوان هر کدام از زنجیرهای تشکیل شده در اثر شاردینگ را به صورت یک فورک از بلاک چین اصلی در نظر گرفت که با نودهای مستقل خود به دنبال تایید و ثبت تراکنشها و فزایش مقیاسپذیری شبکه هستند. آنچه در اتریوم 2 برای افزایش مقیاسپذیری استفاده میشود استفاده از چنین ساختاری در کنار تغییر الگوریتم اجماع اثبات کار به اثبات سهام است.
نمونهای از فناوری شاردینگ در حال حاضر با چهار شارد بر روی شبکه «هارمونی وان» پیاده شده است. نوع ناهمگون شاردینگ نیز در پروژه پولکادات برای ایجاد پاراچینها پیاده میشود که شبکه را از فورک بینیاز میکند. در اصل، فورک اولیه باعث ایجاد شاردهای ناهمگون میشود و دیگر نیاز یه فورکهای بعدی نیست.
انواع فورک چیست ؟
فورکها را میتوان از جهتهای مختلفی مورد بررسی قرارداد. در این بخش ما به دنبال بررسی انواع فورک از دیدگاه تاثیری که بر روی بلاک چین و کارکرد آن میگذارند، هستیم. اگر شاردینگ بلاک چینها را که به عنوان روشی برای افزایش مقیاسپذیری استفاده میشود و به نوعی باعث تقسیم کردن فعالیت اجماع میشود را در نظر نگیریم، عموم فورکها برای تغییر پروتکل شبکه بلاک چین انجام میشوند. به طور کلی مفهوم فورک در بلاک چین را میتوان در دو دسته فورک تصادفی و فورک عمدی بررسی کرد. بسیاری از انواع فورکها زیرمجموعه فورک عمدی به حساب میآیند که در ادامه و پس از تعریف فورک تصادفی به بررسی آنها میپردازیم.
مطلبی که در بالا مطالعه کردید بخشی از مجموعه مطالب «آموزش ارزهای دیجیتال — راهنمای مفاهیم و اصطلاحات رمزارزها» است. در ادامه، میتوانید فهرست این مطالب را ببینید:
- دفتر کل توزیع شده چیست ؟ — توضیح DLT به زبان ساده
- بلاک چین چیست و چگونه کار می کند؟ — به زبان ساده
- کاربرد بلاک چین چیست ؟ — هر آنچه باید بدانید
- هش در بلاک چین چیست ؟ – به زبان ساده
- آموزش ارز دیجیتال به زبان ساده — بهترین راهنما برای شروع مبتدی ها
- آموزش بلاک چین ، رمزارزها و بیت کوین جادی — رایگان + دانلود همه بخشها
- اصطلاحات ارز دیجیتال که باید بدانید + توضیح به زبان ساده
- رمز ارز چیست ؟ — آموزش کامل به زبان ساده
- استخر نقدینگی چیست ؟ – توضیح Liquidity Pool به زبان ساده
- انواع بلاک چین چیست ؟ — به زبان ساده
- تفاوت های بلاک چین های عمومی و خصوصی — به زبان ساده
- کریپتو چیست ؟ — به زبان بسیار ساده
- راه های کسب درآمد از ارز دیجیتال – ۱۰ روش کلیدی که باید بدانید
- آموزش رمزنگاری رایگان + مفاهیم پایه و منابع یادگیری — به زبان ساده
- ارز دیجیتال چیست ؟ — به زبان ساده
- صرافی ارز دیجیتال — کدام صرافی آنلاین ارز دیجیتال برای ایرانیان بهتر است؟
- بهترین کیف پول ارز دیجیتال کدام است ؟ | راهنمای استفاده تصویری گام به گام
- کیف پول دیجیتال چیست و کدام کیف پول ارز دیجیتال بهتر است؟
- فورک چیست ؟ — انواع و تاثیر روی قیمت به زبان ساده(همین مطلب)
- وایت پیپر چیست ؟ — اهمیت و کاربرد به زبان ساده
- استخراج ارز دیجیتال چیست ؟ — راهنمای ماینینگ به زبان ساده
- الگوریتم اثبات کار چیست ؟ — Proof of Work به زبان ساده
- اثبات سهام چیست ؟ — Proof of Stake به زبان ساده
- استخراج اتریوم چیست و چگونه اتریوم استخراج کنیم؟ — از صفر تا صد
- انواع ارز دیجیتال چیست؟ — راهنمایی برای سرمایه گذاری آگاهانه
- توکن سوزی چیست ؟ — مفهوم، علت و تاثیر به زبان ساده
- آلت کوین چیست ؟ — توضیح مفهوم به زبان ساده
- شت کوین چیست ؟ — از مفهوم تا ویژگی ها و تشخیص به زبان ساده
- قرارداد هوشمند چیست ؟ — Smart Contract به زبان ساده
- توکن چیست ؟ — کاربرد و اهمیت به زبان ساده
- تفاوت کوین و توکن در ارز دیجیتال چیست ؟ — به زبان ساده
- دیفای چیست ؟ — توضیح مفهوم DeFi به زبان ساده
- فارمینگ ارز دیجیتال چیست ؟ — کشت سود به زبان ساده
- NFT چیست و چطور کار می کند ؟ | همه چیز درباره توکن غیر قابل معاوضه ان اف تی
- ساخت NFT — آموزش کامل و به زبان ساده
- فروش NFT — آموزش از صفر تا صد و کامل
- متاورس چیست ؟ — به زبان ساده
- خرید زمین در متاورس چیست و چگونه است؟ — راهنمایی برای همه
- چگونه وارد متاورس شویم ؟ — راهنمای صفر تا صد
- وب 3 چیست و چه نقشی در آینده اینترنت دارد؟ — نسل سوم وب به زبان ساده
- بیتکوین چیست و چگونه عمل میکند؟
- بهترین روش کسب درآمد از بیت کوین و ارز دیجیتال — راهنمای جامع
- بازار کریپتو چیست ؟ – به زبان ساده + مزایا و معایب
- هودل چیست و HODL کردن به چه معناست؟ — به زبان ساده
- ایردراپ چیست ؟ — آموزش دریافت ارز دیجیتال رایگان
- عرضه اولیه ارز دیجیتال چیست ؟ — هر آنچه باید در مورد ICO بدانید
- بهترین ارزهای دیجیتال در سال 1401 یا 2022 کدام هستند؟
- توکنومیک چیست ؟ – توضیح به زبان ساده
- اصطلاحات ترید ارز دیجیتال که باید بدانید – توضیح 83 اصطلاح کلیدی
- استیکینگ چیست ؟ – استیکینگ در ارز دیجیتال به زبان ساده
- بازار خرسی چیست ؟ – در ارز دیجیتال و بورس
- ماینینگ چیست ؟ – توضیح در ارز دیجیتال و به زبان ساده
- بلاک چین چگونه کار میکند؟ — به زبان ساده
- بازار گاوی چیست ؟ – در ارز دیجیتال و بورس
- ساخت کیف پول بیت کوین بلاک چین — راهنمای تصویری
- الگوریتم اجماع چیست ؟ – به زبان ساده + انواع و کاربردها
- گره در بلاک چین چیست ؟ – توضیح نود Node به زبان ساده
- شاردینگ در بلاک چین چیست ؟ – به زبان ساده
- مقیاس پذیری در بلاک چین چیست ؟ – توضیح به زبان ساده
- نانس چیست ؟ – توضیح عدد nonce در بلاک چین به زبان ساده
- ولیدیتور چیست ؟ – توضیح اعتبار سنج در ارز دیجیتال
- آزادسازی توکن چیست ؟ – توضیح Token Unlock به زبان ساده
- درخت مرکل در بلاک چین چیست ؟ – Merkle Tree به زبان ساده
- TXID چیست ؟ – پیگیری تراکنش ارز دیجیتال با شناسه تراکنش
- مارت در ارز دیجیتال چیست ؟ – توضیح روش پله ای به زبان ساده
- چگونه از ارز دیجیتال سود بگیریم؟ – راهنمای صفر تا صد