Skip to main content

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

Metadata

Release files for endra 0.6.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for endra 0.6.10
File Size Uploaded Provenance Actions
endra-0.6.10.tar.gz 20.6 kB Without provenance Details for endra-0.6.10.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for endra 0.6.10
File Interpreter ABI Platform Actions
endra-0.6.10-py3-none-any.whl Python 3 none any Details for endra-0.6.10-py3-none-any.whl

Total release size: 39.9 kB

Release files / endra-0.6.10.tar.gz

Download URL endra-0.6.10.tar.gz
Size 20.6 kB
Tags Source
SHA-256 checksum
How to use checksums
dec7d25089615144d7f4b03a58aabb9a30548362c2018f68c7bbbc29299f9662
BLAKE2b-256 checksum
How to use checksums
fad9263714b065fc455ccbe2ba57ab3dccc3f0880352c475c955f132515e9c4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.3

Release files / endra-0.6.10-py3-none-any.whl

Download URL endra-0.6.10-py3-none-any.whl
Size 19.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8cf5071a27b629fbb3eb2dfd2baf07e6cc35a50ffd12cf8fc127d74bb9d44463
BLAKE2b-256 checksum
How to use checksums
40ea718668961e48ebe8e32d88a47f7572fc17791ccfa8bdca7c3306a6732b89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.3

Security for endra 0.6.10

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page