NAV Coin Proof of Stake Informational Guide
The purpose of this article is to be a one stop shop for help in regards to staking with NAV Coin. There have been many questions from the community over the past few months and I figured this would be the best way to get the information out there in a clear and concise manner. Although the focus is on NAV Coin, the article should prove insightful for other proof of stake coins as well. It is geared towards crypto newcomers and veterans alike. Depending on your level of crypto knowledge, some information might be mundane or some might be over your head. Skip or omit whatever you want as you read, I am confident you will find at least something useful and/or interesting. The article is laid out so that the knowledge level increases as you read on.
What is Proof of Stake?
Proof of stake is the process your wallet uses to validate transactions in a distributed consensus through creating new blocks on the blockchain. This is an alternative method to the more widely known process used by bitcoin; Proof of Work (POW).
Benefits of Proof of Stake
How to Stake NAV Coin
All you need to stake NAV Coin is a Core version wallet with coins in it. The Core version wallet requires a copy of the entire blockchain on your computer.
NOTE: The light version (electrum) of the wallet is not capable of staking.
When you first send coins to your wallet, they will be in what’s called an immature state and will not be able to stake right away. Maturity will be reached in 2 hours (240 blocks to be precise) and your coins will start to stake automatically.
As EVERYONE should already have their wallet encrypted for protection against theft, you will need to ensure the staking portion of your wallet is unlocked. This is accomplished by clicking ‘Settings -> Unlock Wallet for Staking’ as shown below:
NOTE: you may have to select ‘Turn On Staking’ first which will require a restart of the NAV Coin wallet. Staking is turned on by default.
Once clicked, you will be requested to enter your wallet passphrase to complete the process. In about a minute, you should see the message ‘Expected time to earn reward is XXX minutes/hours/days’ on the home tab of your wallet as shown below. If you see this message, you have successfully started staking and you can now sit back and watch your NAV coins grow.
This has only unlocked the staking functionality of your wallet; you will still be requested to enter your passphrase when sending coins. No security is lost while leaving your wallet open and unlocked for staking.
NOTE: The estimated time shown is very literally an estimate. Overtime, you may see occurrences where it only takes 1/5th the estimated time between stakes and other times where it takes over 5 times as long.
TIP: To maximize profits, it is best to leave your wallet running 24/7 due to compound interest earnings as well as earnings from transaction fees on the network. When there are more transactions occurring on the network, the transaction fees should start becoming larger than the staking rewards.
TIP: NAV Coin offers a pre-built image for the Raspberry Pi called NavPi. With this you can have a NAV Coin Core version wallet running using only 1W of power consumption.
Staking Your First Block
Now that you are all setup and staking like a pro, you will soon receive your first staking reward. You will see a transaction displaying the amount of coins you were rewarded for staking the block as shown below.
The icon on the left is unique to the transaction received from a staked block. The amount shown above is in a light grey font which indicates that the transaction is not yet confirmed. A newly staked block requires an additional 60 blocks to be staked on the blockchain before it becomes confirmed (spendable). Once confirmed, the transaction amount will be shown in a green font.
NOTE: This is different than a regular transaction (wallet A sends to wallet B) which only requires 6 blocks for confirmation.
While the staked block is confirming there will be a portion of your coins that will be unavailable to spend until the block is fully confirmed. This portion will vary in amounts and will be shown in the main tab of your wallet in the staking (red) section as shown below:
- Available (black) represents the coins in your wallet that you can spend/use right now.
- Pending (yellow) represents the unconfirmed coins you have from a regular transaction. Coins will only be in this state for 6 blocks (~3 minutes)
- Staking (red) represents the unconfirmed coins you have from staking a block. Coins will only be in this state for 60 blocks(~30 minutes)
- Total (Green) represents the sum of Available + Pending + Staking (all the coins you own).
An orphan block is a block that was generated by your wallet, but rejected from the blockchain; any coins created within it are lost. Orphan blocks will happen from time to time on just about all blockchain’s including Bitcoin. An orphan block is encountered when two wallets stake the ‘next block’ for the blockchain at nearly the same time. Since there can only be only be one ‘next block’, one of those closely minted blocks gets deemed an orphan and forgotten.
The first thing your wallet does after staking a block, is send out a message to all the connected nodes(wallets) to let them know that ‘I staked the next block’. If those wallets have already received that same ‘I staked the next block’ message from a different wallet, they will reply with something to the manner of ‘too late, keep trying’. Your wallet will then mark the block it created as an orphan block.
You will be able to identify an orphan block in two ways when looking at the transaction tab of your wallet; it will be shown in a light grey font and will also have a question mark icon beside it as shown below:
NOTE: unconfirmed transactions amounts (regular and staked) have values enclosed with square brackets just as orphan blocks do, but the font will be black, not grey.
NOTE: The block explorer reports an average of 80–90 orphan blocks a day (about 3%). This may seem high when compared to some other coins, but is a by-product of having only a 30 second block time. Essentially, the chances of two wallets staking a block at almost the same time (event resulting in orphan block) will increase as the block time gets shorter.
To get a deeper understanding of how staking works, we need to enable coin control in order to see how your coins are situated in the wallet. Coin control is disabled by default, so let’s go ahead and enable it.
Click ‘Settings -> Options’ from the menu bar. On the Options window, click the Wallet tab and ensure the ‘Enable coin control features’ button is checked.
Close the Options window by clicking ‘OK’ in the bottom right hand corner.
You should now have some extra options in the SEND tab of your wallet. Click the INPUTS… button as shown below:
The ‘Coin Selection’ window will now be displayed. This is where you can see how all your coins are really grouped/sorted in your wallet. From here you can see all coins that belong to each address in your wallet and that each address can have multiple groups of coins. Below is an example from a wallet which has a single address that has been staking for a few weeks.
NOTE: Tree mode separates groups of coins by address whereas list mode shows them altogether.
NOTE: The Confirmations column shows the exact age of each group of coins.
As you can see, your coins are separated into groups of coins; the sum of all these groups is what makes up the total balance of your wallet. Each transaction you receive creates a new ‘group of coins’. If you were sent two transactions of 1,000 NAV from the same person and to the same address, it would still result in two separate groups of coins.
TIP: To get a general idea of staking expectations, you can click the address below to view it on the block explorer for yourself. This represents about 3 months of staking. NMXRe6hQn51cs9WCj3jRPJqWeE3Pypw5je
Staking is quite similar to a lottery; a new block on the blockchain is the equivalent of a lottery draw, and each group of coins staking represent a lottery ticket for the draw. The more tickets you have, the better chance you have of winning, this lottery takes place every 30 seconds totaling to about 2,880 winners each day.
There are some very important differences between staking and the lottery however. In a lottery draw, each ticket has an equal chance of winning; whereas in staking, the odds are not quite as straight forward. Each group of coins in your wallet have an associated value known as ‘weight’, the higher this value is, the better odds your group of coins have at staking a block. Coins with a weight of 1000 will have twice the chance to stake a block when compared to coins with a weight of 500. Although it is not necessary to know exactly how this weight is calculated, understanding the general concept is. The following statements should suffice:
- Weight will be higher for a larger group of coins.
- Weight will increase as the coins become older. “coin age”
If you have a large group of coins that are very old, you have a very good chance of staking a block soon.
NOTE: There is an RPC command (getstakinginfo) that will show you the following: the weight of all your coins combined and the weight of the entire NAV Coin staking network.
NOTE: A coin’s age is determined by the last time it was transferred on the network, the coin age is reset every time a coin is transferred. When you stake a block, the group of coins that staked it will have their age reset to zero.
Staking rewards pay out at a rate of 5% per year, this incentive is critical to the success of NAV Coin as it ensures staking is profitable. The more actively staking nodes on the network, the more secure and strong our blockchain is. Without a significant amount of coins staking, the network could be susceptible to attacks; double spends etc…
NOTE: In comparison to other digital coins, NAV Coin has a very secure network with almost half of all coins actively staking.
It is pretty straight forward to do a general calculation in order to figure out your expected staking rewards overtime. Let’s say you have 10,000 coins in your wallet, you know that in one year you should have an extra 5%; 10,500 coins.
Here is a link to a staking calculator to help you figure out what you will be rewarded with: https://navtechservers.com/navtech-tools/staking-calculator/
When looking more specifically at staking rewards, it gets a bit more complex. When you stake a block, it is only a single group of coins that ‘won the lottery’. Therefore, the 5% interest is only calculated based on this group of coins and not your total balance. A simplified calculation to figure out a staking reward for a group of coins can be found as follows: (example assumes 1000 coins staked at exactly 5 days old)
<# coins in group> * [ <# days old> / 365] * 0.05 = <staking reward>
1000 * 5 / 365 * 0.05 = ???
1000 * 0.000684931 = 0.684931 NAV
NOTE: The typical staking reward on a wallet running 24/7 is between 0.01 NAV and 8 NAV per block staked.
To ensure you get the most out of staking, you simply need to keep your wallet open 24/7. The NAV Coin wallet does all the hard work in behind the scenes automatically, all you have to do is set it and forget it.
If you are unable to keep your computer running all day, don’t worry too much as you can still get rewarded very well. Even while offline, your coins are aging and thus accumulating potential interest. As long as you don’t transfer coins before they stake a block, you will be rewarded.
NOTE: interest payments (staking rewards) are ONLY paid out to you when you stake a block.
Working Example of Staking
You have decided to purchase 10,000 NAV and send them to your wallet to start enjoying the rewards of staking. Let’s call these coins ‘Group 1’ as shown below:
Group 1: 10,000 NAV
A group of 10,000 NAV is quite large when compared to others on the network, so you will probably stake rather quickly. Let’s say its takes exactly one day to stake, from the calculation we learned earlier we know the staking reward will be 10,000 * (1/365*0.05) = 1.369 NAV. You will now have 10,001.369 NAV in your wallet, but let’s see what happened behind the scenes as your ‘group of coins’ will now split up:
Group 1: 5,000.6 NAV
Group 2: 5,000.769 NAV
NOTE: I am not fully sure how the wallet decides to split up the staking reward between the groups… but it works out to about half the reward goes to each group.
You will now have two groups of coins, each group will be independently staking as you now have two lottery tickets. Let’s say group 2 takes exactly 2 days to stake a block, (reward would be about 1.37 NAV) here is what your wallet would now look like:
Group 1: 5,000.6 NAV
Group 2: 2,500.9845 NAV ( [5000.769 / 2] + [~½ of reward] )
Group 3: 2,501.1545 NAV ( [5000.769 / 2] + [~½ of reward] )
We now have 3 groups of coins. This time group 1 stakes a block exactly 1 day later making them 3 days old, so the reward will be about 2.06 NAV. Your wallet would now look like this:
Group 1: 2,501.33 NAV
Group 2: 2,501.33 NAV
Group 3: 2,500.9845 NAV *previously labeled as group 2 from above
Group 4: 2,501.1545 NAV *previously labeled as group 3 from above
There are now 4 groups of coins in your wallet and the age of each group of coins is starting to differentiate more and more, this will stagger the timing between staked blocks in your wallet. To simplify the next step in this example, let’s say each of the above 4 groups of coins stake at the point where the reward is exactly 1 NAV each. Your wallet would now look like this:
Group 1: 1,251.165 NAV *½ of group 1 from above + ½ of staking reward
Group 2: 1,251.165 NAV *½ of group 1 from above + ½ of staking reward
Group 3: 1,251.165 NAV *½ of group 2 from above + ½ of staking reward
Group 4: 1,251.165 NAV *½ of group 2 from above + ½ of staking reward
Group 5: 1,250.492 NAV *½ of group 3 from above + ½ of staking reward
Group 6: 1,250.492 NAV *½ of group 3 from above + ½ of staking reward
Group 7: 1,250.577 NAV *½ of group 4 from above + ½ of staking reward
Group 8: 1,250.577 NAV *½ of group 4 from above + ½ of staking reward
We now have 8 groups of coins and all of these groups are now in what I like to call the ‘sweet spot’. The sweet spot is the range in which the NAV coin wallet strives to separate groups of coins into, which is between 1000 and 2000 coins. Once in this range, we will no longer see the groups of coins splitting up. For example, if group 1 above had a stake reward of 2 NAV, group 1 would remain intact but would now have 1252.165 NAV in it.
Staking Small Amounts of NAV Coin
So now that we understand how the wallet likes to group our coins, what happens if you hold less than 1000 coins? Although you are not in the sweet spot, you will stake just the same regardless, it might just take a little longer. I assume there comes a point where too few coins would take forever, but small amounts of coins can and do stake blocks.
The screenshot below was taken from the NAV Coin block explorer and is very helpful as it graphs the amount of coins involved in staking a block for the previous 10,000 blocks.
NOTE: By default, the explorer shows you a graph of the last 1,000 blocks. Click on the ‘show more’ link to see the last 10,000 blocks as shown here.
Each blue dot on this chart represents the number of coins involved in staking a given block. The thick blue region in the middle is the sweet spot (1000–2000 NAV) I mentioned in the last section, but you can also see occurrences where it was either much higher or much lower. I have highlighted over an occurrence where a group of only 49.039 NAV staked a block. This is proof that you do not have to own a large bag of NAV to get staking rewards. However, your patience could be tested if you hold very few coins.
NOTE: On average, 50 coins would have to be 150–200 days old in order to stake a block.
You might be wondering, why did we look at the 49 NAV stake as an example since there are blue dots clearly much lower… the reason is that something different happened in those cases. The lowest value blue dot from the chart above is 0.8 NAV, which happened on block number 1,175,285.
If we look at the details for this block using the explorer, we see yet another tool the wallet has to maximize your returns:
What has happened here is the wallet combined a very small group of coins with a larger one when staking the block. The values circled in blue are two separate groups of coins in a wallet which staked a block together as a team, the value circled in red is the staking reward for this block and the values circled in black are the two groups of coins created after the block was staked.
Here is another example of 6 groups of coins combining together to stake a block:
Although this guide is based on the proof of stake mechanism used in NAV Coin, the concept is similar in many other POS coins as well.
I hope you have found this guide helpful in understanding how proof of stake works. Some may find this information useless and boring, but others might be fascinated like myself.
I more than welcome any further questions or comments anyone has; you can contact me @bocyaj1 on the NAV Coin slack channel.