Blockchain glossary: Asking the right questions

Seven blockchain experts weigh in on the fundamentals of blockchain
24
Jul

Blockchain glossary: Asking the right questions

Can blockchain transform the world? Before we can answer this question, we need to understand what this technology can and can’t do, what it is and what it isn’t. Therefore, we have to go back to basics and explore the fundamentals in order to eliminate all misconceptions about blockchain.

We invited seven blockchain experts and Blockchain Technology Conference speakers to weigh in on the fundamentals of the Blockchain Technology. What is the difference between blockchain and distributed ledger technology?  What are the most important questions you should ask yourself before using Blockchain technology? Can anyone create their own blockchain?

Ingo Rammer

Ingo Rammer (@ingorammer) is co-founder and managing director of Thinktecture AG.

What is the difference between blockchain and distributed ledger technology?

Ingo Rammer: A blockchain is essentially just one kind of implementation of a distributed ledger. I am personally guilty, however, of sometimes using ‘blockchain’ in a conversation as the initial moniker to refer to DLTs as a whole – simply because this is the term most non-technical people are familiar with when referring to decentralized technology.

A blockchain is essentially just one kind of implementation of a distributed ledger.

I then try to steer the conversations to ‘DLT’ over time as it is the more correct term for the phenomenon I care most about: decentralization, not the particular implementation.

What are the most important questions you should ask yourself before using Blockchain technology?

I think the most important question is: Does my use case support or require decentralization between peers? If it doesn’t (for example if you have a commercially powerful entity who controls, say, a supply chain as a buyer and forces suppliers into certain ways of handling data), you might be better off using a central database with an HTTPS API in front.
Yes, you can implement centralized use cases with a blockchain – but doing so usually just increases complexity without providing tangible benefits. Yes, today, companies might also see a marketing/sales/recruiting- benefit when implementing blockchains, but I truly believe that this shouldn’t be the main driver.

Can anyone create their own blockchain?

If we’re looking at private blockchains (as they are mainly used in business-to-business scenarios), then, yes. Absolutely. The complexity is also not necessarily in the technology. Open source platforms like Hyperledger Fabric provide relatively easy ways to implement private and permissioned blockchain networks between multiple participants. (You can think of it as similar to installing a database product on top of which you run stored procedures – but this time it’s a blockchain network that runs smart contracts.)

The hard part is convincing other independent organizations to join your network.

The hard part is convincing other independent organizations to join your network, as this requires a clear set of benefits and a solid organizational and technical governance process. I believe that in the long run, the networks that will succeed are the ones which have a truly decentralized governance and revenue model that is understood by all participants. Or to formulate it differently: for me, the litmus test of a blockchain is whether or not it would survive when its initiators eventually decide to abandon it. I think today, the jury is still out whether or not blockchains that don’t fulfill this requirement will provide enough value in the long run.

 

Peter Lawrey

Peter Lawrey (@PeterLawrey) is a Java Champion with the most Java & JVM answers on Stackoverflow.

What is the difference between blockchain and distributed ledger technology?

Peter Lawrey: A distributed ledger is a highly redundant, decentralized ledger of transactions. The purpose is to achieve high availability.  Such a ledger can perform at high throughputs, as the nodes trust each other and don’t need to validate each other’s work. This works well within a single organizational unit, which is a very common use case.
A blockchain is a distributed ledger where the nodes don’t trust each other. By trusting a protocol, instead of the nodes running a service, they can be Byzantine Fault Tolerant, where up to one-third of nodes are actively trying to defraud the system.  However, if more than half the nodes are compromised the whole chain is. This works best when you have many individuals or organizations running a service, where there is an advantage in not having to trust each other, e.g. a collection of service providers adding liquidity to a market with equal access to that service.

What are the most important questions you should ask yourself before using Blockchain technology?

Even if you need a blockchain, you will still need a database to support queries. Once you have a database, does the blockchain add anything technically? If so, what do you need it to do and will this help you choose the best blockchain solution for your needs?

