Bitcoin Unlimited Merges Graphene Block Propagation Technology

Over the past week, Bitcoin Cash (BCH) proponents have been discussing ideas like pre-consensus and faster block times. Now, on July 25, the Bitcoin Unlimited (BU) development team has announced merging a block propagation concept called ‘Graphene’ into the BU client. Graphene is a technology that is a fraction of the size of current methods and proposed ideas like Xtreme Thinblocks (Xthin), and Compact blocks.

Also Read: Graphene Block Propagation Technology Claims to be 10X More Efficient

The Graphene Protocol Gets Merged Into Bitcoin Unlimited

Back in November of 2017 news.Bitcoin.com reported on a block propagation proposal called Graphene which claims to be 10X more efficient than compact blocks. Graphene has been thoroughly tested and in simulation, it reduces traffic overhead by reducing block overhead making block distribution more efficient. Essentially the protocol uses fewer bytes for newly transmitted blocks as opposed to the current method of sending full blocks. The research and simulation was a joint effort between BU developers, Umass alumni Brian Levine, Pinar Ozisik, George Bissias, Amir Houmansadr, and the bitcoin developer Gavin Andresen.

On Github the Graphene commit adds a functional implementation of graphene blocks and “all unit tests and the QA test grapheneblocks.py also passes,” explained George Bissias this past February. He continued, from log output “graphene blocks are requested, created, serialized, deserialized, and reconstructed.”

“However, there is still work to be done. My general approach has been to largely replicate the workflow of Xthin blocks — Thus I have replicated large portions of the Xthin code. It’s not clear that this is preferable to sharing code between the two block types,” Bissias emphasized further. “There also remains the question of transaction ordering for graphene blocks. If it is possible to commit a canonical ordering before graphene, then we will want to change this patch accordingly.”

The code will also require further optimization (primarily block size optimization) before being deployed to production. My aim is to initiate a review for the basic workflow now and continue to work on optimization while graphene is running on the testnet.

A Functional Implementation of Graphene Blocks

After a lot of review from well-known programmers, like BU’s lead developer Andrew Stone and others, the codebase has officially been merged into the BU protocol. A good portion of the Bitcoin Cash community seemed pleased Graphene was merged into BU as the announcement quickly made the top post on the Reddit forum r/BTC. One commenter writes, “Wow, exciting — So glad we forked of and left Core/Blockstream in the dust.”

Other more tech-savvy members of the community discussed whether or not they thought Graphene was better than Xthin and Compact blocks. The merge doesn’t guarantee it will be used on the BCH network, but it is safe to say the BCH community will likely hear more about Graphene in the future.

The official papers on Graphene can be found here. Xthin documentation can be found here and here. And information on Compact blocks can be viewed here.

Check out the link to Graphene presentation from Scaling Bitcoin 2017 below.

What do you think about Graphene being merged into the Bitcoin Unlimited client? Let us know in the comment section below.

Images via Shutterstock, Pixabay, and Bitcoin Unlimited.

At Bitcoin.com there’s a bunch of free helpful services. For instance, check out our Tools page!