Electric-Coin-Company / tfl-book

A Trailing Finality Layer book for a proposed Zcash protocol change.
MIT License
5 stars 2 forks source link

Decide on slashing requirements from the economic, security, and UX trade-offs around slashing or no-slashing staking protocols #134

Open nathan-at-least opened 7 months ago

nathan-at-least commented 7 months ago

Question

There is contention between slashing and constraining the downside for delegating stake in UX, economic, and security considerations. We need to decide along this trade-off spectrum.

Here we discuss only slashing or no-slashing, but many (but not all) of the trade-offs scale with the degree of slashing. For example, the qualitative difference between no slashing and a tiny amount of slashing might mean that some users are "turned off" by slashing (even a tiny amount) especially when they weren't aware of the slashing risk. OTOH, the direct financial harm to slashed users is very different for small vs large slashing. So some of the differences are qualitative around "0" or "not 0" and others are quantitative based on the scale of slashing risk.

Roles / Terminology

This ticket says "delegator" and "user" interchangeably. We assume most delegators are ill-informed, in that they are unlikely to understand slashing risks very well, and are unlikely to be able to distinguish validators very well or assess their performance.

This ticket uses "validators" for the node operators who contribute directly to block consensus. We assume all stake is in the form of delegations (so validators can/will self-delegate), and that validators take an operational fee from staking rewards, then all remaining rewards are distributed to delegations.

With Slashing

Pros

UX

Econ/Security

Cons

UX

Econ/Security

No-Slashing

Pros

UX

Econ/Security

Cons

UX

Econ/Security

daira commented 7 months ago

For example, the qualitative difference between no slashing and a tiny amount of slashing might mean that some users are "turned off" by slashing (even a tiny amount) especially when they weren't aware of the slashing risk.

It's possible to design the delegation protocol so that your vote for a proposal requires a signature from both you and the party you're delegating to. In which case the risk of slashing only applies in cases where both you and that party vote in a way that causes slashing (e.g. double-voting).

A disadvantage of this approach is that the latency of voting (and therefore of obtaining a two-thirds absolute supermajority for a proposal) may be higher.