Skip to content

Should in-group overleverage be prevented? #45

@eth-r

Description

@eth-r

Currently selectGroup(groupSize) in SortitionPool picks groupSize eligible members without regard for how many times an operator is represented in the group. This means that it is possible, although quite unlikely, for an operator to become overleveraged by being represented in the group more times than their staker weight is. If this happens, it violates the guarantee that each group has groupSize * minimumStake KEEP at stake against misbehavior.

This could be prevented by similar methods as would be used to implement BondedSortitionPool.selectGroup, by tracking each member's number of duplicates and skipping those that have reached their limit. However, it would make group selection slightly more expensive, even if a bloom filter is used to short-circuit checks on obviously non-duplicate operators.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions