Solana stake pool manager creates a stake pool, and the staker includes validators that will receive delegations from the pool by creating “validator stake accounts” and activating a delegation on them. Once a validator stake account’s delegation is active, the staker adds it to the stake pool. At this point, users can participate with deposits. They must delegate a stake account to the one of the validators in the stake pool. Once it’s active, the user can deposit their stake into the pool in exchange for SPL tokens representing their fractional ownership in pool. A percentage of the rewards earned by the pool goes to the pool manager as a fee.
Over time, as the stakes in the Solana pool accrue staking rewards, the user’s fractional ownership will be worth more than their initial deposit. Whenever the user chooses, they can withdraw activated stake in exchange for their SPL pool tokens. The stake pool staker can add and remove validators, or rebalance the pool by decreasing the stake on a validator, waiting an epoch to move it into the stake pool’s reserve account, then increasing the stake on another validator. The staker operation to add a new validator requires roughly 1.003 SOL to create the stake account on a validator, so the stake pool staker will need liquidity on hand to fully manage the pool stakes.
SOL token holders can earn rewards and help secure the network by staking tokens to one or more validators. Rewards for staked tokens are based on the current inflation rate, total number of SOL staked on the network, and an individual validator’s uptime and commission (fee). Stake pools are an alternative method of earning staking rewards. This on-chain program pools together SOL to be staked by a staker, allowing SOL holders to stake and earn rewards without managing stakes.
Solana Key Information
|ICO start||25th Sep 2017|
|ICO end||10th Oct 2017|
|Distributed in ICO||60%|
|Average price||0.35 USD|
|Price in ICO||0.3700 USD|
|Whitepaper||Click Here For View Whitepaper|
|Website||Click Here For Visit ICO Homepage|
The Game Change Team Behind Solana
Add validator stake account
As mentioned in the last step, the stake pool only manages one stake account per validator. Also, the stake pool only processes fully activated stake accounts. Solana created new validator stake accounts in the last step and staked them. Once the stake activates, they can add them to the stake pool. Also, as mentioned in the last step, validator stake accounts must have exactly 1.00228288 SOL, 1 SOL for the delegation, and 0.00228288 SOL for the rent-exempt reserve. After activation, the validator stake account may have already gained some rewards, so they have to move those rewards off before adding the validator.
Set Preferred Deposit / Withdraw Validator
Since a stake pool accepts deposits to any of its stake accounts, and allows withdrawals from any of its stake accounts, it could be used by malicious arbitrageurs looking to maximize returns each epoch. To mitigate this arbitrage, a stake pool Solana can set a preferred withdraw or deposit validator. Any deposits or withdrawals must go to the corresponding stake account, making this attack impossible without a lot of funds.
For example, if a stake pool has 1000 validators, an arbitrageur could stake to any one of those validators. At the end of the epoch, they can check which validator has the best performance, deposit their stake, and immediately withdraw from the highest performing validator. Once rewards are paid out, they can take their valuable stake, and deposit it back for more than they had.
Safety of Funds
One of the primary aims of the stake pool program is to always allow pool token holders to withdraw their funds at any time. Additionally, the Solana may set a “preferred withdraw account”, which forces users to withdraw from a particular stake account. This is to prevent malicious depositors from using the stake pool as a free conversion between validators.
- validator stake: active stake accounts, one per validator in the pool
- transient stake: activating or deactivating stake accounts, merged into the reserve after deactivation, or into the validator stake after activation, one per validator
- reserve stake: inactive stake, to be used by the staker for rebalancing
Transient stake accounts
Each validator gets one transient stake account, so the staker can only perform one action at a time on a validator. It’s impossible to increase and decrease the stake on a validator at the same time. The Solana must wait for the existing transient stake account to get merged during an instruction before performing a new action. As mentioned earlier, the stake pool only processes active stakes. This feature maintains fungibility of stake pool tokens. Fully activated stakes are not equivalent to inactive, activating, or deactivating stakes due to the time cost of staking. Otherwise, malicious actors can deposit stake in one state and withdraw it in another state without waiting.
The Solana Foundation Server Program is designed to help new validators get started on the Solana network by providing access to servers at discounted prices through a partners. Foundation Delegation participants are eligible to receive a delegation from the Solana Foundation. View the current list of validators, their ranking by stake amount, and information about commission below. Go here for documentation related to all things Validator, from validator requirements, to troubleshooting.