[Short general description]: Monet is an open network architecture, materialized by a set of software tools and protocols. It brings decentralization and scalable blockchains to mobile devices. Based on the consensus system Babble, Monet ad hoc blockchains can process thousands of transactions per second with near instant finality.
[Main contribution proposal]: Monet believes that a system for serverless mobile applications is needed whereby people can interact directly with one another without reverting entirely to a third party or an extended set of participants.
This involves three fundamental operations:
1) Distributed Consensus: reaching agreement among a group of peers, connected by an unreliable communications network, without reverting to a third party.
2) Interoperability: enabling information exchange across consensus networks, online or offline.
3) Peer-discovery: finding other peers to connect with, based on location and activity.
They are building a free and open-source Software Development Kit (SDK) which enables developers to add blockchain consensus to their applications. It introduces a new paradigm whereby users dynamically join or form local blockchains for the duration of their interaction and eliminate the need for servers.
The SDK implements the Babble consensus system which is particularly suited for mobile deployments due to its low messaging complexity (https://github.com/mosaicnetworks/babble).
Validators are rewarded for operating nodes and securing the Hub by earning transaction fees in Tenom, the Hub’s native token, which also serves as the backing asset for the Proof-of-Stake protocol built atop the underlying Babble blockchain.
One of Monet’s distinctive traits is the ability to operate nodes on off-the-shelf mobile devices.
In Monet, mobile ad hoc blockchains are formed by small, localised, groups involved in a common activity. Participants are directly connected but do not necessarily trust each other and are most likely using mobile devices.
Babble is based on an asynchronous Full Information Protocol (FIP) which is fitting for this scenario. It is a leaderless, asynchronous, Byzantine fault tolerant system, capable of processing thousands of transactions per second with sub-second latencies.
Hence, like all FIPs, the core of Babble involves three operations:
1. Gossiping and constructing the Communication Graph.
2. Determining which Events will eventually be common knowledge.
3. Sorting the Events with a deterministic function.
To facilitate interoperability, Monet added an extra step which consists in projecting the output of the ordering function onto a blockchain. Transactions are mapped against a linear data structure composed of blocks; each block containing an ordered list of transactions, a hash of the previous block, a hash of the resulting application state, a hash of the validator set, and a collection of signatures from the set of validators. This method enables DAG-based systems to implement any Inter-Blockchain Communication protocol and integrate with an Internet of Blockchains
[Main problems tackled]: Inter-Blockchain Communication - at least two challenges:
- Input/Output operations - communication between a state-machine and the outside world - are non-deterministic and could undermine consensus.
- Data integrity - verifying that the item of communication went through consensus on the originating chain - needs to be preserved.
Inter-Blockchain communication is about verifying on one chain that a transaction happened on another chain. In permissioned algorithms, like Babble, the verification process involves counting signatures. Validators sign block hashes, which are themselves obtained by recursively hashing together, in a simple Merkle tree, the various components of a block, which include: the state-hash, the validators-hash, the transactions-hash, and the previous-block-hash. Cryptographic hash functions are such that tampering with any of these intermediary hashes yields a completely different block hash.
[Innovation]: The Monet Hub is an always on master blockchain that provides infrastructure services for the first applications on the network. It is composed of multiple independent nodes operated by a group of validators engaged in a Proof of Stake consensus mechanism. Each node runs an instance of the Ethereum Virtual Machine (EVM) coupled with Babble, where Smart Contracts can be deployed to provide services such as peer-discovery, ID directories, financial ledgers, light-clients for other blockchains, and much more. Each validator also operates STUN and TURN servers to facilitate NAT traversal.
On the Hub, Babble is augmented with a Proof-of-Stake algorithm which incentivizes validators to behave correctly. Babble voting power is denominated in Tenom and validators are forced to “bond” their currency holdings in a security deposit that can be destroyed if they are found to misbehave in the consensus protocol. This adds an economic element to the security of the protocol, and quantifies the cost of violating the assumption that less than one-third of voting power is Byzantine.