Introducing AfricaOS: a decentralized protocol to empower the Continent & Diaspora

0xJovonni
Kunta Labs
Published in
3 min readJun 7, 2020

Read the full white paper here: https://arxiv.org/abs/2003.10486

Today, we announce the release of AfricaOS (AOS) in its alpha-beta stage. We say alpha-beta because we are still hard at work improving the protocol, but we are also working with teams and implementing testnets.

AOS is a general purpose blockchain protocol, but probably not in the same way you are accustomed. Platforms like Ethereum are designed to execute any arbitrary transactions submitted to the network.

However, similar with our predecessor protocol, Kunta, the types of transactions allowed to be executed by the protocol are defined at genesis time, or new-genesis time.

New genesis time is when a new genesis block is defined — as long as all network nodes are running the same version.

Written in rust, AOS is designed to be a lightweight executable capable of being run on an embedded system, or perform full node processes on a more performant system.

AOS is inspired by practical byzantine fault tolerance (pBFT), and pBFT is used as the OOTB coordination scheme. However, this is designed to be customized.

The protocol is purposely simple in nature. Bitcoin showed us simplicity can make a security difference.

Using the same underlying protocol, varying groups can construct their own currency, with their own rules, and launch/support their own network. This can be done with Bitcoin, and Ethereum, but customiziation of those distributed protocols can be cumbersome for developers, and non-technical implementers.

*This is one of the reasons we created the Kunta Blockchain development platform in 2017 — for beginners to experiment with creating custom cryptoeconomies*

Eventually, we began work on a second protocol using Rust. We wanted to solve the same challenges using the second protocol, but also make it more secure, and alter some architectural decisions made.

pBFT transitions across the states listed above — pre-prepare, prepare, and commit. AOS follows the same paradigm, as proposal creators first announce their proposal to the network, await decisions from peers, and only upon peer acceptance of their proposal, will they announce the commitment of the proposal to the network. Even after the proposal creator announces commitment of the proposal, peers still independently validate the proposals integrity during and after receiving the proposal from the creator.

We are working hard to meet users where they already are. Mobile money has proliferated across the continent, and to the users of AOS, their day-to-day behaviors do not change. On the ground, users still transact the same way they did before. However, the network processes, capabilities, and record keeping change.

We are finishing our POC on enabling transactions to be submitted to the network via non-smart phones by SMS/Unstructured Supplementary Service Data (USSD).

The beautiful part about developing the protocols yourself, is you can place an emphasis on customizability where you see fit — a problem is that it takes time. So for AOS, we abstract a set of macros purposed with being customized per a specific use case.

Digital Signatures

The beginner template in the public AOS repository (https://github.com/kunta-labs/AfricaOS) is configured for a simple digital point system.

Output transactions contain public key hashes, and metadata. Input transactions contain public keys, and digital signatures.

Transaction execution simply verifies the signatures from both transactions. This is meant to be customized, and serves as a “hello world” for AOS. More templates are soon to come in our repositories.

Currently, we are working with several stakeholders on the ground as we iterate over use cases, and implementation tests.

Subscribe to our publication here to receive more updates as we go

aos.kunta.io for more on AfricaOS

--

--

0xJovonni
Kunta Labs

Engineer, Data Scientist, Ethical Hacker, Phd Student, and Life-long Student-to-the-game