DeepCryptoanalist3
Member
Offline
Activity: 81
Merit: 10
|
|
June 06, 2014, 02:42:16 PM |
|
This is entirely what I'd expect, if the current rate is the same as the average rate then no adjustment is necessary. Are your proposing that if solution times remain consistent, we should retarget? Should we make the challenge easier or harder in such a case, and by how much, exactly?
The threshold is not connected to the speed of block issue and a chain length. You can build a 5000 block chain with solution time equal to 60sec and time separation between 0 and 5000 block issue times will be less than an hour. This is not the case in bitcoin. Bitcoin threshold is linked to the block issue time. If you are building a long chain of bitcoin blocks then the threshold will grow up rapidly and complexity of a new block calculation will grow also. But here we see a strange situation when the block solution complexity will not be changed even if blocks will be issued very rapidly. This is what am I talking about.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 02:49:00 PM |
|
Many people are interested when bots appeared. I made a small research. Every time you press F6 your nonce is incremented (and it doesn't reset after a switch to a new block). For human miners nonce values should be low because humans cannot enumerate millions of maps while bots can (and that is what they actually do), therefore high values of nonce clearly indicate bots. I made some graphs. Horizontal axis is block index, vertical is nonce in that block: http://motocoin.org/research/nonces_ann.pngand in logarithmic scale: http://motocoin.org/research/nonces_log_ann.png
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 02:53:48 PM |
|
int bnNew = 2*Current - Median - (Current - Median)*nTargetTimespan/nActualTimespan; then if Median is equal to Current... then bnNew will be equal to Current no matter what nActualTimespan is. Even if nActualTimespan is close to zero the new complexity threshold will not be changed. Maybe you just have found a vulnerability in Motocoin. To ensure that new blocks are mineable it will never make target time less than median and you found a way to exploit it.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 04:33:12 PM |
|
Many people are interested when bots appeared. I made a small research. Every time you press F6 your nonce is incremented (and it doesn't reset after a switch to a new block). For human miners nonce values should be low because humans cannot enumerate millions of maps while bots can (and that is what they actually do), therefore high values of nonce clearly indicate bots. I made some graphs. Horizontal axis is block index, vertical is nonce in that block: http://motocoin.org/research/nonces_ann.pngand in logarithmic scale: http://motocoin.org/research/nonces_log_ann.pngNice! Looks like I was not the first botter.... probably miniminer was. The first big "gap" around 10,000 was when flipper was out of commission for awhile do to a bug, interesting that there weren't other bots active during this time, I wonder why. Some of those more scattered points in the lower nonce space are certainly my other (currently less productive) bot, "crawler." Unlike "flipper" which tries a very large number of maps and uses random nonce offsets, crawler spends more time trying to learn individual maps, with sequential nonce, and rarely gets into higher nonces. Crawler is ultimately the smarter bot, and I expect that one day it will overtake flipper in production.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 04:36:26 PM |
|
Excellent, maybe arbitrage pressure will help with gaining more momentum on the price correction!
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 04:48:53 PM |
|
Some of those more scattered points in the lower nonce space are certainly my other (currently less productive) bot, "crawler." Unlike "flipper" which tries a very large number of maps and uses random nonce offsets, crawler spends more time trying to learn individual maps, with sequential nonce, and rarely gets into higher nonces. Crawler is ultimately the smarter bot, and I expect that one day it will overtake flipper in production.
Can you point me to some of crawler's replays? I want to see him in action.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 05:11:09 PM |
|
Some of those more scattered points in the lower nonce space are certainly my other (currently less productive) bot, "crawler." Unlike "flipper" which tries a very large number of maps and uses random nonce offsets, crawler spends more time trying to learn individual maps, with sequential nonce, and rarely gets into higher nonces. Crawler is ultimately the smarter bot, and I expect that one day it will overtake flipper in production.
Can you point me to some of crawler's replays? I want to see him in action. I will when I am where I'd be able to look at its tx history again. Probably some time over the weekend I will show some of its blocks for discussion.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 05:21:55 PM |
|
Many people are interested when bots appeared. I made a small research.
Could you get a live version of these graphs up somewhere? Maybe integrated to the block explorer? It would be nice to be able to have this sort of a perspective on bot activity in real time. (If nothing else, so humans could tell when the bots are simultaneously down (should it ever happen again) and capitalize on the opportunity to play!)
|
|
|
|
DeepCryptoanalist3
Member
Offline
Activity: 81
Merit: 10
|
|
June 06, 2014, 07:34:48 PM |
|
int bnNew = 2*Current - Median - (Current - Median)*nTargetTimespan/nActualTimespan; then if Median is equal to Current... then bnNew will be equal to Current no matter what nActualTimespan is. Even if nActualTimespan is close to zero the new complexity threshold will not be changed. Maybe you just have found a vulnerability in Motocoin. To ensure that new blocks are mineable it will never make target time less than median and you found a way to exploit it. Nice. There is a vulnerability in motocoin that can be exploited by a bot owner to easily make a blockchain fork. Anyway this is too risky to invest money in this coin unless they close the bug.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 07:41:52 PM |
|
int bnNew = 2*Current - Median - (Current - Median)*nTargetTimespan/nActualTimespan; then if Median is equal to Current... then bnNew will be equal to Current no matter what nActualTimespan is. Even if nActualTimespan is close to zero the new complexity threshold will not be changed. Maybe you just have found a vulnerability in Motocoin. To ensure that new blocks are mineable it will never make target time less than median and you found a way to exploit it. Nice. There is a vulnerability in motocoin that can be exploited by a bot owner to easily make a blockchain fork. Anyway this is too risky to invest money in this coin unless they close the bug. Even without that bug bot owner can fork the whole blockchain.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 07:44:05 PM |
|
int bnNew = 2*Current - Median - (Current - Median)*nTargetTimespan/nActualTimespan; then if Median is equal to Current... then bnNew will be equal to Current no matter what nActualTimespan is. Even if nActualTimespan is close to zero the new complexity threshold will not be changed. Maybe you just have found a vulnerability in Motocoin. To ensure that new blocks are mineable it will never make target time less than median and you found a way to exploit it. Nice. There is a vulnerability in motocoin that can be exploited by a bot owner to easily make a blockchain fork. Anyway this is too risky to invest money in this coin unless they close the bug. I'm still not convinced that this is meaningfully exploitable. Anyone care to demonstrate?
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 07:45:07 PM |
|
int bnNew = 2*Current - Median - (Current - Median)*nTargetTimespan/nActualTimespan; then if Median is equal to Current... then bnNew will be equal to Current no matter what nActualTimespan is. Even if nActualTimespan is close to zero the new complexity threshold will not be changed. Maybe you just have found a vulnerability in Motocoin. To ensure that new blocks are mineable it will never make target time less than median and you found a way to exploit it. Nice. There is a vulnerability in motocoin that can be exploited by a bot owner to easily make a blockchain fork. Anyway this is too risky to invest money in this coin unless they close the bug. Even without that bug bot owner can fork the whole blockchain. Yah, I'm having difficulty understanding how this is really any more exploitable than a "straight up" 51% attack... could you clarify for me? I'd appreciate.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 07:52:01 PM |
|
I'm still not convinced that this is meaningfully exploitable. Anyone care to demonstrate? How fast your bot can mine new blocks? Can it generate one block at least every few seconds? If so, just start to generate blocks right from the genesis block untill you will have more blocks then there are currently, then send all your newly mined blocks to the network, voila, and you will own all of motocoins except for my premine. This is just a 51% attack.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 07:55:07 PM |
|
Yah, I'm having difficulty understanding how this is really any more exploitable than a "straight up" 51% attack... could you clarify for me? I'd appreciate.
It just simplifies 51% attack because you don't need to decrease target time in your softfork. But you will need to complete enough levels precisely in target time to exploit it.
|
|
|
|
DeepCryptoanalist3
Member
Offline
Activity: 81
Merit: 10
|
|
June 06, 2014, 07:58:54 PM |
|
I'm still not convinced that this is meaningfully exploitable. Anyone care to demonstrate? How fast your bot can mine new blocks? Can it generate one block at least every few seconds? If so, just start to generate blocks right from the genesis block untill you will have more blocks then there are currently, then send all your newly mined blocks to the network, voila, and you will own all of motocoins except for my premine. This is just a 51% attack. No it is not a 51% attack because it is not involve much resources to accomplish. Because in motocoin threshold value is not linked to block issue time attacker can produce blocks whose solution is stupid and slow. It is like producing a blockchain for bitcoin where eachblock have only one leading zero. This is not a 51% attack by definition because attacker can have far less resources than the rest of the net. He only shall be able to form blocks fast enough.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 08:02:14 PM |
|
I'm still not convinced that this is meaningfully exploitable. Anyone care to demonstrate? How fast your bot can mine new blocks? Can it generate one block at least every few seconds? If so, just start to generate blocks right from the genesis block untill you will have more blocks then there are currently, then send all your newly mined blocks to the network, voila, and you will own all of motocoins except for my premine. This is just a 51% attack. No it is not a 51% attack because it is not involve much resources to accomplish. Because in motocoin threshold value is not linked to block issue time attacker can produce blocks whose solution is stupid and slow. It is like producing a blockchain for bitcoin where eachblock have only one leading zero. This is not a 51% attack by definition because attacker can have far less resources than the rest of the net. He only shall be able to make form blocks fast enough. I'm just saying that current network difficulty is too low and you don't actually need to use this vulnerability to perform attack.
|
|
|
|
HunterMinerCrafter
|
|
June 06, 2014, 08:23:31 PM |
|
I'm still not convinced that this is meaningfully exploitable. Anyone care to demonstrate? How fast your bot can mine new blocks? Can it generate one block at least every few seconds? If so, just start to generate blocks right from the genesis block untill you will have more blocks then there are currently, then send all your newly mined blocks to the network, voila, and you will own all of motocoins except for my premine. This is just a 51% attack. No it is not a 51% attack because it is not involve much resources to accomplish. Because in motocoin threshold value is not linked to block issue time attacker can produce blocks whose solution is stupid and slow. It is like producing a blockchain for bitcoin where eachblock have only one leading zero. This is not a 51% attack by definition because attacker can have far less resources than the rest of the net. He only shall be able to make form blocks fast enough. I'm just saying that current network difficulty is too low and you don't actually need to use this vulnerability to perform attack. I still don't really see how this is any different from a 51% against any coin. On any coin if one dominates hashing power (by some multiples) they can rewrite block history - including difficulty. If you had sufficient hashing power you could produce a btc chain with a different final difficulty as well. (Probably not as low as 1 bit, but certainly lower than the current difficulty.) It would just have to be a longer chain and end with a block holding a timestamp close enough to the wall clock. What am I missing here? EDIT: Wait, maybe I do see what you mean after all... basically "median" is both not actual median, and also ultimately has no impact on the retarget if target==actual. (Or is very very close.) Am I on the right track now?
|
|
|
|
ElitistCA
Sr. Member
Offline
Activity: 477
Merit: 250
Blockchain Just Entered The Real World
|
|
June 06, 2014, 08:31:39 PM |
|
Dont really understand tech discussion but, I freakin love the idea. Love that game, such classic!
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 08:32:18 PM |
|
EDIT: Wait, maybe I do see what you mean after all... basically "median" is both not actual median, and also ultimately has no impact on the retarget if target==actual. (Or is very very close.) Am I on the right track now?
actual has no impact on the retarget if current==median.
|
|
|
|
WilliamLie2 (OP)
|
|
June 06, 2014, 08:36:23 PM |
|
Nice. There is a vulnerability in motocoin that can be exploited by a bot owner to easily make a blockchain fork. Anyway this is too risky to invest money in this coin unless they close the bug.
How do you propose to fix that bug? You can't just decrease target time if there were no maps that were completed in time less than new target time because you may just accidently decrease it to a point when it becomes unachievable.
|
|
|
|
|