You are on page 1of 3

1.

Node Application

Each Internet-connected computer needs to install and run a computer application specific to the

ecosystem they wish to participate in. Using the case of Bitcoin as an example ecosystem, each

computer must be running the Bitcoin wallet application.

(In slightly more technical parlance, the blockchain ecosystem constitutes a service overlay

network (SON) and to be a node in the network your computer must be able to process

application-specific messages and affect the shared state of the SON.)

In some blockchain applications, like Bankchain, participation is restricted and requires special

permissions to join (referred to as permissioned blockchains). Bankchain only permits banks to

run the node application. Whereas the Bitcoin ecosystem allows anyone to download and install

the node application and thus participate in the ecosystem.

Regardless of how one is qualified, once one has a node application one can participate in the

respective blockchain ecosystem.

2. Shared Ledger

This is a logical component. The distributed ledger is a data structure managed inside the node

application. Once you have the node application running, you can view the respective ledger (or

blockchain) contents for that ecosystem.

If you are running the Ethereum client, you can see the Ethereum ecosystem ledger and interact

according to the rules of that ecosystem (smart contracts, payments, etc.). If you are running
the Bitcoin client, you can participate in the Bitcoin ecosystem, according to the rules set out in

the program code of the Bitcoin node application.

You can run as many node applications as you like and are permitted to use, and each will

participate in their respective blockchain ecosystems. It is important to note that regardless of how

many ecosystems you are a participant in, you will only have one shared ledger for each

ecosystem.

3. Consensus Algorithm

This, too, is a logical component of the ecosystem. The consensus algorithm is implemented as

part of the node application, providing the ‘rules of the game’ for how the ecosystem will arrive at

a single view of the ledger. Different ecosystems have different methods for attaining consensus

depending on the desired features the ecosystem needs. For example, Bitcoin arrives at consensus

of the ledger in a few minutes, the Lightning ecosystem provides Guardtime’s industrial

blockchain platform provides sub-second consensus formation times, and Ripple guarantees

consensus in a few seconds.

Participation in the consensus building process, the method for determining the “world state” of

the ecosystem can be vested in a number of different schemes: proof-of-work, proof-of-stake,

proof-of-elapsed-time; each method qualifies nodes as honest in a different way before participate

in the consensus building process.

4. Virtual Machine

The virtual machine is the final logical component implemented as part of the node application

that every participant in the ecosystem runs. To understand the capabilities added to an ecosystem

by including a virtual machine let’s take a quick look at what a virtual machine is.
To understand virtual machines it helps to understand how a computer program runs on your

computer. When a physical computer runs a computer program, the instructions in the computer

program tells the computer to changes its “state”. We sense the changes of “state” on the physical

computer in multiple ways: as a display showing information and graphics, as the alteration of

information held in memory, as sound sent out to the speakers, as information stored on a solid-

state drive.

A virtual machine is a representation of a machine (real or imaginary) created by a computer

program and operated with instructions embodied in a language. It is an abstraction of a machine,

held inside a machine. To some degree we are already are accustomed to abstraction of real world

objects and entities as virtual objects in a computer. Think of a button in a graphical user interface

of an application. You press the button on the screen and the state of the program inside the

computer changes. Another example might be your driver’s license as it represented in a

government computer. It is an abstraction of your real-world legal authorisation to operate a

motor vehicle and it is largely what counts these days, rather than the real-world physical printed

driver’s license.

Ethereum is a blockchain ecosystem that, like Bitcoin, implements a virtual machine. The virtual

machine lives in the Ethereum node application, called a wallet, and unlike Bitcoin, it can

understand a wider range of instructions making it possible to manage the state of a digital

contracts aka smart contracts. The instructions take the form of a special programming

languagethat instructs the Ethereum virtual machine in the node application to enforce the terms

of the contract consuming and releasing a digital token called “ether” as part of the transaction.

The contract cannot be tampered with, again because of the cryptographic integrity of information

on the Ethereum blockchain.

You might also like