01 · Объяснение

کالبدشکافی مسدودسازی USDT: چگونه Tether توکن‌ها را منجمد می‌کند

از سال ۲۰۱۷ تاکنون Tether حدود ۸٬۰۰۰ آدرس بلاک‌چینی را که بیش از ۴ میلیارد دلار نگه می‌دارند در فهرست سیاه قرار داده است. ما مکانیزم فنی را تشریح می‌کنیم: چگونه یک انتقال معمولی به رویداد AddedBlackList تبدیل می‌شود، preban → ban به چه معناست، چگونه یک آدرس را بررسی کنیم و پنجرهٔ فرصت کجاست.

explainerCryptoAlert Research

Tether این توانایی فنی را دارد که USDT نگه‌داری‌شده در هر آدرس بلاک‌چینی را مسدود کند. پس از چنین مسدودسازی‌ای، صاحب آدرس دیگر نمی‌تواند USDT را منتقل کند، هرچند همچنان در موجودی ظاهر می‌شود.

از سال ۲۰۱۷ تاکنون Tether مسدودسازی حدود ۸٬۰۰۰ آدرس بلاک‌چینی با ارزش مجموع بیش از ۴ میلیارد دلار را آغاز کرده است.

در برابر مقیاس کلی گردش USDT، این اعداد ممکن است کوچک به نظر برسند. اما برای یک فعال بازار به‌صورت فردی، مسدودسازی به یک رویداد بحرانی تبدیل می‌شود — به‌ویژه زمانی که مطمئن است کار غیرقانونی‌ای انجام نداده است. چنین مواردی به آن اندازه که به نظر می‌رسد نادر نیستند. این واقعیت که برخی آدرس‌ها بعداً رفع مسدودی می‌شوند تأیید می‌کند که گاهی تصمیم‌های فردی بر اساس نتیجه‌گیری‌های نادرست آغازکننده گرفته شده‌اند.

مسدودسازی به‌صورت دلبخواه رخ نمی‌دهد — باید مبانی وجود داشته باشد و این رویه هم جنبهٔ حقوقی و هم جنبهٔ عملیاتی دارد. ما این جنبه‌ها را در مقاله‌ای جداگانه دربارهٔ اینکه چه کسی واقعاً تصمیم می‌گیرد پوشش می‌دهیم. هدف این مقاله توضیح مکانیزم فنی مسدودسازی USDT است.

01پایه

یک انتقال معمولی USDT چگونه کار می‌کند

برای درک فرایند مسدودسازی، ابتدا باید بفهمیم یک انتقال معمولی USDT از نظر فنی چگونه رخ می‌دهد.

نمونه‌ای از یک تراکنش USDT در شبکهٔ TRON را در نظر بگیرید. کاربر انتقال USDT را از آدرس خود به آدرس گیرنده آغاز می‌کند. در آن لحظه، تراکنش با قرارداد هوشمند USDT روی TRON تعامل می‌کند:

TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

قرارداد هوشمند همان چیزی است که حساب‌داری موجودی و پردازش انتقال توکن را مدیریت می‌کند. هنگام اجرای یک انتقال، منطق داخلی انتقال توکن قرارداد فراخوانی می‌شود. در سطح رویداد قرارداد، این به‌عنوان رویداد Transfer ثبت می‌شود — یعنی جابه‌جایی یک دارایی از فرستنده به گیرنده.

به‌طور ساده، فرایند به این شکل است:

  1. کاربر انتقال USDT را آغاز می‌کند؛
  2. تراکنش قرارداد هوشمند USDT را فراخوانی می‌کند؛
  3. قرارداد شرایط انتقال را بررسی می‌کند؛
  4. اگر هیچ محدودیتی نباشد، موجودی فرستنده کاهش و موجودی گیرنده افزایش می‌یابد؛
  5. رویداد Transfer روی زنجیره ثبت می‌شود.

USDT روی Ethereum به‌طور مشابه کار می‌کند: یک انتقال از طریق قرارداد هوشمند توکن پردازش می‌شود و یک انتقال موفق به‌عنوان رویداد Transfer ثبت می‌شود. تفاوت‌های اصلی میان TRON و Ethereum از محیط فنی ناشی می‌شوند: استاندارد توکن، قالب آدرس، کارمزدها، سرعت پردازش تراکنش.

قراردادهای USDT در شبکه‌های اصلی
02کنترل

مکانیزم‌های کنترل در قرارداد هوشمند USDT

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

این اقدامات از طریق رویدادهای قرارداد بازتاب می‌یابند. برای تحلیل مسدودسازی، سه رویداد کلیدی هستند:

  • AddedBlackList — افزودن یک آدرس به فهرست سیاه؛
  • RemovedBlackList — حذف یک آدرس از فهرست سیاه؛
  • DestroyedBlackFunds — سوزاندن وجوه در یک آدرس مسدودشده.

