قابلیت Replace By Fee در کیف پول
0

قابلیت Replace By Fee در کیف پول

بازدید : 274

همانطور که میدانید و ما هم در مقالات قبلی چندین بار به این موضوع اشاره کردیم ، به محض اینکه تراکنش های بیتکوین تأیید بخورند به هیچ وجه قابل برگشت نخواهند بود. ما در این مقاله قابلیت بسیار جذابی با عنوان Replace By Fee یا RBF را به شما معرفی خواهیم کرد.

این قابلیت در BIP125 مطرح و در نسخه 0.12.0  Bitcoin Core اجرا شد. این ویژگی جنجال زیادی بر پا کرده و هنوز هم جای بحث دارد.

Replace By Fee چیست؟

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

برای درک بهتر RBF  بهتر است آن را با ذکر مثالی توضیح دهیم. شرایطی را در نظر بگیرید که آلیس و باب قصد دارند که مقداری بیتکوین برای هم ارسال کنند. آلیس از باب میخواهد که برای او 1 بیتکوین ارسال کند.

باب میخواهد در ازای این ارسال 0.000001 بیتکوین به عنوان کارمزد به شبکه پرداخت کند.او با کلیدهای خصوصی خود تراکنش را امضا میکند و منتظر میماند تا ماینرها تراکنش او را استخراج کنند.ساعت ها میگذرد اما تراکنش او تأیید نمیشود.

Replace By Fee
Replace By Fee چیست؟

بعد از گذشت 72 ساعت باب متوجه میشود که ماینرها اصلاً تراکنش او را انتخاب نکرده اند. به دو دلیل ممکن است ماینر ها تراکنش او را از ممپول (Mempool) برنداشته باشند.

تذکر: همه تراکنش هایی که توسط کاربران ایجاد میشوند در مکانی به نام ممپول ذخیره میشوند. ماینرها تراکنش ها را از این محل انتخاب میکنند.

چرا ماینر ها تراکنشی را انتخاب نمیکنند؟

کارمزد کم

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

تراکم بالا در ممپول

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

Replace By Fee
فعال کردن قابلیت RBF

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

این بار باب در شرایطی بسیار اورژانسی کارمزد تراکنش بعدی را به 0.001 بیتکوین افزایش میدهد. این تراکنش از طرف ماینر انتخاب میشود چرا که از نظر او کارمزدش معقول و سودآور است.

انواع مختلف RBF 

 

  • Full RBF : این قابلیت به کاربر این امکان را میدهد که بدون قید و شرط تراکنش قبلی خود را با یک تراکنش جدیدی که کارمزد معقول و به اندازه ای دارد ،جایگزین کند.
  • Opt-in RBF : این قابلیتیست که کاربر به دلخواه خود میتواند آن را فعال کند. معمولاً این ویژگی بسته به شرایط کاربر و کیف پولی که انتخاب میکند، فعال میشود. این ویژگی با استفاده از فیلد sequence و BIP 125 فعال می شود.
انواع مختلف RBF 
RBF

 

  • First-seen-safe RBF : این نوع از RBF  در صورتی قابل استفاده است که داده های تراکنش جدید عیناً شبیه به اطلاعات تراکنش قبلی باشد. تنها با این تفاوت که کارمزد تراکنش جدید بیشتر از تراکنش قبلی باشد.

حمله دوبار خرج کردن با استفاده از RBF 

شرایطی را در نظر بگیرید که کاربری بدجنس بخواهد هزینه خرید خود از فروشگاه آنلاینی را با بیتکوین پرداخت کند. او پس از فعال کردن قابلیت RBF  تراکنشی با حداقل کارمزد ایجاد میکند. سپس به فروشنده اطلاع میدهد که تراکنش مربوط به زودی تأیید خواهد شد.

فروشنده هم به امید اینکه تراکنش به زودی استخراج میشود، کالای مشتری را برای او ارسال میکند. حالا در نظر بگیرید که این کاربر بدجنس میتواند با کاربرد قابلیت Full RBF یا Opt-in-RBF با استفاده از داده های همان UTXO  تراکنش قبلی آن مبلغ را به حساب خودش ارسال کند. و با این حرکت منجر به وقوع حمله دوبار خرج کردن شود.به همین علت RBF  بسیار مورد انتقاد قرار گرفته است.

جمع بندی مطالب

پس پیشنهاد میکنیم برای اعتبار دادن به یک تراکنش منتظر بمانید تا تراکنش مورد نظر حداقل 6 تأییدیه دریافت کند. چرا که اگر تراکنشی حتی ۱ تأییدیه هم دریافت کرده باشد، دیگر لغو شدنی نیست. و کلاً در کاربرد تراکنش هایی که RBF  در آنها فعال شده است احتیاط کنید.

0
0
برای اینکه به فکت این مقاله کمک کنید روی دکمه زیر کلیک کنید و تا افراد بیشتری آن را دنبال کنند
اشتراک در
اطلاع از

0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه نظرات
محل تبلیغ
کوینکس
محاسبه‌گر ارزهای دیجیتال
ارز معادل
تومان

محاسبه با مبلغ تتر : تومان

0
نظر خود را بنویسید !x