{"id":24356,"date":"2017-02-01T18:14:04","date_gmt":"2017-02-01T18:14:04","guid":{"rendered":"http:\/\/ci027cfe71100026c3"},"modified":"2017-02-01T18:14:04","modified_gmt":"2017-02-01T18:14:04","slug":"why-bitcoin-unlimiteds-emergent-consensus-gamble","status":"publish","type":"post","link":"https:\/\/bitcoinmagazine.com\/technical\/why-bitcoin-unlimiteds-emergent-consensus-gamble","title":{"rendered":"Why Bitcoin Unlimited\u2019s \u201cEmergent Consensus\u201d Is a Gamble"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div><figure><img decoding=\"async\" src=\"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/11\/why-bitcoin-unlimiteds-emergent-consensus-is-a-gamble.jpg\" title=\"\"><\/figure>\n<p><a href=\"https:\/\/www.bitcoinunlimited.info\/\" target=\"_blank\" rel=\"noopener\">Bitcoin Unlimited<\/a>, one of the <a href=\"https:\/\/bitcoincore.org\/\" target=\"_blank\" rel=\"noopener\">Bitcoin Core<\/a> software forks <a href=\"https:\/\/bitcoinmagazine.com\/articles\/unlimited-classic-and-bitpay-core-bitcoin-s-new-kids-on-the-blockchain-1452705977\">introduced<\/a> in late 2015, garnered much attention in recent months. The project gained hash power support from several new Bitcoin <a href=\"https:\/\/bitcoinmagazine.com\/bitcoin-mining\/what-are-bitcoin-mining-pools\">mining pools<\/a>, including <a href=\"https:\/\/www.viabtc.com\/\" target=\"_blank\" rel=\"noopener\">ViaBTC<\/a>,<a href=\"https:\/\/gbminers.com\/\" target=\"_blank\" rel=\"noopener\"> GBMiners<\/a> and <a href=\"https:\/\/btc.top\/\" target=\"_blank\" rel=\"noopener\">BTC.TOP<\/a>, while <a href=\"http:\/\/xtnodes.com\/#bitcoin_unlimited\" target=\"_blank\" rel=\"noopener\">node adoption<\/a> appears to be on the rise as well.<\/p>\n<p>The central idea behind Bitcoin Unlimited \u2014 specified in \u201c<a href=\"https:\/\/bitco.in\/forum\/threads\/closed-passed-buip001-unlimited-inspired-extensions-to-the-bitcoin-client.222\/\" target=\"_blank\" rel=\"noopener\">Bitcoin Unlimited Improvement Proposal 001<\/a>\u201d (BUIP001) \u2014 is to hand control of Bitcoin\u2019s block size limit to users and miners. Or perhaps more accurately: to make this control more explicit and easier to handle.<\/p>\n<p>But as explained in \u201c<a href=\"https:\/\/bitcoinmagazine.com\/articles\/how-bitcoin-unlimited-users-may-end-different-blockchains\">How Bitcoin Unlimited Users May End Up on Different Blockchains<\/a>,\u201d BUIP001 does not include a technical consensus mechanism as reliable as in Bitcoin\u2019s current consensus rules.<\/p>\n<p>Instead, Bitcoin Unlimited relies on a philosophy often referred to as \u201cEmergent Consensus.\u201d<\/p>\n<p>(Note: If you are not sure how Bitcoin Unlimited works, or what the technical weaknesses of BUIP001 are, make sure to first read \u201c<a href=\"https:\/\/bitcoinmagazine.com\/articles\/closer-look-bitcoin-unlimiteds-configurable-block-size-proposal\">A Closer Look at Bitcoin Unlimited\u2019s Configurable Block Size Proposal<\/a>\u201d and \u201c<a href=\"https:\/\/bitcoinmagazine.com\/articles\/how-bitcoin-unlimited-users-may-end-different-blockchains\">How Bitcoin Unlimited Users May End Up on Different Blockchains<\/a>.\u201d)<\/p>\n<h2><strong>\u201cEmergent Consensus\u201d<\/strong><\/h2>\n<p>BUIP001 does not ensure machine consensus; users can configure their nodes to split into different blockchains, either intentionally or unintentionally. Instead, Bitcoin Unlimited relies on \u201cEmergent Consensus.\u201d This is a conviction that participants in the Bitcoin ecosystem have a strong enough economic incentive to converge on a single blockchain, such that they will converge on a single blockchain. If their software does not automatically realize this, users are expected to configure their settings to make it happen. After all, it benefits everyone to be on the same blockchain and to be able to transact with one another.<\/p>\n<p>How this Emergent Consensus should form is not really documented, however. While some have made analogies \u2014 with <a href=\"https:\/\/www.youtube.com\/watch?v=nAqos76JONw&amp;feature=youtu.be&amp;t=33m7s\" target=\"_blank\" rel=\"noopener\">flocks of birds<\/a>, for example \u2014 it\u2019s not clear how these apply to Bitcoin, exactly.<\/p>\n<p>That said, it is possible to draw out a scenario that many Bitcoin Unlimited proponents roughly envisage. As a first step, users should signal what size of blocks they will accept with the Excessive Block Size (EB) setting. Then, miners \u2014 incentivized to satisfy market demand \u2014 should increase (or decrease) the block size limit accordingly. Finally, if these new blocks exceed some users\u2019 EB, these users are expected to follow regardless, either because their Excessive Acceptance Depth (AD) setting is triggered, or maybe because they\u2019ll reconfigure their nodes manually.<\/p>\n<p>As explained in \u201c<a href=\"https:\/\/bitcoinmagazine.com\/articles\/how-bitcoin-unlimited-users-may-end-different-blockchains\">How Bitcoin Unlimited Users May End Up on Different Blockchains<\/a>,\u201d this scenario does present some problems. For one, if a user\u2019s EB signaling is trivially spoofed by an adversary, miners can be tricked into thinking a block size limit increase has more support than it does \u2014 or perhaps malicious miners can themselves trick users. <\/p>\n<p>And for the (remaining) users, this scenario presents an odd choice: Either they set their AD settings low to remain in consensus, but essentially give up much of their autonomy to miners; or they set their AD settings high to protect their autonomy, but risk splitting the network.<\/p>\n<h2><strong>Off-Chain Coordination<\/strong><\/h2>\n<p>To counter some of the problems described, Emergent Consensus can also be established through debate on forums, blog posts, chat rooms and other media. Realistically, it may even require this kind of off-chain coordination, to some extent.<\/p>\n<p>For example, while mining pool ViaBTC wants to hard fork to a two-megabyte block size limit, that is not what the pool is currently signaling with its EB settings. If it did, that could be abused to split the network. Instead, ViaBTC signals support for one megabyte and in their \u201c<a href=\"https:\/\/medium.com\/@ViaBTC\/miner-guide-how-to-safely-hard-fork-to-bitcoin-unlimited-8ac1570dc1a8#.h338lp8gu\" target=\"_blank\" rel=\"noopener\">miner guide<\/a>\u201d proposes to hard fork to two megabytes once at least 75 percent of hash power acknowledges support.<\/p>\n<p>However, this kind of off-chain coordination is not unique. Groups of people have coordinated and achieved consensus through discourse for a long time. But such systems often either have a leader or tend to break down and split into factions once the number of participants reaches a certain size. Other popular open-source projects, for example, sometimes consist of hundreds of incompatible forks.<\/p>\n<p>And this is probably even more true under adversarial conditions. If the people in these groups don\u2019t really know or trust one another, they have no way of knowing whether the other people are telling the truth or lying. Even a single adversary can pretend to be many users and communicate many false preferences. This makes coordination and reaching consensus a very difficult problem to solve.<\/p>\n<p>In fact, this is the <a href=\"https:\/\/bitcoinmagazine.com\/glossary\/what-is-the-byzantine-generals-problem\">Byzantine Generals\u2019 Problem<\/a>. That is exactly the problem Satoshi Nakamoto attempted to address.<\/p>\n<p>With a track record of about eight years, Bitcoin\u2019s main technological achievement is a math-based protocol that realizes strong, fast, scalable and automated machine consensus for large groups of people who do not necessarily know or trust one another. Bitcoin is reasonably \u201c<a href=\"https:\/\/en.wikipedia.org\/wiki\/Byzantine_fault_tolerance\" target=\"_blank\" rel=\"noopener\">Byzantine Fault tolerant<\/a>.\u201d<\/p>\n<p>Bitcoin Unlimited proponents believe that Bitcoin\u2019s economic incentives \u2014 the incentive for users to all remain part of the same Bitcoin blockchain \u2014 is in itself sufficiently Byzantine Fault tolerant. But that is, so far, largely unproven. No altcoin relies on similar assumptions, nor is there a publicly available testnet where the BUIP001 configurations are actively used.<\/p>\n<h2><strong>What Bitcoin Unlimited Changes<\/strong><\/h2>\n<p>That said, part of the same Bitcoin Unlimited philosophy is that Bitcoin relies on a sort of Emergent Consensus anyway.<\/p>\n<p>Rather than merely relying on math, code or protocol, many really see Bitcoin as a consensus between people first and foremost. People choose to partake in the system, people give it value, and sometimes \u2014 like during the <a href=\"https:\/\/en.bitcoin.it\/wiki\/Value_overflow_incident\" target=\"_blank\" rel=\"noopener\">August 2010<\/a> and <a href=\"https:\/\/bitcoinmagazine.com\/articles\/bitcoin-network-shaken-by-blockchain-fork-1363144448\">March 2013<\/a> blockchain forks \u2014 people have to coordinate \u201coff-chain\u201d to determine which chain is valid.<\/p>\n<p>As such, BUIP001 doesn\u2019t fundamentally change anything. Users choose to run Bitcoin Unlimited. Node software can already be (re-)compiled. And a social consensus may have to form \u201coff-chain\u201d either way.<\/p>\n<p>But by making this control more explicit and easier to handle, and assuming users actually use these options, Bitcoin Unlimited does rely on the human consensus aspect to a much larger extent. Rather than opting into a protocol once and relying on machine consensus from then on, users need to take on a much more proactive role. As one Bitcoin Unlimited proponent noted, shortly after miners had to reconfigure their nodes in response to a bug that briefly forked the network earlier this week: \u201cThis IS part of how Bitcoin works. It\u2019s not meant for people sleeping at the wheel.\u201d <\/p>\n<p>It is true that BUIP001 doesn\u2019t introduce anything that wasn\u2019t possible before. As an open-source project, users and miners could always recompile their Bitcoin software to do anything that Bitcoin Unlimited allows. But of course, that in itself is not an argument in favor of BUIP001. Just because users could, that does not mean they should.<\/p>\n<p>So far, Bitcoin has had several forks that lasted for several blocks, caused by technical failures. The <a href=\"https:\/\/en.bitcoin.it\/wiki\/Value_overflow_incident\" target=\"_blank\" rel=\"noopener\">August 2010 blockchain fork<\/a> was needed to revert the creation of billions of bitcoins out of thin air, which required orphaning an hour-long chain. The only reason that the event wasn\u2019t catastrophic is that bitcoin was hardly used as money back then. During the <a href=\"https:\/\/bitcoinmagazine.com\/articles\/bitcoin-network-shaken-by-blockchain-fork-1363144448\">March 2013 blockchain fork<\/a>, however, the network was unreliable for real users, and at least one person was double-spent, while several miners wasted valuable resources mining an orphaned chain. The same is true for the <a href=\"https:\/\/bitcoin.org\/en\/alert\/2015-07-04-spv-mining\" target=\"_blank\" rel=\"noopener\">July 2015 blockchain fork<\/a>, where miners were urged to switch to fully validating mining pools, and many have learned from that mistake.<\/p>\n<p>Indeed, developers, miners and the rest of the Bitcoin community have generally tried to avoid these types of crisis events as much as they possibly can.<\/p>\n<p>In contrast, Bitcoin Unlimited seems to embrace them as an upgrade mechanism. <\/p>\n<p><em>\u201cJonny1000\u201d contributed to this article.<\/em><\/p>\n<p><em>Author&#8217;s note: An earlier version of this article suggested there is no testnet for BUIP001 at all. Since publication, it was pointed out there actually is such a testnet, dubbed &#8220;nolnet&#8221;. This testnet is not really publicly available, however, and seems to be used only by a small group of developers close to the Bitcoin Unlimited project. And of course, by definition a testnet does&nbsp;not&nbsp;test economic incentives either way, so these remain unproven.<\/em><em><br \/><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The central idea behind Bitcoin Unlimited \u2014 specified in \u201cBitcoin Unlimited Improvement Proposal 001\u201d (BUIP001) \u2014 is to hand control of Bitcoin\u2019s block size limit to users and miners. Or perhaps, more accurately, to make this control more explicit and easier to handle. Instead, Bitcoin Unlimited relies on a philosophy often referred to as \u201cEmergent Consensus.\u201d<\/p>\n","protected":false},"author":2509,"featured_media":24357,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":[3568,1662,556],"class_list":{"0":"post-24356","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-technical","8":"tag-bitcoin-unlimited","9":"tag-block-size","10":"tag-blockchain"},"author_data":{"id":2509,"name":"Aaron van Wirdum","nicename":"aaron-van-wirdum","avatar_url":"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/12\/aaron-van-wirdum-96x96.jpg"},"featured_image_url":"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/11\/why-bitcoin-unlimiteds-emergent-consensus-is-a-gamble.jpg","_links":{"self":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/posts\/24356","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/users\/2509"}],"replies":[{"embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/comments?post=24356"}],"version-history":[{"count":0,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/posts\/24356\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/media\/24357"}],"wp:attachment":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/media?parent=24356"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/categories?post=24356"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/tags?post=24356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}