mirror of
https://github.com/codex-storage/nim-codex-dht.git
synced 2025-02-12 03:47:07 +00:00
Since key exchange can be started both ways simultaneously, and these might not get finalised with UDP transport, we can't be sure what encryption key will be used by the other side: - the one derived in the key-exchange started by us, - the one derived in the key-exchange started by the other node. To alleviate this issue, we store two decryption keys in each session. Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
A DHT implementation for Dagger
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
- roughly follow the libp2p-dht specifications from https://github.com/libp2p/specs/tree/master/kad-dht
- provide compatibility mode with the above specs
Current implementation is based on nim-eth's Discovery v5 implementation.
Base files were copied from status-im/nim-eth@779d767b024175a51cf74c79ec7513301ebe2f46
Description
Languages
Nim
100%