We approach security from the point of view of the DHT's Keyspace Density.
The following plots examine the peer distribution within the keyspace, aiding in the identification of potential Sybil and eclipse attacks.
In Kademlia, every object indexed by the DHT requires a binary identifier. In the libp2p DHT implementation, peers are identified by the digest of `sha256(peer_id)` and CIDs are identified by the digest of `sha256(cid)`. This Kademlia identifier determines the location of an object within the Kademlia XOR keyspace.
The plot shows how many peers are included in a particular region of the keyspace. Too many peers within one region indicate a potential issue.
The plot shows the distribution of the PeerIDs across the Poisson curve. Too many PeerIDs outside the curve indicate a potential issue.
This plot depicts the count of node records stored within each node’s routing table and made accessible through the Filecoin DHT. These node records serve as a mechanism through which nodes discover new remote nodes in the network. The second plot shows the network stability by peer churn.
Reachable vs Unreachable DHT Records Over Time
CDF of Peer Departure Times
Our network monitoring employs advanced crawling and probing tools and techniques to gather comprehensive data about network health, topology, and performance
A Data Availability Sampling tool to asses Ethereum Node's real custody
A CID sniffer for content in IPFS over Bitswap and DHT requests
A performance measurement tool for Kubo and IPFS-hosted websites.
A DHT and IPNI lookup performance measurement tool.
A DHT monitoring tool for NAT'd peers.
A lightweight GossipSub tracer.
A network agnostic DHT crawler and monitoring tool