به‌طور ساده، منطق به این شکل است:

  1. Tether یک آدرس را به BlackList اضافه می‌کند؛
  2. قرارداد هوشمند شروع به شناسایی این آدرس به‌عنوان مسدودشده می‌کند؛
  3. هنگام تلاش برای یک انتقال خروجی، قرارداد وضعیت آدرس را بررسی می‌کند؛
  4. اگر آدرس در BlackList باشد، انتقال رد می‌شود؛
  5. اگر آدرس در BlackList نباشد، انتقال می‌تواند انجام شود.
03مسدودسازی دومرحله‌ای

از preban به ban: مسدودسازی چگونه روی زنجیره ظاهر می‌شود

مسدودسازی USDT روی TRON نه به‌عنوان یک مرحله بلکه به‌عنوان دو مرحلهٔ on-chain مرتبط ثبت می‌شود: نخست، عملیاتی در MultisigWallet شرکت Tether ایجاد می‌شود؛ سپس آن عملیات اجرا می‌شود و به افزودن آدرس به BlackList منجر می‌شود.

این توالی را می‌توان به‌طور مشروط به دو رویداد تقسیم کرد:

  1. Preban — ایجاد عملیات در MultisigWallet شرکت Tether.
  2. Ban — اجرای واقعی عملیات، که پس از آن آدرس وارد BlackList می‌شود.

Preban: ایجاد عملیات در MultisigWallet شرکت Tether

در مرحلهٔ preban، یک متد روی قرارداد multisig فراخوانی می‌شود. در این تراکنش، آدرس هنوز واقعاً مسدود نشده است — تنها عملیاتی ایجاد می‌کند که multisig باید پس از تأیید لازم اجرا کند.

پارامترهای کلیدی یک تراکنش preban:

پارامترهای تراکنش preban در MultisigWallet

در event logs تراکنش preban، رویدادهای قرارداد multisig ثبت می‌شوند. TransactionId شناسهٔ داخلی عملیات در MultisigWallet شرکت Tether است که بعداً اجرا خواهد شد.

آدرسی که مسدود خواهد شد کجا پنهان است

آدرسی که مسدود خواهد شد به‌طور مستقیم نمایش داده نمی‌شود در event logs تراکنش preban. این آدرس درون پارامتر Data پنهان است که باید طبق قواعد Solidity ABI رمزگشایی شود.

اگر عملیات در حال آماده‌سازی یک فراخوانی به تابع blacklist باشد، ساختار داده به این شکل است:

0xecb93c0 + 32-byte address argument
(<function selector> + <ABI-encoded arguments>)

۴ بایت نخست، function selector است. باقی، آرگومان کدگذاری‌شده با ABI است. برای استخراج آدرس، ۲۰ بایت آخر آرگومان را بگیرید و آن‌ها را رمزگشایی کنید.

در TRON، آدرس‌ها می‌توانند به دو شکل نمایش داده شوند:

  • قالب Hex — با پیشوند 41 آغاز می‌شود؛
  • قالب Base58Check — خوانا برای انسان، با T آغاز می‌شود.

Ban: افزودن واقعی آدرس به BlackList

مسدودسازی واقعی بعداً رخ می‌دهد، زمانی که عملیات multisig ایجادشده اجرا می‌شود. در تراکنش ban، لاگ‌های قرارداد USDT این را نشان می‌دهند:

AddedBlackList(address target)

این رویداد تأیید on-chain است که آدرس به BlackList اضافه شده است.

04پنجرهٔ واکنش

پنجرهٔ فرصت: زمان از preban تا ban

میان preban و ban یک فاصلهٔ زمانی وجود دارد. پیش از آنکه رویداد AddedBlackList ظاهر شود، آدرس هنوز در BlackList نیست و از نظر فنی توانایی استفاده از USDT را حفظ می‌کند. این فاصله همان چیزی است که ما آن را پنجرهٔ فرصت می‌نامیم.

روزها
پنجره در گذشته
۲۰۱۷ تا اوایل دههٔ ۲۰۲۰: میان preban و ban — تا چند روز
ساعت‌ها
پنجره اکنون
میانگین معمول: از ۱ تا ۲۴ ساعت
دقیقه‌ها
در موارد هماهنگ‌شده
در رویدادهای مسدودسازی دسته‌ای — ثانیه‌ها تا چند دقیقه

پنجره در گذشته روزها بود. اکنون به‌طور محسوسی کوتاه شده است — گاهی ساعت‌ها، گاهی دقیقه‌ها. این پیش‌بینی‌پذیری را برای صاحب آدرس کاهش می‌دهد و واکنش سریع را حیاتی می‌کند.

پیش از رویداد AddedBlackList، آدرس همچنان می‌تواند انتقال‌های خروجی USDT انجام دهد. بنابراین، از دیدگاه یک کاربر با حسن نیت که خطر مسدودسازی قریب‌الوقوع را می‌بیند، توالی منطقی اقدامات این است: ابتدا وجوه را خارج کنید از آدرسی که احتمالاً مسدود می‌شود، سپس به دلایل مسدودسازی بپردازید.

05پس از مسدودسازی

پس از ban واقعی چه اتفاقی می‌افتد

پس از مسدودسازی، آدرس دیگر نمی‌تواند USDT ارسال کند. انتقال‌های خروجی توسط منطق قرارداد هوشمند رد می‌شوند. وجوه همچنان در موجودی ظاهر خواهند شد و انتقال‌های ورودی از نظر فنی می‌توانند به آدرس برسند.

