Repo ini berisi sekumpulan disektor protokol jaringan untuk Ethereum yang dapat Anda muat ke Wireshark yang sangat populer untuk mulai memeriksa lalu lintas Ethereum.
Saat ini kami mendukung protokol penemuan berbasis UDP, namun dukungan untuk protokol RLPx Wire dan subprotokol ETH sedang dalam pengerjaan.
Berikut adalah fitur-fitur yang saat ini didukung oleh disektor Ethereum Discovery (kami sedang mengerjakan lebih banyak lagi):
PING
, PONG
, FIND_NODE
dan NODES
, memecah pesan menjadi elemen-elemennya, dengan tipe data yang sesuai.PING
=> PONG
, serta interaksi FIND_NODE
=> NODES
di pohon protokol.Protokol | Versi | Status | Catatan |
---|---|---|---|
penemuan | v4 | ✅ | |
penemuan | v5 | ? | v5 sedang dalam proses di klien. Lihat terbitan dan PR berlabel discv5. |
kabel | v1 | ? | wip cabang: devp2p-wire |
Kami sedang berupaya untuk mengaktifkan pembuatan plugin secara terpisah dari Wireshark. Sementara itu, Anda perlu mengkloning repo Wireshark.
cmake
dan ninja
. Di macOS, Anda dapat menjalankan brew install cmake ninja
jika Anda menggunakan 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
, yaitu ln -s ${THIS_REPO} ${WIRESHARK_SRC}/plugins/epan/ethereum
.${WIRESHARK_SRC}/CMakeLists.txt
untuk menambahkan direktori plugins/epan/ethereum
di bawah variabel PLUGIN_SRC_DIRS
, yaitu: ...
set(PLUGIN_SRC_DIRS
plugins/epan/ethercat
plugins/epan/ethereum
plugins/epan/gryphon
...
wireshark-ninja
, dan jalankan lagi build Wireshark lengkap dengan mengulangi langkah 3.wireshark-ninja/run
.Diurutkan berdasarkan abjad berdasarkan nama keluarga.
Di tim Grup dan Sistem Rekayasa Protokol (PegaSys) di ConsenSys, kami berspesialisasi dalam aspek teknologi Ethereum tingkat rendah dan mendalam. Beberapa tantangan yang kami atasi adalah: skalabilitas, kerahasiaan, modularitas, finalitas, perizinan, dll.
Untuk melakukan pekerjaan kami, kami memerlukan peralatan untuk melakukan rontgen ke berbagai bagian sistem. Salah satu bagian tersebut adalah lapisan jaringan. Tidak ada otoritas pusat di rantai publik Ethereum, oleh karena itu semua komunikasi bersifat peer-to-peer (P2P), yang memunculkan pola komunikasi bergaya RPC dan seperti gosip yang memerlukan wawasan penuh selama pengembangan, penelitian, dan pengujian.
devp2p adalah nama subsistem jaringan Ethereum, bersama dengan kumpulan protokol inti yang di atasnya terdapat subprotokol seperti ETH, Whisper, Swarm, Light Ethereum, dll.
Wireshark adalah alat populer untuk analisis paket jaringan. Pengguna dapat memulai dump jaringan dan menavigasi banyak paket data melalui GUI yang kuat. Arsitektur Wireshark bersifat modular, dan berkisar pada konsep dissectors : komponen yang mampu memecahkan kode protokol konkret, yang dapat digunakan di setiap lapisan model OSI.
Sayangnya belum ada disektor Wireshark untuk protokol devp2p Ethereum. Proyek ini mengubahnya.
Misi PegaSys adalah membangun solusi blockchain yang siap diproduksi di lingkungan bisnis. Kami berkomitmen terhadap open source, dan menciptakan kerangka kerja untuk inovasi kolaboratif untuk komunitas rantai publik dan perusahaan terkemuka.
Tim kami terdiri dari para insinyur yang terkemuka di bidang pemrosesan data besar, kriptografi terapan, komputasi sumber terbuka, layanan cloud, dan pengembangan blockchain.
Pelajari lebih lanjut tentang PegaSys.
Proyek ini dilisensikan di bawah GPLv2.