Can anyone create their own blockchain?

To create a blockchain, you need to record transactions in a block and have each block include the hash of the previous block creating chain, thus a blockchain or chain of blocks.
This is pretty easy. The hard part is making it decentralized with a reliable, trustworthy consensus strategy that is more useful than a database alone.
The approach we take with Chronicle Decentred is to have four stages:

  • replication of blocks
  • gossiping of which blocks every node now has
  • vote on which blocks should be included in the next round
  • when a majority vote is detected, announce what blocks have been added in what order so they can be processed.
    NOTE: This makes a number of basic assumptions in our design:
  • We want to have nodes adding blocks concurrently to increase throughput.
  • We know which nodes are running the service so we can determine when we have a majority.
  • A majority of our nodes are running in sync.

 

Arnaud Le Hors

Arnaud Le Hors (@lehors) is Senior Technical Staff Member of Web & Blockchain Open Technologies at IBM.

What is the difference between blockchain and distributed ledger technology?

Arnaud Le Hors: This is a question on which not everybody agrees today, but generally blockchain is considered to be one type of distributed ledger technology in which the ledger is stored as a chain of blocks. This is not the only possible form of storage though, and there are distributed ledger technologies that have similar characteristics while using a different form of storage.

What are the most important questions you should ask yourself before using Blockchain technology?

Who are the participants in my network? Blockchain isn’t a one-player game. It is a system which only makes sense when there are several participants, so it is crucial to determine who the participants are.

Blockchain isn’t a one-player game. It is a system which only makes sense when there are several participants.

One doesn’t necessarily need to have them all be part of the development process, but it is wise to have at least one representative of every type of participant you expect to have in the network.

Can anyone create their own blockchain?

Yes, anyone can create their own blockchain. Although, as pointed out earlier, this technology only makes sense when more than one participant is at play. There are many technologies now available for people to develop their own blockchain network.
Several of them are open source, such as the ones produced by Hyperledger, and Hyperledger Fabric is now supported by many vendors and cloud providers, including IBM.

 

Vinita Rathi

Vinita Rathi (@VinitaKRathi) is the CEO and Founder of Systango.

What is the difference between blockchain and distributed ledger technology?

Vinita Rathi: A distributed ledger is a database that is spread across several nodes or computing devices. Each node replicates and saves an identical copy of the ledger. Each participant node of the network updates itself independently. The most unique feature of distributed ledger technology is that the ledger is not maintained by a central authority. Updates to the ledger are independently constructed and recorded by each node. The nodes then vote on these updates to ensure that the majority agrees with the conclusion reached. This voting and agreement on one copy of the ledger is called consensus and is conducted automatically by a consensus algorithm.
Blockchain, on the other hand, is one form of distributed ledger technology. Not all distributed ledgers employ a chain of blocks to provide a secure and valid distributed consensus. A blockchain is distributed across and managed by peer-to-peer networks.
Since it is a distributed ledger, it can exist without a centralized authority or server managing it, and its data quality can be maintained by database replication and computational trust. However, the structure of the blockchain makes it distinct from other kinds of distributed ledgers. Data on a blockchain is grouped together and organized in blocks. The blocks are then linked to one another and secured using cryptography.

The structure of the blockchain makes it distinct from other kinds of distributed ledgers.

What are the most important questions you should ask yourself before using Blockchain technology?

Blockchain, despite its potential, is not an ideal fit for all problems. The most important question that I always ask my clients is: why do you want to use Blockchain, what is the purpose and what you are looking to achieve by using Blockchain? If there are advantages to the use of technology, it also brings a lot of unknown risks to the system.

Some of the key questions I ask:

Does the system need to be immutable? Immutability ensures that no particular individual in the ecosystem changes/modifies historical data (records). If the solution we are looking for has no need for immutability, using blockchain could actually complicate things. Similarly, blockchain is by nature append-only, hence will not allow to remove/delete a record or correct them. This feature is directly in conflict with GDPR and its “Right To Be Forgotten” principle. Hence, blockchain (within the EU) will make it impossible to store personal data, at least in its current form.

