Python implementation of the Ethereum P2P stack
Project description
Python implementation of the Ethereum P2P stack
Free software: BSD license
Documentation: https://pydevp2p.readthedocs.org.
Introduction
pydevp2p is the Python implementation of the RLPx network layer. RLPx provides a general-purpose transport and interface for applications to communicate via a p2p network. The first version is geared towards building a robust transport, well-formed network, and software interface in order to provide infrastructure which meets the requirements of distributed or decentralized applications such as Ethereum. Encryption is employed to provide better privacy and integrity than would be provided by a cleartext implementation.
RLPx underpins the DEVp2p interface:
Full spec:
Dependencies
On Ubuntu:
$ sudo apt-get install libssl-dev build-essential automake pkg-config libtool libffi-dev libgmp-dev
Features
Node Discovery and Network Formation
Peer Preference Strategies
Peer Reputation
Multiple protocols
Encrypted handshake
Encrypted transport
Dynamically framed transport
Fair queuing
Security Overview
nodes have access to a uniform network topology
peers can uniformly connect to network
network robustness >= kademlia
protocols sharing a connection are provided uniform bandwidth
authenticated connectivity
authenticated discovery protocol
encrypted transport (TCP now; UDP in future)
robust node discovery
History
0.0.1 (2014-01-11)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file devp2p-0.9.3.tar.gz
.
File metadata
- Download URL: devp2p-0.9.3.tar.gz
- Upload date:
- Size: 74.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e9244838cbf5b0ea6dd3472dc870532eaa29463fc0fab9cdf8cf199968044d1 |
|
MD5 | 858c17cab998c2e05c4838acb9cbd551 |
|
BLAKE2b-256 | be6980f0122014bac80e669960be46ea916bb8c062a203125917c43a49eba97f |