Wavelet Testnet V0.2 Staking Release

Finally Experience Truly Decentralized, Proof of Stake.

Ajay Prakash
PERL.eco
6 min readOct 1, 2019

--

No Committees, delegation — just pure leaderless validators

Wavelet Testnet V2 is a version of the testnet that has not been tested extensively and part of the release is for testing purposes. We’re looking for bugs and issues so please let us know if you find them as it helps us speed our development process.

With that said — It’s finally here! Wavelet Testnet V0.2! This is the general community update on what we felt were important for the non-techies in the audience and the potential future token staking node holders.

Instructions on getting started

So what’s different?

In this release, members of the public are able to run nodes and earn a reward pool of transaction fees in return for validating transactions on the network. This is novel and new because we’re the first strictly leaderless proof of stake system to have a system where you can actually stake. There are no committees, delegation or points of centralisation in the network.

Let’s go over how the economics of the staking mechanism works.

As with other protocols, we will have a gas system which has a gas price and gas cost. Assuming that not everyone has looked into how gas works in Ethereum, we will do a quick recap for all of you.

Gas is a way to price the transaction fees and set how much the validators will receive as rewards for working to help secure and run the network. Generally, you have:

  • Gas Price: how much PERL you would like to pay per gas unit
  • Gas Cost: how much gas you would like to pay for that transaction.

Therefore the cost of your transaction is Gas Price * Gas Cost.

For example:

I might set the Gas Price to 1 PERL and have the Gas Cost at 5 which would mean that transaction would be 5 PERL.

Now that you have that under your belt, let’s look into how we are currently doing the token economics.

How is Gas Price Determined?

For the testnet, it is set to 1 PERL however we are currently exploring different ways to price gas however these are a few mechanisms we are exploring and researching:

  • A free market of gas prices where users are incentivised to pay higher gas prices to have their transaction to have a higher probability of being in the earlier block and being finalized compared to others.
  • A gas price that is determined by system parameters or transaction history of the network.
  • A gas price that is determined by validators which would create an ecosystem where validators are balancing with their self-interest of maximising their reward payouts.
  • And several other mechanisms that we are exploring

We would love the community to be included in this discussion. What has worked? What hasn’t worked? Anything that you’ve seen that we haven’t mentioned? For those who are developing on Wavelet — what are your pain points on other chains?

How is Gas Cost Determined?

The smart contract gas fees will be calculated using the byte size of the smart contract which will keep the calculation very simple and will promote efficient coding practices. Financial transactions will also use a byte size for transaction fees which will keep their fees fixed from a gas perspective however users may change the gas price.

We introduce a baseline gas call cost of 1 to prevent an attack via spamming a lot of smaller transactions/contracts. This means for financial transactions which are a fixed byte size of 186 bytes the standard gas cost will be calculated as the following:

So that is our current thinking and what we are working on the token, staking side of things. Just to help with your understanding, below we will cover a case study and also the work we are doing to succeed as a network because now in 2019/2020 — it’s time to work on adoption.

Case Study: What if Wavelet had the same TX volume as Ethereum?

The following is a case study that assumes that we are processing the same amount of transactions as ethereum and how the resulting rewards would look. This is not a prediction on TX volume.

Let’s consider that our transaction volume is the same as Ethereum, which we believe is a conservative goal considering that our throughput is significantly higher. Let’s also set our gas price to 1 PERL for now.

According to an article by LongHash, 88% of transactions on Ethereum are zero ETH transactions which we will assume to be smart contract calls.

Let’s also very conservatively assume that a smart contract would be 500 bytes on our network and we have tested monetary transactions to be 186 bytes.

Using the TX volume on Etherscan, (note it may fluctuate from the time of writing this) the daily TX volume is 690,602 and we can multiply this by 365 to get an estimate for the annual volume. It also seems to be fairly high with most months this year being higher so it can be a comfortable benchmark.

Using this, the Ethereum Annual TX volume is 252,069,730 and we can extrapolate the number of monetary transactions as 12% of the total and then 88% can be considered to be smart contract transactions.

Let’s also assume that we are using the 2021 unlocking schedule with the average staking which is 41% of the network.

Total Reward Pool = ~30M * 1.36 PERL + ~220M *1.98 PERL

Total Reward Pool = 479,680,819 PERL

Let us take the minimum staking amount (subject to change depending on testnet results) of 1000 PERL. Let us assume an average staking percentage of 41% and conservatively let us assume that every token is unlocked so a total supply of 1,033,000,000.

This would result in annual rewards for running your node of 1,133 PERL with a stake of 1000 PERL.

What are we doing for adoption and transaction volume?

After many community discussions, we believe it is important to properly convey the strategies that we have in place to get adoption. If we were to liken some chains like Ethereum to a B2C company that is aiming to get huge developer adoption or TON that is aiming to get many wallet users — Perlin would be likened to a B2B company.

Our partners help us with one of two things:

  • Distribution Partners: we work with amazing organisations that will help us distribute our products to their member companies or business such as the International Chamber of Commerce, Dubai Chamber, Enterprise Singapore and many more!
  • Direct Users: we also work with companies who will directly use our product and services as foundational pilot customers such as Asia Pacific Rayon, MFused and many others.

Due to the nature of the space, there is only so much we can reveal at the moment and we hope to share the latest and greatest over the next few months of development.

How does staking actually work in Wavelet?

In Wavelet, consensus is reached by polling nearby neighbors until a confidence interval is reached about what the next round should be. Once a certain threshold of peers agrees, the local node validates that the next round suggested by the other nodes is valid, and if so changes its vote to act in accordance with the group’s decision. This has many advantages, such as being fast, metastable, and resilient to reach consensus. However, it has a critical issue — all an attacker needs to do is create enough peers that vote a certain way to manipulate consensus. They can do this cheaply since creating new Wavelet peers is fast, and simple, and they put very little at risk by doing so.

Wavelet solves this issue by allowing nodes to put something at risk to allow other nodes to weigh their vote extraordinarily. By permitting nodes to put something at stake to influence the consensus decision we create an incentive for doing the right thing for the network as a whole.

Come Stake with Us!

--

--

Ajay Prakash
PERL.eco

Product @ Draper Startup House. Professional and personal skills still loading… (17%)