Is the solution for global reach or controlled reach? If you are looking to implement a solution for a particular organization or pre-defined user base (closed group), there is no need to implement blockchain as trust already exists within the organization.

Does your system have real-time needs? By virtue of what blockchain technology is, it can never be good enough for real-time needs at least in its current shape and form. If the system expectations are to have sub-second performance throughput, blockchain is in most cases not going to fit in the architecture.

Can anyone create their own blockchain?

The short answer is yes; anyone can create their very own blockchain. As daunting as it may sound, building your very own private blockchain is no longer as tedious or challenging as it was a couple of years back. The easiest and most common way of setting up a private blockchain is by using the existing Ethereum network.

Building your very own private blockchain is no longer as tedious or challenging as it was a couple of years back.

Ethereum blockchain is simply lots of EVMs or nodes connected to one another to create a mesh. Each node runs a copy of the entire blockchain and competes to validate a transaction (mining). Whenever a new node is added, the entire network is updated and is propagated in order to ensure that each node is in sync.
Ethereum provides tools like Geth, Eth, and Pyethapp that would cause you to become a node in the Ethereum network and download/update a copy of the entire Ethereum blockchain. These tools allow users to set up a private blockchain.
The blockchain is nothing but a distributed ledger in which transactions are recorded chronologically and publicly. These transactions are recorded in blocks, and all the nodes in the network compete to find the next valid block.
The very first block in the chain is what is referred to as genesis block. To create a private blockchain, one needs to create a genesis block. The above-listed tools like Geth can be used to create genesis block, which in turn will be the start of a custom private blockchain.

 

Svetlin Nakov

Svetlin Nakov (@svetlinnakov) is a passionate blockchain engineer, trainer and experienced developer in a broad range of technologies.

What is the difference between blockchain and distributed ledger technology?

Svetlin Nakov: Distributed ledger technologies (DLT) are decentralized systems, which hold a sequence of transactions (ledger). The ledger is maintained by a peer-to-peer network (the DLT network) of nodes, which use a consensus algorithm to synchronize the data between the nodes in a reliable and attack-resistant manner. DLT systems can be implemented as public (permissionless), private (permissioned), or hybrid systems. The underlying structure of the DLP can be blockchain, DAG (directed acyclic graph), hash-graph or other structure and the consensus algorithm can be proof-of-work, proof-of-stake, practical byzantine fault tolerance, asynchronous byzantine agreement or other. The DLT technologies include a large class of distributed systems and the blockchain is just a subset of them.

Blockchain technologies use a “chain of blocks” (sequence of blocks). It is a linear structure (linked list). Each block cryptographically refers to the previous and holds a set of transactions (signed documents). Transactions may hold asset transfers (in the financial sector), plain documents (in a document management system) or results from a smart contract execution. Most blockchains use a public-key cryptosystem, typically elliptic curve cryptography (ECC), to sign transactions. Transactions are signed by the blockchain users who control their blockchain addresses through a private key. The blockchain is maintained by a peer-to-peer network that synchronizes the chain and constantly adds the users’ new transactions through a consensus algorithm.

In short, blockchains are a technical design and implementation of DLT, but not the only implementation.

What are the most important questions you should ask yourself before using Blockchain technology?

I always ask whether the system can be implemented without blockchain and why the blockchain is valuable for a certain project. If I get a valid answer, I ask about why decentralization is important for this project. If it is not important, blockchain should not be used.
Next, I ask if the project needs to have its own token economy and why. If I get a valid answer, I continue asking. If I don’t get a valid answer, then the project should not be based on blockchain, but on traditional centralized software architecture.
Blockchain should not be used in every project. Many people try to use DLT and blockchain technologies just because they are “modern,” but soon fail. The true application of blockchain is building a decentralized system, serving a decentralized organization with decentralized processes, where no single point of control exists. Most businesses do not match this scenario.

