The question of how to best increase the transaction processing capacity of the blockchain may be bitcoinâs current crisis, but that isnât stopping researchers from working to solve more forward-looking issues.
Held last weekend in Montreal, the inaugural Scaling Bitcoin marked the first major conference for developers, and as such, it featured a broad sampling of technical experts working on solutions to problems that may come to light as knowledge of blockchain technology advances.
One of the more novel proposals to debut at the event was developed by Cornell post-doc student Ittay Eyal, PhD student Adem Efe Gencer, computer science professor Emin Gün Sirer and research scientist Robbert Van Renesse. Called Bitcoin-NG (the âNGâ is short for ânext generationâ), the proposal is envisioned as a solution to âinherent problemsâ in blockchain design, both in bitcoin and alternative distributed ledgers such as Ethereum.
Eyal said that behind Bitcoin-NG is the belief that there are more fundamental issues with the design of blockchains that will make scaling any implementation, public or private, a challenge.
Eyal told CoinDesk:
âFor securities markets, for transacting digital assets, if you want to have all of these on a blockchain, you will need significant scaling.â
One of the most pressing problems, the team behind Bitcoin-NGÂ argues, is that as the size of data blocks on a blockchain increases, so does the risk that the blockchain forks, resulting in competing versions of the public record of past transactions and inefficiencies in network communication.
Bitcoin-NG, according to Eyal, was an exercise in identifying issues that arise when individual transactions and blocks of transactions are verified and propagated over a blockchain network, as well as the benefits that should be maintained in any redesign.
Ultimately, the researchers behind Bitcoin-NG came to the conclusion that blocks on a blockchain have two separate functions â electing a âleaderâ that decides which transactions are included in the main blockchain and distributing a reward to the miner.
âWhen you place a block in the [bitcoin] blockchain, then you implicitly say Iâm the leader from the previous block until now and thatâs the order of the transactions I decide for this period,â he explained.
Bitcoin-NG proposes composing a blockchain of two separate types of blocks: âkey blocksâ that decide a âleaderâ and âmicroblocksâ that feature transactions for a specific amount of time in the future.
Leader miners would be awarded the entirety of the block reward, while splitting fees on transactions between keyblocks with the previous leader.
Eyal indicated that it took the team a while to hone in on a central thesis for its research, that forks, while currently happening a few times a day in bitcoin, will be more common should transaction blocks be larger.
The researcher suggested that this problem canât be solved by changing the block size or frequency of a given network, and that scalability will require greater changes. First, however, Eyal said metrics for the analysis needed to be identified.
âYou need metrics to realize what youâre trying to optimize and the metrics are intuitively very clear, you want a transaction to be placed in a blockchain as fast as possible, you want to see it there and you want to be able to place as many transactions as possible,â he said.
The most important metric developed during the process, according to Eyal, was the idea of âconsensus delayâ, or how long into the past most nodes agree on the state of the blockchain.
âEveryone agrees on everything that happened in the blockchain history from one hour ago and back. But what about inside one hour? If there are forks and there are a lot of forks, then surely we donât agree,â he continued.
Additional metrics used by the researchers included âtime to pruneâ, or the time it takes for miners whether they are on the correct âbranchâ or version of the blockchain they are processing transactions. As block sizes increase, Eyal suggested time to prune increases.
Also considered were mining power utilization, or the ratio of completed blocks that end up on the main chain, and âtime to winâ, the period of time before all miners agree that a given version of the blockchain is the longest so as to expend resources accordingly.
As for inspirations, Eyal cited Greedy Heaviest-Observed Sub-Tree (GHOST), a research proposal that envisions how a main chain could be better selected from the variety of competing forks.
Proposed by researchers Yonatan Sompolinsky and Aviv Zohar in 2013, GHOST was also considered during the development of the alternative blockchain Ethereum, which aims to serve as a network for distributed applications.
âThere were two points made in the paper,â Eyal explained. âGHOST has a different way of choosing chains. In bitcoin, you choose the longest chain and it becomes the main chain. This is popularly known as an orphan block. This is the wrong word, itâs a pruned branch. GHOST has a different way of choosing the longest branch.â
Eyal indicated that the longest chain doesnât necessarily have the most blocks, and that in bitcoin, one with less blocks, but more branches, could be selected.
âThe other thing they add is the idea of inclusive blockchain where if you have a branch you can later merge transactions back into the main chain,â Eyal continued.
To better facilitate these processes, Bitcoin-NGâs system is one in which keyblocks use proof-of-work like bitcoin and only leaders generate microblocks, though they come in shorter intervals. In the proposal, keyblocks are generated every 10 minutes, while microblocks are generated every 10 seconds.
Sixty percent of mining fees generated during this time go forward to the next miner, Eyal said, motivating it to place itself in the chain as last as possible. The current leaders get 40% of fees.
âWhy 40%? Because we have to make some assumptions about the size of the attacker, and we donât want the attacker to be motivated about mining multiple blocks, it becomes complicated. It could be 10%, but then larger miners might be motivated not to place transactions in blocks,â Eyal said at the conference.
To date, Eyal said that Bitcoin-NG has already been implemented on bitcoinâs code case, and that this network has been the subject of some experimentation.
Still, he said it would likely be some time before anything like Bitcoin-NG is implemented on the bitcoin network, mostly due to the difficulty of reaching consensus given the disparate stakeholders in the open-source project.
âIn theory, itâs possible to just fork bitcoin or hard fork bitcoin to use this new protocol and increase scalability for much better latency and bandwidth. As you saw with the blocksize discussion it is difficult to make changes, let alone major changes with this consensus mechanism,â he said.
Currently, Bitcoin-NG is operating as a testbed running 1,000 nodes. Eyal and his team are using a Cornell data center for the experiment, with 150 machines running seven clients.
Going forward, he said the team hopes to conduct its work on a larger scale, publish a white paper and ultimately release Bitcoin-NG to the public.
Though testing needs to be done, Eyal was optimistic Bitcoin-NG could contribute to the current blocksize debate through the metrics it used to determine its design, concluding:
âWe saw that we were able to do something that you donât get to do a lot, improving bandwidth and efficiently. Weâre trying to see how far we can get without changing the properties, we want the same level of security, bandwidth and latency [as bitcoin], or better.â
For more information on Bitcoin-NG, read the full transcript from Eyalâs Scaling bitcoin talk here.
Computer networking image via Shutterstock