Although blockchains were the first types of Distributed Ledger Technology (DLT) to appear, new players have entered the market. So from now on let’s use the phrase DLT to describe these.
All mainstream distributed ledgers are based on a concept out of graph theory called DAGs – Directed Acyclic Graphs. In simple terms, this means that transactions are connected through a network of participants (graph), flow in one direction (directed) and never passes the same participants twice (acyclic).
Blockchains are a special case of DAGs as they are linear and single linked. Furthermore, they group transactions into blocks to save the need to validate after every single transaction. The newest block of confirmed transactions is appended to the end of the longest valid chain of the DAG. Examples are Bitcoin, Ethereum or Hyperledger Fabric.
Non-linear DAGs, on the other hand, append transactions simultaneously on multiple branches which raises efficiency in theory, but simultaneously raises the risk of double spending. Examples are Byteball, IOTA, Nano or Hashgraph.
Without getting too technical, these different types of distributed ledgers have varying pros and cons. Depending on your use case, some properties are less important. The next section aims to highlight what each technology’s strength and weakness is along five common properties.
Immutability is what turned Bitcoin into a revolution for cryptocurrencies and is what turns Distributed Ledgers into trust machines. It describes the property that data stored on distributed ledgers cannot be modified or deleted, making it a trusted source of information. This is achieved through validation and storage of the ledger data by multiple network participants and a system of controls and incentives that prevents a single party from changing the ledger. To sum it up, immutability is the measure of trust in a network.
Fabric is a private network formed between a closed group of companies, thus trust in the integrity of the data is equated with the trust in the companies themselves. This is fine for certain use cases. However, as one of the main advantages of distributed ledgers, it bears the question if a centralised solution may be more effective between participants where trust is already given externally.
In Ethereum, it is important to distinguish between public and private implementations of the blockchain. In essence, Ethereum can be as immutable as you want it to be.
In private implementations trust in the data is only as high as the external trust in the company/consortium implementing it. Conversely, data on the public implementation has a global network of validators to ensure full immutability.
R3 Corda is mainly used in the financial sector . Corda has a „rollback“ feature, allowing transactions to be reversed. This is an important feature but leads to a low immutability.
In IOTA, to reduce the size of data each node has to store, transaction history is cut off after a certain point in a so-called „snapshot“. As it was mainly conceived for transactions between IoT devices, this makes sense – Why would a sensor need access to the complete history of transactions? However, the trade-off here is low immutability.
2. Database Coordination
Database coordination is a core requirement of distributed ledgers. This capability differs greatly between the various technologies due to their different architectures and underlying foundations. Distributed ledgers, however, are far less efficient than centralised ones meaning that if this is the only advantage of using a distributed ledger, one should think about centralised solutions.
Hyperledger Fabric is founded on a traditional database architecture developed by IBM and thus exhibits superior database management due to its similarities to traditional client-server based databases. While Hyperledger Fabric shines in its high transactional throughput it sacrifices other core features of distributed ledgers.
Ethereum uses transactions to alter states and groups these state changes into individual blocks to be appended to the blockchain and is capable of acting as a traditional distributed database. However, it doesn’t have the raw database processing capabilities of Hyperledger Fabric. Corda lies somewhere between the former two, and facilitates the processing of data between parties in a trusted environment. Further, Corda takes the approach of offering a modular solution that can relatively simply be integrated into existing databases.
Tokenisation is the capability to represent real world assets or information as a token on a ledger, i.e. cryptocurrencies, and to integrate them into the digital economy by making them transferable within the network. Secondly, tokens provide an incentive layer for the network participants to maintain the network. In Proof of Work systems, miners are rewarded with network tokens (i.e. Bitcoin) for processing transactions.
While it is possible in Fabric to build a Token-like construct that can be used between the participants of the private network, Fabric doesn’t have a native cryptocurrency and is constrained to usage within the boundaries of the application. This means each implementation is limited to the specific application and lacks the cryptoeconomics necessary to interact with the outside digital eco-system. Corda, similarly lacks a functioning native method for creating tokens.
On the other hand, Ethereum was designed from inception for the tokenisation of assets and even popularised a new method of tokenisation through ICOs. Ethereum’s token standards ensure interoperability between public and private implementation, making Ethereum’s infrastructure optimal for creating digital assets. IOTA offers a concept for a microtransaction economy between real-world machines, allowing them to potentially use each other’s services and pay each other.
4. Data Privacy
In a public distributed ledger, pseudonymous transaction data is seen by every network participant. Privacy can be achieved either by concealing the identities of transacting parties or by preventing unauthorised parties to access the data. Monero, a blockchain, mixes up transaction data to make it appear as if every participant were transacting with everyone. The latter method can only be achieved with a permissioned distributed ledger such as Hyperledger Fabric, which is equipped with a membership infrastructure that allows it to offer differentiated privacy levels for each participant.
Ethereum comes from an open source background that thrives on security through openness. This makes the network more secure as a whole but offers fewer enterprise level privacy functions.
In IOTA, currently there are no privacy features, however masked authentication messaging has been announced & may be implemented in the future.
In Corda, nodes only see transactions they are involved in. However, there are special nodes called notaries that see all transactions in the network, allowing them to guarantee the integrity of the data. While this method hides unrelated transactions to a great extent, it is possible to see transactions that are within a degree of separation even if they do not directly involve you.
5. Smart Contracts
Smart contracts are programs that live on the distributed ledger that can not only define the conditions of a contract but also execute them automatically, eliminating central authority and ambiguity in rule enforcement. All four technologies have or are in the process of implementing smart contracts – to varying degrees of success. Hyperledger allows smart contracts through an additional layer called chaincode. Chaincode is very flexible and allows additional program to run on top of the blockchain. However, it is non-deterministic, meaning not all potential outcomes can be predicted which can lead to dangerous situations if the smart contract contains errors. An unfortunately placed infinite loop could cause massive financial losses and potentially bankrupt a company.
In Ethereum, smart contracts are integrated into the core architecture through the Ethereum Virtual Machine, which is a virtual computer that confirms the integrity of smart contracts and executes code. Furthermore, the EVM allows the distribution of dAPPS (distributed Apps) that live on the blockchain and require no further architecture in order to function.
IOTA’s underlying architecture makes the implementation of smart contracts difficult. Unlike blockchains where each block is confirmed in sequence at a certain time, transactions on the Tangle are not confirmed in any particular order. Without a permanent linear transaction history there is no reference basis for smart contracts. Smart contracts are very important for Corda due to their specialisation on the financial industry, where the enforcement of financial agreements is a priority. Corda provides extra functionality here compared to other solutions by further linking smart contracts with legal prose to ensure a good legal footing.
In the end, choosing the right type of distributed ledger depends largely on your prioritisation of features. If you require high-performance distributed data processing – especially in very large IT projects – Hyperledger Fabric offers the most functionality. However, if you’re trying to establish a digital economy or trying to represent your assets digitally, a network designed for tokenisation like Ethereum is the wiser choice. Further, technology like the Tangle could enable an economy of microtransactions between devices in the real world.
When thinking about data privacy and keeping participants‘ transactions hidden from one another, Hyperledger offers the most differentiated toolkit. For smart contracts, its important to have a linear blockchain as the underlying foundation to ensure integrity and proper execution of smart contracts. The native integration with a functioning token economy to complement this makes Ethereum a good candidate to start with. IOTA is also currently developing a concept that integrates IoT devices into the digital economy and allows them to interact autonomously.
Most of all, distributed ledgers are a formidable tool to reach consensus between participants of a network where central authority is unclear. This is ensured by the immutability of the network. In private networks, trust in this network is only as high as the existing trust in the company or consortium maintaining it, whereas public distributed ledgers – such as Ethereum – function without the prerequisite of pre-existing trust.
It’s not easy to keep an overview of all new developments in the DLT space and deciding which of the above technologies to use is an important strategic decision. The best way to figure this out is to develop an MVP to gain first learnings. Contact us to figure out how to start.