This week at the Scaling Bitcoin Conference 2017, at Stanford University in California, bitcoin proponents heard about a new block propagation technology that claims to be 10X more efficient than compact blocks. The protocol called “Graphene” is a new method of reducing bandwidth to propagate blocks to full nodes by utilizing bloom filters and invertible-bloom-lookup-tables (IBLTs).
Also Read: This Developer is Bringing Atomic Swaps to the Bitcoin Cash Network
Graphene Technology Claims to be 10X More Efficient Than Compact Blocks and Xthin Blocks
The bitcoin community is excited about a new technology called Graphene, a new block propagation technology that utilizes set reconciliation. The protocol was introduced by one of Graphene’s creators, Brian Levine, from UMass Amherst at the Scaling Bitcoin 2017 event at Stanford. The project is a joint effort at UMass between Levine, Pinar Ozisik, George Bissias, Amir Houmansadr, and the well-known bitcoin developer Gavin Andresen. The creators of Graphene believe the protocol is more efficient than other methods of announcing and propagating new blocks like Compact Blocks, and Xtreme Thinblocks. Levine details at the Stanford scaling conference that the project is currently being trialed using a Python testnet.
“Graphene blocks are a fraction of the size of related methods, such as Compact Blocks and Xtreme Thinblocks — For example, we show that a 17.5 KB Xtreme Thinblock can be encoded in 10 KB with Compact Blocks, and encoded in 2.6 KB with Graphene,” explains the Graphene white paper.
In simulations, we find that Graphene encodes information in about 10% of the space of Compact Blocks. We use a novel interactive combination of Bloom filters and Invertible bloom lookup tables (IBLTs), providing an efficient solution to the problem of set reconciliation in Bitcoin’s p2p network.
Utilizing Bloom Filters and IBLTs to Fit Into One IP Packet
Levine describes how bloom filters are already used in the bitcoin ecosystem to reduce bandwidth consumption. Presently, Simplified Payment Verification (SPV) wallets utilize bloom filter technology which is basically a space-efficient probabilistic data arrangement. Levine says IBLTs are a bit more complicated than bloom filters but are also set reconciliation data structures as well. Due to the combination of both of these methods, Graphene doesn’t send a list of transaction IDs, but carries a small bloom filter and IBLT at 1/10 of current block propagation protocols used today.
“So a 1-megabyte block it has 4000 transactions in it.,” Levine details explaining how Graphene could exceed alternative propagation techniques. “Compact blocks was doing something like 20 kb — But the graphene solution is doing really well, the only disadvantage is that the size increases with the size of the mempool but I have a mempool with 100k transactions, and it’s not growing that fast at all. If I expand this to larger blocks, you can see that the same scaling properties hold — It’s really 1/10th —If the mempools go up beyond that, it won’t grow much faster.”
Graphene fits in one IP packet. Compact blocks do not. There is no increased time. There’s no significant use of storage or CPU.
Criticism from Bitcoin Core Developer Gregory Maxwell
Cryptocurrency proponents seem pretty enthusiastic about the testing, and some bitcoin cash (BCH) supporters hope the technology will be implemented into the BCH network. The Graphene block propagation topic was discussed in great detail in the Reddit forum /r/bitcoin as well. On that forum, the Blockstream co-founder and bitcoin developer, Gregory Maxwell, said he read about the Graphene project a few months ago and had commented on the subject.
“Might have been good work if it got good advice about system requirements; but it seems it didn’t,” Maxwell explains. “It has two main parts; a block relay scheme and a restructuring of the p2p network — What a lot of people miss about this and compact blocks and whatnot, is that they at most save the system from sending transaction data twice — once at block time, once earlier.”
So people going on saying that this allows 10x larger blocks or whatever are just confused — it doesn’t allow 10x larger blocks any more than compact blocks allowed 50x larger blocks.
Despite Maxwell’s opinion, bitcoiners from both sides of the debate and both forums are showing a lot of interest in this technology being worked on at the College of Information and Computer Sciences department at UMass. Check out the video below to see Brian Levine’s discussion about the new Graphene technology concept being tested.
What do you think about the new Graphene block propagation technology? Let us know in the comments below.
Images via Shutterstock, UMass Amherst, and Scaling Bitcoin 2017.
At Bitcoin.com there’s a bunch of free helpful services. For instance, check out our Tools page!