Lesson 8
How the XRP Ledger works
Achieving consensus quickly without a central authority
XRP Ledger (XRPL) uses a unique consensus algorithm that is distinct from proof-of-work and proof-of-stake mechanisms that other blockchains use.
Before diving in, you should understand transactions on the XRPL. Transactions are statements which change the ledger. For example, if you are buying vegetables at a marketplace, you can send a payment transaction to move money from one account to another. Transactions are always sent from an account and must be cryptographically signed to prove that the sender is who they say they are. That way, only you, the account owner, can send transactions to handle their money.
Let’s take a closer look at how transactions flow through the XRPL.
Validating transactions
The XRPL reaches consensus through agreement between a group of diverse and independent servers called validator nodes, or ‘validators’ for short.
Each validator node is responsible for checking whether transactions follow the rules of the network, and then try to reach consensus. After checking transactions, validators will propose a list of transactions (also known as a ‘ledger’) to be included in the permanent history of the network. Other validators that trust this validator will then compare the proposed ledger against their results, sending out revised proposals in response. Once a supermajority (80%) of the network agrees on a proposed ledger, it is validated and included as part of the permanent history.
With each transaction on the XRPL, these steps happen within seconds:
- Transactions on the XRPL are sent to individual validators.
- The validators check if the transactions follow the rules of the ledger.
- The validators share them in their next proposed ledger, comparing it with those of other validators they trust, checking each new transaction for validity.
- If there’s an agreement, the transaction is confirmed and added to the ledger.
If they don’t agree, validators modify their proposals to more closely match the other validators they trust, repeating the process in several rounds until they reach a consensus.
Validators indicate that they trust another validator’s results by adding them to their unique node list (UNL). Validators will only receive proposed ledgers from validators on their UNL, and these lists are independently controlled.
Validators can remove nodes from their UNL if they go offline, or if they are no longer reliable. This maintains the overall health of the network by preventing unreliable validators from meaninglessly voting against valid ledgers during the consensus process.
Transaction fees
To defend the XRPL against spam and denial-of-service assaults, each transaction automatically burns a small amount of XRP, which starts at 0.00001 XRP (10 drops).
This transaction cost is designed to increase in parallel with the load on the network, making it expensive to deliberately or inadvertently overload the network.
Those who want to use the network for legitimate purposes don’t have to worry about the fees to use the XRPL, as it costs fractions of a penny for a transaction, making the XRPL extremely efficient to use.
Who runs validators?
Anyone can run their own validator to check the performance of the network. Validators on the default UNL are run by developers, universities, businesses, and many other innovators around the world. Whether they participate because they are active users of the ledger, conduct research or simply because they believe in the power of the blockchain, the diversity of XRPL’s node operators helps ensure the long-term health, security, and decentralization of the XRPL.