Bitcoin Forum
May 26, 2024, 04:32:33 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: Selfish mining theory  (Read 1814 times)
The00Dustin
Hero Member
*****
Offline Offline

Activity: 807
Merit: 500


View Profile
October 04, 2014, 10:48:27 AM
 #21

Also, IIRC, the difficulty can only change by 25%, and is based on the time to calculate the 2016 blocks.  So, if you started at block 2016 of the current difficulty, changed all your computer clocks in your private chain, got lucky and found the block to trigger the difficulty change immediately, and got the difficulty to drop as much as possible, it would still be ridiculously high, and you'd still be hard pressed to find additional blocks, much less 2016 of them.  In the meantime, the network would still hash away leaving you in the dust.

Regarding the suggestion that you manipulate the code, if you manipulated the code to make it drop to like 1kH/s, then your longer chain would be rejected by the network because it breaks validation rules (wrong difficulty).

ETA:  Regarding the first method, even if you had enough power to perform the attack simply by manipulating time, the time manipulation would have to be slowly reversed to get most blocks in the past by the time you submit the chain, so it would be very complicated and take a lot more power than "a couple nodes (10 for example)".
The difficulty increases by more then 25% on a regular basis. (this was said above) The max that the difficulty can increase every 2016 blocks is 400%, and IIRC the 4th or 5th time the difficulty actually increased it came very close to this
Right, IIRC, it's a 4x increase or decrease meaning it can drop TO 25% of the current rate in a single change.  That thought was clearly not properly laid out.  Even if I'm wrong and it can drop to 20%, that's still far too difficult to make the attack feasible even without the other constraints.
I don't think I have read anything that would confirm this, although it may still be accurate. I would say that satashi would likely have not needed to write this into the code as there is generally not a reason for miners to stop mining so suddenly like this so large decreases in difficulty would likely never be an issue for the network, however large increases in difficulty are a real possibility
My memory gets fuzzy fast, and I've remembered a lot of Bitcoin protocol things wrong, but I think the code was written for both directions at the same time after Satoshi was gone, like even after my forum account was created.  Maybe when GPUs started mining, or maybe when FPGAs did, or maybe when altcoins first showed up and people were constantly moving hashpower to the most profitable coin (before merged mining was created/implemented).
Window2Wall
Full Member
***
Offline Offline

Activity: 191
Merit: 100


View Profile
October 05, 2014, 03:14:15 AM
 #22

Also, IIRC, the difficulty can only change by 25%, and is based on the time to calculate the 2016 blocks.  So, if you started at block 2016 of the current difficulty, changed all your computer clocks in your private chain, got lucky and found the block to trigger the difficulty change immediately, and got the difficulty to drop as much as possible, it would still be ridiculously high, and you'd still be hard pressed to find additional blocks, much less 2016 of them.  In the meantime, the network would still hash away leaving you in the dust.

Regarding the suggestion that you manipulate the code, if you manipulated the code to make it drop to like 1kH/s, then your longer chain would be rejected by the network because it breaks validation rules (wrong difficulty).

ETA:  Regarding the first method, even if you had enough power to perform the attack simply by manipulating time, the time manipulation would have to be slowly reversed to get most blocks in the past by the time you submit the chain, so it would be very complicated and take a lot more power than "a couple nodes (10 for example)".
The difficulty increases by more then 25% on a regular basis. (this was said above) The max that the difficulty can increase every 2016 blocks is 400%, and IIRC the 4th or 5th time the difficulty actually increased it came very close to this
Right, IIRC, it's a 4x increase or decrease meaning it can drop TO 25% of the current rate in a single change.  That thought was clearly not properly laid out.  Even if I'm wrong and it can drop to 20%, that's still far too difficult to make the attack feasible even without the other constraints.
I don't think I have read anything that would confirm this, although it may still be accurate. I would say that satashi would likely have not needed to write this into the code as there is generally not a reason for miners to stop mining so suddenly like this so large decreases in difficulty would likely never be an issue for the network, however large increases in difficulty are a real possibility
My memory gets fuzzy fast, and I've remembered a lot of Bitcoin protocol things wrong, but I think the code was written for both directions at the same time after Satoshi was gone, like even after my forum account was created.  Maybe when GPUs started mining, or maybe when FPGAs did, or maybe when altcoins first showed up and people were constantly moving hashpower to the most profitable coin (before merged mining was created/implemented).
The difficulty was at "1" for several months until it started to increase, and when it did start to increase, it started increasing very quickly. The difficulty never decreased except for a handful of times. The "hashrate" of the network has always fluctuated somewhat however this can be attributed to variance in luck  of the overall network
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!