Consensus Structure
Written by Dave Cohen, David Schwartz, and Arthur Britto.
This article provides a high level overview of the XRP Ledger, the information it stores, and how transactions result in changes to the ledger.
When building applications on the XRP Ledger, it is important to understand this process, so as not to be surprised by the behavior of XRP Ledger APIs and their effects.
Introduction
The peer-to-peer XRP Ledger network provides a worldwide, shared ledger, which gives applications authoritative information about the state of its contents. This state information includes:
- settings for each account
- balances of XRP and tokens
- offers in the distributed exchange
- network settings, such as transaction costs and reserve amounts
- a timestamp
For a full, technical description of which data is included in a ledger version, see the Ledger Format Reference.
Figure 1: XRP Ledger Elements
The XRP Ledger has a new ledger version every several seconds. When the network agrees on the contents of a ledger version, that ledger version is validated, and its contents can never change. The validated ledger versions that preceded it form the ledger history. Even the most recent validated ledger is part of history, as it represents the state of the network as of a short time ago. In the present, the network is evaluating transactions which may be applied and finalized in the next ledger version. While this evaluation is happening, the network has candidate ledger versions that are not yet validated.