Skip to main content

A fully distributed, no-servers, peer-to-peer encrypted messaging protocol.

Project description

A peer-to-peer encrypted messaging protocol supporting multiple devices per user.

See the EndraApp project for a GUI messaging application for desktop and mobile implementing Endra.

Features

  • fully peer to peer, no servers of any kind
  • can function independently of internet connectivity
  • multiple devices per profile (user account)
  • multiple profiles per device
  • cryptography:
    • full end-to-end encryption
    • key rotation
    • hybrid cryptography combining classical and post-quantum algorithms
    • cryptographic agility (upgradable to novel algorithms)
    • perfect forward and backward secrecy for transmissions
  • can be used as a library for embedding into other applications
  • will become part of an expandable ecosystem incl. calendar and file-sharing
  • app for desktop and mobile (builds for Linux (Ubuntu 24 x86-64 & arm64), Android (arm64), Windows 11 (x86-64) and MacOS (x86-64 & arm64))

Documentation

The thorough documentation for this project and the technologies it's based on live in a dedicated repository:

  • Endra: learn how Endra works
  • Walytis Technologies: learn about the suite of tools which Endra is part of, built to enable developers to easily develop peer-to-peer distributed applications.

Project Status EXPERIMENTAL

This library is very early in its development.

The API of this library IS LIKELY TO CHANGE in the near future!

RoadMap

See the Walytis Technologies RoadMap for the current plans for Endra in the context of the larger Walytis Technologies Project.

Contributing

Get Involved

  • GitHub Discussions: if you want to share ideas
  • GitHub Issues: if you find bugs, other issues, or would like to submit feature requests
  • GitHub Merge Requests: if you think you know what you're doing, you're very welcome!

Donate

To support me in my work on this and other projects, you can make donations with the following currencies:

Donations help me:

  • dedicate more time to developing and maintaining open-source projects
  • cover costs for IT resources

About the Developer

This project is developed by a human one-man team, publishing under the name Emendir.
I build open technologies trying to improve our world; learning, working and sharing under the principle:

Freely I have received, freely I give.

Feel welcome to join in with code contributions, discussions, ideas and more!

Open-Source in the Public Domain

I dedicate this project to the public domain. It is open source and free to use, share, modify, and build upon without restrictions or conditions.

I make no patent or trademark claims over this project.

Formally, you may use this project under either the:

Related Projects

Walytis Technologies

An overarching project comprising the development of Walytis and a collection of tools based on it for real-world peer-to-peer communications.

  • Walytis: A flexible, lightweight, nonlinear database-blockchain, built on IPFS.
  • WalytisIdentities: P2P multi-controller cryptographic identity management, built on Walytis.
  • WalytisOffchain: Secure access-controlled database-blockchain, built on WalytisIdentities.
  • WalytisMutability: A Walytis blockchain overlay featuring block mutability.
  • Endra: A P2P encrypted messaging protocol with multiple devices per user, built on Walytis.
  • EndraApp: A P2P encrypted messenger supporting multiple devices per user, built on Walytis.

IPFS

A P2P communication and content addressing protocol developed by Protocol Labs. This is the networking foundation which Walytis builds upon.

Alternative Technologies

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

endra-0.6.1.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

endra-0.6.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file endra-0.6.1.tar.gz.

File metadata

  • Download URL: endra-0.6.1.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for endra-0.6.1.tar.gz
Algorithm Hash digest
SHA256 0d5b8806e75b5876dd4bc25c8ffa4cb045be74fda0e3a6e0187672d55ddc5e05
MD5 7489d0bd3e9d0f9b32e298ed171167fe
BLAKE2b-256 4ab86bc33a4f445de8405aa959f1a247e756b501eaed8f8d8af01d9149cd5d62

See more details on using hashes here.

File details

Details for the file endra-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: endra-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for endra-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 93b7cff81d29bdf79573da8bd63419aebb442adc938479fedf7bf03c4e00640d
MD5 5295eb540e6387dddebc29a72c2626cb
BLAKE2b-256 1878f624286e0b7b09959c39820085a69344ca3a0a9a9fb4ce8a949fb3f33e57

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page