ممکن است برای شما هم پیش آمده باشد که قصد ارسال بیت کوین داشتید و با یک اشتباه کوچک، مبلغ ارسالی را اشتباه وارد کردهاید و یا نظرتان تغییر کرده و قصد لغو تراکنش تایید نشده بیت کوین را داشتهاید، اما نمیدانستید چطور میتوان این کار را انجام داد و یا اصلا چنین کاری ممکن است. در این مقاله قصد داریم به این موضوع بپردازیم که آیا میتوان تراکنش بیتکوین را کنسل کرد یا خیر. با ما همراه باشید.
تو صرافی ارز پلاس میتونی فقط با ۱۰ هزار تومان و با کارمزد صفر، همه ارزهای دیجیتال رو معامله کنی!
تراکنش تایید نشده بیت کوین
در ابتدا باید توضیح دهیم که تراکنشهای بیت کوین را نمی توان کنسل کرد؛ بلکه تنها میتوان آنها را با یک تراکنش جدید جایگزین کرد. البته سه شرط جایگزین کردن تراکنش وجود دارد:
- تراکنش تایید شده باشد (حداقل یک تاییدیه).
- تراکنش با سیستم RBF ارسال نشده باشد (در ادامه توضیح خواهیم داد).
- مقدار بیت کوین شما برای پرداخت کارمزد کافی نباشد.
تراکنشی که قصد دارید آن را جایگزین کنید، نباید هیچ تاییدیهای داشته باشد؛ در غیر این صورت کنسل کردن تراکنش امکان پذیر نیست.
جهت بررسی تایید یا عدم تایید تراکنش بیت کوین ، میتوان آن را از blockchain.info بررسی کرد.
در اینجا شما باید آی دی تراکنش یا همان Transaction ID را وارد کنید. وقتی این ID را جستجو میکنید، اطلاعات تراکنش نمایش داده میشود و اگر تراکنش تایید نشده باشد، Unconfirmed را نشان میدهد. در صورتی که تراکنش تایید نشده باشد، میتوانید اقدام به جایگزین کردن تراکنش تایید نشده خود کنید. در زیر دو نمونه از تراکنشهای تایید شده و تایید نشده BTC را میبینید.
همانطور که در تصاویر مشاهده میکنید، اگر تراکنش شما تایید شده باشد، تعداد تاییدیهها در جایی که کادر زرد کشیده شده نشان داده میشود.
دو سیستم برای لغو تراکنش تایید نشده بیت کوین وجود دارد: RBF و CPFP. در ادامه با آنها آشنا خواهید شد.
۱. جایگزین کردن تراکنش تایید نشده با روش RBF
یک راهکار برای جایگزین کردن و لغو تراکنش تایید نشده بیت کوین این است که با روش RBF اقدام به دو بار خرج کردن با کارمزد بیشتر کنید. اما این نوع دوبار خرج کردن با کارمزد بیشتر چگونه است؟ RBF مخفف Replace By Fee به معنی جایگزینی با کارمزد است. جایگزینی با کارمزد روشی است که اجازه میدهد نسخهای از تراکنش تایید نشده را با نسخه دیگری از تراکنشی که کارمزد بالاتری را برای معامله پرداخت میکند، جایگزین شود. در این حالت، آدرس فعلی شما تبدیل به خروجی تراکنش جدید میشود؛ بنابراین بیتکوین تراکنش لغو شده پس از کسر کارمزد، به شما برگشت داده میشود.
فرض کنید شما تراکنش اول را انجام دادهاید و قصد جایگزین کردن آن را دارید؛ برای این کار کافی است تنها همان میزان مبلغی که برای تراکنش قبلی وارد کردهاید را برای تراکنش جدید نیز وارد کنید و آن مبلغ را به آدرس کیف پول اصلی خود بفرستید. در این تراکنش باید حتما کارمزد شما بیشتر از قبلی باشد. در صورتی که کارمزد بیشتر باشد، تراکنش قبلی شما جایگزین خواهد شد. چرا که ماینرها معمولا تراکنشی که کارمزد بیشتری دارد را سریعتر تایید میکنند و در این صورت، ماینر تراکنش جدید را انتخاب خواهد کرد و آن را تایید خواهد کرد و در نهایت این مبلغ به کیف پول شما باز خواهد گشت.
البته باید به این نکته توجه کنید که بسیاری از کیف پولها و ماینرها نکات و ویژگیهای امنیتی را رعایت میکنند تا از حمله دو بار خرج کردن در شبکه جلوگیری کنند؛ بنابراین ممکن است تراکنش شما اصلا تایید نشود.
RBF ابتدا توسط ساتوشی ناکاموتو عرضه شد؛ اما چون این روش مشکلات امنیتی داشت، غیرفعال شد و بعدها در سال ۲۰۱۵ پس از آن که بهبود یافت، در پروپوزال BIP125 پیشنهاد شد و اجرای اولیه آن در Bitcoin Core 0.12.0 منتشر شد.
برخی از کیف پولها مانند الکتروم از پروتکل RBF پشتیبانی میکنند و به شما اجازه میدهند تا تراکنش اصلی خود را با تراکنشی که کارمزد بیشتری دارد جایگزین کنید. کیف پول الکتروم گزینه Replace By Fee را دارد که شما میتوانید با فعال کردن آن این کار را به راحتی انجام دهید.
لغو تراکنش تایید نشده بیت کوین در کیف پول الکتروم
فرض کنید که تراکنش اول را انجام دادهایم و مقداری بیت کوین از آدرس کیف پول خود به آدرس دیگری با کارمزد کم یا صفر انتقال دادهایم. حال برای این که این تراکنش تایید نشده را لغو کنیم و با تراکنش دیگری جایگزین کنیم، باید مراحل پیش رو را انجام دهیم.
ابتدا کیف پول الکتروم را باز کنید. ما از نسخه دسکتاپ استفاده خواهیم کرد.
سپس از بخش Tools، گزینه Preferences را انتخاب کنید.
در صفحه باز شده، تیک Replace by Fees را بزنید.
پس از این که این گزینه را فعال کردید، میتوانید تراکنش جدید را ایجاد کنید. اما توجه داشته باشید که در اینجا باید کارمزدی را تعیین کنید که بیشتر از فی تراکنش قبلی باشد. کارمزد را میتوانید به طور دستی تغییر دهید و مبلغ دلخواه را وارد کنید. با ایجاد تراکنش جدید، تراکنش قبلی دیگر قابل خرج کردن نیست. در تصویر زیر مشاهده میکنید که تراکنش دوم ایجاد شده است و تراکنش اول غیر قابل خرج (Unspendable) شده است.
پس از این که تراکنش جدید را ایجاد کردید، باید منتظر بمانید تا تراکنش جدید در شبکه بلاکچین تایید شود. زمانی که با تایید تراکنش بیت کوین مواجه شدید، مبلغ تراکنش قبلی شما به کیف پولتان باز میگردد.
برخی افراد معتقدند که سیستم جایگزینی با کارمزد همانند دو بار خرج کردن است؛ اما تفاوت این دو این است که تراکنشهای Replace by Fee حتما تگ RBF میخورند و با فلگ RBF نشانه گذاری میشوند. به همین دلیل، ماینرها سریعتر این نوع تراکنشها را تایید میکنند.
انواع RBF
از آنجایی که نودها تعیین میکنند از کدام نوع جایگزینی با کارمزد پشتیبانی کنند، این بر عهده نود است که تصمیم بگیرد کدام RBF معتبر است و کدام یک معتبر نیست؛ بنابراین ممکن است برخی گرهها تراکنش RBF شما را رد کنند.
RBF کامل
این نسخه از جایگزین با کارمزد محدودیتهای کمی دارد؛ میتوانید به سادگی کارمزد هر دو تراکنش تایید نشده قبلی و جدید را بپردازید و منتظر باشید تا تراکنش جدید تایید شود.
Replace by Fee انتخابی
این نوع RBFها نیازمند این هستند که فرستنده تراکنش را فلگ یا علامت گذاری کند تا تایید شود. مشکل اینجاست که ارسال کننده باید زمان تایید تراکنش را قبل از انتشار در شبکه بداند. برای همین، بسیاری از کیف پولها از این نوع RBF به صورت پیش فرض استفاده میکنند تا کار را برای افراد راحت کنند.
RBF با خروجیهای یکسان
این نوع جایگزین با کارمزد، اکثر اوقات با دو بار خرج کردن اشتباه گرفته میشود. در اینجا، تراکنش تنها زمانی تایید میشود که تراکنش جدیدی که میخواهد جایگزین قبلی شود، خروجیهای یکسانی با تراکنش تایید نشده قبلی داشته باشد.
این نوع RBF میزان خطا در ارسال تراکنش را کاهش میدهد؛ اما حمله دو بار خرج کردن را سادهتر میکند.
RBF همراه با تاخیر
در این نوع Replace by Fee، تراکنش نباید تا تعداد مشخصی از بلاکها در بلاکچین ثبت شده باشد. با این RBF، فرستنده به ماینرها زمان میدهد تا تراکنشهایشان را با کارمزد کمتری داخل یک بلاک قرار دهند. بنابراین میتواند در پول ارسال کننده تراکنش صرفه جویی کند.
جایگزین کردن تراکنش تایید نشده با روش CPFP
اگر در موقعیتی باشید که به دلیل عدم پرداخت کارمزد کافی برای ارسال بیت کوین به شما، برای چندین روز منتظر تایید یک تراکنش بودهاید، اهمیت ویژگی CPFP را درک خواهید کرد. CPFP مخفف عبارت Child Pays for Parent به معنی لغوی “پرداخت فرزند برای والدین” است. این ویژگی به دریافت کننده تراکنش بیت کوین اجازه میدهد که با پرداخت کارمزد بیشتر، وجوه تایید نشده خود را خرج کند.
این سیستم به این دلیل مفید است که در زمان گیر کردن یک تراکنش به دلیل عدم ارسال کارمزد کافی برای انجام آن، میتوانید وجوه تایید نشده را به آدرس کیف پولهای مختلف ارسال کنید و کارمزد بالاتری را برای ارسال لحاظ کنید. ماینرها به طور طبیعی تراکنش دارای کارمزد بیشتر را برای تایید انتخاب میکنند و همراه با تراکنش قبلی تایید میکنند؛ در نتیجه، هر دو تراکنش در یک بلاک قرار میگیرند.
درک نحوه عملکرد CPFP
در سیستم CPFP زمانی که شما کارمزد بالاتری برای تراکنش تایید نشده میپردازید، در واقع یک تراکنش جدید (Child) را در شبکه منتشر میکنید که از یکی از خروجیهای تایید نشده تراکنش قبلی (Parent) خرج میکند. این تراکنش Child یا جدید را باید با کارمزد بیشتری ارسال کنید تا ماینرها تشویق به تایید آن شوند.
برای استفاده از CPFP به کیف پولی نیاز دارید که این سیستم را پشتیبانی کند. برخی والتها تنظیمات مختلفی برای اجرای این سیستم دارند. پس قبل از استفاده، حتما این تنظیمات را مطالعه کنید. محبوبترین کیف پولها برای انجام CPFP الکتروم (Electrum)، سامورایی (Samourai) و بیت پی (BitPay) هستند.
انجام CPFP در کیف پول الکتروم
در این آموزش، ما از والت الکتروم نسخه ویندوز استفاده میکنیم.
مرحله ۱: در کیف پول الکتروم، به بخش History بروید و بر روی تراکنش تایید نشدهای که قرار است دریافت کنید، راست کلیک کنید و View Transaction را انتخاب کنید.
مرحله ۲: هر آدرسی که با رنگ زرد یا سبز هایلایت شده اند را پیدا کنید. توجه داشته باشید که این آدرسها همراه با سایز تراکنش و کارمزدها هستند.
مرحله ۳: Tools را انتخاب کنید، بر روی Electrum Preferences کلیک کنید و به بخش Transactions بروید. در اینجا باید تیک گزینه Spend Only Confirmed Coins را بردارید.
مرحله ۴: به بخش Recieve بروید و بر روی New Address کلیک کنید تا یک آدرس جدید برای شما ایجاد شود.
مرحله ۵: سپس در بالای صفحه، روی View بروید و از آنجا Show Addresses را انتخاب کنید تا قسمت آدرس ها باز شود.
مرحله ۶: سرچ را باز کنید (می توانید با CTRL + F این کار را انجام دهید) و آدرسی که در مرحله ۲ ساخته اید را جستجو کنید. اگر چند آدرس ایجاد کرده اید، آن آدرسی را سرچ و انتخاب کنید که می خواهید از آن خرج کنید. بر روی این آدرس راست کلیک کنید و Spend From را انتخاب کنید.
مرحله ۷: در بخش Spend که باز می شود، آدرسی که در مرحله ۴ ساخته اید را وارد کنید و سپس مقدار بیت کوینی که می خواهید ارسال کنید را وارد کنید (کمتر از تراکنش تایید نشده اولیه باشد).
بر روی Pay کلیک کنید و سپس Fee Rate را انتخاب کنید. سپس تراکنش را ارسال کنید.
این تراکنشی است که شما به خودتان فرستاده اید، اما با کارمزد بالاتر.
پرسش و پاسخ
۱. پیگیری تراکنش بیت کوین چگونه انجام میشود؟
ابتدا وارد سایت Blockchain.com شوید. سپس در بالای سایت در قسمت Search Your Transaction آی دی تراکنش خود را پیست کنید تا اطلاعات آن به شما نمایش داده شود. همچنین میتوانید آدرس کیف پول خود را در اینجا وارد کنید تا تمام تراکنشهای تایید شده و تایید نشده بیت کوین را به شما نشان دهد.
۲. لغو تراکنش تایید نشده بیت کوین چند روز طول میکشد؟
همانطور که در ابتدای مقاله اشاره کردیم، لغو تراکنشهای تایید نشده بیت کوین توسط ما امکان پذیر نیست و ما تنها میتوانیم تراکنش دیگری را جایگزین تراکنش قبلی بکنیم. اما شبکه بیتکوین این قابلیت را دارد که اگر تراکنش شما برای مدت مشخصی (حدود ۱۴ روز) تایید نشود، خود به خود کنسل میشود و BTC به کیف پول شما بر میگردد.
۳. کارمزد انتقال بیت کوین را چقدر تعیین کنیم تا تراکنش تایید شود؟
طبیعتا هرچه کارمزد بالاتری بپردازید، تراکنش شما زودتر تایید میشود؛ اما برای جایگزین کردن تراکنش، باید کارمزد پرداختی برای تراکنش جدید بیشتر از قبلی باشد. البته این نکته را نیز در نظر داشته باشید که ممکن است تراکنش جدید شما هم تایید نشود. فی شبکه بیتکوین به صورت ساتوشی به ازای هر بایت محاسبه می شود؛ اگر شما مقدار کارمزد را ۱ یا ۲ ساتوشی در نظر بگیرید، تراکنش یا تایید نمیشود و یا خیلی دیر تایید میشود. اگر کارمزد را بالای ۱۰۰ تعیین کنید، تراکنش شما در بازه زمانی بین ۱ تا ۳۰ دقیقه تایید میشود. از این لینک می توانید مقدار کارمزدهای شبکه BTC و مدت زمان انتظار برای تاییدیه را مشاهده کنید.
۴. در کدام کیف پولها میتوان کارمزد انتقال بیت کوین را به صورت دستی تعیین کرد؟
کیف پولهای سخت افزاری مانند لجر نانو اس و ترزور و همچنین والتهای نرم افزاری مثل کوینومی، Mycelium، Jaxx، الکتروم و سامورایی از این ویژگی پشتیبانی میکنند.
جمع بندی
RBF بدین معنی است که ارسال کننده تراکنش، کارمزد بیشتری برای تایید سریعتر تراکنش خود پرداخت میکند. از Replace by Fee زمانی استفاده کنید که میخواهید یک تراکنش را سریعتر ارسال کنید.
CPFP بدین معنی است که گیرنده تراکنش کارمزد بیشتری پرداخت میکند تا تراکنش زودتر تایید شود. از Child Pay For Parent زمانی استفاده کنید که گیرنده تراکنش هستید و میخواهید این بیت کوین زودتر به دست شما برسد.
در آخر حتما اطمینان حاصل کنید تراکنش دوم شما تاییدیه دریافت کرده است و برای این که مطمئن باشید تراکنش شما تایید میشود، حتما کارمزدی که کیف پول به شما پیشنهاد میدهد را وارد کنید و کمتر از آن مقدار نزنید؛ زیرا احتمال تایید نشدن آن وجود دارد. باید به این نکته نیز اشاره شود که برخی از نودها چنین تراکنشهایی را تایید نمیکنند و ممکن است شما در Mempool منتظر بمانید تا تراکنش شما تایید شود.