Documentation

The Blockchain for Things.

A collection of concepts, documentation and tutorials to make your IoT device data trustworthy.

ubirch on GitHub


ubirch - Documentation

Device SDK

Cloud Services

Examples and Tutorials

REST API Documentation

Device SDK

ubirch provides implementations for different platforms. The embedded SDK is available for ARM mbed OS, ESP32, and Bosch XDK. The implementation should be generic enough to be portable to other C/C++ based platforms.

Additionally, for more powerful systems, a Python implementation and an SDK for node.js is available.

C/C++

Source Code (ARM mbed OS, ESP32, Bosch XDK, generic C/C++)

A generic implementation that provides the protocol-layer packaging and response verification and required encryption libraries for ARM processors. Other hardware platforms and 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.

To get started with development, see the C/C++ Example.

Python

Source Code

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

JavaScript [WIP]

Source Code (node.js, browser, mobile apps)

With the JavaScript implementation it is possible to enable hybrid mobile apps and web pages to send messages using the ubirch-protocol. Special care has to be taken when using this library to ensure the safety of keys and the data.

THE JAVASCRIPT IMPLEMENTATION IS WORK IN PROGRESS.


If no platform SDK is provided, using the ubirch-protocol definition and the API documentation allows the use of the backend infrastructure without a specialized implementation.