بررسی سناریو های UASF BIP148 و بازی ذهنی [قسمت اول]

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

برخی از سناریوهای محتمل BIP148

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

البته من نمی توانم تمام احتمالات را بررسی کنم و در واقع بررسی حتی ۱۰ درصد از احتمالات به تنهایی امکان پذیر نخواهد بود. این تغییرات بسته به طرز فکر افراد درگیر در این کار ممکن است پیچیده باشد، که اصلا نباید دست کم گرفته شود.
قطعا بهتر است شما روی این اتفاقات به شکلی که در این مقاله ترسیم می شود حساب نکنید. اما دانستن سناریو، برای طرف بازنده سبب اقدام به جلوگیری از آن خواهد شد.
از یک سناریوی ساده شروع می کنیم. سناریو های پیچیده تر عموما خسارت بیشتری به بیتکوین وارد خواهد کرد.
چند دیدگاه که در نهایت، هنگام نتیجه گیری مهم است را مطرح می کنیم اما هدف این مقاله پیش بینی آینده نیست و سعی داریم نشان دهیم که تمام این مسائل چطور می تواند به همه چیز خسارت وارد کند.
برای حفظ شفافیت، از دو عنوان “کاربران” و “استخراج کنندگان” که در دو طرف ماجرا هستند استفاده می کنیم. انشعاب  UASF BIP148 همانطور که از نامش یعنی User Activated Soft Ford پیداست توسط پذیرش “کاربران” آغاز می شود.

تسلیم شدن استخراج کننده ها

احتمالا این راحت ترین سناریوی قابل درک است. استخراج کننده ها علاقه ای به پذیرفتن ریسک soft fork (انشعاب سطحی) نداشته و تصمیم می گیرند، Segwit را (از طریق بلاک های گسترده یا همان Extension Blocks، یا Segwit2x یا لایحه straight BIP141) بپذیرند. پذیرفتن یک straight BIP141، سناریوی ایده آل  طرفداران BIP148 خواهد بود چرا که این معناست که آنها توانستند Segwit را به دست آورند و نیازی به اجرایsoft fork  نخواهند داشت.

قبول شرایط Segwit از طریق بلاک های گسترده و Segwit2x نیز شرایطی را بوجود می آورد که در آن از دست طرفداران BIP148 هم هیچ کاری بر نمی آید. این موضوع لزوما خوشایند حامیان BIP148 نخواهد بود، اما در مجموع از وقوع soft fork ممانعت به عمل خواهد آمد. Segwit به بیتکوین خواهد پیوست. بنابراین در این سناریو می توان، دست کم یک بخش برنده برای کاربران در نظر گرفت، حتی اگر حجم بیشتری از بلاک را با خود به همراه داشته باشد.

سهم ناچیز کاربران از قدرت پردازش

در این سناریو، کاربران در یکم اکتبر، سهمی معادل ۰-۱۳% از قدرت پردازش یا قدرت هش (hash rate) که تا تاریخ ۳۱ جولای داشتند، خواهند داشت. نتیجه روشن این مساله این است که بلاک ها با سرعت بسیار کمی (۱ بلاک در هر ۸۰ دقیقه) به وجود خواهد آمد. این موضوع  باعث به وجود آمدن دو مشکل اساسی خواهد شد.

اولین مشکل جمع شدن حجم عظیمی از تراکنش های گیر کرده یا backlog شده در شاخه انشعابی کاربران است. تایید تراکنش ها بسیار زمان بر خواهد بود و به خاطر حجم کوچک و کمیاب بلاک، کارمزدها بسیار زیاد خواهد شد. تغییرات زمانی و هزینه تراکنش های مربوط به انشعاب کاربران می تواند اثر معکوسی بر قیمت بگذارد. این موضوع ممکن است باعث تغییر حرکت قدرت پردازش (hashing power) به سمت شاخه استخراج کننده ها و در نتیجه بدتر شدن اوضاع شود.

