تراکنش ارز دیجیتال Pending یا Failed شده؛ چطور مشکل را حل یا لغو کنیم؟
چرا تراکنش در متامسک یا تراستولت گیر میکند؟ آموزش گامبهگام لغو تراکنش با نانس (Nonce)، افزایش کارمزد (Speed Up) و رفع خطای Out of Gas.
گیر کردن تراکنش در وضعیت معلق (Pending) یا مواجهه با خطای تراکنش ناموفق (Failed)، یکی از استرسزاترین تجربهها در دنیای ارزهای دیجیتال است. تصور کنید دارایی شما بین زمین و آسمان معلق مانده، موجودی کیفپول بهروز نمیشود و نمیدانید آیا سرمایهتان از دست رفته است یا خیر. این سناریو معمولاً در زمان شلوغی شبکههای بلاکچینی مانند اتریوم، لایه ۲ها یا بیانبی چین رخ میدهد.
در این مقاله تخصصی از رسانه امنیتی کوروکس، مکانیسمهای پشت پرده ممپول (Mempool)، مفهوم حیاتی نانس (Nonce) و نحوه لغو یا تسریع تراکنشهای معلق را بهصورت گامبهگام و کاربردی بررسی میکنیم تا بتوانید کنترل دارایی خود را مجدداً در دست بگیرید.
- تراکنشهای معلق (Pending) معمولاً بهدلیل کارمزد گس پایین یا ناهماهنگی نانس (Nonce) در ممپول (Mempool) گیر میکنند.
- برای لغو یا جایگزینی تراکنش، باید تراکنشی جدید با همان نانس و کارمزد بالاتر (حداقل ۱۰٪ بیشتر) ارسال کنید.
- خطای Failed (مانند Out of Gas) کارمزد مصرفشده را بازنمیگرداند؛ تنظیم دستی Gas Limit برای قراردادهای هوشمند پیچیده حیاتی است.
ورود با آیپی ایران یا فیلترشکنهای رایگان با نشت DNS به حساب RPCهای پیشفرض متامسک (Infura) موجب فعالسازی سامانههای کنترل ریسک و فریز موجودی میشود. در صورت بروز این وضعیت، درخواست احراز هویت با مدارک هویتی غیرایرانی اجباری خواهد بود.
جدول مقایسه سناریوهای تراکنشهای معلق و ناموفق
پیش از ورود به جزئیات فنی، جدول زیر به شما کمک میکند تا وضعیت فعلی تراکنش خود را تشخیص داده و بهترین راهکار را انتخاب کنید:
| سناریو / وضعیت | علت اصلی | وضعیت موجودی کیفپول | راهکار حل مشکل | سطح ریسک از دست رفتن دارایی |
|---|---|---|---|---|
| Pending (گس پایین) | تنظیم کارمزد کمتر از نرخ فعلی شبکه | کسر نشده (فقط قفل شده) | افزایش کارمزد (Speed Up) یا لغو با نانس | صفر (دارایی در شبکه معلق است) |
| Pending (نانس اشتباه) | ارسال تراکنش جدید قبل از تأیید قبلی | کسر نشده | ارسال تراکنش خالی با نانس قدیمی | صفر |
| Failed (Out of Gas) | تعیین حد گس (Gas Limit) کمتر از نیاز | کسر کارمزد گس (بدون انتقال اصل دارایی) | افزایش Gas Limit در تراکنش بعدی | متوسط (فقط کارمزد سوخت میشود) |
| Failed (Reverted) | خطای منطقی در کدهای قرارداد هوشمند (Smart Contract Execution Error) | کسر کارمزد گس | بررسی شرایط قرارداد یا تغییر اسلیپیج (Slippage) | متوسط (فقط کارمزد سوخت میشود) |
آناتومی یک تراکنش معلق (Pending)؛ در ممپول چه میگذرد؟
برای درک اینکه چرا تراکنش شما گیر کرده است، باید با مفهوم ممپول (Mempool) آشنا شوید. ممپول مانند یک اتاق انتظار برای تراکنشهای بلاکچین است. وقتی شما تراکنشی را در متامسک، تراستولت یا هر کیفپول دیگری امضا و ارسال میکنید، این تراکنش مستقیماً وارد بلاکچین نمیشود؛ بلکه ابتدا به ممپول فرستاده میشود.
نودها (Nodes) و اعتبارسنجها (Validators) تراکنشها را از ممپول برمیدارند و در یک بلاک جدید قرار میدهند. از آنجا که فضای هر بلاک محدود است، اعتبارسنجها انگیزه مالی دارند تا تراکنشهایی را انتخاب کنند که بیشترین کارمزد گس (Gas Fee) را پرداخت میکنند. اگر ترافیک شبکه ناگهان افزایش یابد و شما کارمزد پایینی تنظیم کرده باشید، تراکنش شما در انتهای صف ممپول باقی میماند و وضعیت آن به “Pending” تغییر میکند.
نانس (Nonce) چیست و چرا کلید حل مشکل است؟
در شبکههای مبتنی بر EVM (مانند اتریوم، آربیتروم، خوشبینی و بیانبی چین)، هر حساب دارای یک شمارنده به نام نانس (Nonce) است. نانس نشاندهنده تعداد تراکنشهای ارسالشده از آن آدرس است و از صفر شروع میشود.
قانون طلایی بلاکچین این است: تراکنشها باید به ترتیب دقیق نانس پردازش شوند.
اگر شما سه تراکنش با نانسهای ۱، ۲ و ۳ ارسال کنید:
- اگر تراکنش نانس ۱ بهدلیل کارمزد پایین در ممپول گیر کند، تراکنشهای نانس ۲ و ۳ نیز (حتی اگر کارمزد بسیار بالایی داشته باشند) پردازش نخواهند شد و در وضعیت Pending منتظر میمانند. این پدیده را «انسداد نانس» مینامند.
روشهای عملی لغو (Cancel) یا تسریع (Speed Up) تراکنش در متامسک و ربی
اگر تراکنش شما در وضعیت Pending گیر کرده است، دو راهکار پیش رو دارید: تسریع تراکنش (Speed Up) یا لغو تراکنش (Cancel).
روش اول: استفاده از قابلیت Speed Up داخلی کیفپول
بسیاری از کیفپولهای مدرن مانند متامسک گزینهای به نام “Speed Up” را ارائه میدهند. با کلیک روی این گزینه، کیفپول تراکنشی با همان مشخصات و نانس قبلی، اما با کارمزد گس بالاتر ایجاد میکند. اعتبارسنجها تراکنش جدید را بهدلیل سودآوری بیشتر جایگزین تراکنش قبلی میکنند.
اما اگر این گزینه کارساز نبود یا کیفپول شما آن را پشتیبانی نمیکرد، باید به سراغ روش دستی بروید.
روش دوم: لغو دستی تراکنش با استفاده از نانس (Custom Nonce)
این روش مطمئنترین راه برای خلاص شدن از شر یک تراکنش گیرکرده است. ایده اصلی این است: ارسال یک تراکنش با ارزش صفر به آدرس خودتان، با استفاده از همان نانس تراکنش معلق، اما با کارمزد بسیار بالاتر.
گام اول: پیدا کردن نانس تراکنش معلق
۱. آدرس کیفپول خود را در یک مرورگر بلاکچینی (مانند Etherscan برای اتریوم) جستجو کنید.
۲. به بخش Txn Hash یا تراکنشهای معلق بروید.
۳. روی تراکنش پندینگ کلیک کنید و در بخش جزئیات (Click to show more)، عدد مقابل Nonce را یادداشت کنید (مثلاً نانس شما 42 است).
گام دوم: فعالسازی قابلیت نانس دستی در متامسک
۱. افزونه متامسک را باز کنید. ۲. روی آیکون سه نقطه در بالا سمت راست کلیک کرده و وارد Settings شوید. ۳. به بخش Advanced بروید. ۴. گزینه Customize transaction nonce را پیدا کرده و آن را ON کنید.
گام سوم: ارسال تراکنش جایگزین
۱. در متامسک روی Send کلیک کنید.
۲. آدرس دریافتکننده را آدرس کیفپول خودتان قرار دهید.
۳. مقدار انتقال (Amount) را 0 ETH وارد کنید.
۴. روی Next کلیک کنید.
۵. در صفحه تایید، بخش Custom Nonce ظاهر میشود. عددی را که در گام اول یادداشت کردید (در مثال ما 42) وارد کنید.
۶. در بخش کارمزد گس (Gas Fee)، گزینه Aggressive یا دستی را انتخاب کرده و کارمزد را حداقل ۲۰ تا ۳۰ درصد بالاتر از نرخ فعلی شبکه تنظیم کنید. برای بررسی دقیقتر، میتوانید از ابزارهای تخمین گس استفاده کنید. برای مدیریت بهینهتر این فرآیند، مطالعه راهنمای تنظیمات کارمزد در ربی پیشنهاد میشود، چرا که ربیولت تخمینهای بسیار دقیقتری نسبت به متامسک ارائه میدهد.
۷. تراکنش را امضا و ارسال کنید.
بهمحض اینکه این تراکنش صفر دلاری توسط شبکه تأیید شود، تراکنش قبلی شما با نانس 42 بهدلیل تکراری بودن نانس توسط شبکه نادیده گرفته شده و از ممپول حذف (Dropped) میشود.
چرا تراکنشها Failed میشوند؟ (بررسی خطای Out of Gas و Reverted)
گاهی اوقات تراکنش شما معلق نمیماند، بلکه بلافاصله یا پس از مدتی با وضعیت Failed مواجه میشود. در این حالت، دو خطای رایج وجود دارد:
۱. خطای Out of Gas (اتمام سوخت)
هر تراکنش در بلاکچین نیاز به مقدار مشخصی انرژی محاسباتی دارد که با Gas Limit مشخص میشود. اگر شما تعامل پیچیدهای با یک قرارداد هوشمند (مانند سواپ در یونیسواپ یا مینت کردن NFT) انجام دهید، تراکنش به محاسبات زیادی نیاز دارد. اگر Gas Limit تعیینشده توسط کیفپول شما کمتر از نیاز واقعی قرارداد هوشمند باشد، تراکنش تا جایی که گس اجازه میدهد پیش میرود و سپس متوقف میشود.
- نتیجه: تراکنش شکست میخورد، دارایی شما منتقل نمیشود، اما کل کارمزد گس پرداختشده سوخت میشود زیرا نودها کار پردازش را تا لحظه اتمام گس انجام دادهاند.
۲. خطای Execution Reverted (لغو اجرا)
این خطا زمانی رخ میدهد که شرایط منطقی قرارداد هوشمند برقرار نباشد. بهعنوان مثال، اگر میخواهید توکنی را در یک صرافی غیرمتمرکز سواپ کنید، اما قیمت توکن در ثانیه ارسال تراکنش بیش از حد مجاز شما تغییر کند (تجاوز از حد Slippage)، قرارداد هوشمند برای محافظت از دارایی شما تراکنش را ریورت (Revert) میکند.
- در شبکههای لایه ۲ اتریوم، بهدلیل سرعت بالا و ساختار متفاوت هزینهها، این خطاها ممکن است رفتارهای متفاوتی داشته باشند. برای درک بهتر ساختار هزینهای این شبکهها، مقاله کارمزدهای لایه ۲ اتریوم را مطالعه کنید.
۱۰۰٪ آفلاین و بدون ثبت نام؛ تولید کلید تصادفی با ژنراتور آنالوگ.
تجربه میدانی کوروکس (KouroX Field Test)
تیم امنیتی کوروکس برای بررسی رفتار کیفپولها در زمان شلوغی شبکه، یک آزمایش میدانی روی شبکه اصلی اتریوم در زمان افزایش ناگهانی گس به ۱۲۰ Gwei انجام داد.
ما یک تراکنش انتقال ساده را با کارمزد بسیار پایین (35 Gwei) ارسال کردیم که طبق پیشبینی در وضعیت Pending قرار گرفت. سپس عملکرد دو کیفپول متامسک و ربی (Rabby) را در حل این بحران مقایسه کردیم:
- متامسک (MetaMask): دکمه “Cancel” داخلی متامسک در اولین تلاش بهدلیل عدم افزایش کافی کارمزد اولویت (Priority Fee) توسط الگوریتم خودکار کیفپول، شکست خورد. مجبور شدیم بهصورت دستی نانس را فعال کرده و کارمزد گس را روی حالت دستی (Advanced) تنظیم کنیم تا تراکنش لغو شود.
- ربی ولت (Rabby Wallet): ربی بهطور خودکار متوجه تراکنش معلق شد و با ارائه یک رابط کاربری بسیار واضح، کارمزد لازم برای لغو یا تسریع را بر اساس وضعیت زنده ممپول پیشنهاد داد. تراکنش لغو در ربی با یک کلیک و بدون نیاز به فعالسازی دستی نانس، در اولین بلاک تأیید شد.
نتیجه تست: برای کاربران ایرانی که ممکن است بهدلیل اختلالات اینترنت نیاز به اقدام سریع داشته باشند، استفاده از کیفپولهایی با مدیریت گس هوشمندتر مانند ربی یا کیفپولهای سختافزاری مانند سیفپال، ریسک گیر کردن تراکنشها را بهشدت کاهش میدهد.
راهنمای اورژانسی برای جلوگیری از توقیف دارایی و مسدودی کد ملی
- مراجعه سریع به شعبه بانک: علت مسدودی، شماره نامه قضایی / کلاسه پرونده و نام دادسرای صادرکننده دستور را کتباً دریافت کنید.
- استخراج و ذخیره هش بلاکچین (TXID): اسکرینشات از چت معامله P2P، هش تراکنش شبکه (TXID) و رسید واریزی را جمعآوری و چاپ نمایید.
- پرهیز از استرداد خودسرانه وجه: تا قبل از حضور در شعبه دادیاری و تنظیم صورتجلسه رسمی، هرگز پول را به حساب شخص شاکی واریز نکنید.
راهنمای گامبهگام و عملیاتی برای حل مشکل تراکنش پندینگ
اگر همین حالا یک تراکنش معلق دارید، این مراحل را به ترتیب دنبال کنید:
[شروع]
│
▼
۱. کپی کردن آدرس ولت و جستجو در Etherscan / BscScan
│
▼
۲. پیدا کردن تراکنش Pending و یادداشت کردن عدد Nonce
│
▼
۳. آیا دکمه Speed Up/Cancel در ولت کار میکند؟
├── بله ──> استفاده از دکمه ولت و افزایش کارمزد ──> [پایان]
└── خیر ──> رفتن به مرحله ۴
│
▼
۴. فعالسازی Custom Nonce در تنظیمات Advanced کیفپول
│
▼
۵. ارسال تراکنش 0 ETH به آدرس خودتان با نانس یادداشتشده
│
▼
۶. تنظیم دستی کارمزد گس (حداقل ۲۰٪ بالاتر از نرخ فعلی شبکه)
│
▼
۷. امضا و ارسال تراکنش جدید ──> تأیید شبکه و لغو تراکنش قبلی ──> [پایان]
پرسشهای متداول (FAQ)
چرا تراکنش من ساعتهاست در وضعیت Pending باقی مانده است؟
اصلیترین دلیل، تنظیم کارمزد گس (Gas Fee) کمتر از نرخ فعلی شبکه است. همچنین اگر تراکنشی با نانس (Nonce) کوچکتر در صف تأیید معلق باشد، تمام تراکنشهای بعدی با نانس بالاتر در وضعیت پندینگ منتظر میمانند.
آیا در صورت Failed شدن تراکنش، کارمزد گس من سوخت میشود؟
بله، اگر تراکنش بهدلیل خطای Out of Gas یا Reverted شکست بخورد، ماینرها یا اعتبارسنجها پردازش را تا نقطه خطا انجام دادهاند و کارمزد مصرفشده به شما بازگردانده نمیشود، هرچند اصل دارایی در کیفپول شما باقی میماند.
چگونه میتوان یک تراکنش پندینگ را بدون پرداخت هزینه سنگین لغو کرد؟
با ارسال یک تراکنش صفر دلاری (0 ETH) به آدرس خودتان، با استفاده از دقیقاً همان نانس (Nonce) تراکنش معلق و تنظیم کارمزد گس بالاتر (حداقل ۱۰ درصد بیشتر از تراکنش قبلی)، تراکنش قبلی لغو و جایگزین میشود.
آیا استفاده از کیفپولهای سختافزاری مانع از گیر کردن تراکنشها میشود؟
خیر، گیر کردن تراکنش مربوط به مکانیسم اجماع بلاکچین و کارمزد شبکه است، نه نوع کیفپول. با این حال، کیفپولهای پیشرفته مانند سیفپال مدیریت نانس و تخمین کارمزد بهتری را برای جلوگیری از این مشکل ارائه میدهند.
جمعبندی و توصیه امنیتی کوروکس
گیر کردن یا شکست خوردن تراکنشها بخشی از طبیعت شبکههای بلاکچینی غیرمتمرکز است. مهمترین نکته در مواجهه با این شرایط، حفظ خونسردی و عدم ارسال تراکنشهای مکرر و پشتسرهم است، چرا که این کار تنها باعث سردرگمی بیشتر در نانسهای کیفپول شما و هدر رفتن کارمزدهای سنگین میشود.
همواره قبل از ارسال تراکنشهای حساس در زمان شلوغی شبکه، نرخ گس لحظهای را از وبسایتهایی مانند Etherscan Gas Tracker بررسی کنید و ترجیحاً از کیفپولهایی استفاده کنید که کنترل دقیقی روی نانس و کارمزد گس به شما میدهند. هرگز برای حل مشکل تراکنشهای خود، عبارات بازیابی (Seed Phrase) یا کلید خصوصی خود را در اختیار سایتها یا افراد مدعی پشتیبانی قرار ندهید.
پرسشهای متداول کاربران
چرا تراکنش من ساعتهاست در وضعیت Pending باقی مانده است؟
اصلیترین دلیل، تنظیم کارمزد گس (Gas Fee) کمتر از نرخ فعلی شبکه است. همچنین اگر تراکنشی با نانس (Nonce) کوچکتر در صف تأیید معلق باشد، تمام تراکنشهای بعدی با نانس بالاتر در وضعیت پندینگ منتظر میمانند.
آیا در صورت Failed شدن تراکنش، کارمزد گس من سوخت میشود؟
بله، اگر تراکنش بهدلیل خطای Out of Gas یا Reverted شکست بخورد، ماینرها یا اعتبارسنجها پردازش را تا نقطه خطا انجام دادهاند و کارمزد مصرفشده به شما بازگردانده نمیشود، هرچند اصل دارایی در کیفپول شما باقی میماند.
چگونه میتوان یک تراکنش پندینگ را بدون پرداخت هزینه سنگین لغو کرد؟
با ارسال یک تراکنش صفر دلاری (0 ETH) به آدرس خودتان، با استفاده از دقیقاً همان نانس (Nonce) تراکنش معلق و تنظیم کارمزد گس بالاتر (حداقل ۱۰ درصد بیشتر از تراکنش قبلی)، تراکنش قبلی لغو و جایگزین میشود.
آیا استفاده از کیفپولهای سختافزاری مانع از گیر کردن تراکنشها میشود؟
خیر، گیر کردن تراکنش مربوط به مکانیسم اجماع بلاکچین و کارمزد شبکه است، نه نوع کیفپول. با این حال، کیفپولهای پیشرفته مانند سیفپال مدیریت نانس و تخمین کارمزد بهتری را برای جلوگیری از این مشکل ارائه میدهند.
منابع و اسناد استنادی (Primary Sources & Regulatory References)
مطالب و تحلیلهای این راهنما با استناد مستقیم به اسناد فنی، قوانین رسمی و مفاد مراجع زیر تدوین شدهاند:
- Bitcoin BIP-39 & BIP-44 Derivation Path Standardاستاندارد رمزارز مشاهده منبع ↗
- SafePal Official Hardware Architecture & Air-Gapped Verificationمستندات سختافزار مشاهده منبع ↗
- Ledger Donjon Security Research Lab & Vulnerability Reportsآزمایشگاه امنیت مشاهده منبع ↗
این راهنما بر اساس استانداردهای دقیق پژوهشی، تحلیل دادههای رویزنجیره (On-chain) و رصد تغییرات قوانین سایبری توسط تیم پژوهش KouroX تهیه و اعتبارسنجی شده است. کلیه ارزیابیها فاقد جانبداری تجاری بوده و بهصورت دورهای بازبینی میشوند.