BPoS Staking and Voting Guide

Elastos is updating to a new Elastic Consensus mechanism from which features a novel new Bonded Proof of Stake (BPoS) from the previous Delegated Proof of Stake (DPoS). In late 2021, Yipeng Su, a dedicated contributor to Elastos, proposed the concept of BPoS as a means to enhance the security and stability of both the Elastos main chain and its side chains. BPoS is made up of two groups of participants, stakers and validators. This guide provides steps on how to stake ELA and vote for validators in BPoS.

Included will be:

Staking and Voting Guidelines

Getting Started to Stake and Vote

Steps to Stake and Vote

Claim Rewards

Staking and Voting Guidelines

•  In BPoS, users are required to pledge their ELA for at least 10 days or 7,200 block heights, up to a maximum of 1000 days or 720,000 block heights. 

•  One staked ELA can be converted into one equity token which can only be used to vote for one specific node.

•  The amount of rewards received is determined by the amount of ELA pledged and the pledge time. 

•  Once the vote is set, the pledge time cannot be shortened, but it can be extended. The maximum pledge time for staking on a validator cannot exceed the expected expiration time of the node.

•  Whenever the pledge time is extended, staking rights and yield rates are recalculated in real-time.

•  ELA staking profits to the node owners and their stakers is automatically allocated via blockchain code, 25% for the nodes and 75% for their stakers. 

•  12 CR Council nodes cannot be voted on by stakers.

•  In DPoS, participants received rewards indefinitely after voting once for their validators. In BPoS, stakers must re-vote once the pledge time (10 to 1000 days) ends to continue earning ELA rewards. To maximize rewards, participants are recommended to set reminders to re-vote.

Getting Started to Stake and Vote

Download Essentials Wallet

The first step in participating in BPoS is to download the flagship Elastos wallet- Essentials. All BPoS related activities will be done via Essentials. Download the latest version of the wallet on Apple or Android here

Get ELA on the Mainchain

In order to participate in BPoS consensus, users must have the main chain ELA to stake. Various exchanges such as Coinbase, Kucoin, Huobi, and Gate.io offer access to purchase ELA. Users can also use the Elastos DEX Glide Finance to purchase ELA on the Elastos Smart Contract Chain (ESC). Please refer to the Coingecko Markets page for Elastos for all other options to purchase ELA.

To stake and vote for the validators, the purchased ELA token should be transferred to the Essentials wallet. Once the main chain ELA is received in the wallet, the staking and voting process can begin.

It should be noted that ELA listed on Coinbase is the ERC-20 version and users need to follow this Guide to transfer ERC-20 ELA to mainchain ELA to participate in BPoS.

Steps to Stake and Vote

1. Staking

1.1 Log into your Essentials wallet and swipe three pages from the home page. Click on “ELA Staking” and proceed to start the process of pledging your ELA tokens for staking.     

1.2 Click on the “Stake” Option at the bottom left of the “ELA Staking” page

1.3 Enter the desired amount of ELA you wish to pledge and confirm the amount before clicking the “Stake” button.

1.4 Once the transaction is successfully sent, your pledge is complete.

2. Unstaking

2.1 Navigate to the “ELA Staking” page and click the “Unstake” button at the bottom of the page.

2.2 Enter the amount of ELA you want to retrieve and click “Unstake” button.  ELA will be automatically sent back to the Essentials wallet once the transaction is successful.

Note: The ELA tokens used for voting cannot be unstaked prior to the expiration time.

3. Vote for Validators

3.1 Log into your Essentials wallet and swipe three pages from the home page. Click on the  “BPoS Voting” page to get started with voting.

3.2 Click on each respective validator on the “BPoS Voting” page to view its ranking, current voting rights, daily rewards, voting proportion, pledge deadline, node website, and other information.

3.3 Choose the nodes you wish to vote for, check the box beside it, confirm your selection, and click the “CAST VOTES” button located at the bottom of the “BPoS Voting” page.

3.4 Enter the number of days pledged and the number of votes in the text box below the selected node and then click “Cast Votes” button.

3.5 Once the transaction has been confirmed, users can go back to the “BPoS Voting” page and click “My Votes” to view their voting details.

4. Change Vote

4.1 To extend the pledge time for the votes on a validator, select “My Votes” located at the bottom of the page. Then, click on the “Update” option to set the new pledge time.

4.2 Enter the number of days that you wish to extend the pledge time for the current votes. Then click on the “Update” button to complete the process.

Notes: As with staking ELA, the pledge time can’t be shortened, and the votes cannot be canceled or changed until the expiration date. To add more votes for a specific validator, users need to follow the steps outlined in the“Vote for Validators” section as above.

Claim Rewards

1. Navigate to the “ELA Staking” page

2. Choose the “Withdraw” option located at the bottom of the page.

3. Input the desired amount of ELA rewards that you would like to claim.

4. Click on the “Withdraw” button at the bottom of the page to initiate the process of claiming your ELA rewards.

Useful links:

Instruction on How to Deploy a Node

BPoS Node Registration Guide

Elastic Consensus Technical Overview

Developer Portal

Elastos Essentials for Android

Elastos Essentials for iOS

Correction(April 22, 2023): As for the ELA staking profits, stakers will receive 75% and voter 25%.