• Jeffrey Wilcke's avatar
    core: Added new TD strategy which mitigate the risk for selfish mining · 5b283663
    Jeffrey Wilcke authored
    Assuming the following scenario where a miner has 15% of all hashing
    power and the ability to exert a moderate control over the network to
    the point where if the attacker sees a message A, it can't stop A from
    propagating, but what it **can** do is send a message B and ensure that
    most nodes see B before A. The attacker can then selfish mine and
    augment selfish mining strategy by giving his own blocks an advantage.
    
    This change makes the time at which a block is received less relevant
    and so the level of control an attacker has over the network no longer
    makes a difference.
    
    This change changes the current td algorithm `B_td > C_td` to the new
    algorithm `B_td > C_td || B_td == C_td && rnd < 0.5`.
    5b283663
Name
Last commit
Last update
Godeps Loading commit data...
_data Loading commit data...
accounts Loading commit data...
build Loading commit data...
cmd Loading commit data...
common Loading commit data...
compression/rle Loading commit data...
containers/docker Loading commit data...
core Loading commit data...
crypto Loading commit data...
errs Loading commit data...
eth Loading commit data...
ethdb Loading commit data...
event Loading commit data...
generators Loading commit data...
internal/debug Loading commit data...
jsre Loading commit data...
light Loading commit data...
logger Loading commit data...
metrics Loading commit data...
miner Loading commit data...
node Loading commit data...
p2p Loading commit data...
params Loading commit data...
pow Loading commit data...
rlp Loading commit data...
rpc Loading commit data...
tests Loading commit data...
trie Loading commit data...
whisper Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
AUTHORS Loading commit data...
CONTRIBUTING.md Loading commit data...
COPYING Loading commit data...
COPYING.LESSER Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
VERSION Loading commit data...