[bitcoin-dev] Issolated Bitcoin Nodes

Matt Corallo lf-lists at mattcorallo.com
Thu Mar 23 23:01:09 UTC 2017


I haven't investigated, but you may be seeing segwit-invalid blocks...0.13.0+ nodes will enforce segwit as it activated some time ago on testnet, 0.12.X nodes will not.

On March 23, 2017 3:37:34 PM PDT, Juan Garavaglia via bitcoin-dev <bitcoin-dev at lists.linuxfoundation.org> wrote:
>We notice some reorgs in Bitcoin testnet, while reorgs in testnet are
>common and may be part of different tests and experiments, it seems the
>forks are not created by a single user and multiple blocks were mined
>by different users in each chain.  My first impression was that the
>problem was related to network issues but some Bitcoin explorers were
>following one chain while others follow the other one.  Nonetheless,
>well established explorers like blocktrail.com or blockr.io were
>following different chains at different heights which led to me to
>believe that it was not a network issue. After some time, a reorg
>occurs and it all comes to normal state as a single chain.
>We started investigating more and we identified that the fork occurs
>with nodes 0.12; in some situations, nodes 0.12 has longer/different
>chains. The blocks in both chains are valid so something must be
>occurring in the communication between nodes but not related with the
>network itself.
>Long story short, when nodes 0.13+ receive blocks from 0.13+ nodes all
>is ok, and those blocks propagate to older nodes with no issues. But
>when a block tries to be propagated from bitcoind 0.12.+ to newer ones
>those blocks are NOT being propagated to the peers with newer versions
>while these newer blocks are being propagated to peers with older
>versions with no issues.
>My conclusion is that we have a backward compatibility issue between
>0.13.X+ and older versions.
>The issue is simple to replicate, first, get latest version of
>bitcoind, complete the IBD after is at current height, then force it to
>use exclusively one or more peers of versions 0.12.X and older, and you
>will notice that the latest version node will never receive a new
>block.
>Probably some alternative bitcoin implementations act as bridges
>between these two versions and facilitate the chain reorgs.
>I have not yet found any way where/how it can be used in a malicious
>way or be exploited by a miner but in theory Bitcoin 0.13.X+ should
>remain compatible with older ones, but a 0.13+ node may become isolated
>by 0.12 peers, and there is not notice for the node owner.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170323/f7be920b/attachment.html>


More information about the bitcoin-dev mailing list