أمان عناوين EVM: Ethereum وBase وPolygon والمزيد
جدول المحتويات
أصبحت آلة Ethereum الافتراضية المنصة المهيمنة للعقود الذكية، ويمتد تنسيق عناوينها إلى ما هو أبعد من Ethereum نفسها. تشترك Polygon وArbitrum وOptimism وBase وBNB Chain وAvalanche في نفس نظام العناوين. هذه العالمية قوية لكنها تُدخل فروقاً أمنية يحتاج كل مستخدم لفهمها.
يغطي هذا الدليل كيفية عمل عناوين EVM من الداخل، ولماذا يتحكم مفتاح خاص واحد في الأصول عبر كل سلسلة EVM، وكيف تحميك مجاميع التحقق من الأخطاء المطبعية، وأكثر الأخطاء شيوعاً التي تؤدي إلى فقدان الأموال.
عناوين EVM عالمية¶
تستخدم كل بلوكتشين متوافقة مع EVM نفس تنسيق العنوان: سلسلة سداسية عشرية من 40 حرفاً مسبوقة بـ 0x. العنوان 0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18 صالح على Ethereum وPolygon وArbitrum وOptimism وBase وBNB Chain وAvalanche وكل سلسلة EVM أخرى موجودة أو ستوجد.
هذه العالمية ليست مصادفة. إنها نتيجة مباشرة لكيفية اشتقاق عناوين EVM. العملية تعمل بنفس الطريقة في كل مكان:
- توليد مفتاح خاص عشوائي بحجم 256 بت.
- حساب المفتاح العام باستخدام منحنى secp256k1 البيضاوي.
- أخذ هاش Keccak-256 للمفتاح العام (باستثناء بايت البادئة 0x04).
- الاحتفاظ بآخر 20 بايت (40 حرفاً سداسياً) من الهاش.
- إضافة البادئة
0x.
لأن كل سلسلة EVM تتبع هذا الاشتقاق بالضبط، ينتج نفس المفتاح الخاص دائماً نفس العنوان على كل سلسلة. لا يوجد عنصر خاص بالسلسلة في العنوان نفسه. العنوان هو مجرد دالة للمفتاح الخاص ومنحنى secp256k1.
هذا يختلف جوهرياً عن كيفية عمل عناوين Bitcoin. يحتوي Bitcoin على تنسيقات عناوين متعددة (Bech32 وBase58Check وغيرها) تُرمّز بايتات الإصدار وبيانات خاصة بالسلسلة. عنوان شبكة Bitcoin الرئيسية مميز بصرياً وهيكلياً عن عنوان شبكة الاختبار. سلاسل EVM لا تملك هذا التمييز، وهو في آن واحد ميزة ومصدر خطر.
مفتاح خاص واحد، سلاسل عديدة¶
عند إنشاء محفظة Ethereum، سواء عبر MetaMask أو محفظة أجهزة أو مولّد العبارة الاسترجاعية لـ Ethereum من SafeSeed، تمنحك عبارتك الاسترجاعية الوصول إلى نفس العنوان على كل سلسلة EVM في آن واحد. هذه ميزة، لكن لها تبعات أمنية مهمة.
الميزة: تحتاج فقط لتأمين عبارة استرجاعية أو مفتاح خاص واحد للتحكم في أصولك عبر جميع سلاسل EVM. لا حاجة لمحافظ منفصلة لـ Polygon أو Arbitrum أو Base. فهم العبارات الاسترجاعية مقابل المفاتيح الخاصة يساعد في توضيح هذه العلاقة.
المخاطرة: إذا تعرّض مفتاحك الخاص للاختراق، يحصل المهاجم على الوصول إلى أموالك على كل سلسلة EVM دفعة واحدة. عبارة استرجاعية واحدة مُسرّبة تعني فقدان ETH على Ethereum وMATIC على Polygon وARB على Arbitrum وأي رموز على أي سلسلة EVM أخرى يحمل فيها ذلك العنوان قيمة. نطاق الضرر عند الاختراق أكبر بكثير مما سيكون عليه مع مفاتيح خاصة بكل سلسلة.
هذا النموذج ذو المفتاح المشترك يعني أيضاً أن مسارات الاشتقاق مهمة. مسار اشتقاق Ethereum القياسي المحدد بـ BIP44 هو m/44'/60'/0'/0/0. تستخدم معظم المحافظ هذا المسار لجميع سلاسل EVM، ولهذا يبقى عنوانك ثابتاً عبر الشبكات. تقدم بعض المحافظ مسارات اشتقاق خاصة بالسلسلة لكن هذا غير شائع عملياً. إذا استخدمت مساراً غير قياسي، تأكد من توثيقه. تغطي مقالتنا المعمقة عن محافظ HD ومسارات الاشتقاق التفاصيل التقنية.
التطبيق العملي لتوليد المفاتيح: عند توليد محفظة Ethereum، أنت تولّد محفظة لمنظومة EVM بأكملها. تعامل مع أمان تلك المحفظة وفقاً لذلك. استخدم إنتروبيا مناسبة من مصدر آمن تشفيرياً، وولّد دون اتصال إذا كنت ستحتفظ بقيمة كبيرة، واتبع أفضل ممارسات التخزين البارد.
مجاميع تحقق EIP-55 مختلطة الحالة¶
أحد الجوانب الأكثر دقة لأمان عناوين EVM هو آلية مجموع التحقق. عناوين Ethereum سداسية عشرية، تستخدم الأحرف 0-9 وa-f. بما أن النظام السداسي لا يميز بين الأحرف الكبيرة والصغيرة، فإن 0xab12cd و0xAB12CD يمثلان نفس العنوان. هذا يخلق مشكلة: لا توجد طريقة مدمجة لكشف الأخطاء المطبعية.
حل EIP-55 هذا بترميز مجموع تحقق في كتابة العنوان بأحرف كبيرة وصغيرة. إليك كيف يعمل:
- خذ العنوان بأحرف صغيرة (بدون البادئة
0x). - احسب هاش Keccak-256 لهذا العنوان بأحرف صغيرة.
- لكل حرف في العنوان: إذا كان النيبل المقابل في الهاش 8 أو أعلى، اكتب الحرف بحالة كبيرة. وإلا، أبقِه صغيراً.
النتيجة عنوان مثل 0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed حيث يعمل نمط الأحرف الكبيرة والصغيرة كمجموع تحقق. إذا غيّرت أي حرف، لن يعود نمط الأحرف الكبيرة مطابقاً، وستُنبّهك المحفظة المطبقة بشكل صحيح.
هذا مهم للأمان لأن:
- برمجيات اختطاف الحافظة يمكنها استبدال العناوين المنسوخة بعنوان المهاجم. إذا كان العنوان البديل يحمل مجموع تحقق خاطئ، ستحذرك المحفظة الجيدة.
- أخطاء النسخ اليدوي (إدخال عنوان يدوياً) تُكتشف قبل إرسال الأموال إلى ثقب أسود.
- هجمات تسميم العناوين، حيث يرسل المهاجم معاملات صغيرة من عنوان مشابه بصرياً، تُخفف جزئياً لأن مجموع التحقق يصعّب إيجاد عناوين متصادمة.
يمكنك التحقق من أن عنوان EVM يحمل مجموع تحقق EIP-55 صحيحاً باستخدام مُحقق عناوين Ethereum من SafeSeed. تحقق دائماً من العناوين قبل إرسال معاملات كبيرة. للاطلاع على نظرة أوسع لاختلافات تنسيقات العناوين عبر السلاسل، راجع دليلنا عن تنسيقات عناوين العملات الرقمية.
ملاحظة حرجة: يتم فرض مجاميع تحقق EIP-55 بواسطة المحافظ، وليس البلوكتشين نفسها. بروتوكول Ethereum يقبل المعاملات إلى أي عنوان بحجم 20 بايت بغض النظر عن حالة الأحرف. إذا لم يطبق برنامج محفظتك التحقق من EIP-55، تفقد هذه الحماية. استخدم دائماً برنامج محفظة جيد الصيانة يجري التحقق من مجموع التحقق.
أخطاء شائعة عبر شبكات L2¶
أدى انتشار شبكات الطبقة الثانية وسلاسل EVM الجانبية إلى فئات جديدة من أخطاء المستخدمين. فهمها يمكن أن ينقذك من أخطاء مكلفة.
إرسال الرموز على الشبكة الخاطئة¶
الخطأ الأكثر شيوعاً: تقصد إرسال USDC على Arbitrum لكنك ترسلها عن طريق الخطأ على شبكة Ethereum الرئيسية (مع دفع رسوم gas أعلى بكثير)، أو الأسوأ، ترسل إلى عنوان على شبكة لا يمتلك المستلم وصولاً إليها. بما أن العناوين متطابقة عبر السلاسل، لا تستطيع المحافظ دائماً كشف هذا الخطأ.
الوقاية: تأكد دائماً من محدد الشبكة في محفظتك قبل توقيع المعاملة. تحقق جيداً من chain ID، وهو المُعرّف التقني الذي يميز شبكات EVM عن بعضها.
الإرسال إلى عنوان عقد غير موجود على السلسلة المستهدفة¶
عقد ذكي منشور على Ethereum في العنوان 0xABC... قد لا يكون موجوداً على Polygon. إذا أرسلت رموزاً مباشرة إلى عنوان عقد على سلسلة لم يُنشر عليها عقد، تذهب رموزك إلى عنوان حساب خارجي (EOA) لا يتحكم فيه أحد. تُفقد نهائياً.
الوقاية: إذا كنت ترسل إلى عقد، تأكد من أن العقد منشور على السلسلة المحددة التي تستخدمها. مستكشفات الكتل مثل Etherscan وPolygonscan وArbiscan كل منها يغطي سلسلته.
خسائر متعلقة بالجسور¶
نقل الأصول بين سلاسل EVM يتطلب جسوراً، والجسور كانت مصدر بعض أكبر عمليات الاستغلال في تاريخ العملات الرقمية. تنسيق العنوان المشترك يجعل الربط يبدو سلساً، لكن الآليات الأساسية بعيدة عن البساطة.
الوقاية: استخدم جسوراً راسخة بسجلات أمنية قوية. لا تستخدم جسوراً عبر روابط من رسائل بريد إلكتروني أو رسائل مباشرة أو مواقع غير مألوفة. تحقق من عناوين عقود الجسر عبر الوثائق الرسمية.
هجمات تسميم العناوين¶
يراقب المهاجم البلوكتشين بحثاً عن معاملاتك، ثم يرسل مبلغاً صغيراً من عنوان يشبه عنوانك بصرياً (يتطابق في الأحرف الأولى والأخيرة). لاحقاً، عندما تنسخ عنواناً من سجل معاملاتك، قد تنسخ عن طريق الخطأ عنوان المهاجم المشابه.
الوقاية: لا تنسخ العناوين من سجل المعاملات أبداً. استخدم دائماً دفتر عناوينك أو ولّد نسخة جديدة من محفظتك. تحقق من أي عنوان قبل الإرسال باستخدام أداة مثل مُحقق عناوين Ethereum من SafeSeed. كن حذراً بشكل خاص من العناوين التي تتطابق فقط في الأحرف الأربعة الأولى والأخيرة. فهم عمليات احتيال العملات الرقمية الشائعة المتعلقة بالعبارات الاسترجاعية يساعدك في التعرف على أنماط الهجوم الأوسع.
تجاهل تحذيرات EIP-55¶
بعض المستخدمين، خاصة أولئك الذين يتفاعلون مع بروتوكولات DeFi عبر أدوات سطر الأوامر أو المعاملات الخام، يتجاوزون التحقق من مجموع التحقق. هذا يزيل شبكة أمان حرجة.
الوقاية: استخدم دائماً عناوين مع مجموع تحقق. إذا أعطتك أداة عنواناً بأحرف صغيرة فقط، حوّله إلى تنسيق مجموع التحقق قبل استخدامه.
توليد عناوين EVM بأمان¶
بالنظر إلى أن عنوان EVM واحداً يتحكم في أصول عبر سلاسل متعددة قد تساوي مبالغ كبيرة، تستحق عملية التوليد اهتماماً جاداً.
استخدم عشوائية آمنة تشفيرياً¶
أمان كل عنوان EVM يبدأ بجودة الرقم العشوائي المستخدم لتوليد المفتاح الخاص. يستخدم مولّد المفتاح الخاص لـ Ethereum من SafeSeed واجهة Web Crypto API لاستخراج العشوائية من مولّد الأرقام العشوائية التشفيري لنظام التشغيل، وكل شيء يعمل بالكامل في متصفحك بدون إرسال أي شيء لأي خادم. تعرّف على المزيد حول ما تعنيه الإنتروبيا في العملات الرقمية ولماذا هي مهمة لتوليد المفاتيح.
ولّد دون اتصال للمحافظ عالية القيمة¶
إذا كنت تنشئ محفظة ستحتفظ بقيمة كبيرة عبر سلاسل EVM متعددة، ولّدها دون اتصال. حمّل SafeSeed، اقطع الإنترنت، ولّد عبارتك الاسترجاعية، سجّلها مادياً، وأغلق المتصفح قبل إعادة الاتصال. دليلنا خطوة بخطوة لـ توليد محفظة Ethereum دون اتصال يشرح العملية بأكملها.
اشتق العناوين بشكل صحيح¶
عند التوليد من عبارة استرجاعية BIP39، تأكد من استخدام مسار الاشتقاق الصحيح لـ Ethereum: m/44'/60'/0'/0/0. استخدام مسار خاطئ سينتج عنواناً صالحاً، لكنه عنوان قد لا يجده برنامج محفظتك المعتاد عند الاستعادة من العبارة الاسترجاعية.
تحقق قبل التمويل¶
قبل إرسال أي عملة رقمية إلى عنوان مولّد حديثاً، تحقق منه باستخدام مُحقق عناوين Ethereum من SafeSeed. تأكد من صحة مجموع تحقق EIP-55. فكّر في إرسال معاملة اختبارية صغيرة أولاً، ثم تأكد من الاستلام قبل تحويل مبالغ أكبر.
وثّق إعدادك¶
سجّل برنامج المحفظة ومسار الاشتقاق والشبكة التي استخدمتها. إذا كنت تحتفظ بأصول عبر سلاسل EVM متعددة من نفس العبارة الاسترجاعية، وثّق أي السلاسل تحمل أي أصول. هذه المعلومات حيوية للورثة أو لاستردادك الخاص إذا احتجت لاستعادة الوصول بعد سنوات.
نموذج العنوان المشترك عبر سلاسل EVM هو أحد أعظم ميزات المنظومة. وهو أيضاً نقطة فشل مركّزة. بفهم كيفية عمله، واحترام التحقق من مجموع التحقق، وتجنب أخطاء السلاسل المتقاطعة الشائعة، وتوليد مفاتيحك بأمان، يمكنك الاستفادة الكاملة من عالم EVM متعدد السلاسل دون تعريض نفسك لمخاطر غير ضرورية.