DHT based on the [lip2p kademlia spec](https://github.com/libp2p/specs/tree/master/kad-dht)
Go to file
Csaba Kiraly 01488104e5 add "traditional" targetID based findNode message
This patch adds a findNode message sending the actual
target ID as in traditional Kademlia lookup. This in
contrast to the actual findNode message that send information
about the distance only, leading to more secure but slower lookups.

Having both primitives allows us to select which to use per use case.

Current naming is findNode for the distance based message and
findNodeFast for the message added in this patch.
2022-03-22 15:18:44 +01:00
.github/workflows Remove nim development compiler version from CI 2022-03-08 13:55:53 +11:00
libp2pdht add "traditional" targetID based findNode message 2022-03-22 15:18:44 +01:00
tests fixup: tests: expose startup delay parameter 2022-03-22 11:53:55 +01:00
.gitignore feat: Swap PeerRecords with SignedPeerRecords 2022-03-09 15:03:16 +11:00
LICENSE-APACHEv2 initial commit based on nim-eth@779d767b024175a51cf74c79ec7513301ebe2f46 2022-02-14 01:51:28 +01:00
LICENSE-MIT initial commit based on nim-eth@779d767b024175a51cf74c79ec7513301ebe2f46 2022-02-14 01:51:28 +01:00
README.md build: Add CI Actions 2022-03-04 18:04:50 +11:00
codecov.yml update codecov path to be informational 2022-03-22 11:00:26 +11:00
libp2pdht.nim feat: reorg project to add nimble build system 2022-02-25 09:10:43 +11:00
libp2pdht.nimble feat: Swap ENR to libp2p SignedPeerRecords 2022-03-22 11:00:26 +11:00

README.md

A DHT implementation for Dagger

GitHub CI codecov](https://codecov.io/gh/status-im/nim-libp2p-dht)

This DHT implementation is aiming to provide a DHT for Dagger with the following properties

  • flexible transport usage with
    • fast UDP based operation
    • fallback to TCP-based operation (maybe though libp2p)
    • support operation on top of libp2p
  • flexible message encoding that plays well with the above transports
  • provide node lookup, content storage/lookup, and provider storage/lookup operations

Current implementation is based on nim-eth's Discovery v5 implementation. Base files were copied from nim-eth@779d767b024175a51cf74c79ec7513301ebe2f46