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.
Although not directly a security metric, very high node churn can affect the performance of a DHT-based network. For instance, Provider Records might become unavailable faster than republication of those records, if the nodes responsible to hold them go offline. In turn, this will result in some keys not being available in the network.
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