Delegation

As Cardano is a proof of stake (PoS) system, owning ada not only allows you to buy goods or services, but also confers upon you the right and obligation to participate in the protocol and create blocks. Stake delegation is a mechanism inherent in the Ouroboros protocol that allows the protocol to scale even in a setting where the set of stakeholders might be highly fragmented.

Anyone who owns ada can participate in stake delegation while retaining their spending power. Note that you can spend your ada normally at any time, regardless of how you delegated it. This mechanism will enable stakeholders to participate in the slot leader election process in each epoch.

Stake delegation gives rise to stake pools that act in the similar way to mining pools in the Bitcoin protocol. Stake pool operators (SPOs) must be online to generate blocks if they are selected as slot leaders.

Stake delegation requirements

Delegating stake requires posting two certificates to the chain: a staking address registration, and a delegation certificate. Posting certificates requires funds, so a user setting up their first wallet will need a bootstrapping mechanism. This mechanism relies on the possibility of base addresses using a staking key before posting the registration certificate for that key. Note that the stake address can be based either on a single key or on a script such as multi-sig.

Delegation scheme

With the concept of delegation, any stakeholder can allow a stake pool to generate blocks for the Cardano network. Then the rewards will be paid by the protocol for all participants, including the fees for the SPO. A stake holder delegates to a particular pool ID, which is the hash of the operator’s verification key.

To limit the delegate’s block generation power to a certain range of epochs and slots, the stakeholder can limit the proxy signing key’s valid message space to strings ending with a slot number in a specific range of values. This simple scheme is secure due to the verifiability and prevention of misuse properties of proxy signature schemes. This ensures that any stakeholder can verify that a proxy signing key was actually issued by a specific stakeholder to a specific delegate, and that the delegate can only use these keys to sign messages inside the key’s valid message space, respectively.

The funds belonging to one staking key of a user’s wallet requires posting a single transaction, containing a delegation certificate. This will only incur the usual transaction fees. In particular, a stakeholder needs to pay a deposit for registering a stake address and not for the stake delegation itself. Once a stake address is registered, the stakeholder will only pay fees to set the delegation choice.

Note that the stakeholder’s stake will count for the pool’s stake during the reward calculation.

Stake delegation scenario

Imagine a user who is about to receive their first ada, through redemption, from a trade on an exchange, or some other source. They will set up a new wallet, and create an address to receive those funds. This address will be a base address, using a staking key that is generated by the wallet, but not yet registered on the chain.

After receiving the initial funds, the user can then participate in staking, by posting a staking key registration certificate, and a delegation certificate for their staking key. Once the key is registered, newly created addresses can be pointer addresses to the staking key registration certificate.