Author

Topic: "Infinity" patch for Bitcoin Core — Support SegWit *and* larger blocks (Read 791 times)

sr. member
Activity: 420
Merit: 250
This is a model for improvements and documentation related to Bitcoin (BUIP), in this case the BUIP-005 that defines the concept of Emergent Consensus or block size limit. This is where Bitcoin can take advantage of the reason that its global network is made up of thousands of independent nodes that are usually owned by different people. Bitcoin nodes also communicate through the interaction of peer-to-peer (P2P) messages. Enabling these features means adding simple rules that allow the complex behavior of the entire network to develop outside the messaging layer. Bitcoin network nodes participating in the Emergent Consensus simply need to allow flexibility in determining a block size limit generating flexibility.
full member
Activity: 120
Merit: 144
"Infinity" patch for Bitcoin Core

If you…

  • run a full node
  • are a user, not a miner
  • don't particularly care how large the blocks are
  • are concerned about undiscovered bugs in Bitcoin Unlimited
  • want to support SegWit and larger blocks

…then this patch is for you.

This patch contains the minimal changes necessary to make Bitcoin Core accept blocks of any size (up to the overall message size limit of 32 MiB). It does this without removing or neutering the protections against blocks with excessive numbers of signature operations ("sigops"). The maximum number of sigops allowed scales linearly with the size (weight) of the block.

Blocks at or smaller than Core's current limit are treated exactly the same as by unpatched Bitcoin Core, meaning this patch will have no effect until and unless a hard fork to larger blocks occurs.

If a hard fork does occur, nodes running this patch will follow whichever chain demonstrates the most work, regardless of the sizes of the blocks in that chain. This means that nodes running this patch may diverge from nodes running unpatched Bitcoin Core. Apply this patch only if you understand and agree to bear the risks involved.

Why might you want to use this patch?

Core users: If there's a hard fork, you're going to want a way to control your BTU balance. Your Core wallet won't see BTU-only outputs. You could run an instance of Bitcoin Unlimited alongside your Bitcoin Core node to access these BTU-only outputs, but you might be concerned about bugs in Bitcoin Unlimited, and you might not want to actively participate in this whole "emergent consensus" thing. By running a second Bitcoin Core instance with this "Infinity" patch, you will be able to access your BTU balances without needing to run Bitcoin Unlimited.

Unlimited users: If you want to increase on-chain capacity, then you might want to support both SegWit and larger base blocks. Maybe you don't really know what to set "EB" and "AD" to; maybe you'd rather not have to care. If you simply want to follow whichever chain has the most work, then you don't need the complexity (and risks) of Bitcoin Unlimited. By running your node with this "Infinity" patch, you will have the best of both worlds.

Where is the patch?

You can get the patch for your preferred version of Bitcoin Core here (see the links at the bottom).
Jump to: