Skip to content

MuxZeroNet/zerolib

Repository files navigation

zerolib: A Minimalist ZeroNet Protocol Library

Build status

zerolib is a minimalist utility library for working with the ZeroNet protocol, which is based on MessagePack and uses deterministic elliptic curve signature. It is written for Python 3.5+

This is a highly experimental library. Before its API is stablized, developers should pay close attention to this documentation, as the public API provided by the library may be changed.

Features include:

  • Digital signatures
  • Hashing and data integrity checking
  • TLS certificate utilities
  • Packet parsing and formatting
  • Connection managing
  • Readers-writer locks

zerolib is inspired by the reference ZeroNet implementation written by shortcutme, but features more consistent API and greater flexibility.

zerolib is written and maintained by MuxZeroNet with help from the contributors and is licensed under the GNU General Public License version 3. If you like this project, please consider running a seed box.

To avoid confusion, a private key is usually called a secret key in the documentation.

How to install

I recommend you use zerolib in a virtual environment.

sudo apt install python3-pip python3-venv

mkdir devel
python3 -m venv devel/
cd devel
git clone https://github.com/MuxZeroNet/zerolib.git

source ./bin/activate  # Super important! You must activate the virtual environment.
which python3 && which pip

cd zerolib/
python3 -m pip install -r requirements.txt --upgrade
python3 -m pip install -r ci-requirements.txt --upgrade

python3 run_tests.py

About

[WIP] A Minimalist ZeroNet Protocol Library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages