فورک Fork، یا کارکرد آنها، به نظر می رسد یکی از ویژگی های ثابت کریپتوکارنسی cryptocurrency است. اما آنها چی هستند؟ چرا از اهمیت بالایی برخوردارند؟ و تفاوت بین فورک سخت و فورک نرم چیست؟

فورک”، در شرایط برنامه نویسی، اصلاح کد اوپن سورس open-source یا منبع باز است. معمولا کد فورک شبیه به کد اصلی است، اما با اصلاحات مهم و دو شاخه” به راحتی هماهنگ است. گاهی اوقات فورک برای آزمایش یک فرآیند مورد استفاده قرار می گیرد، اما با استفاده از روش های کریپتوکارنسی cryptocurrencies، اغلب برای پیاده سازی یک تغییر اساسی یا ایجاد یک دارایی جدید با ویژگی هایی مشابه نسخه اصلی استفاده می شود. (اما نه دقیقا برابر).

همه فورک ها به صورت خودخواسته ایجاد نمیشوند و دستی نیستند. با توزیع گسترده ی کدبیس codebase به صورت اُپن سورس open-source ، یک فورک می تواند زمانی که گره ها اطلاعات یکسانی را تکثیر نمی کنند به طور تصادفی اتفاق بیفتد . با این حال، معمولا این فورک ها شناسایی و حل می شوند، و اکثریت فورک های کریپتوکارنسی cryptocurrency به علت تفاوت ویژگی های جاسازی شده است.

یکی از چیزهایی که باید درمورد فورک ها به خاطر داشته باشید این است که دارای پیشینه ی مشترک” می باشند. سوابق معاملات در هر زنجیر (قدیمی و جدید) قبل از تقسیم یکسان سازی میشود.

فورک های سخت

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

 

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

 

برای استفاده از بیتکوین bitcoin، یک فورک سخت برای تغییر پارامترهای تعیین کننده مانند اندازه بلاک، مشکل پازل کریپتوگرافی cryptography که باید حل شود، محدودیت هایی که می توان به اطلاعات اضافه کرد، و غیره لازم است. تغییر هر یک از این قوانین موجب بلاک هایی میشود که توسط پروتکل جدید پذیرفته میشود اما توسط نسخه های قدیمی تر رد میشود و این امر رد نتیجه منجر به مشکلات جدی میشود – حتی احتمال از دست دادن دارایی.

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

 

بگذارید بگوییم که بلاک ۲ مگابایتی توسط یک گره به روز شده تایید و به بلاکچین blockchain اضافه شده است. اگر بلاک بعدی توسط گره ای که یک نسخه قدیمی از پروتکل را اجرا می کند، تأیید شود چه؟ سعی خواهد کرد بلاک خود را به بلاکچین blockchain اضافه کند، اما تشخیص می دهد که آخرین بلاک معتبر نیست. بنابراین، این بلاک را نادیده می گیرد و اعتبار جدید را به قبلی اضافه می کند. ناگهان شما دو بلاکچین blockchain خواهید داشت ، یکی با بلاک های نسخه قدیمی و جدید، و دیگری فقط با بلاک های نسخه ی قدیمی. این که کدام یک از زنجیرها سریعتر رشد می کنند بستگی به این دارد که کدام یک از گره ها بلوک های بعدی را تایید میکند  و این موضوع در نهایت میتواند منجر به شکاف های اضافی شود. این امکان وجود دارد که دو (یا بیشتر) زنجیرها بتوانند بصورت موازی به طور نامحدود رشد کنند.

 

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

 

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

هارد فورک در مقابل سافت فورک

فورک نرم

 

فورک نرم هنوز هم می تواند با نسخه های قدیمی تر کار کند.

برای مثال، اگر یک پروتکل به شیوه ای که قواعد را تشدید می کند تغییر کرده باشد، این امر موجب تغییر ظاهری میشود یا عملکردی که ساختار را به هیچ وجه تحت تاثیر قرار نمی دهد ایجاد میکند، سپس بلاک های نسخه جدید توسط گره های نسخه قدیمی تایید می شوند. با این وجود: نسخه جدیدتر، متراکم تر” بلاک های نسخه قدیمی را رد می کنند.

در 

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

به عنوان مثال، بیایید در نظر بگیریم که جامعه تصمیم به کاهش اندازه بلاک از محدودیت فعلی ۱MB به ۰٫۵MB بگیرد. گره های نسخه جدید بلاک های ۱ مگابایتی را رد می کنند و بر اساس بلاک قبلی ساخته میشوند (اگر با نسخه به روز شده از کد استخراج شده باشد)، که باعث می شود یک فورک موقت ایجاد شود.

 

این یک فورک نرم است و تا به امروز چندین بار اتفاق افتاده است. در ابتدا بیت کوین Bitcoin محدودیت اندازه بلاک نداشت. معرفی حد مجاز ۱ مگابایت از طریق فورک نرم انجام شد، از آنجایی که قانون جدید دقیق تر”  از قدیمی بود. عملکرد pay-to-script-hash که کد را بدون تغییر ساختار افزایش میدهد نیز به صورت موفقیت آمیز از طریق فورک نرم اضافه شده است. این نوع اصلاحات عمدتا به اکثریت ماینرها برای ارتقا نیاز دارد که باعث می شود امکان پذیرتر باشد. برای 

خرید بیت کوین و 

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

برای نمونه هایی از تغییراتی که نیاز به یک فورک نرم دارند، نگاهی به softfork wishlist” بیندازید.

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

کریپتوکارنسی یا رمزارز چیست؟ ؛ 

تفاوت بین بلاکچین های عمومی و خصوصی چیست؟

منبع: 

فورک سخت ( hard fork ) در مقابل فورک نرم ( soft fork )


مشخصات

آخرین مطالب این وبلاگ

آخرین ارسال ها

آخرین جستجو ها