Ubirch provides implementations for different platforms.
For small, embedded devices the SDK is available in:
For more powerful systems like routers, gateways or even PCs and phones the SDK is available in:
In addition there is also an implementation for SIM Cards - please contact us for more information on this.
The C/C++ implementation can be used with ARM based platforms like
It’s a generic C/C++ implementation that provides the protocol-layer packaging and response verification and required encryption libraries for ARM processors. Other hardware platforms might require a port of the Ed25519 algorithm or a hardware supported implementation.
This library does not provide networking functionality, as the different platforms have varying support for sending and receiving data. The library has been successfully used using Bluetooth (trackle), Wifi (ESP32, HTTP/S) and generic modems.
This implementations should be generic enough to be portable to other C/C++ based platforms.
The MicroPython example uses the SIM nano client and wraps the API.
For aggregators and Linux based systems, a Python client is available. This client supports packaging and verification, software encryption and additionally provides easy access to the ubirch API. The python implementation is by far the quickest way to get started with the ubirch-protocol.
You can download and install the python library using pip:
pip install ubirch-protocol
The Go client can be cross compiled to many different architectures and can easily be used on industrial controllers.
The Java implementation is mostly used for backend purposes and can be used to construct a JVM based client.
Also check the Examples for more.