Author: Guy Brandon, contributor to Waves.
The Waves network uses the Lease-in-Proof-of-Stake (LPOS) consensus algorithm, which combined with the Waves-NG protocol enables high scalability and transaction throughput of the network.
The Waves network was launched in 2016, raising 30,000 Bitcoins through an ICO, worth approx. $16 million. The project aims to develop a comprehensive blockchain ecosystem that can be used for business transaction processes. It includes toolkits covering various functional requirements, including easy creation of custom digital currency tokens, direct writing of smart contracts, and built-in decryption for peer-to-peer transactions. Centralized exchanges (DEX), secure and convenient ways to interact with dApps, and web services provided by the Waves Keeper browser plug-in.
From the beginning, Waves recognized that scalability is the key to most The need to promote the use of blockchain projects and realize the need to develop relevant technologies to solve the limitations of existing blockchains. For example, Bitcoin has high security but relatively slow transaction speeds and can only support about 7 transactions per second (TPS). Therefore, Bitcoin is not efficient enough to become a global currency. Layer 2 based solutions such as Bitcoin’s Lightning Network are implemented to achieve this goal. Waves takes a different approach to this layer, focusing first on on-chain scalability before considering second-layer applications.
Waves' original consensus algorithm is based on a simple proof-of-stake protocol. A total of 100 million WAVES tokens were distributed after the ICO, and the supply is also fixed: because WAVE is a token with "PoW" properties, there is no inflation. Therefore, Waves block validators (forgers, they are often called 'miners' in the Waves ecosystem) receive transaction fees from the blocks they process, but no additional block rewards .
The Leaseable Proof-of-Stake (LPoS) system was fully launched in May 2017, and the protocol allows users with the Waves lite client (those not running full nodes) to lease their WAVES tokens to miners Mine node. Rented WAVES are locked in the user's account and cannot be transferred or traded. Additionally, the tokens remain fully controlled by the account holder and can be canceled at any time after the lease expires. Considering the technical overhead associated with running a mining node and being online 24/7, there are relatively few Waves communities running mining nodes (a list of block generators can be found at https://dev.pywaves.org/generators/ Check).
WAVES tokens leased to mining nodes can be used to increase the weight of the miner, which in turn increases the chance of the miner discovering the next block. A leased proof-of-stake system improves the security of the network in at least two ways. First, the more WAVES tokens used to protect the network, the better, as it will make it more difficult for an attacker to accumulate the number of tokens needed to perform a 51% attack. Second, WAVES tokens are leased to mining nodes from users’ cold wallets, but the nodes themselves (the ones that remain online) may only have a small balance. Since leased funds are not transferred to miners, this can significantly reduce the risk of attacks on WAVES tokens stored online.
In December 2017, WAVES further upgraded the network , launched the Waves-NG consensus protocol. This is a new protocol based on the Bitcoin NG scheme, invented by Cornell IT professor Emin Sirer.
The miners selected by the original Bitcoin protocol are traceable. After a block is added to the blockchain, miners compete with each other to find a valid hash value for the next block based on the current state of the blockchain. At the same time, newly generated transactions are put into the mempool, where they will remain pending until a miner collects and verifies them.
While both Bitcoin and the Bitcoin NG protocol are considered Byzantine Fault Tolerant (BFT) systems, the latter was proposed in 2015 as a scalable alternative to a different working mechanism. In the Bitcoin-NG system, the next miner is pre-selected, who creates an empty "key block" - this block is eventually added to the blockchain. Small blocks are called "microblocks" (consisting of several transactions), and they are added to the key block in near real-time. Using an analogy from daily life, this is like adding a few shopping bags (micro-blocks) to a shopping cart (key block) and then pushing the complete cart to the checkout (added to the blockchain network). This means that transactions can be added to the blockchain in seconds, and the only delay that may occur is that on the network. Waves upgraded the proof-of-stake mechanism to create the Waves-NG protocol, which was also the first time that the Bitcoin NG protocol was configured into an open public blockchain.
Further improvement of the ecosystem is achieved through "MassTransfers". It allows up to 100 transfers to be executed in a single transaction and reduces processing fees. On the one hand, in order to balance capacity expansion and convenience, MassTransfer limits each MassTransfer to only 100 txs. On the other hand, it also limits the ability to send a large number of low-cost transactions at the same time. If a larger amount of transfer transactions is required, multiple MassTransfers transfer transactions can be submitted in sequence.
In other words, users can simply choose MassTransfer as an alternative way to "send transactions," which allows them to add up to 100 payees in a single transaction. Additionally, the recipient’s address can be provided via JSON or uploaded using a CSV file, making it possible to directly and efficiently conduct large airdrops or weekly payments to users who rent WAVES tokens to mining nodes. Combined with Waves-NG, the MassTransfer feature enables extremely high throughput rates on the network.
To evaluate the potential throughput of the new protocol, a number of stress tests were performed on the Waves network. In October 2018, a high-volume stress test was conducted on MainNet. The test shows that a public blockchain protocol (not just the limited and controlled TestNet) can support more than 6.1 million transactions in 24 hours at an average of 4,200 txs per minute or 71 txs per second, with peak throughput of up to Hundreds of transactions.
Lease Proof of Stake (LPOS) allows ordinary users without technical professional background to help protect Waves The network, under the premise of controlling WAVES tokens, rents WAVES to full nodes. At the same time, Waves-NG achieves a throughput of up to 100 TPS, which is an order of magnitude higher than many blockchains. Since there is no need to pay financial rewards to miners, and the latter do not need to bear high electricity bills and expensive hardware, transaction fees are very low.
For Waves, on-chain scalability has always been a priority, but any blockchain can scale in this way due to the storage space and bandwidth required. The developers of Waves believe that the current solution can be optimized before further implementing a scalable solution and the ability to support transactions up to 1,000 TPS. Waves is currently exploring second-layer scaling solutions involving sidechains, which could support processing large volumes of transactions on parallel chains and ultimately enable protection on the Waves mainnet.