Waves is an open-source blockchain platform that allows users to launch their own custom cryptocurrency tokens. Whilst popular cryptocurrencies such as Bitcoin and Ethereum can be traded on external exchanges, and Ethereum allows users to create new tokens on the platform using a smart contract, Waves includes this functionality in its core software and wallet. Users can create, transfer and exchange blockchain tokens on a peer-to-peer basis, paying transaction fees in the native WAVES token.
The platform has a fixed supply of 100 million WAVES and uses a network consensus algorithm based on Bitcoin-NG, updated for proof-of-stake networks, called Waves-NG. Waves uses trusted gateways to issue blockchain tokens backed by fiat money and digital currencies for use on its own platform.
Waves was founded in 2016 by Alexander Ivanov, a Russian physicist, with development funded by a crowdsale held in April and May 2016. Waves’ community and development is international, with a wide range of initiatives built on the platform and based in different locations around the world.
Waves’ blockchain consensus algorithm is Waves-NG, which is based on the Bitcoin-NG proposal created by Emin Gun Sirer. Bitcoin-NG was designed to increase transaction throughput on the bitcoin blockchain: ‘the system can at best achieve a modest transaction throughput, rising from ~3 transactions per second to ~6 transactions per second if the block size is doubled. This is far from the 30,000 transactions per second necessary to compete with the likes of VISA transactions. The same fundamental limitations apply to Ethereum, Litecoin, Dogecoin, and all other currencies that share Bitcoin’s blockchain management protocol.
In Bitcoin, the system generates a retrospective block that encases in cryptographic stone the transactions that took place in the preceding 10 minutes. In Bitcoin-NG, the protocol is, instead, forward-looking: every 10 minutes, NG elects a leader, who then vets future transactions as soon as they happen. The former is necessarily limited by the block size and block interval, while the latter approach can run as fast as the network will allow.
This approach has been adapted to Waves’ proof-of-stake model, theoretically enabling hundreds of transactions per second.