cosmos-sdk icon indicating copy to clipboard operation
cosmos-sdk copied to clipboard

Fraud provable staking

Open adlerjohn opened this issue 4 years ago • 0 comments

Summary

The staking logic for the Celestia app (i.e. the PoS logic for the Celestia chain) must be fraud-provable with known-bounded cost. The Celestia specifications propose a simple state model to allow for this, however the current Cosmos SDK staking module does not allow for bounded-cost fraud proofs and is quite different.

Proposal

Modify the Cosmos SDK staking module to conform to as much of the specification as needed so as to be bounded-cost fraud-provable. Specifically, a linked list of the priority queue of validators must be implemented. In addition, anything else that involves iteration over an unbounded number of entries must be removed.

Tasks

  • [ ] Update to upstream #27
  • [ ] Implement linked list (add next field for linked list to validator struct, manage head) #29
  • [ ] Modify validator, delegation, and account structs to fully match spec
  • [ ] SMT migration #6
  • [ ] Intermediate state roots #8

adlerjohn avatar Sep 06 '21 04:09 adlerjohn