kademlia - DHT implementation

  •        45

A Kademlia DHT implementation in node, ready to be used as a distributed data store. The KNode represents a Kademlia node and handles all communication and storage. This should be the only thing you need to interact with the Kademlia overlay network.

https://github.com/nikhilm/kademlia

Dependencies:

underscore : >1.1.0
hat : >=0.0.3
underscore.string : latest
async : >=0.1.0

Tags
Implementation
License
Platform

   




Related Projects

kadoh - The Kademlia DHT in Javascript for Node.js and Browsers

  •    Javascript

KadOH is a framework to build P2P applications for browsers and node.js. By implementing the basis of the Kademlia DHT, KadOH lets you build distributed web applications for mobile and desktop devices. With its flexible and extensible design, you can easily adapt KadOH to fit your needs. KadOH is available under the MIT License. See the wiki for more informations ! Also take look at our report and be aware that this document may be outdated.

dht - Kademlia/Mainline DHT node in Go.

  •    Go

This is a golang Kademlia/Bittorrent DHT library that implements BEP 5. It's typically used by a torrent client such as Taipei-Torrent, but it could also be used by a standalone DHT routers, or for other more creative purposes.

kad - peer-to-peer application framework implementing the kademlia distributed hash table for node

  •    Javascript

Peer-to-peer application framework implementing the Kademlia distributed hash table for Node.js and the browser.Install kad as a dependency of your package using NPM.

ppPhone

  •    C++

This is a P2P VoIP system. It support audio and video chat through kademlia-based dht overlay. The p2p module use Kademlia protocols; Audio codec is G.729. An simple Introduction here: http://www.needdo.com/2007/09/ppphonekademliap2p-voip/ . My Personal blog is http://www.idolf.cn and my email is dolfcao@gmail.com .

lbry-sdk - The LBRY SDK for building decentralized, censorship resistant, monetized, digital content apps

  •    Python

LBRY is a decentralized peer-to-peer protocol for publishing and accessing digital content. It utilizes the LBRY blockchain as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, rights and access rules. LBRY also provides a data network that consists of peers (seeders) uploading and downloading data from other peers, possibly in exchange for payments, as well as a distributed hash table used by peers to discover other peers. Our releases page contains pre-built binaries of the latest release, pre-releases, and past releases for macOS, Debian-based Linux, and Windows. Automated travis builds are also available for testing.


kadoh - The Kademlia DHT in Javascript for Node.js and Browsers

  •    Javascript

The Kademlia DHT in Javascript for Node.js and Browsers

kademlia - A DHT in Python using asyncio

  •    Python

Documentation can be found at kademlia.readthedocs.org. This library is an asynchronous Python implementation of the Kademlia distributed hash table. It uses the asyncio library in Python 3 to provide asynchronous communication. The nodes communicate using RPC over UDP to communiate, meaning that it is capable of working behind a NAT.

Entangled

  •    Python

Entangled is a distributed hash table (DHT) and peer-to-peer tuple space, based on Kademlia. It is written in Python, and makes use of the Twisted framework. This can be used as a base for creating peer-to-peer (P2P) network applications.

OpenBazaar-Server - OpenBazaar 1.0 Server daemon for communication with OpenBazaar-Client

  •    Python

This repo contains the OpenBazaar networking daemon that can be used to access the p2p network. It establishes connections and maintains a Kademlia style DHT. Rest and websocket APIs are available for clients to communicate with the daemon.Pre-built installers which bundle the client and server components can be found here.

Overlay Weaver

  •    Java

A P2P overlay construction toolkit, which supports routing algorithm researchers in addition to application developers. It provides multiple routing (DHT) algorithms such as Chord, Kademlia, Koorde, Pastry and Tapestry, and a distributed environment emu

openbazaar-go - OpenBazaar 2.0 Server Daemon in Go

  •    Go

This repository contains the OpenBazaar server daemon which handles the heavy lifting for the OpenBazaar desktop application. The server combines several technologies: A modified IPFS node, which itself combines ideas from Git, BitTorrent, and Kademlia. A lightweight SPV Bitcoin wallet for interacting with the Bitcoin network. And a JSON API which can be used by a user interface to control the node and browse the network. If you are looking for the OpenBazaar user interface code see here.A typical install of OpenBazaar contains a bundle of the server daemon and user interface. If this is what you are looking for you can find an installer at https://openbazaar.org/download.html. If you are looking to run the server daemon by itself or to contribute to developement see below for instructions.

KadNode - P2P DNS with content key, crypto key and PKI support. DynDNS alternative.

  •    C

KadNode is a small and decentralized DNS resolver that can use existing public key infrastructures. It utilizes the BitTorrent P2P network and mbedtls for TLS/crypto support. KadNode can intercept .p2p domain queries on the systems level and resolve them using a decentralized DHT network. TLS authentication can be used to make sure the correct IP address was found. If successful, the IP address is passed to the application making the request.

Bt - Java BitTorrent Done Right!

  •    Java

Bt is a lightweight framework for P2P-lovers and enthusiastic BitTorrent researchers, perfect choice for light enterprise and home usage and experimentation. It offers good performance, reliability and is highly customizable. With Bt you can create a production-grade BitTorrent client in a matter of minutes. Bt is still in its' early days, but is actively developed and designed with stability and maintainability in mind.

peer-tweet - Decentralized feeds using BitTorrent's DHT

  •    Javascript

BitTorrent's DHT is probably one of the most resilient and censorship-resistant networks on the internet. PeerTweet uses this network to allow users to broadcast tweets to anyone who is listening. When you start PeerTweet, it generates a hash @33cwte8iwWn7uhtj9MKCs4q5Ax7B which is similar to your Twitter username (ex. @lmatteis). The difference is that you have entire control over what can be posted because only you own the private key associated with such address. Furthermore, thanks to the DHT, what you post cannot be stopped by any government or institution. Once you find other PeerTweet addresses you trust (and are not spam), you can follow them. This configures your client to store this user's tweets and broadcasts them to the DHT every once in a while to keep their feed alive. This cooperation of following accounts, allows for feeds to stay alive in the DHT network. The PeerTweet protocol also publishes your actions such as I just followed @919c.. or I just liked @9139.. and I just retweeted @5789... This allows the possibility for new users to find other addresses they can trust; if I trust the user @6749.. and they're following @9801.., then perhaps I can mark @9801.. as not spam. This idea of publicly tweeting about your actions also allows for powerful future crawling analysis of this social graph.

Khashmir DHT

  •    Python

Khashmir is a distributed hash table library of the Kademlia flavor implemented in Python.

magnetico - Autonomous (self-hosted) BitTorrent DHT search engine suite.

  •    Python

Autonomous (self-hosted) BitTorrent DHT search engine suite. Both programs, combined together, allows anyone with a decent Internet connection to access the vast amount of torrents waiting to be discovered within the BitTorrent DHT space, without relying on any central entity.

kenosis

  •    

a fully-distributed p2p RPC system built on top of XMLRPC. Nodes are automatically connected to each other via a Kademlia-style network and can route RPC requests efficiently to any online node.

dhtspider - Bittorrent dht network spider

  •    Javascript

Bittorrent dht network infohash spider, for engiy.com[a bittorrent resource search engine]

dht - BitTorrent DHT Protocol && DHT Spider.

  •    Go

See the video on the Youtube.It contains two modes, the standard mode and the crawling mode. The standard mode follows the BEPs, and you can use it as a standard dht server. The crawling mode aims to crawl as more metadata info as possiple. It doesn't follow the standard BEPs protocol. With the crawling mode, you can build another BTDigg.