محفظتك تعرض عليك «0xa9059cbb…» وتنتظر منك موافقة. المختبر يحوّل ذلك إلى جملة مفهومة: أي دالة تُستدعى، وبأي وسائط. وإلى جانبها ست أدوات تحليل أخرى تجيب على أسئلة يصعب الإجابة عليها يدوياً.
كل أداة هنا تجيب على سؤال واحد محدّد — وتقول لك أيضاً ما الذي لا تستطيع الإجابة عليه.
الصق calldata أو مُعرِّف دالة من أربع بايتات أو اسم دالة. الأربع بايتات قد تتطابق مع أكثر من دالة — وأحياناً عمداً — فنعرض عليك كل الاحتمالات لا واحداً منها.
المعاملات الحديثة ترجع خطأً مخصّصاً بأربع بايتات لا يقرؤه أحد. نحوّله إلى الرسالة الحقيقية، ونسمّي رمز الـ panic بدل تركه رقماً ستّ عشرياً.
معظم توكنات ERC-20 هي OpenZeppelin زائد بضع عشرات من الأسطر. نطرح بصمات المكتبات أولاً، فيبقى الجزء الذي كتبه صاحب المشروع فعلاً — وهو المكان الذي تُخبَّأ فيه التعديلات.
تغيير أسماء المتغيّرات وإعادة التنسيق لا يخفي شيئاً — المقارنة تجري على بنية الرموز لا على النص. تُبلِغك بحجم التطابق، ولا تقول أبداً من نسخ من مَن.
نتتبّع إلى ثلاث خطوات للخلف حتى أول من موّل العنوان، مع المعاملة التي تثبت كل خطوة. القرب ليس تهمة، والصفحة تقول ذلك صراحةً.
أنت تُحضِر العنوانين، فلا قائمة اتهام هنا ولا ادّعاء. محدود بثلاث خطوات — و«لم نجد مساراً ضمن هذه الحدود» جملة صادقة، أما «لا يوجد مسار» فليست جملة تستطيع هذه الأداة قولها.
نحدّد قائمة الملفات، ثم متصفّحك أنت يجلبها من GitHub ويحلّلها محلّياً — الكود لا يمرّ بخوادمنا. المستودعات العامة فقط: لا يُرسَل أي مفتاح وصول إطلاقاً.
الأدوات نفسها (الماسح، لوحات التحكّم، مساحة عمل SAFI) واجهتها بالإنجليزية حالياً. هذه الصفحات تشرح لك كل شيء بالعربية قبل أن تدخل إليها.
أدوات التتبّع سهل أن تتحوّل إلى آلة اتهام. هذه مبنية على رفض ذلك.
خطوة واحدة بين عنوانين تصف الشبكة، لا الأشخاص. أي محفظة سحبت من منصّة تداول كبيرة هي على بُعد خطوة واحدة من عشرات الآلاف من العناوين، ومنها بالضرورة عناوين سيّئة.
لذلك تعرض الأداة المعاملة التي تثبت كل خطوة، وتترك الحكم لك. ولا تصف عنواناً بأنه «محتال»، لأن ذلك استنتاج عن نيّة والبلوكتشين لا يسجّل النوايا.
مُعرِّف الدالة من أربع بايتات يمكن أن يتطابق مع أكثر من توقيع، وهذا التصادم يُصنَع أحياناً عمداً لتضليل من يقرأ بسرعة. لهذا نعرض كل التطابقات؛ عرض واحد منها بثقة هو بالضبط الخطأ الذي يستغلّه المهاجم.
البحث عن مسار محدود بثلاث خطوات وبعدد محدّد من الاستعلامات. حين لا نجد شيئاً، الجملة الصادقة هي أننا لم نجد ضمن تلك الحدود.
الفرق بين الجملتين هو الفرق بين أداة تستطيع الوثوق بها وأداة تقول لك ما تحب سماعه.
درجة تشابه خام بين عقدَي ERC-20 تقيس أساساً شهرة OpenZeppelin. نطرح بصمات المكتبات أولاً حتى تكون النتيجة عن الكود الذي كُتب فعلاً لهذا المشروع.
وحتى حينها، تُبلِغ الأداة عن مقدار التطابق فقط. أيّهما نسخ من الآخر سؤال لا يجيب عليه الكود — يجيب عليه التاريخ، وأنت من يقرؤه.
الصق عنوان العقد لترى صلاحيات المالك والسيولة ونتيجة محاكاة البيع قبل أن تخاطر بأموالك. رسم صغير لكل فحص يُعرض قبل التوقيع — ومشمول بلا حدود مع أي اشتراك.