{"id":25502,"date":"2016-01-27T21:23:36","date_gmt":"2016-01-27T21:23:36","guid":{"rendered":"http:\/\/ci027cfe70400126c3"},"modified":"2016-01-27T21:23:36","modified_gmt":"2016-01-27T21:23:36","slug":"bip-enabling-easier-changes-and-upgrades-to-bitcoin-1453929816","status":"publish","type":"post","link":"https:\/\/bitcoinmagazine.com\/technical\/bip-enabling-easier-changes-and-upgrades-to-bitcoin-1453929816","title":{"rendered":"BIP 9: Enabling Easier Changes and Upgrades to Bitcoin"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div><figure><img decoding=\"async\" src=\"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/11\/bip-9-enabling-easier-changes-and-upgrades-to-bitcoin.jpg\" title=\"\"><\/figure>\n<p><a href=\"https:\/\/bitcoin.org\/en\/glossary\/consensus\" target=\"_blank\" rel=\"noopener\">Consensus<\/a> and <a href=\"https:\/\/en.wikipedia.org\/wiki\/Governance\" target=\"_blank\" rel=\"noopener\">governance<\/a> have been two main topics of conversation in the Bitcoin community over the past year. While making changes to <a href=\"https:\/\/bitcoin.org\/en\/download\" target=\"_blank\" rel=\"noopener\">Bitcoin Core<\/a> may seem trivial to some, the <a href=\"https:\/\/www.youtube.com\/watch?v=L4hKmCK3nTg\" target=\"_blank\" rel=\"noopener\">politics<\/a> associated with certain proposals have caused major issues for the development process.<\/p>\n<p>Bitcoin Developer and <a href=\"https:\/\/ciphrex.com\/\" target=\"_blank\" rel=\"noopener\">Ciphrex<\/a> CEO <a href=\"https:\/\/www.linkedin.com\/in\/ericlombrozo\" target=\"_blank\" rel=\"noopener\">Eric Lombrozo<\/a> gave a talk that mainly focused on potential options for <a href=\"https:\/\/en.bitcoin.it\/wiki\/Scalability\" target=\"_blank\" rel=\"noopener\">scaling Bitcoin<\/a> at the Blockchain Agenda Conference in San Diego, and he dedicated a portion of his presentation to the current issues surrounding possible changes to <a href=\"https:\/\/bitcoin.org\/en\/glossary\/consensus-rules\" target=\"_blank\" rel=\"noopener\">Bitcoin\u2019s consensus rules<\/a>. Lombrozo covered <a href=\"https:\/\/en.bitcoin.it\/wiki\/Softfork\" target=\"_blank\" rel=\"noopener\">soft forks<\/a>, <a href=\"https:\/\/en.bitcoin.it\/wiki\/Hardfork\" target=\"_blank\" rel=\"noopener\">hard forks<\/a> and a <a href=\"https:\/\/github.com\/bitcoin\/bips\" target=\"_blank\" rel=\"noopener\">Bitcoin Improvement Proposal<\/a> (BIP) that could eventually make it easier to deploy soft forks on the network.<\/p>\n<p><strong>Problems with Changing Bitcoin\u2019s Consensus Rules<\/strong><\/p>\n<p>Before getting into possible solutions, Lombrozo first discussed the current issues with coming to consensus on new rules for the Bitcoin network. Although Bitcoin\u2019s decentralization is what makes the network valuable to its users, the lack of a central decider who can dictate the rules of the network has been an issue. Lombrozo explained:<\/p>\n<p>\u201cWhenever we want to change the consensus rules, this presents a serious problem because we don\u2019t really want to just force new rules on the network. There\u2019s no central authority that can do this really. We need to have a way for the network to adapt to the new rules, decide whether or not it wants to adjust to these rules, and to make sure that everyone still ends up agreeing in the end.\u201d<\/p>\n<p>Some have stated a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Benevolent_dictatorship\" target=\"_blank\" rel=\"noopener\">benevolent dictator<\/a> is needed for Bitcoin, and former Bitcoin Developer <a href=\"https:\/\/plan99.net\/~mike\/\" target=\"_blank\" rel=\"noopener\">Mike Hearn<\/a><a href=\"https:\/\/coinjournal.net\/gavin-andresen-mike-hearn-will-be-the-benevolent-dictator-of-bitcoinxt\/\" target=\"_blank\" rel=\"noopener\">intended<\/a> to take on that role for the alternative implementation of the Bitcoin protocol known as <a href=\"https:\/\/bitcoinxt.software\/\" target=\"_blank\" rel=\"noopener\">Bitcoin XT<\/a>. While Bitcoin software clients are able to have benevolent dictators behind the code, the ability for users to choose which code to run on their own computers makes the idea of a benevolent dictator of the Bitcoin protocol an impractical notion.<\/p>\n<p><strong>Hard Forks and Soft Forks<\/strong><\/p>\n<p>Lombrozo next talked about hard forks and soft forks. These forks take place whenever the rules of the network are changed, and they\u2019re currently the only option for updating the protocol.<\/p>\n<p>Lombrozo: \u201cSoft forks happen when blocks that used to be valid become invalid according to the new rules. And with these kinds of forks, if a majority of miners agree that the new rules are going to be in effect, then that particular chain is going to outgrow the other one and it will become the main chain.\u201d<\/p>\n<p>Lombrozo said that the hard fork process is a much more difficult proposition.<\/p>\n<p>\u201cIn the case of hard forks, this is not the case. We have invalid blocks that become valid under the new rules, and this creates a network fork that can go on forever. So this is a much, much more difficult situation for us to fix.\u201d<\/p>\n<p>Bitcoin has not experienced any intentional hard forks since the earliest days of its existence. There is currently a large portion of the community that would like to see a hard fork take place in order to increase the <a href=\"https:\/\/en.bitcoin.it\/wiki\/Block_size_limit_controversy\" target=\"_blank\" rel=\"noopener\">block size limit<\/a>. <a href=\"https:\/\/bitcoinclassic.com\/\" target=\"_blank\" rel=\"noopener\">Bitcoin Classic<\/a> is an upcoming software release that implements this change.<\/p>\n<p><strong>BIP 9: Version Bits with Timeout and Delay<\/strong><\/p>\n<p>One of the ways Lombrozo believes changes to Bitcoin\u2019s consensus rules can be made easier is by implementing <a href=\"https:\/\/github.com\/bitcoin\/bips\/blob\/master\/bip-0009.mediawiki\" target=\"_blank\" rel=\"noopener\">BIP 9<\/a>. The proposal intends to make soft fork deployment an easier process by allowing multiple forks to be deployed at the same time. This is achieved through changes to how the \u201cversion\u201d field in <a href=\"https:\/\/en.bitcoin.it\/wiki\/Block\" target=\"_blank\" rel=\"noopener\">blocks<\/a> is interpreted by nodes on the network.<\/p>\n<p>Lombrozo described BIP 9 during his presentation at Blockchain Agenda San Diego:<\/p>\n<p>\u201cOne thing that I\u2019ve been working on recently is a thing called version bits, BIP 9, which is a mechanism to allow for simpler soft fork deployments. This allows miners to signal when they\u2019re ready to enforce the new rules, and it allows you to set up a parallel soft fork. So now, several features are being deployed at the same time without necessarily knowing which one is going to be activated first. It provides a warning system, so old nodes can upgrade when they see new rules are going to be [activated].\u201d<\/p>\n<p>Although soft forks may be easier to deploy in the near future, Lombrozo added, \u201cHard forks are still hard.\u201d<\/p>\n<p><em>Kyle Torpey is a freelance journalist who has been following Bitcoin since 2011. His work has been featured on VICE Motherboard, Business Insider, RT\u2019s Keiser Report and many other media outlets. You can follow <a href=\"https:\/\/twitter.com\/kyletorpey\" target=\"_blank\" rel=\"noopener\">@kyletorpey<\/a> on Twitter.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Consensus and governance have been two main topics of conversation in the Bitcoin community over the past year. While making changes to Bitcoin Core may seem trivial to some, the politics associated with certain proposals have caused major issues for the development process. Bitcoin Developer and Ciphrex CEO Eric Lombrozo gave a talk that mainly [&hellip;]<\/p>\n","protected":false},"author":3445,"featured_media":26911,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":[3560,1687,3572,3583,1694,1038,3297,2306,3575,705],"class_list":{"0":"post-25502","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-technical","8":"tag-bip-9","9":"tag-bips","10":"tag-bitcoin-classic","11":"tag-bitcoin-xt","12":"tag-blocks","13":"tag-core","14":"tag-eric-lombrozo","15":"tag-forks","16":"tag-mike-hearn","17":"tag-scaling"},"author_data":{"id":3445,"name":"Kyle Torpey","nicename":"kyle-torpey","avatar_url":"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/12\/kyle-torpey-promo-image-96x96.jpg"},"featured_image_url":"https:\/\/bitcoinmagazine.com\/wp-content\/uploads\/2024\/11\/bip-9-enabling-easier-changes-and-upgrades-to-bitcoin.jpg","_links":{"self":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/posts\/25502","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\/3445"}],"replies":[{"embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/comments?post=25502"}],"version-history":[{"count":0,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/posts\/25502\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/media\/26911"}],"wp:attachment":[{"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/media?parent=25502"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/categories?post=25502"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitcoinmagazine.com\/wp-json\/wp\/v2\/tags?post=25502"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}