Some dub it a âbreakthrough,â others call it a ânetwork attack.â
Those were the prevailing opinions leading up to Mark Friedenbachâs much-anticipated talk at Scaling Bitcoin Friday, where the Blockstream co-founder presented for the first time âForward Blocks,â a proposal that claims to make future, contentious changes to bitcoin â such as block size increase or proof-of-work change â easier to do.
Itâs a big announcement, one that was shrouded in secrecy in the weeks leading up to the event as it challenges core perceptions that are widely held within bitcoinâs community. Chief among them is the assertion that massive changes can be made to bitcoin in a backwards-compatible way, without asking every user to upgrade their software.
One issue â that many bitcoin users use the protocol to achieve a kind of sovereignty over their money, and that mandatory software changes essentially undermine that control â has long loomed over protocol changes, surfacing as a major point of contention that ultimately led to the networkâs infamous bitcoin cash fork.
In this way, Friedenbachâs research addresses an issue cryptocurrency developers have been grappling with for ages: how, exactly, should bigger changes be made to a massive distributed system? Many would argue that more drastic bitcoin changes are, and should be, difficult, contending that as bitcoin is decentralized, and has no âking,â users should be able to choose to adopt or reject changes.
Further, it was thought that some of the biggest changes to bitcoin could only be made with a âhard fork,â a change that isnât backwards-compatible, requiring all the cryptocurrencyâs users to upgrade to keep up with the change. Or, as Friedenbach argues, such was the case before âforward blocks.â
âMost of the scaling debate is wrapped up in the issue of how to do a hard fork safely, and when, if ever, we should do a hard fork for scaling purposes,â Friedenbach told CoinDesk. However, with his new work, heâs arguing this isnât a problem anymore.
He said:
ââForward blocks makes that whole argument pointless. We donât need a hard-fork to scale bitcoin, if and when we decide to do so. It can be accomplished as a soft fork, like SegWit was.â
Here, Friedenbach is arguing that opt-in changes to the bitcoin network, such as the one used in bitcoinâs upgrade last year, could be used even for larger changes.
A developer working in the background, Friedenbachâs not particularly well-known in cryptocurrency circles.
He left a job developing space research apps at NASA to work on bitcoin full-time, going on to work on the theory behind some possibly huge future changes to bitcoin, like boosting its smart contracts functionality so that users can make more complex types of transactions and co-authoring the original Blockstream paper on sidechains.
With all this under his belt, perhaps itâs not surprising he took an interest in how to make changes to the cryptocurrency.
Actually, it wasnât bitcoinâs block size, but a different code change entirely that prompted Friedenbach to look into the idea: Changing bitcoinâs proof-of-work algorithm, commonly seen as a check against those securing the network with powerful computing hardware (miners) from racking up too much power.
As ASICs have creeped onto a number of blockchains that have sought to resist them over the past year, many have been advocating for a formal change to be made to bitcoin. For example, in the Sia community, users recently decided after months of debate that they will enact the âkill switchâ hard fork to kick out the current ASICs in power.
Developers have generally thought a hard fork was the only way to make this change, making it a particularly contentious proposition. But as it turns out, Forward Blocks are helpful here as well, making it possible to execute a consensus change with a soft fork rather than a hard fork.
So, how do forward blocks work? In his new paper, Friedenbach describes the change as a sort of mash-up of a variety of types of forks.
âWhile each of these approaches individually have unacceptable trade-offs, it turns out, remarkably, that combining them all together âcancels outâ most of the bad tradeoffs while retaining the combined benefits,â the paper explains.
âThe resulting scheme, held together by a novel new mechanism we call forward blocks, is actually less complicated than one might think of a âeverything and the kitchen sinkâ proposal,â the paper goes on.
Since itâs such a general upgrade â a way to make changes, itâs worth noting the two upgrades Friedenbach emphasizes â block sizes and proof-of-work â arenât the only possible applications. Friedenbach even argues the method of change could be used for âshardingâ bitcoin to scale the protocol further, a term that evokes a technique being pursued on ethereum.
(The paper describes all these ideas as well as how forward blocks are accomplished in greater detail).
Still, while the paper wasnât presented in full until today, thereâs been some chatter on social media ahead of the talk. Some bitcoin developers are much less excited by the idea.
âItâs a network attack being called an upgrade,â pseudonymous bitcoin enthusiast âShinobimonkeyâ told CoinDesk. (In fact, he has harsh words for the Scaling Bitcoin conference where the paper was proposed in general. âThis event needs to be eviscerated, ridiculed and drown in the bathtub,â he tweeted.)
Blockstream CEO Adam Back similarly painted it as interesting upgrade, but maybe not such a big deal.
âI think itâs OK. Discovering mechanisms can be useful and separate from whether it would be practical technically and in terms of user consensus. Itâs just another tool to know about,â he told CoinDesk.
But the proposal has also attracted eager supporters. Bitcoin Core contributor Karl-Johan Alm went as far as to call it a âbreakthrough,â while still arguing itâs unclear whether it will be used in practice just yet.
âRegardless of what the outcome is, options are opening up to do things we didnât think could be done previously. Whether we do them is a completely separate story,â Alm continued.
Friedenbach isnât necessarily advocating for it to be used on bitcoin either. Rather, heâs just trying to point out that the option exists, opening a wider discussion.
âTools arenât moral objects, they donât have âgoodâ or âbadâ moral weight. They just are. How you use a tool is the question, and with respect to bitcoin this is not something that I have an opinion on,â Friedenbach told CoinDesk.
Time will tell if the bitcoin community finds itâs worth a try.
In the meantime, Friedenbach is planning to test the change on âFreicoin,â a cryptocurrency project he co-launched years ago with a slightly different economic model than bitcoin. And, if the small community Freicoin decides to adopt it, the method of upgrading will be tested in the wild for the first time there.
Correction: Due to an editing error, an earlier version of this article called Shinobimonkey a bitcoin developer. This has now been corrected.
Mark Friedenbach presentation at Scaling Bitcoin image via CoinDesk