Many people try to use DLT and blockchain technologies just because they are “modern,” but soon fail.

Some businesses may partially use the blockchain, e.g. for immutable storage of document hashes or asset tracking. Others use the cryptocurrencies as an additional payment method. Others use smart contracts to ensure that some logic is executed in a fair and decentralized way. Such scenarios are valid and are emerging along with the entire blockchain ecosystem. These organizations have good reasons to use blockchain and most probably will be successful.

Can anyone create their own blockchain?

An experienced developer can create their own blockchain network, of course. This can be done by forking an open source blockchain system that already exists (e.g. Bitcoin or Ethereum) or writing their own solution from scratch. Usually, people don’t write a blockchain system from scratch, because this is too complicated. Instead, they start from an existing project, clone it, and modify its code to add new features and change the consensus rules or other logic.
I am part of a blockchain network development project (protocol development), which started from forking the QTUM blockchain and later took its own path of development. This is a good example of how such protocol development project can work.

 

Jana Petkanic

Jana Petkanic (@JeanneDeBit) is a blockchain consultant and founder of Blockchain Talks.

What is the difference between blockchain and distributed ledger technology?

Jana Petkanic: Distributed ledger technology could be considered as a broader term than blockchain. Not every DLT is organized in a “chain of blocks” encrypted by means of the latest cryptography tools. DLT is basically a database that is spread across several nodes. Blockchain is capable of creating digital assets in an environment where stakeholders do not trust each other.

What are the most important questions you should ask yourself before using Blockchain technology?

What benefit does blockchain bring me and am I capable of involving an entire ecosystem of stakeholders? Simply put: if you cannot invite parties outside of your organization to participate in blockchain solution and/or you use blockchain as a gimmick with no cost reduction or efficiency improvement – you probably don’t need blockchain in the long-term. Also, when you struggle with specifying which assets can you digitize (due to regulatory issues), tokenized blockchain might be too early or too redundant for you.

Can anyone create their own blockchain?

Yes, they can, anyone can – but why? A sufficient technology is already out there, but it’s crucial to have the incentive to bring stakeholders outside of the organization on board and reach consensus with them first. Do we need blockchain? Yes/no. What blockchain? Perhaps we try a pilot on a public chain (almost zero costs) and then evaluate? Do not reinvent the wheel when it’s already there. Think of end users and benefits first. Tech will follow your drive and needs.

 

Christian Junger

Christian Junger (@ChristianJunger) is CEO and co-founder of the German blockchain start-up MADANA.

What is the difference between blockchain and distributed ledger technology?

Christian Junger: In essence, blockchain and DLT are very similar, though there are some glaring differences between the two.
From a technical perspective, blockchain is a specific implementation of a DLT, so in a way blockchain is an evolution stemming out of the DLT technology. Each of these concepts requires decentralization and consensus among nodes. However, the blockchain organizes data in blocks. As far as cryptocurrencies are concerned, most of the known ones (Bitcoin, ETH, Litecoin etc.) are blockchain implementations – meaning all of them are DLTs. However, not all cryptos are blockchain implementations, such as IOTA. As such, IOTA is a good example of a DLT that is not a blockchain.

What are the most important questions you should ask yourself before using Blockchain technology?

This is a rather difficult question since there are plenty of questions a business should ask themselves before making use of blockchain technology. However, in my opinion, the most important question is to what extent your business model/product can actually make use of blockchain. For example, if your company doesn’t rely on software or a computer network, you most definitely do not need blockchain. In other words, don’t just try to implement blockchain out of FOMO.

Can anyone create their own blockchain?

Yes. There are two methods. You either fork an existing one or you create your own blockchain. Both ways will require extensive technical knowledge.

STAY TUNED!

BEHIND THE TRACKS

Blockchain Advanced Development

Advanced step-by-step technical guide: Sharing the know-how

Blockchain Impact & Strategy

Experimenting with blockchain technology: Real-world inspiring use cases

Blockchain Technology 101

Principles, tools–frameworks & libraries–and implementation