آنچه در ادامه رخ می‌دهد به مبانی مسدودسازی بستگی دارد:

  • آدرس ممکن است به‌طور نامحدود در BlackList باقی بماند؛
  • آدرس ممکن است از طریق RemovedBlackList رفع مسدودی شود؛
  • وجوه ممکن است از طریق DestroyedBlackFunds سوزانده شوند، با امکان انتشار مجدد به یک آدرس جدید.

پس از ban واقعی، کار به مسیر حقوقی و تحلیلی منتقل می‌شود: شناسایی منشأ خطر، آماده‌سازی تحلیل on-chain، تأیید خاستگاه وجوه و ارتباط با Tether و ساختارهای دولتی که مسدودسازی را آغاز کرده‌اند — با مشارکت مشاور حقوقی مرتبط.

06نشانه‌ها

چگونه بفهمیم آدرس شما توسط Tether در فهرست سیاه قرار گرفته است

کاربران اغلب مسدودسازی را بلافاصله متوجه نمی‌شوند. در نگاه اول همه‌چیز عادی به نظر می‌رسد: USDT در موجودی نشان داده می‌شود، شبکه کار می‌کند، آدرس درست است، انتقال‌های ورودی با موفقیت واریز می‌شوند. اما هنگام تلاش برای ارسال USDT، تراکنش شکست می‌خورد.

سایر عملیات روی آدرس ممکن است به‌طور عادی ادامه یابند. برای مثال، کاربر ممکن است با موفقیت TRX یا سایر توکن‌ها را ارسال کند، در حالی که مشکل فقط با انتقال‌های خروجی USDT ظاهر می‌شود. این نشانهٔ مهمی است: فهرست سیاه Tether در سطح قرارداد هوشمند USDT اعمال می‌شود، نه بر کل آدرس در شبکهٔ TRON.

انتقال‌های خروجی USDT شکست می‌خورند، در حالی که سایر عملیات (ارسال توکن‌های نیتیو، دریافت وجوه ورودی) به‌طور عادی کار می‌کنند.

نشانهٔ اصلی مسدودسازی

اگر آدرس در BlackList شرکت Tether باشد، قرارداد هوشمند USDT تلاش برای انتقال خروجی را رد می‌کند. در کیف پول، این ممکن است به‌صورت یک خطای ارسال ظاهر شود و در کاوشگر بلاک، تراکنش ممکن است با وضعیت Failed نمایش داده شود.

مهم است که مسدودسازی را از مشکلات فنی معمول تشخیص دهیم:

  • توکن نیتیو ناکافی (TRX، ETH) برای پرداخت کارمزد؛
  • عدم ارسال تراکنش توسط کیف پول (باگ رابط کاربری، RPC یا کیف پول)؛
  • ازدحام شبکه یا قطعی‌های موقت زیرساخت.
07بررسی

چگونه مسدودسازی را از طریق قرارداد هوشمند USDT بررسی کنیم

گام ۱. قرارداد هوشمند USDT روی TRON را در Tronscan باز کنید: TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

گام ۲. به زبانهٔ Contract بروید.

گام ۳. بخش Read Contract را باز کنید.

گام ۴. متد getBlackListStatus را پیدا کنید. در Tronscan ممکن است به‌صورت «8. getBlackListStatus (59bf1abe)» ظاهر شود.

گام ۵. آدرسی را که می‌خواهید بررسی کنید وارد کنید و پرس‌وجو را اجرا کنید.

نتیجهٔ فراخوانی getBlackListStatus

بررسی دستی از طریق Tronscan برای یک وارسی یک‌باره مناسب است. برای واکنش سریع، بهتر است از رصد خودکار استفاده کنید: می‌تواند افزودن به BlackList را از طریق رویداد AddedBlackList ردیابی کند و — هنگامی که قابلیت در دسترس باشد — نشانه‌های مسدودسازی قریب‌الوقوع را پیش از رویداد واقعی AddedBlackList آشکار کند.

08کجا به‌صورت زنده تماشا کنیم

چگونه فعالیت فهرست سیاه USDT را به‌صورت بلادرنگ رصد کنیم

هر رویداد — preban، ban، unban، destroy — به‌صورت عمومی روی زنجیره ثبت می‌شود. این یعنی هر کسی می‌تواند رصد بسازد:

  • رویکرد مستقیم — یک archive node برای TRON و Ethereum اجرا کنید، از طریق WebSocket به event logs قرارداد USDT مشترک شوید. کم‌هزینه‌ترین از نظر هزینه، نیازمند زیرساخت.
  • از طریق سرویس‌های شخص ثالث — QuickNode Streams، Alchemy webhooks، Infura. پولی، اما بدون زیرساخت خودتان.
  • از طریق یک محصول آماده — ما این کار را به‌صورت بلادرنگ از سال ۲۰۱۷ انجام می‌دهیم: فید هشدار تلگرام، REST API، سرور MCP برای ابزارهای AI، HuggingFace dataset برای پژوهشگران.

مطالعهٔ بیشتر