شدو فورک چیست؟ با مفهوم shadow fork آشنا شوید
شدو فورک یا فورک سایه یک اصطلاح در دنیای فناوری بلاک چین و ارزهای دیجیتال است. در طی این فرایند، دادههایی از شبکه اصلی کپی شده و در یک محیط آزمایشی یا همان تست نت، مورد بررسی و آزمایش قرار میگیرد.
بسیاری از توسعه دهندگان حوزه بلاک چین از این فرایند فورک برای بهبود و توسعه شبکه خود، مانند اتریوم استفاده میکنند که در ادامه بیشتر با آنها آشنا میشویم.
آشنایی با مفهوم فورک (Fork)
برای آشنایی با مفهوم فورک، بهتر است از ابتدای ماجرا یعنی بلاک چینها آغاز کنیم. همه بلاک چینهای ارزهای دیجیتال دارای قوانینی هستند که اصطلاحاً به آنها پروتکل گفته میشود. این پروتکلها مشخص میکنند که یک بلاک چین باید چگونه عمل کند. زمانی که یک بلاک چین با پروتکلهای شروع به فعالیت میکند، هیچکس نمیتواند قوانین آن تغییر دهد. پس به نظر شما راه حل برای تغییر در یک بلاک چین چیست؟ اگر یک بلاک چین دارای مشکلات امنیتی یا باگهایی باشد، چگونه میتوان آن را بهبود بخشید؟
راه حل برای چنین شرایطی، ایجاد یک فورک از بلاک چین مورد نظر که در واقع همان به روزرسانی یا ایجاد یک بلاک چین جدید است. زمانی که برنامه نویسان یک بلاک چین با مشکلاتی در عملکرد آن رو به رو میشوند یا قصد ایجاد تغییراتی در آن را دارند، با کمک کدهای اصلی بلاک چین، یک فورک از آن را ایجاد میکنند. به عنوان مثال، بیت کوین کش (BitCoin Cash) یک فورک از بلاک چین بیت کوین است. فورکهای بیت کوین لیست بلندبالایی دارند.
فورکها به دو دسته سازگار با نسخه قبلی (Backward Compatible) و ناسازگار با نسخه قبلی (Backward Uncompatible) تقسیم میشوند. فورکهای سازگار با نسخه قبلی، تنها با تغییراتی در کد اصلی بلاک چین ایجاد میشوند که به بهبود عملکرد بلاک چین میکنند ولی ناسازگار با نسخه قبلی، یک بلاک چین کاملا متفاوت با نسخه اصلی است.
شدو فورک چیست؟
حالا که با مفهوم اصلی فورک آشنا شدیم، بهتر میتوانیم به پاسخ پرسش Shadow Fork چیست؟ بپردازیم. Shadow Fork به یک فرایندی گفته میشود که طی آن، دادههای شبکه اصلی (Mainnet) بلاک چین یک ارز دیجیتال، در تست نت (TestNet) آن کپی میشود. حالا توسعه دهندگان در طی این فرایند میتوانند تغییرات مدنظر خود را ابتدا در تست نت امتحان کرده و سپس، در شبکه اصلی اعمال کنند. شدو فورک کمک میکند که توسعه دهندگان عواملی مانند استقرار قراردادها، اجرای نودها (Nodes) و آزمایشهای زیرساختی را در یک محیط آزمایشی مورد تست قرار دهند.
شاید با خود فکر کنید که شدو فورک چه کاربردی برای شبکههای اصلی بلاکچین دارند؟ باید بگوییم که هر بلاک چینی پس از انتشار، مورد نقد و بررسی کاربرانش قرار میگیرد. از این رو، ممکن است با چندین نقد منفی رو به رو شود که توسعه دهندگان شبکه، برای ارتقا، به روزرسانی یا بهبود شبکه دست به کار شوند. به کمک شدو فورک میتوانند تمامی ایدههای احتمالی خود بر روی یک محیط آزمایشی قرار دهند و آنها را تست کنند. این روند باعث میشود که میزان ایراد و ضعف در نسخههای به روز شبکههای اصلی کاهش یابد.
دلایل ساخت Shadow Fork
از جمله دلایلی که باعث میشود توسعه دهندگان از روش Shadow Fork برای توسعه شبکه اصلی بلاک چین استفاده کنند، عبارتاند از:
- همانطور که اشاره کردیم، هر بلاک چینی ممکن است دارای مشکلات فنی باشد که توسعه دهندگان به فکر بهبود آن باشند. این فرایند کمک میکند تا مشکلات فنی شبکه اصلی با موارد تست شده در محیط آزمایشی بهبود پیدا کند.
- برخی دیگر از توسعه دهندگان به فکر توسعه و افزایش امکانات بلاک چین خود هستند. از این رو، میتوانند امکانات جدید مدنظر خودشان را به کمک شدو فورک ابتدا تست کرده و سپس، در بلاک چین قرار دهند.
نمونهای برای شدو فورک
شبکه اتریوم، اولین شبکهای است که از Shadow Fork برای توسعه و ادغام خودش استفاده کرده است. اتریوم برای ادغام پروتکل اجماع اثبات کار (POW) در شبکه خودش با پروتکل اجماع اثبات سهام (POS) از این فرایند استفاده میکند و در حال آزمایش این ادغام در یک شدو فورک است.
در تاریخ ۱۱ آوریل سال ۲۰۲۲، ماریوس ون در ویدن (Marius van der Wijden) یکی از اعضای تیم اتریوم، در یک توییت اعلام کرد که Shadow Fork برای اولین بار اتفاق میافتد.
در نسخه مورد آزمایش قرار گرفته اتریوم که از پروتکل اجماع اثبات سهام استفاده میشود، تراکنشها به دست نودهای شبکه به جای ماینرها اجرا و اعتبارسنجی میشوند. نودها در این نوع شبکه، همان سهامداران شبکه هستند که در آن مشارکت میکنند.
احتمال میرود که یکی از دلایل ایجاد این تغییر در شبکه اتریوم، مصرف انرژی بسیار بالا پروتکل اجماع اثبات کار در شبکه باشد. یکی دیگر از شبکههایی که بر اساس این پروتکل کار میکند، بلاک چین بیت کوین است که انتقادهای بسیاری به آن وارد میشود. به همین دلیل، پیشبینی میشود که پس از این شدو فورک در شبکه اتریوم، انرژی مورد نیاز برای شبکه به طور قابل توجهی کاهش یابد.
انواع دیگری از فورکها
علاوه بر شدو فورک، انواع دیگری فورک نیز در شبکههای بلاک چین مورد استفاده قرار میگیرند که هارد فورک (Hard Fork) و سافت فورک (Soft Fork) هستند. همانطور که در ابتدای مقاله اشاره کردیم، دو نوع فورک وجود دارد که یکی سازگار با نسخه قبلی و دیگری ناسازگار با نسخه قبلی است. هارد فورک دقیقا همان فورک ناسازگار با نسخه قبلی و سافت فورک، فورک سازگار با نسخه قبلی است. برای آشنایی هر چه بیشتری با این دو نوع فورک، پیشنهاد میکنیم که مطالب مربوط به آنها را مطالعه کنید.