pkel / cpr

consensus protocol research
8 stars 2 forks source link

Selfish mining network with gamma = 0 is broken #36

Open pkel opened 1 year ago

pkel commented 1 year ago

The selfish mining network as described in the following blog post is broken. Gamma=0 results in a devide-by-zero and hence unbounded message delays from attacker to defender. These message delays weaken the attacker.

https://pkel.github.io/cpr/blog/generalizing-selfish-minings-gamma/#constructing-a-network


As a hotfix, I've decreased the epsilon to 1e-9. This enables gamma=0.01 without risking significant message delays.

https://github.com/pkel/cpr/commit/e7521ad4c6d01a293732ee89e334da4b78a5912f#diff-d63bdccebde9f15fb0baea8999c8565dfe15c0cb0dbcf37ef3a896770550c290


It would be better to sample the message delays from a different interval. Maybe fix the interval length, then move it up or down to meet the given gamma. I recall that we had something like this before. Could be worth browsing the history of the network implementation.