كيفية إلغاء موافقات الرموز على Ethereum وسلاسل EVM الأخرى
تعلّم خطوة بخطوة كيفية إلغاء الموافقات على Ethereum وسلاسل EVM الأخرى، وأي الموافقات خطرة، وكم يكلّف الإلغاء، وما الذي لا يمكنه التراجع عنه.
لإلغاء موافقات الرموز على Ethereum أو أي سلسلة EVM أخرى، اربط محفظتك بأداة موثوقة لفحص الموافقات (مثل Revoke.cash أو أداة موافقات الرموز في أحد مستكشفات الكتل)، واختر الشبكة، وراجع العقود التي يمكنها إنفاق رموزك، ثم أرسل معاملة إلغاء لكل ما لم تعد تستخدمه أو لا تتعرف عليه. كل عملية إلغاء معاملة على السلسلة تضبط الحد المسموح به على صفر وتكلّف رسوم غاز صغيرة.
تُعد الموافقات من أكثر المخاطر التي يُغفل عنها في الحفظ الذاتي. ففي كل مرة تتداول فيها على منصة لامركزية أو تستخدم تطبيق DeFi، فأنت على الأرجح تمنح عقدًا إذنًا بنقل رموزك. وتظل هذه الأذونات سارية إلى أجل غير مسمى. فإذا تعرّض ذلك العقد لاحقًا للاستغلال، أو إذا كنت قد وافقت على عقد خبيث، فيمكن أخذ رموزك دون أي توقيع إضافي منك.
كيف تعمل موافقات الرموز
تتضمن رموز ERC-20، وهي المعيار المعتمد لمعظم الرموز على Ethereum، دالة approve. عندما توافق على عقد ما، فأنت تحدد حدًا مسموحًا به (allowance): أي الحد الأقصى من ذلك الرمز الذي يجوز للعقد تحويله من عنوانك.
تطلب كثير من التطبيقات حدًا غير محدود حتى لا تضطر إلى الموافقة من جديد في كل صفقة. هذا مريح، لكنه يعني أن العقد يستطيع نقل رصيدك كاملًا من ذلك الرمز في أي وقت، الآن أو في المستقبل.
وتعمل الرموز غير القابلة للاستبدال (NFT) بطريقة مشابهة. إذ تمنح دالة setApprovalForAll مشغّلًا إذنًا بنقل كل رمز NFT في مجموعة تملكها، ولهذا تستهدفها أدوات استنزاف NFT.
وهناك أيضًا نمط أحدث: توقيعات permit. تتيح لك بعض الرموز والأنظمة (ومنها Permit2 من Uniswap) منح حد مسموح به عبر توقيع رسالة خارج السلسلة بدلًا من إرسال معاملة. تبدو هذه التوقيعات غير ضارة لكنها قد تأذن بالتحويلات. يتناول مقالنا عن التصيد الجليدي وتوقيعات permit هذا الخطر.
خطوة بخطوة: كيف تلغي الموافقات
- 1افتح أداة موثوقة مباشرةً. اكتب العنوان بنفسك أو استخدم إشارة مرجعية. من الخيارات المعروفة Revoke.cash وأداة فحص موافقات الرموز في Etherscan وغيره من المستكشفات. توجد مواقع «إلغاء» مزيفة، لذا لا تتبع أبدًا روابط من الرسائل المباشرة أو الإعلانات.
- 2اربط محفظتك أو الصق عنوانك. يتيح لك لصق العنوان عرض الموافقات دون ربط المحفظة. ولا تحتاج إلى الربط إلا لإرسال معاملات الإلغاء.
- 3اختر الشبكة. الموافقات خاصة بكل سلسلة. تحقق من Ethereum، ثم من كل شبكة تستخدمها، مثل Arbitrum أو Optimism أو Base أو Polygon أو BNB Smart Chain.
- 4راجع القائمة. سترى لكل موافقة الرمز، والعقد المخوّل بالإنفاق، ومقدار الحد المسموح به، وغالبًا تاريخ منحها.
- 5حدد ما يجب إلغاؤه. أعطِ الأولوية للحدود غير المحدودة، والجهات المنفقة التي لا تتعرف عليها، والتطبيقات التي لم تعد تستخدمها، وأي عقد متورط في عملية استغلال معروفة.
- 6انقر على الإلغاء وأكّد في محفظتك. اقرأ طلب المحفظة: ينبغي أن يكون استدعاء
approveيضبط الحد المسموح به على صفر (أو استدعاءsetApprovalForAllمضبوطًا على false في حالة NFT). - 7كرّر ذلك لكل شبكة. ثم حدّث الصفحة للتأكد من اختفاء الموافقات.
أي الموافقات تلغيها أولًا
| نوع الموافقة | مستوى الخطر | الإجراء |
|---|---|---|
| حد غير محدود لعقد مجهول | مرتفع | ألغِها فورًا |
setApprovalForAll على مجموعة NFT قيّمة | مرتفع | ألغِها ما لم تكن تعرض رموزًا للبيع حاليًا |
| حد غير محدود لتطبيق لم تعد تستخدمه | متوسط | ألغِها |
| حد محدود لتطبيق موثوق تستخدمه كثيرًا | منخفض | احتفظ بها أو خفّضها |
| موافقة لعقد متورط في عملية استغلال | مرتفع | ألغِها فورًا |
ما لا يستطيع الإلغاء فعله
الإلغاء إجراء وقائي وليس علاجًا. فهو لن:
- يعيد الرموز التي سبق تحويلها.
- يحميك إذا سُرقت عبارتك الأولية أو مفتاحك الخاص. ففي هذه الحالة يستطيع المهاجم توقيع أي شيء؛ انقل الأصول المتبقية إلى محفظة جديدة كما هو موضح في ما يجب فعله فورًا إذا تعرضت محفظتك للاختراق.
- يلغي بشكل موثوق توقيعات permit خارج السلسلة التي منحتها بالفعل. فهذه تخضع لقواعد انتهاء صلاحية وnonce خاصة بها، لذا إذا وقّعت على permit مريب، فالاستجابة الأكثر أمانًا هي نقل الرموز المتأثرة إلى محفظة جديدة.
قلّل مخاطر الموافقات مستقبلًا
- حدّد مبالغ مخصصة. تتيح لك محافظ كثيرة تعديل المبلغ في طلب الموافقة. لا توافق إلا على ما تنوي إنفاقه.
- استخدم محفظة منفصلة للتجارب. احتفظ بـمحفظة مؤقتة للتطبيقات الجديدة وعمليات السك والتوزيعات المجانية، واحفظ أموالك طويلة الأجل في محفظة لا تتصل أبدًا بمواقع غير مألوفة.
- اقرأ كل طلب توقيع. إذا طلب منك موقع توقيع رسالة لا تفهمها، فتوقف.
- راجع الموافقات بانتظام. كل بضعة أشهر، وبعد تجربة أي تطبيق جديد.
- تحقق من المواقع المتصلة أيضًا. الاتصال والموافقة أمران مختلفان؛ راجع أذونات المحفظة والمواقع المتصلة.
أخطاء شائعة
- استخدام أداة إلغاء مزيفة عُثر عليها عبر إعلان في محرك بحث أو رد على وسائل التواصل الاجتماعي.
- الإلغاء على Ethereum مع نسيان المحفظة نفسها على شبكات الطبقة الثانية.
- افتراض أن قطع اتصال موقع في محفظتك يزيل موافقاته. هذا غير صحيح.
- تجاهل الرموز منخفضة القيمة؛ فالمهاجمون غالبًا ما يكنسون كل ما تطاله أيديهم.
الخلاصة
موافقات الرموز أذونات قائمة تبقى طويلًا بعد اللحظة التي منحتها فيها. التحقق منها مجاني، وإلغاؤها رخيص، والقيام بذلك بانتظام يغلق أحد أكثر المسارات شيوعًا التي تستخدمها أدوات الاستنزاف. اجعل ذلك جزءًا من روتينك، ولا توافق إلا على ما تحتاجه، واحتفظ بمعظم أصولك في محفظة نادرًا ما توقّع على أي شيء.
الأسئلة الشائعة
ما موافقة الرمز؟
موافقة الرمز إذن تمنحه لعقد ذكي لنقل رمز معيّن من محفظتك حتى مبلغ محدد. تحتاج منصات التداول اللامركزية وتطبيقات DeFi الأخرى إلى الموافقات كي تعمل. ويظل الإذن ساريًا حتى تلغيه أو يُستنفد الحد المسموح به، حتى لو لم تزر التطبيق مرة أخرى أبدًا.
هل يتطلب إلغاء الموافقة دفع رسوم غاز؟
نعم. الإلغاء معاملة على السلسلة تضبط الحد المسموح به على صفر، لذا تدفع رسوم شبكة عادية. على الشبكة الرئيسية لـ Ethereum قد تكون ملحوظة، أما على شبكات الطبقة الثانية فهي رخيصة عادةً. أما عرض موافقاتك فمجاني.
هل يعيد إلغاء الموافقة رموزي المسروقة؟
لا. الإلغاء يمنع فقط التحويلات المستقبلية من ذلك العقد. ولا يمكن استرداد الرموز التي أُخذت بالفعل عن طريق الإلغاء. وإذا انكشفت عبارتك الأولية أو مفتاحك الخاص، فلا يكفي الإلغاء؛ انقل الأموال المتبقية إلى محفظة جديدة.
كم مرة ينبغي أن أتحقق من موافقات الرموز؟
من العادات الجيدة مراجعتها كل بضعة أشهر وبعد أي جلسة تعاملت فيها مع تطبيق جديد أو غير مألوف. وتحقق منها فورًا أيضًا إذا شككت في أنك وقّعت على شيء خبيث.
