Cosmos Bonded Proof-of-Stake is the first major implementation of a permission-less BFT protocol. The well thought out protocol features many nuances ensuring that the Cosmos Hub blockchain is performant and that the security of the system is economically guaranteed even in the presence of malicious actors. Yet, in our view, the design space of Bonded Proof-of-Stake has barely been scratched. It’s important to explore alternative designs that can improve the user experience and the economic potential of Proof-of-Stake.
During the Cosmos Hackathon (Hack4Atom) in Berlin, the Chorus One team in cooperation with Sikka implemented changes to the staking logic in the Cosmos SDK that would allow stakers to increase utilization of their staking positions and additionally allow for a more user-friendly delegation process. These changes will open up a wide range of use cases that, in the current implementation, can only be achieved through custodial counterparties (e.g. exchanges).
We achieve this by creating a representation of staking positions we call “Delegation Vouchers”; validator-specific fungible tokens that can be traded and used in decentralized finance (DeFi) products. The following post aims to lay out the details of our implementation, its advantages, and potential use cases. You can find our implemented hackathon code on Github and a recording from the hackathon presentation itself on YouTube.
We implement a delegation pool for each validator on a Cosmos SDK chain. Instead of directly delegating to a validator, delegators transfer their Atoms to their desired validator’s pool. The pool automatically delegates to the respective validator and accrues rewards on behalf of the collective of delegators. Delegators receive delegation vouchers representing their share of the pool in return. These vouchers are fungible tokens that can be redeemed with the pool to receive their share of the pool’s updated holdings (a fraction of the delegated Atoms + accrued rewards — slashings). This is achieved by tracking a conversion ratio (Atoms/vouchers) between delegation vouchers and bonded Atoms for each validator pool. Accruing rewards increase the conversion ratio, while slashings decrease the conversion ratio.
All staking operations can be modeled using delegation vouchers. The user experience of staking on such a Cosmos SDK chain improves because rewards don’t need to be manually claimed by delegators anymore. Instead, rewards accrue for each validator pool on a per block basis. Unbonding is modeled as the burning of vouchers and receipt of underlying Atoms (calculated as vouchers times conversion ratio) after the unbonding period. Redelegation is modeled as the burning of vouchers combined with the issuance of new vouchers corresponding to the validator that received the redelegation. Newly issued vouchers resulting from a redelegation are non-transferable (frozen) for one unbonding period to make sure delegators remain accountable for infractions that were committed by the validator they redelegated away from.
Delegation vouchers could be traded at a discount bringing liquidity to staked Atoms, e.g. allowing delegators to sell vouchers on a decentralized exchange instead of unbonding. Additionally, delegation vouchers can be used in decentralized finance applications, e.g. as collateral in a DAI-style stablecoin system or in a Compound-like money market protocol. In addition, we believe delegation vouchers could allow for a market-based mechanism of ranking validator quality because delegation vouchers will need to be priced based upon their liquidity and the slashing risk associated with validators. Pools of delegation vouchers can be implemented allowing the creation of diversified tokenized delegation indices such as a Decentralization Index (pictured below). An example would be a Decentralization Index voucher tracking the delegation pattern of the Interchain Foundation. Holders of the Decentralization Index voucher will be able to foster geographic and voting power decentralization without requiring them to pay the mental cost of researching and evaluating validators. These are just a few of the possible use cases. Since one will be able to easily transfer delegation vouchers to other chains via IBC, they will enable permission-less and unbounded innovation.
While delegation vouchers may increase the security of a PoS system because there is less need for unbonding or holding liquid staking tokens, there may also be emergent types of attacks, e.g. a validator shorting his own delegation voucher and double-signing. Implications of this model need to be researched in detail. The model also raises concerns about systemic risk that could potentially arise from multiple usage of collateral. It remains too early to definitely comment on the second and third order effects of such a design.
We will do a more detailed write-up and explore extending functionalities to enable products like staking indices. In the medium term, we would like to explore a proposal to change the staking model of the Cosmos Hub to increase the utilization of staked assets. If you have feedback on our design, please let us know! Reach out to us on Telegram with your comments or if you are interested in collaborating.
Originally published at https://blog.chorus.one on June 20, 2019.