Péter Szilágyi, in his talk in Taipei, claims that totalDifficulty can be spoofed:


How is that possible? Can the variable only be verified if all block headers are downloaded from the spoofed chain and would that produce a fraud proof?

  • Nothing bad is going to happen. Read this: github.com/ethereumproject/go-ethereum/wiki/… – Nulik Oct 19 '18 at 20:21
  • After reading: After successfully inserting blocks, if the block is or was the head block of a peer, the blockpool also checks if the block's actual total difficulty is identical to one advertised by the peer. If it is not, the peer received an ErrIncorrectTD and as a consequence gets disconnected and suspended for PeerSuspensionInterval So basically, new blocks are appended to a local cannonical chain and totalDifficulty is checked for validity. What about SPV? They only download headers. Can they choose to download a malicious canonical chain if it is advertised as the longest? – user3223162 Oct 20 '18 at 10:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.