Waves is built in Scala, rather than the C++ used for Bitcoin and many other cryptocurrencies. Each account is generated from a mnemonic seed and a derived private key. Ordinary transaction fees are fixed at 0.001 WAVES, with a 0.003 WAVES fee for DEX transactions and a fixed 1 WAVES fee for token creation.
Waves is a Leased Proof-of-Stake system. Nodes are rewarded by transaction fees, and additionally the Miners Reward Token (MRT), which is a temporary measure designed to increase mining participation until adoption increases to levels where nodes are independently profitable. Waves is non-inflationary, and there are no block rewards.
Waves-NG is different to most blockchain consensus methods. Instead of selecting a miner retrospectively, who then generates a block containing pending transactions, Waves chooses a miner in advance and allows them to add new transactions to the next block as soon as they arrive. Transactions are therefore added to the blockchain as quickly as network latency allows, and blocks are confirmed in around 1 minute.
Waves makes it extremely easy to create, distribute, transfer, trade and even destroy custom blockchain tokens. It takes less than 60 seconds and a fixed fee of 1 WAVES to issue a token, which can be reissuable or non-reissuable (i.e., inflationary or fixed supply), as required. Tokens have a unique id number, but tokens can have the same name to avoid squatting.
Noting the problems that have occurred with Ethereum’s implementation of Turing complete smart contracts, Waves has started by implementing simple account controls such as balance freezing and multi-sig transactions. Turing-complete transactions will follow, but these will have fixed fees and the resources required to execute them will be known in advance, avoiding some of the potential attack vectors and edge cases that have affected Ethereum.
Waves features a decentralised exchange (DEX), built into the client. All tokens on the Waves platform are automatically listed on DEX and can immediately be traded against any other token as soon as they are created.
Waves DEX uses a combination of centralised Matcher nodes with blockchain settlement to allow highly secure and private trading, in real-time, without having to wait for the next block for orders to execute.