Staking Questions


#1

I have a few questions about how staking works:

  1. Does a validator operator have to have some stake in their validator, or can a validator operate purely on delegated stake? (This is a more likely scenario if the operator removes their stake after others have delegated their stake to the validator.)
  2. Where / how is the stake for validators stored? (Is there some sort of master wallet, a “wallet” for the validator, or something else?)
  3. If a validator decides to close down, will any delegated stake automatically be returned to the delegators, and will it go through the three-week unstaking period?

Any insight on these would be appreciated!

Terry


#2

Hey there.

  1. Does a validator operator have to have some stake in their validator, or can a validator operate purely on delegated stake? (This is a more likely scenario if the operator removes their stake after others have delegated their stake to the validator.)

Theoretically a validator can operate purely on delegated stake. In practice however, delegators will likely choose validators that have some amount of self-bonded stake, in order to align incentives.

  1. Where / how is the stake for validators stored? (Is there some sort of master wallet, a “wallet” for the validator, or something else?)

There is a special validator type. The “validator” has an operator that can set a commission and unbond everyone. See more here: https://github.com/cosmos/cosmos-sdk/blob/develop/docs/spec/staking/state.md#validator

  1. If a validator decides to close down, will any delegated stake automatically be returned to the delegators, and will it go through the three-week unstaking period?

If a validator unbonds, delegators will unbond as well. If the validator was in the active set, delegators will go through the three-week unbonding period. Otherwise they’ll get their Atoms immediately.


#3

Thank you for the detailed response!

The docs there note the ValOwnerAddr, yet it does not appear in the Validator struct? A websearch for ValOwnerAddr did not turn up anything either (which is odd as I would expect it to at least find that page of the doc). Anyway, the key questions in my mind are:

  1. Are the owner’s credentials used for those commission and unbonding operations?
  2. The three ways that a delegator’s stake can unbond from a validator is 1) if the delegator themselves unbonds or rebonds the stake (in which case the delegator’s credentials are used), 2) if the operator unbonds everyone, or 3) if the stake on a validator is slashed (which can only happen by a consensus operation and will transfer a proportional amount of stake from the operator and all delegators to a common network pool). Is that all correct?

Thanks again!
Terry


#4
  1. Are the owner’s credentials used for those commission and unbonding operations?

Yes.

  1. The three ways that a delegator’s stake can unbond from a validator is 1) if the delegator themselves unbonds or rebonds the stake (in which case the delegator’s credentials are used), 2) if the operator unbonds everyone, or 3) if the stake on a validator is slashed (which can only happen by a consensus operation and will transfer a proportional amount of stake from the operator and all delegators to a common network pool). Is that all correct?

It’s correct, except that we won’t talk about unbonding in the last case. Funds are not transferred, they are burned.