As the world becomes increasingly digital, do not be surprised when you see more and more businesses upgrade their databases to a blockchain architecture. Not only is this nascent technology more efficient and secure than traditional data storage methods, but it is also faster and better for scaling, often allowing the latency of a network to fall several times while the transaction throughput increases.
There are several existing blockchain infrastructure protocols geared toward businesses — from public chains like Ethereum to private blockchains like GoChain, R3 Corda, and Hyperledger Fabric. However, not all of these blockchains have the specs that businesses need to build their programs and platforms. As a matter of fact, when EventChain went to build their ticketing platform, they found that the Ethereum blockchain was incapable of handling their businesses operations and the technical parameters they required.
“We quickly ramped up ticket sales for concerts and festivals of up to 10,000 tickets.” Said Ashton Addison, founder of EventChain, “ this resulted in thousands of people trying to purchase tickets simultaneously, [which would] potentially break the Ethereum network which only scales to around 13 transactions per second. We know Ethereum is working on solving its scalability issues in the coming years, however, we needed an instant solution and pivoted to GoChain”
This goes to show that even the most popular blockchains on the market like Ethereum have technical limitations that prevent some businesses from using it to build their market solutions.
So to find out more about what enterprise-level blockchain’s in the blockchain space are capable of doing — or not doing — for those looking to create businesses, software, and other solutions to problems in their industry, we took a closer look and compared three different permissioned (private) blockchain’s: R3 Corda, GoChain, and Hyperledger to see which network provides the best resources for businesses to build with.
Under the Hood
As a business — depending on what industry you are in, as well as what service you provide and what sort of problems you set out to solve — you are going to need infrastructure that can support the tasks you are putting yourself up against. Whether that means picking a programming language or infrastructure protocol that can handle the technical parameters of your software or service, or picking partners that can help you navigate potential obstacles — you are going to want the foundation of your business or service to support your build.
In the world of business and blockchain it can be difficult to find an infrastructure protocol or network that encompasses all of your technical wants; however, when we boil down those wants in an effort to leave ourselves with the necessities that a business will need in a platform, we are left with a few key parameters; transactions per second, use-cases, a scalable consensus algorithm, and network support to name a couple. So let’s take a more-in-depth look at the stats of enterprise blockchain networks and what they can — or can’t — allow your business to do and why.
Transactions per second
A deciding factor in the blockchain you end up choosing to build on will be Transactions Per Second (TPS). Transactions per second refers to the number of data packets the database can transfer per second on the network. For big businesses, you are most likely going to need your network to handle a high volume of transactions — and that is why the public blockchain Ethereum is a poor candidate for an enterprise’s database. For example, the Ethereum network can only process about 15 transactions per second — and that is why EventChain could not build their ticketing platform that must process hundreds of transactions at the same time.
Ethereum co-founder Vitalik Buterin even said “if you want to build a decentralized Uber and Lyft on top of an unscalable ethereum, you are screwed. Full stop.”
Meaning that if you are looking to build a software or service that will need to process hundreds, if not thousands or tens of thousands of transactions simultaneously, you won’t be able to do it on Ethereum — at least not the version of Ethereum that can only process 15 transactions per second — because it is not feasible due to the networks technical limitations.
In terms of the three business blockchains we are looking at — Corda, Hyperledger fabric, and Gochain, each outclasses Ethereum when it comes to transactions per second. Hyperledger is even said to process 3500 tps, however, that is under optimal conditions while using the best hardware available with a full network of peer nodes.
GoChain ranks in at #2 with 1300 tps — or #1 if we consider hardware requirements and the necessary size of the node network to make this possible — and R3 Corda comes in last place, only being able to process 170 tps.
The number of transactions per second a network can handle is crucial and is often one of the first specs of a network that companies look at. Because if a network is not able to process, handle, and transfer the amount of data that you plan on sending through the database, then that network will not be able to support your application, software solution, or service
Another feature that will be important to a business — or really anyone interested in building a software, a solution, or a service on a blockchain — is the consensus algorithm the blockchain uses. Consensus refers to how all the participants on the network are able to come to an agreement that the transaction that took place, and the block that is looking to be added to the chain, is valid (legitimate).
Since we are only examining permissioned blockchains, the consensus algorithm these networks use isn’t as pressing as it is in a public network — where the participants are inherently anonymous and have no reason to trust each other.
On a permissioned network, each participant on the network is a known and trusted entity; otherwise, they would not have been granted access into the private blockchain. And because each participant is known and trusted, the consensus algorithms that permissioned networks use tend to be a bit different than the popular Proof-of-Work consensus algo used on a majority of existing public networks.
GoChain: The GoChain Network uses a Proof-of-Reputation consensus algorithm. As mentioned above, in a private network, you know the identities behind the participants on the network, that being said, if someone is passing invalid information off as valid, you are going to know which party is acting dishonestly. This could severely damage a companies reputation, and therefore, it is in every network participants best interest to act honestly — especially since each of the validating nodes is connected to a respected business; and that is the logic behind GoChain’s Proof-of-Reputation consensus algorithm.
R3 Corda: R3 Corda nodes are able to come to mutually come to consensus regarding transactions via the participants involved in the transaction. Participants can confirm the validity of a transaction by independently checking the contracts code against the validation logic on the network.
Hyperledger Fabric: The Hyperledger Fabric network uses a Crash Fault-Tolerant consensus algorithm called ‘Raft’. Raft uses an elected, trusted leader to follower relationship model, where the trusted leader passes information to a cluster of nodes that are fully peered (connected to every node in the network). The Raft consensus algorithm ensures that as long as a majority of the participants in the system are honest, that consensus can be reached regarding the validity of the information being exchanged.
Byzantium Fault Tolerance is a solution to the Two Generals Problem — a scenario where valid information has to be transmitted from point A to Point B, etc., but there is a chance that there are dishonest actors in this system spreading invalid information or dropping out of the information passing route entirely. So
Keep in mind, blockchain technology is relatively new. Just this year, Bitcoin — the first cryptocurrency to use a blockchain ledger — turned ten. That being said, there is currently a lack of blockchain engineers in the space. Several companies want blockchain databases but struggle when it comes to finding the expertise to build or maintain their system. That being said, you are going to want to consider what kind of technical support the private blockchain that you decide to build on offers.
GoChain: GoChain provides customer support in several forms. They offer an online chatroom, where members of their engineering team can quickly and easily be reached, as well as, 24/7 access to documentation, whitepapers, support forums, and community chat rooms. In addition, GoChain offers enterprise network participants with workshops, educational courses, and consulting on how to maintain their solutions.
R3 Corda: If you hit a technical obstacle when working with the Corda blockchain, the team at Corda offers 24/7 support for their enterprise network participants.
Hyperledger Fabric: Unlike R3, a private blockchain that operates more like a business, HyperLedger fabric is governed by the Linux Foundation — a non-profit tech consortium. That being said, if a company operating on the Hyperledger blockchain runs into a tech obstacle, and they do not have any internal blockchain engineers, then they are going to have to contact a third-party for assistance with the HyperLeder network.
And last but not least, as a business looking to use a blockchain database, you are going to want to consider what the blockchain network you are interested in building on was intended to be used for, what it’s current use cases are, and how many companies are currently up and running on the network.
If a network was made with a specific use-case or industry in mind, then the features and parameters of that network are most likely going to be geared towards businesses, software, and solutions for that particular industry. It is also helpful to ask companies and individuals currently building software and solutions — or who have in the past — what their experience with the network was and if they ran into any obstacles using the network.
R3 Corda: Corda’s private blockchain is geared toward banking and financial institutions as well as the commerce industry. Furthermore, Corda was developed in coordination with financial institutions, regulators, and trade associations — emphasizing their specialty in banking and finance solutions.
GoChain & Hyperledger Fabric: Unlike Corda, both GoChain and Hyperledger were made for a wide variety of industries — neither network is geared toward a specific industry.
Which Blockchain is right for me?
With your newfound knowledge, you might be wondering — what blockchain network should I build my software or market solution on top of. Well, to begin with, you are thinking in the right direction! Blockchain databases are more efficient databases than most conventional databases, and you are more than likely going to digitize some of your business’s operations, offices, or end up using a blockchain database entirely within the next ten years.
Now when it comes to choosing the blockchain that is right for you, there is no blanket answer. You will find that different blockchains will be ideal in different situations and for different solutions, and services. For example, if you are building a solution or service that is finance related, you may lean towards R3 Corda since that is the area they specialize in, however, if you need a network that provides strong customer support and has high transaction throughput, you may follow in the footsteps of EventChain and choose to build on GoChain.
At the end of the day, the blockchain you choose to build on should be a blockchain that can handle the technical parameters of the business, software, or solution that you are building — and that is why it is important to be aware of the vital features of a network — and hopefully, we gave you enough information about the TPS, use-cases, customer support, and consensus algorithms of a few business blockchains that you can continue your research!