Tempo [ /ˈtɛmˌpoʊ/ ] is a consensus mechanism integral to the fifth iteration of Radix. Tempo was designed for a pre-sharded data structure, allowing for the grouping of related transactions. Tempo is Byzantine Fault Deterministic as opposed to the more common Byzantine Fault Tolerant.
Sharded (18.4 * 10^18 shards)
Byzantine Fault Deterministic
Radix Engine v1
Validator Node Cap
The Radix Programmer's Guild
RadGuild is a member-directed community of designers and developers who are building core software building blocks (aka blueprints) and key distributed applications (aka Dapps) for the Radix Decentralized Ledger which we believe will emerge as the key enabling technology for the free world's digital economy.
A Tempo ‘Universe’ is an instance of a digital ledger partitioned into 18.4 quintillion () shards, with each shard deterministically corresponding to an address, consisting of a public key and a checksum. Any discrete state change - such as a transaction or a message - is called a ‘Particle’, making the global ledger state a sum of all particles.
Tempo nodes are responsible for the execution and validation of events on the network. Nodes can be configured across any subset of the shardspace - from a single shard to the global ledger - which makes validation possible for low-power devices such as the Internet of Things (IoT).
For any event such as a message or transaction, the relevant particles are built by the nodes responsible for the relevant shards and packaged into containers called ‘atoms’ to be processed atomically by validator nodes. Almost all transactions involve at least two shards because the number of shards makes it extremely unlikely that any two randomly generated addresses will live in the same shard.
- Nodes maintaining relevant shards chosen to create temporal proofs.
- Commitment: Node creates a merkle hash of all recent events.
On June 11th, 2019, engineers from RDX Works replayed 10 years worth of Bitcoin transactions on the Radix ledger in under 30 minutes using the Tempo consensus mechanism.
The invention of Tempo led to Dan Hughes being accepted into Y Combinator in 2017.
The Weak Atom Problem
The Weak Atom Problem meant it was possible to manufacture substates that were validated by very few nodes, leading to them not able to be considered final.
Tempo employed a Sybil protection mechanism called Mass, which increased the relative weight of validator nodes based on their history of good behavior. This theoretically allowed for a secondary market to emerge whereby reputation - and hence, voting power - could be purchased by malicious actors.