يحتوي هذا الريبو على مجموعة من أدوات تشريح بروتوكول الشبكة لـ Ethereum والتي يمكنك تحميلها في Wireshark المشهور على نطاق واسع لبدء فحص حركة مرور Ethereum.
ندعم حاليًا بروتوكول الاكتشاف المستند إلى UDP، لكن هناك دعمًا لبروتوكول RLPx Wire وبروتوكول ETH الفرعي.
فيما يلي الميزات التي يدعمها حاليًا مُشرح Ethereum Discovery (نحن نعمل على المزيد):
PING
و PONG
و FIND_NODE
و NODES
، وتقسيم الرسائل إلى عناصرها، مع أنواع البيانات المناسبة.PING
=> PONG
، بالإضافة إلى تفاعلات FIND_NODE
=> NODES
في أشجار البروتوكول.بروتوكول | إصدار | حالة | ملحوظات |
---|---|---|---|
اكتشاف | v4 | ✅ | |
اكتشاف | الإصدار 5 | ؟ | الإصدار 5 قيد التنفيذ لدى العملاء. ارجع إلى المشكلات والعلاقات العامة المسمى diskv5. |
سلك | الإصدار 1 | ؟ | فرع المسح: devp2p-wire |
نحن نعمل على تمكين إنشاء المكون الإضافي بشكل منفصل عن Wireshark. في هذه الأثناء، سوف تحتاج إلى استنساخ مستودع Wireshark.
cmake
و ninja
. على نظام التشغيل macOS، يمكنك تشغيل brew install cmake ninja
إذا كنت تستخدم Homebrew. $ cd ${WIRESHARK_SRC}
$ # check out the latest 2.6 tag (could be higher)
$ git checkout wireshark-2.6.2
$ mkdir ../wireshark-ninja
$ cd ../wireshark-ninja
$ cmake -G Ninja ../wireshark
$ ninja
${WIRESHARK_SRC}/plugins/epan/ethereum
، أي ln -s ${THIS_REPO} ${WIRESHARK_SRC}/plugins/epan/ethereum
.${WIRESHARK_SRC}/CMakeLists.txt
لإضافة دليل plugins/epan/ethereum
ضمن المتغير PLUGIN_SRC_DIRS
، على سبيل المثال: ...
set(PLUGIN_SRC_DIRS
plugins/epan/ethercat
plugins/epan/ethereum
plugins/epan/gryphon
...
wireshark-ninja
، وقم بتشغيل إصدار Wireshark الكامل مرة أخرى مع تكرار الخطوة 3.wireshark-ninja/run
.مرتبة أبجديا حسب اللقب.
في فريق أنظمة ومجموعات هندسة البروتوكول (PegaSys) في ConsenSys، نحن متخصصون في الجوانب العميقة والمنخفضة المستوى لتقنية Ethereum. بعض التحديات التي نتعامل معها هي: قابلية التوسع، والسرية، والنمطية، والنهائية، والأذونات، وما إلى ذلك.
لأداء مهمتنا، نحتاج إلى أدوات لتصوير الأشعة السينية في أجزاء مختلفة من النظام. أحد هذه الأجزاء هو طبقة الشبكة. لا توجد سلطة مركزية في السلسلة العامة Ethereum، وبالتالي فإن جميع الاتصالات هي نظير إلى نظير (P2P)، مما يؤدي إلى ظهور أنماط اتصال تشبه أسلوب RPC والشبيهة بالقيل والقال والتي نحتاج إلى رؤية كاملة لها أثناء التطوير والبحث والاختبار.
devp2p هو اسم النظام الفرعي لشبكات Ethereum، إلى جانب مجموعته من البروتوكولات الأساسية التي تعلوها البروتوكولات الفرعية مثل ETH وWhisper وSwarm وLight Ethereum وما إلى ذلك.
تعتبر Wireshark أداة شائعة لتحليل حزم الشبكة. يمكن للمستخدمين بدء عمليات تفريغ الشبكة والتنقل عبر مجموعة كبيرة من بيانات الحزم عبر واجهة المستخدم الرسومية القوية. إن بنية Wireshark معيارية، وتدور حول مفهوم المشرحات : المكونات القادرة على فك تشفير بروتوكول ملموس، والتي يمكن استخدامها في أي طبقة من نموذج OSI.
لسوء الحظ، لا توجد أدوات تشريح Wireshark حتى الآن لبروتوكولات Ethereum devp2p. هذا المشروع يغير ذلك.
تتمثل مهمة PegaSys في بناء حلول blockchain جاهزة للإنتاج في بيئات الأعمال. نحن ملتزمون بالمصادر المفتوحة، ونقوم بإنشاء إطار عمل للابتكار التعاوني لمجتمع السلسلة العامة والمؤسسات الرائدة.
يتكون فريقنا من مهندسين رائدين في مجالات معالجة البيانات الضخمة، والتشفير التطبيقي، والحوسبة مفتوحة المصدر، والخدمات السحابية، وتطوير blockchain.
تعرف على المزيد حول PegaSys.
هذا المشروع مرخص بموجب GPLv2.