cxboyminer
|
|
April 07, 2014, 05:17:50 AM |
|
CPPSRB is about 28 hours behind and catching up... probably early morning it should be done. I'll keep an eye on it. Great! So that means payment will be available tmr latest? I need the payment to repay my loan tbh
|
|
|
|
wizkid057 (OP)
Legendary
Offline
Activity: 1223
Merit: 1006
|
|
April 07, 2014, 09:59:01 AM |
|
Looks like the data verification is going pretty smoothly, although slower than I would like. It is about 15 hours behind real-time now.
|
|
|
|
AussieHash
|
|
April 07, 2014, 11:47:56 AM |
|
Thank you for the replies. Whilst I appreciate that it is a cat and mouse game, I am satisfied to hear such testing is possible and that it should be done by a well setup pool.
|
|
|
|
torusJKL
|
|
April 07, 2014, 11:58:23 AM |
|
Looks like the data verification is going pretty smoothly, although slower than I would like. It is about 15 hours behind real-time now.
Thanks for the update.
|
|
|
|
anth0ny
|
|
April 07, 2014, 12:21:09 PM Last edit: April 07, 2014, 12:49:50 PM by anth0ny |
|
The luck has been not good lately. I wonder if wizkid somehow performs checks against block withholding. Sorry if it's been asked already.
Why would you do that? I would understand if it would be PPS so you would keep difficulty down... As far as I know you can't submit found block yourself... Not sure exactly why but that is what I was told... A miner that finds a block (in a pool) cannot claim it for itself, because by doing so, he would invalidate the hash, and could not claim the block. An if he was mining mining solo, but submitted his shares to the pool, the pool would reject it because the do not match what it expects. So a miner willing to benefit from the profit splitting of a pool has to mine "for" the pool and cannot "steal" the pool the blocks it finds. HOWEVER, it can choose not to submit winning shares, but submit all other shares. So he benefits from the other pool miner's work, while not helping the pool at all. Such behavior is usually pointless for a miner: It -HAS- to find shares and submit them to the pool to get his share of the pool's reward, so sorting a "winning" share out of it cannot help him spend less electricity/bandwith/work for the same reward. In fact, by witholding the winning shares, he hurts everybody in the pool equally, including himself. Actually, withholding blocks (temporarily) can be very profitable if you have a lot of hashing power, especially if you can submit the blocks yourself. I'm not sure to what extent the owners of Eligius want me to describe the process, though. Probably not much given Luke's previous comments about sharing information. As Luke said, it's a cat-and-mouse game. But the mouse is anonymous and can make copies of itself pretty much infinitely. However, if attackers started to doing this on every pool, then it would cancel out, because the difficulty would decrease by the exact same amount the attacker controls. So it is an attack against individual pools, not against bitcoin itself.
It could be part of a larger attack, though. Pools let you attack the network while still collecting more than 99% of your rewards.
|
|
|
|
anth0ny
|
|
April 07, 2014, 12:45:43 PM |
|
You can submit GBT blocks to the network yourself, not stratum blocks.
I do some checks against block withholding, although there is high variance in these checks for obvious reasons.
Working on namecoins now.
Just out of curiosity what sort of checking is possible against block withholding and faking Proof of Work ? Clearly with the DDOS and namecoin hack, there are people expending great resources against this and probably every mining pool - but how do they plan to profit from their effort ? There are a few tests for block withholding: 1) Random tests of valid data sent to the miner. 2) Sending rigged data to the miner with an expected result Of course if your pool is sending you fake data, I'd find another pool. 3) If you are expected to find a block every so often based on your hash rate, then not finding blocks could suggest you are withholding. All of which are easily defeated, which is why Luke said he didn't want to provide information on this.
|
|
|
|
wizkid057 (OP)
Legendary
Offline
Activity: 1223
Merit: 1006
|
|
April 07, 2014, 01:34:24 PM |
|
You can't mine for the pool *and* be able to claim/redirect/steal the full block reward.
|
|
|
|
anth0ny
|
|
April 07, 2014, 01:38:15 PM |
|
There are a few tests for block withholding:
1) Random tests of valid data sent to the miner.
2) Sending rigged data to the miner with an expected result Of course if your pool is sending you fake data, I'd find another pool.
3) If you are expected to find a block every so often based on your hash rate, then not finding blocks could suggest you are withholding.
All of which are easily defeated, which is why Luke said he didn't want to provide information on this. Not sure what ideas you've come up with, but 3) is the only usable method. Usable to detect that someone might be withholding. Not usable to do anything about it unless the attacker is an idiot. And actually, the data to do this can be checked by anyone. It'd be interesting to see if anyone can find any evidence of block withholding (along with a statistical analysis of how unlikely the variance is due to random chance). But this is only possible if certain steps haven't been taken to hide the block withholding.
|
|
|
|
AussieHash
|
|
April 07, 2014, 01:44:14 PM |
|
BTCGuild just recently terminated PPS with immediate effect and Giga's pool closed down within a month of implementing PPS ......
|
|
|
|
anth0ny
|
|
April 07, 2014, 01:46:17 PM |
|
You cannot redirect a mined block to anything but the coinbase transaction it is hashed to.
Of course not. That's like Bitcoin 101. You can withhold a block by simply not submitting it to the pool or submitting it 'later'.
Yep. Submitting a block later will gain you nothing directly, but it will risk the block being rejected/orphaned if someone else on the network submits a block. The effect of submitting it later is to lower the next diff change by a very small amount
Close..... Why do you think the effect would be to lower the diff, though? however, again, it will risk the block being rejected/orphaned if someone else on the network submits a block while you are holding it.
And if the block is rejected/orphaned, what do you lose? One share.
|
|
|
|
wizkid057 (OP)
Legendary
Offline
Activity: 1223
Merit: 1006
|
|
April 07, 2014, 01:47:33 PM |
|
There are a few tests for block withholding:
1) Random tests of valid data sent to the miner.
2) Sending rigged data to the miner with an expected result Of course if your pool is sending you fake data, I'd find another pool.
3) If you are expected to find a block every so often based on your hash rate, then not finding blocks could suggest you are withholding.
All of which are easily defeated, which is why Luke said he didn't want to provide information on this. Not sure what ideas you've come up with, but 3) is the only usable method. Usable to detect that someone might be withholding. Not usable to do anything about it. And actually, the data to do this can be checked by anyone. It'd be interesting to see if anyone can find any evidence of block withholding (along with a statistical analysis of how unlikely the variance is due to random chance). But this is only possible if certain steps haven't been taken to hide the block withholding. BTCGuild's luck suggested that people might be withholding on PPS. He got rid of PPS (oddly enough, not long after I posted about it ) Once per day I sprinkle dried unicorn blood onto the contributor list and use it to find any withholders. So far it is very effective
|
|
|
|
anth0ny
|
|
April 07, 2014, 01:49:28 PM |
|
... And if the block is rejected/orphaned, what do you lose? One share.
If the pool's payment system isn't broken, you lose a lot more than one share. I guess CPPSRB is broken, and PPLNS isn't? That said, it is slightly more than one share (times your difficulty, which you for the most part get to pick) even in CPPSRB, since it slightly increases the odds that old shares aren't going to get paid out (although even that depends on how many shares you have in the queue and what their positions are). What is it you think you lose if the block is rejected/orphaned? Under CPPSRB, if the block is rejected/orphaned, your shares go right back on the list to be paid out when someone not withholding finds a block.
|
|
|
|
bizzyb
Legendary
Offline
Activity: 1652
Merit: 1001
Don't look at my signature!
|
|
April 07, 2014, 01:53:22 PM |
|
There are a few tests for block withholding:
1) Random tests of valid data sent to the miner.
2) Sending rigged data to the miner with an expected result Of course if your pool is sending you fake data, I'd find another pool.
3) If you are expected to find a block every so often based on your hash rate, then not finding blocks could suggest you are withholding.
All of which are easily defeated, which is why Luke said he didn't want to provide information on this. Not sure what ideas you've come up with, but 3) is the only usable method. Usable to detect that someone might be withholding. Not usable to do anything about it. And actually, the data to do this can be checked by anyone. It'd be interesting to see if anyone can find any evidence of block withholding (along with a statistical analysis of how unlikely the variance is due to random chance). But this is only possible if certain steps haven't been taken to hide the block withholding. BTCGuild's luck suggested that people might be withholding on PPS. He got rid of PPS (oddly enough, not long after I posted about it ) Once per day I sprinkle dried unicorn blood onto the contributor list and use it to find any withholders. So far it is very effective Please....not the unicorns.......
|
|
|
|
░░░░░░░▄▄▄▄▄▄ ░░░░▄██████████▄ ░░░███▀░░░░░░▀███ ░░███░░░░░░░░░░███ ░███░░░░░██░░░░░███ ███░░░░░░██░░░░░░███ ███░░░░░░██░░░░░░███ ███░░░░░░█████░░░███ ███░░░░░░░░░░░░░░███ ░███░░░░░░░░░░░░███ ░░███░░░░░░░░░░███ ░░░███▄░░░░░░▄███ ░░░░▀██████████▀ ░░░░░░░▀▀▀▀▀▀
| | | ░░░████░░░░░░░████ ░░███░██░░░░░██░███ ░░██░░░███░███░░░██ ░░██░░░░░███░░░░░██ █████████████████████ ░░███████░░░███████ ░░███████░░░███████ ░░███████░░░███████
░░███████░░░███████ ░░███████░░░███████ ░░███████░░░███████ ░░███████░░░███████
| | |
░░░░░░█ ░░░░░██░░░░░░█ ░░░░████░░░░░▐█ ░░░░█████░░░░███ ░░░░░█████░░████ ░░█░░░█████░████ ░██░░░██████████ ████░████░█████ █████████░░███ ░███████░░░██ ░░▀████░░░█▀ ░░░░░▀
| | | ░██████████████████▀██████░ █████████░░██████▀░████████ ███████░██░░███▀░▄█░███████ ███████░░██░░▀░▄██░░███████ ██████▌░░░██▄░▄██░░░▐██████ ██████░░░░░█████░░░░░██████ ██████░░░░░░███░░░░░░██████ █████░░░█░░░░█░░░░█░░░█████ █████░░░██░░░░░░░██░░░█████ ████░░░████▌░░░▐████░░░████ ████░░░█████▌░▐█████░░░████ ███░░░███████████████░░░███ ███░░░███████████████░░░███ ░█████████████████████████░ | MONETARYUNIT .......for Me, U & Everyone....... |
[/
|
|
|
anth0ny
|
|
April 07, 2014, 01:54:23 PM |
|
BTCGuild's luck suggested that people might be withholding on PPS. He got rid of PPS (oddly enough, not long after I posted about it ) Once per day I sprinkle dried unicorn blood onto the contributor list and use it to find any withholders. So far it is very effective Glad you're taking the problem seriously.
|
|
|
|
anth0ny
|
|
April 07, 2014, 02:13:23 PM |
|
... And if the block is rejected/orphaned, what do you lose? One share.
If the pool's payment system isn't broken, you lose a lot more than one share. I guess CPPSRB is broken, and PPLNS isn't? That said, it is slightly more than one share (times your difficulty) even in CPPSRB, since it slightly increases the odds that old shares aren't going to get paid out (although even that depends on how many shares you have in the queue and what their positions are). What is it you think you lose if the block is rejected/orphaned? Under CPPSRB, if the block is rejected/orphaned, your shares go right back on the list to be paid out when someone not withholding finds a block. PPS is broken, I guess you are saying CPPSRB is also? Well, you're the one who used the word "broken". Depending on what you consider broken, I'd say all pools where the miners can't be trusted are broken. You can reduce the incentive to withhold (as in delay) blocks, but you can't eliminate it. Though, I do remember Meni did mention (vaguely) that it was a while ago also.
PPLNS isn't broken, since withholding is bad for the withholder (and PPLNS isn't hoppable) ... same goes for DGM.
Meni did describe a block withholding attack in his paper, and used PPLNS as an example to boot. See section 6.2.2. Meni also describes a potential solution (section 6.2.3), but it requires changes to the Bitcoin protocol (and IMHO has the potential to cause more problems than it solves, since it requires more blind trust in pool operators). Withholding (delaying) is bad for the withholder (delayer), but to make it 100% bad (i.e. as bad as withholding/delaying as a solo miner), you'd have to eliminate the whole point of pooling.
|
|
|
|
un_ordinateur
|
|
April 07, 2014, 02:29:52 PM |
|
Submitting a block later will gain you nothing directly, but it will risk the block being rejected/orphaned if someone else on the network submits a block. The effect of submitting it later is to lower the next diff change by a very small amount
Why do you think the effect would be to lower the diff, though? Say a user with 10% of the network's hashrate starts witholding blocks. Since no more blocks are being submitted by that user, the blockchain recieves 10% less blocks per retarget period; so the difficulty will adjust to compensate. however, again, it will risk the block being rejected/orphaned if someone else on the network submits a block while you are holding it.
And if the block is rejected/orphaned, what do you lose? One share. Yes, you lose one share to the pool; but you lose your part of the reward for all the shares you would have submitted to the pool that the block you found would have payed for.
|
|
|
|
lightfoot
Legendary
Offline
Activity: 3164
Merit: 2258
I fix broken miners. And make holes in teeth :-)
|
|
April 07, 2014, 02:56:21 PM |
|
Say a user with 10% of the network's hashrate starts witholding blocks. Since no more blocks are being submitted by that user, the blockchain recieves 10% less blocks per retarget period; so the difficulty will adjust to compensate.
Sure, but since each roll of the dice is totally independent of any other roll, it's as if this person was never mining at all, so there is no difference overall. You just have one person "missing" so the difficulty goes down. You could check for this by looking at the network hash rate and comparing it to the difficulty. Difficulty being ess than the hashrate would give you the percentage of dud miners. But it would not affect live miners. An example: Say somone decides to "attack" a 5th site. They run 4th worth of with-holders, and get nothing for their efforts other than running the pool to 5th. The remaining 1th of users still mine as normal and get the same payouts. Their variance will be higher (they're thinking they get 5th to smooth out the variance when there is really only one) but it doesn't change anyone's overall payouts. C
|
|
|
|
anth0ny
|
|
April 07, 2014, 03:06:20 PM Last edit: April 07, 2014, 03:20:09 PM by anth0ny |
|
Submitting a block later will gain you nothing directly, but it will risk the block being rejected/orphaned if someone else on the network submits a block. The effect of submitting it later is to lower the next diff change by a very small amount
Why do you think the effect would be to lower the diff, though? Say a user with 10% of the network's hashrate starts witholding blocks. Since no more blocks are being submitted by that user, the blockchain recieves 10% less blocks per retarget period; so the difficulty will adjust to compensate. Okay...that's part of it. But if the attacker can time the blocks such that the network gets split in half.... (Granted, splitting the network in half would require perfect timing. But splitting it such that 25% works on one block and 75% works on a different block, is probably doable.) (This could probably be fixed with a soft fork. If two blocks arrive at nearly the same time, take the one with the more accurate timestamp. But that's not the current rule.) however, again, it will risk the block being rejected/orphaned if someone else on the network submits a block while you are holding it.
And if the block is rejected/orphaned, what do you lose? One share. Yes, you lose one share to the pool; but you lose your part of the reward for all the shares you would have submitted to the pool that the block you found would have payed for. Maybe. But probably not, with CPPSRB. Under PPLNS you can get paid twice for a share. If you don't submit a block, that's one fewer time you're going to get paid for those shares. Under CPPSRB, the most you're going to get paid for a share is once. If you don't submit a block, there's still a good chance your shares are going to get paid.
|
|
|
|
un_ordinateur
|
|
April 07, 2014, 03:55:09 PM |
|
Say a user with 10% of the network's hashrate starts witholding blocks. Since no more blocks are being submitted by that user, the blockchain recieves 10% less blocks per retarget period; so the difficulty will adjust to compensate.
Sure, but since each roll of the dice is totally independent of any other roll, it's as if this person was never mining at all, so there is no difference overall. You just have one person "missing" so the difficulty goes down. Exactly what I was saying? You could check for this by looking at the network hash rate and comparing it to the difficulty. Difficulty being ess than the hashrate would give you the percentage of dud miners. But it would not affect live miners.
The network does no "know" the hashrate. The hashrate as reported by some stats sites is estimated based by the current difficulty and the speed at which blocks are found; averaged over a few hours.
|
|
|
|
anth0ny
|
|
April 07, 2014, 03:56:47 PM |
|
You could check for this by looking at the network hash rate and comparing it to the difficulty. Difficulty being ess than the hashrate would give you the percentage of dud miners. But it would not affect live miners.
The network does no "know" the hashrate. The hashrate as reported by some stats sites is estimated based by the current difficulty and the speed at which blocks are found; averaged over a few hours. Isn't the hashrate measured based on the speed at which shares are found?
|
|
|
|
|