I am creating a pool as a pet project and using open-ethereum-pool as reference. I am working at share verification phase right now. But for some miner sends invalid shared. After viewing logs I found that difficulty is much lower than I set in my pool (2000MH).
Logs for both mine and open-ethereum-pool from Claymore (I just run it at the same time on 2 different GPU's): https://gist.github.com/ssbb/6266b783896ef56ab8e1b19c5874c3f9
You can see from open-ethereum-pool:
07:19:22:520 8e0 buf: {"id":0,"jsonrpc":"2.0","result":["0xd10ad5d96675e0b6758637046cc0537158201392a8f5cd927c00d5a805c57485","0xcdf42a47e552f9b4eb01d44a7b6a2b057fbfa1070f3148fd8e7f937a417ffdc1","0x0225c17d04dad2965cc5a02a23e254c0c3f75d9178046aeb27ce1ca574"]}
07:19:22:536 8e0 parse packet: 236
07:19:22:536 8e0 ETH: job changed
07:19:22:551 8e0 new buf size: 0
07:19:22:551 8e0 ETH: 06/14/17-07:19:22 - New job from 192.168.1.34:8888
07:19:22:567 8e0 target: 0x0000000225c17d04 (diff: 2000MH), epoch #21
And from my pool:
07:19:23:630 12b4 buf: {"result":["0xd10ad5d96675e0b6758637046cc0537158201392a8f5cd927c00d5a805c57485","0xcdf42a47e552f9b4eb01d44a7b6a2b057fbfa1070f3148fd8e7f937a417ffdc1","0x225C17D04DAD2965CC5A02A23E254C0C3F75D9178046AEB27CE1CA574"],"jsonrpc":"2.0","id":3}
07:19:23:646 12b4 parse packet: 235
07:19:23:646 12b4 ETH: job changed
07:19:23:661 12b4 new buf size: 0
07:19:23:661 12b4 ETH: 06/14/17-07:19:23 - New job from 192.168.1.34:9999
07:19:23:677 12b4 target: 0x000000225c17d04d (diff: 125MH), epoch #21
As you see - header, seed and diff are the same. But for some reason it's 2000MH for open-ethereum-pool and only 125MH for my pool.
Why this may happen? Which values will affect this?