What is Ethereum?
Ethereum was developed to expand on Bitcoin’s protocols for currency issuance. Its most important characteristic is that it enables developers to easily write and execute smart contracts.
What is Hyperledger?
Hyperledger is an open-source project developed by the Linux Foundation, which is not a blockchain at all, but a diverse set of frameworks and projects for developers and businesses that are interested in interacting with blockchain networks.
There are currently over 250 organizations which contribute to Hyperledger, Digital Asset and IBM being some of them.
It features multiple frameworks:
- Hyperledger Fabric
- Hyperledger Sawtooth
- Hyperledger Iroha
- Hyperledger Indy
- Hyperledger Burrow
After this brief presentation of both projects, let us analyze what features set them apart from each other.
Hyperledger and Ethereum have been designed with different applications and target audiences in mind. Ethereum was created to serve as a decentralized platform for public use, where all developers can contribute. On the other hand, Hyperledger is a private network which uses blockchain technology for enterprise use. Due to its modular architecture, it offers a higher degree of flexibility regarding its use and deployment. This type of architecture was designed to cater exclusively to enterprise blockchain applications.
Ethereum is a public and permissionless network meaning that anyone is able to access, read or write information on the blockchain.
In contrast, Hyperledger Fabric is a permissioned network, which means that only certain entities and nodes have access to participation. In order to receive access, a participant must receive approval from a trusted Membership Service Provider (MSP). MSP is a part of the system which issues and validates certificates, and authentication.
Bearing in mind that both projects have different modes of participation, it leads to different ways in which consensus is reached.
Private transaction between members
Ethereum does not feature any option of issuing private transactions among its members. Hyperledger’s Fabric has the ability to generate multiple ledgers.
In this case, a ledger is called a channel and one can be opened to specific members. This means that certain contracts among parties can stay private while others remain transparent, depending on the channel used. This feature is very important in enterprise scenarios, such as keeping transparency of internal business procedures and privacy of contractual agreements.
In Ethereum, consensus over all the transactions must be reached by all the network participants (or nodes). This happens regardless of whether a node has participated in a particular transaction or not. Currently, Ethereum employs consensus by mining based on the Proof-of-Work (PoW) protocol. Ethereum has plans of later on switching to Proof of Stake.
Instead, Hyperledger nodes have the option of selecting between No-op (no consensus) and an agreement protocol (PBFT) where two or more parties are able to agree on a key. This prevents meddling third parties from imposing their key choice on the agreeing parties. Thus, Hyperledger has fine-grained control over consensus and restricted access to transactions which results in improved performance scalability and privacy.
Another key difference is the use of programming languages. Ethereum’s smart contracts are written in an object-oriented programming language called Solidity.
Hyperledger uses “chaincodes”, which work similarly to a smart contract. A chaincode typically takes care of business details agreed between two network members. These chaincodes are scripted in a programming language developed by Google called Golang.
Ethereum has its own native token called Ether, which can be mined by network participants.
As Hyperledger doesn’t need cryptocurrencies for transactions, it does not feature a native cryptocurrency. As there is no currency, there is no mining. This enables higher scalability for transaction rates which is a needed feature for enterprise applications.
However, as Ethereum has its own coin, it can be of great advantage in the cases that involve cryptocurrency use.
But Hyperledger also utilizes a programming language used in its chaincode to automate business deals across the network. This also means that one could create custom tokens through a modified chaincode.
Ethereum vs Hyperledger: Final Words
Ethereum and Hyperledger are two different projects which focus on various aspects and applications of blockchain technology.