Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: redshark1802 on July 17, 2011, 07:03:08 PM



Title: alternative cheat-proof method?
Post by: redshark1802 on July 17, 2011, 07:03:08 PM
Hi,

I've done some reading on various possibilities in order to prevent pool-hopping.
At some point I had my own idea and I'd like some feedback, may be I'm
missing something.

userScore = t //seconds since round start for the submitted share

after the round is finished all scores of the user and the totalScore
will be summed up, resulting in:

reward = userScore/totalScore*50

Any ideas about what I'm missing?
Eliel_ in the irc already pointed out that may be miners
don't want to mine at the start of a round.
But sadly I have not enough data, to do some simulations.


Title: Re: alternative cheat-proof method?
Post by: error on July 17, 2011, 08:26:15 PM
I think slush does something like this. It's not quite cheat proof, though. A pool hopper can "cheat" this method in two ways: First, by mining at the start of the round, hoping the pool gets lucky (but only if other pools aren't more attractive at the time). Second, by only mining at the end of the round, the pool hopper will be paid most of what he would have been paid by mining for the entire round.


Title: Re: alternative cheat-proof method?
Post by: redshark1802 on July 17, 2011, 08:35:31 PM
mhm.
could be factor used to even to this out?
i know how does slush it does, but i don't like it.


Title: Re: alternative cheat-proof method?
Post by: JoelKatz on July 18, 2011, 03:11:13 AM
Second, by only mining at the end of the round, the pool hopper will be paid most of what he would have been paid by mining for the entire round.
That doesn't matter. There's no way a pool hopper can ever know that a particular share is more or less likely to be near the end of the round.


Title: Re: alternative cheat-proof method?
Post by: TeraPool on July 18, 2011, 03:48:38 AM
Second, by only mining at the end of the round, the pool hopper will be paid most of what he would have been paid by mining for the entire round.
That doesn't matter. There's no way a pool hopper can ever know that a particular share is more or less likely to be near the end of the round.

Agreed.

You guys have obviously never played roulette ;)

Pool hopping is not cheating and it never will be.


Title: Re: alternative cheat-proof method?
Post by: joulesbeef on July 18, 2011, 03:57:05 AM
is it really cheating? doesnt it help the pool to get more Mhs and churn through a block faster? Hoppers still get paid proportionally to their work. People just seem to get annoyed they have figured out a way to make a little more per day by jumping on blocks.

yeah i get people who dont hop feel cheated as some of their rewards are smaller, but their pool also gets through blocks faster and their rewards would be even smaller if the hoppers didnt hop but choose their pool as a home.

Do we all also much use the same miner software and the same amd cards to make sure none of us are cheating by using better methods and better hardware?


Title: Re: alternative cheat-proof method?
Post by: Meni Rosenfeld on July 18, 2011, 04:47:44 AM
Your method is not hopping-proof. There are two hopping-proof methods, the geometric method and PPLNS (look them up).


To those who think pool hopping is not a problem, please consider two points:

1. What would happen if everyone did it? (Hint: proportional pools would stop getting any shares at all once they reach 43.5% of the difficulty).
2. Increasing megahashes with better hardware/software means you increase your contribution to the network security, and your reward increases proportionally. Pool-hopping means you increase your reward without any increase in your contribution (at the expense of other miners).


Title: Re: alternative cheat-proof method?
Post by: Meni Rosenfeld on July 18, 2011, 10:18:54 AM
First you should keep in mind that any scoring method where the score depends on time, is prone to hopping based on hashrate fluctuations. So to make your suggestion a candidate for analysis, we should replace it with the score being equal to the number of shares already submitted (this gives the same results as the time-based method if we assume that the hashrate is constant).

So, for this scoring method, a share submitted after t*difficulty others, gives an expected return of approximately 2(1-t*exp(t)*gamma(0,t)) times the normal reward. Thus, shares submitted at the beginning of the round have twice the normal value, and it remains >100% up to the point where 61% * difficulty shares were submitted.