go-spacemesh icon indicating copy to clipboard operation
go-spacemesh copied to clipboard

hare 3: do not reward proposals from dishonest miners

Open countvonzero opened this issue 2 years ago • 1 comments

Description

miners that create dishonest proposals/ballots should not be rewards

goals

  • prevent adversary to generate ballots for every layer and force every one to save it, when they may only be eligible for 1
  • punish dishonest miners

proposal

for syntactic check we use total weight of all atxs in proposal active set and check the miner's eligible slots. for rewards, the weight needs to be more than the minimal weight one expects any honest node would see (total weight of highest graded atxs)

assuming a 5 graded active set, if honest miners only choose grade 4, and 5 atxs for ref ballot active set, then in hare preround, count total weight from grade 3.4.5 atxs in proposal active set:

  • if it doesn't justifies the number of eligible slots, don't vote for it
  • if it includes grade 0-2 atxs, don't vote for it

countvonzero avatar Sep 01 '23 03:09 countvonzero

depends on the improvements in atx propagation

dshulyak avatar Feb 19 '24 11:02 dshulyak