تخط وانتقل إلى المحتوى الرئيسي

ما هو مصيدة الجذب رمز مميز؟

U
بقلم: UKey Wallet

Honeypot رمز مميز هي فئة من العملات المشفرة ذات قيود ضارة. سيضيف المطورون عمدًا قيودًا أو أبوابًا خلفية إلى العقود الذكية حتى يتمكن المستخدمون العاديون من ذلك شراء رمز مميز، ولكن ليس طبيعيا بيع أو تواجه رسومًا مرتفعة للغاية وقوائم سوداء وقيودًا أخرى عند البيع، مما يترك الأموال محاصرة في رمز مميز. على السطح، قد يبدو هذا النوع من رمز مميز عاديًا: يوجد مجمع سيولة وشعار رمز مميز وترويج مجتمعي نشط. ولكن بمجرد قيام المستخدمين بالشراء في بورصة لامركزية، فقد يجدون أن البيع مرفوض، أو أن رسوم المعاملة مرتفعة للغاية بحيث يكاد يكون من المستحيل استرداد الأموال.

كيفية التحقق وتقليل المخاطر

  1. يمكنك ذلك موافق انتظر حتى يقوم متصفح blockchain بإدخال عنوان عقد رمز مميز (كما هو موضح في المثال أدناه). إذا تم تحديد رمز مميز على أنه مصيدة جذب، فسيتم عادةً وضع علامة عليه وفقًا لذلك. ​

2. نظرًا لأن على السلسلة سيكون لديه رمز مميز جديد عبر الإنترنت كل يوم، فقد لا تغطي علامة الخطر الخاصة بمتصفح blockchain جميع رمز مميز في الوقت الفعلي، لذا يمكنك أيضًا إجراء فحص ذاتي يدوي من خلال الطريقة التالية. ​
عرض علامة التبويب "قراءة العقد":

owner(): إذا كانت قيمة الإرجاع ليست كذلك 0x000...، يعني عادةً أن مالك العقد يحتفظ بالسيطرة.

totalSupply() و balanceOf(): يستخدم للتحقق من تخصيص رمز مميز الأولي.

ابحث عن وظائف أو متغيرات مثل "isExcludedFromFee(address)" و"isBlacklisted(address)" و"maxTxAmount()" و"tradingEnabled()" (قد تستخدم العقود المختلفة أسماء مختلفة، ولكن الغرض منها متشابه). ​
في علامة التبويب "كتابة العقد" (لا يمكن الوصول إليها إلا إذا كان لديك الأذونات):

تحقق من وجود وظائف الكتابة الحساسة، على سبيل المثال. setFeePercent, setBlacklist, renounceOwnership أو setTradingEnabled. إذا كانت هذه الوظائف موجودة ولا يمكن استدعاؤها إلا من قبل مالك العقد، فستكون مخاطر رمز مميز أعلى. ​
ابحث عن الكلمات الرئيسية التالية في الكود المصدري (ليست حساسة لحالة الأحرف، ويمكنك أيضًا الانتباه إلى الكتابة التي تحتها خط):blacklist, isBot, onlyOwner, setFee, maxTx, exclusionFromFee, trading, swapAndLiquify, transferFrom, approve, mint, burn, renounceOwnership, liquidity.

اهتمام خاص transfer,_transfer و transferFrom التنفيذ، والتحقق مما إذا كانت ستستهدف إلى == زوج أو من == زوج استخدم منطقًا مختلفًا للتمييز بين عمليات البيع والشراء.

إذا وجدت كود مثل هذا:

تتطلب(!_isBlacklisted[from]); إذا (إلى == زوج) { رسوم = 99؛ }

هذا واحد علامة حمراء واضحة. ​
تحقق مما إذا كان العقد يستدعي جهاز التوجيه(مثل Pancake/Uniswap Router)، وما إذا كانت عملية المبادلة تتضمن ذلك lockTheSwap,_tax وغيرها من المنطق المعقد. قد تعيق هذه المنطق المعاملات العادية.

هل أجاب هذا عن سؤالك؟