مشکل دوم مطمئن نبودن از فعال کردن Segwit روی انشعاب کاربران است. دلیل این موضوع این واقعیت است که فعال شدن Segwit به سیگنال دهی ۹۵ درصدی بلاک ها نیاز دارد که باید طی یک دوره دو هفته ای همسویی با سختی شبکه، تا قبل از ۱۵ نوامبر انجام شود. هرچند از آنجا که سهم کاربران کمتر از ۱۳% از قدرت پردازش شبکه است، برای یک سختی شبکه به تنهایی برای یک دوره همسویی بیشتر از ۱۵ هفته زمان صرف می شود. اول آگوست تا ۱۵ نوامبر شامل ۱۵ هفته می شود. فعال شدن (Segwit (BIP141 روی انشعاب کاربران با شک همراه خواهد بود.

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

استخراج کننده ها هیچ کاری نمی کنند

در این سناریو کاربران بین ۲۵ تا ۷۵ در صد از قدرت پردازش یا هش شبکه را در اختیار خواهند داشت. در این سناریو استخراج کننده ها هیچگونه عکس العملی نشان نخواهند داد.

اگر انشعاب کاربران ۵۱ درصد یا بیشتر شود، تنها یک شاخه وجود خواهد داشت و آن شاخه تنها بلاک هایی را می پذیرد که به Segwit سیگنال دهی می کنند. ممکن است بلاک های یتیم زیادی به وجود آید که نوسازی آنها بین ۳ تا ۴ بلاک نیاز داشته باشد. مشکل دو پرداخت یکسان (یا دو بار خرج کردن) به راحتی اتفاق خواهد افتاد، به همین دلیل صرافی ها و عمده فروشان تراکنش هایی که کمتر از ۶ تا ۸ تایید داشته باشند را نخواهند پذیرفت.

اگر انشعاب کاربران کمتر از ۵۰ درصد شود، دو شاخه به وجود خواهد آمد. “انشعاب کاربران” و “انشعاب استخراج کننده ها”. در این نقطه، اگر انشعاب کاربران قدرت پردازش بیشتری بدست آورد و زنجیره طولانی تری نسبت به استخراج کننده ها تشکیل دهد، UASF با ایجاد یک soft fork (انشعاب سطحی) وارد بازی می شود. انشعاب استخراج کننده ها آسیب شدیدی خواهد خورد و محو می شود. تمام بلاک های انشعاب استخراج کننده ها با انشعاب کاربران جایگزین خواهد شد.

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

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

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

انشعاب دائمی استخراج کننده ها

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

در این بین، حجم زیادی از تقاضا برای یک صراف جهت لیست کردن کوین شاخه کاربران و کوین شاخه استخراج کننده ها وجود خواهد داشت. حامیان UASF، می خواهند ارز شاخه استخراج کننده ها را فروخته و ارز شاخه کاربران را خریداری کنند. یک صرافی برای اینکه بتواند از این فرصت استفاده کند، به دو تراکنش اولیه در بلاکچین نیازمند است که نشان دهد قابلیت استفاده از هر دو طرف زنجیره را داراست و می تواند به مشتریان سرویس دهد. “واریز به حساب” و “برداشت از حساب”.

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

علاوه بر این، صرافی ها معمولا بدون بررسی دقیق تر یک حمله تکرار شونده، موجودی افراد را در اختیار آنها قرار می دهد. بدون در نظر گرفتن امنیت برای خطر تکرار، وقتی که یک صرافی ۵ BTC به شاخه کاربران پرداخت می کند، امکان دارد ناخودآگاه ۵ BTC هم به یک حساب مشابه در شاخه استخراج کننده ها پرداخت کند. مشابه همین موضوع  ممکن است به شکل معکوس مجددا اتفاق بیفتد. ممکن است برنامه بتواند تراکنش یک طرف را نا معتبر اعلام کند اما این کار دشوار است و برنامه ممکن است در این رابطه باگ داشته باشد. به عنوان مثال Coinbase، مبلغ زیادی را در یک حمله تکرار شونده از دست داد و آن زمانی بود که اتریوم به دو شاخه تقسیم شد.

بنابراین برای پوشش هر دو شاخه کاربران و استخراج کننده ها، صرافی ها نیازمند حفظ هر دو مورد امنیتی، محافظت از “خطر نابودی یا محو شدن” و محافظت از حملات “تکرار شونده” خواهد بود.

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

دستیابی به این مساله از چند راه امکان پذیر است، اما چیزی شبیه به تغییر نوع تراکنش ( که در حال حاضر ۱ نوع است که می تواند در hardfork استخراج کننده ها تبدیل به ۲ نوع شود) به خوبی جواب خواهد داد. علاوه براین چون که استخراج کننده ها در هر صورت hardfork می شوند، امکان دارد بخواهند بلاک های ۲ مگابایتی را اضافه کنند. حتی ممکن است نسبت به Segwit هم hardfork انجام دهند.

بنابر این ممکن است، در شرایطی که استخراج کننده ها Segwit را انجام داده و کاربران که (به خاطر داشتن میزانی کمتر از ۱۳ درصد قدرت پردازش و عدم فعال سازی در زمان معین) نتوانسته اند Segwit را انجام دهند، شرایط عجیبی را شاهد باشیم.

 

در مقاله بعدی به بررسی سایر سناریوها خواهیم پرداخت؛ با ما همراه باشید.



دیدگاه هایی که در این مقاله ارائه شده اند، متعلق به نویسنده می باشند و لزوماً مربوط به Coiniran نمی باشد و نباید به آن نسبت داده شود.



Source via medium.com
I
mage via steemit.com

3 Comments

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *