Introducing the Wesh Network Toolkit
Welcome to Wesh! If you have an Internet connection, then there are many tools to communicate with others. But if you’re off grid or the Internet is down, then those tools can’t help you. To solve this and other problems, in 2018 Berty Technologies created a protocol to let you create an identity, join a group and exchange messages all without needing an Internet connection or a central service provider.
Thanks to strong encryption, you control your own identity without needing permission. You can set up or participate in ad-hoc groups while preserving privacy. And data is encrypted as it moves between users through an untrusted environment, whether device-to-device or over the Internet when available.
This protocol powers Berty Messenger which brings these features to mobile phone users. But the need for reliable, privacy-based off-grid communication goes beyond a messaging app. That’s why we’re introducing the open-source Wesh Network Toolkit so you can take advantage of the Wesh protocol in your own application.
How will you use Wesh?For maximum flexibility, your application interfaces to Wesh based on gRPC, a well-supported framework which sends and receives Google Protobuf messages.
- Even though the core Wesh code is written in Go, gRPC messages are language-independent. So, Wesh works with your existing application written in Go, Python, Java, C++ or other supported languages.
- gRPC works with the Buf schema registry where we publish the Wesh API. For example, this documents the request and reply to retrieve information about a group.
- gRPC allows different calling interfaces. The messages can be sent as if Wesh is a library linked directly to your application. Or if your application environment requires it, then API messages can be sent over TCP to a Wesh toolkit running on a local or remote server.
The “Wesh” nameYou may be wondering what “Wesh” means. It’s a variant of “mesh” to highlight its asynchronous mesh communication which can use any device to securely store a message for a disconnected group member and deliver it when they connect again. (”Wesh” is also slang for “hi” in the French hip hop scene.)
What’s next?This was a short and sweet introduction to Wesh. In future posts, we’ll dive into how Wesh is organized by users and groups, how to get started with the code, some example applications and more. Stay tuned!
- https://wesh.network The main Wesh Network Toolkit web page
- https://github.com/berty/weshnet The Wesh GitHub repo for code and issues
- https://berty.tech/docs/protocol The Wesh protocol white paper
- https://buf.build/berty/weshnet The Wesh API at the Buf schema registry
- https://berty.tech/about About Berty Technologies, the NGO working with the open-source community to make all this real
Posted by Jeff on 03/03/2023