What exactly is “Blockchain” technology and how are organizations outside of the financial services sector benefiting from it? Is blockchain a new technology or has it been around for years? Is a blockchain the same as Bitcoin? What are “smart contracts”?
These questions and more are becoming more common as blockchain technology gains traction. What once began as the backbone for making financial transactions with Bitcoin, blockchain technology is being used today for more ways than one, by a number of different organizations.
In order to gain a better understanding of blockchain technology (and to understand that the term is more than just a buzzword), I sat down with Alex Garkoosha, Co-Founder and Chief Blockchain Scientist at ModernToken.
Q: What are the main benefits that blockchain technology can bring to organizations?
Blockchain allows three things that might be useful for businesses. First, thanks to smart contracts, it can automate every single process that doesn’t require creativity. Second, it allows the storing of sensitive information in such a manner that any piece cannot be modified or deleted by any employee. Third, some organizations accept cryptocurrencies as payment for their services and/or use cryptocurrencies to transfer value from one city to another and/or pay salaries with cryptocurrencies (contact your local tax advisor before doing this).
Q: How is blockchain technology benefiting organizations outside of the financial services sector?
Actually, none of the three applications described above apply specifically to financial services companies – they can be applied to a number of companies in different sectors. In no way is it true that the blockchain can bring more value to financial organizations than to other ones. That said, I have to admit that major companies are still at the phase of testing blockchain technology.
Smart contracts are clearly the most promising direction. Smart contract-based deals are already being seen in trade finance: e.g. Barclays trade finance deal and Texas → Qingdao cotton deal. I love the concept of the latter one: GPS trackers were placed inside of 88 bales of cotton, and when the transmitted coordinates coincided with the coordinates of the addressee warehouse in Qingdao, a smart contract automatically sent locked funds to the carrier. This can change the logistics industry entirely. I also like the concept of Confideal, who are working on a GUI tool for constructing smart contracts without coding, and Acronis Notary, who facilitates the permanent storing of imprints on any documents.
Q: Is blockchain technology a new concept, or has this been around for years and is just now making a buzz?
For the first time, such construction as blockchain appeared in Bitcoin; the first description of Bitcoin is dated on October 2008. Thus, the construction is not new. In terms of computer science, blockchain has been around for 2 decades as a linked list — a simple data structure, which secures the integrity of multi-party development branches (with the instrument called git). But, we must take a bow to the Bitcoin creator, as he was the first to apply the concept of proof-of-work to linked lists, which made securing sensitive data, such as financial transaction history, doable.
It’s important to understand that blockchain is essentially a distributed ledger with one innovative property — immutability of data that is written to it (that means, inability to change or delete that data). This can be used for storing financial transactions, which was the first case. However, many other use cases arose with time. For example, Namecoin (April 2011) was the first alternative usage of the blockchain — besides storing transaction history of its internal currency, it also allowed to buy a domain name in «.bit»-zone.
After Namecoin, dozens of other alternative cryptocurrencies («altcoins») appeared. However, the true might of blockchain was unleashed with Ethereum inception, in November 2013. Ethereum (started in July 2015) allowed for smart contracts, making digital money programmable.
Q: In terms of trust, how does blockchain technology ensure this?
It is often told that blockchain provides a trustless solution for storing sensitive data. Anyone can read the protocol, and anyone can read its implementation in code - feel free to attack if you can.
But, why is attacking so hard? We must thank the structure of blockchain, as data is kept in an ever-growing chain which consists of “blocks” — think of it as boxes (containers) generated at some nearly constant rate. To overwrite some piece of data, an attacker must, as a first step, generate an alternative version of such a box (with data he or she wants to see inside there instead).
Yet within any blockchain system, generating a block is, in this or that sense, hard. Think of it as a container refusing to close unless you find a solution for some problem. Everyone who tries to close the container experiences problems of the same difficulty.
Now the consensus algorithm that blockchains use comes into play: correct data belongs to the longest chain of blocks. Whenever a node receives two different blocks with the same number, it uses a consensus algorithm to automatically decide which one to treat as correct.
So, for an attack to be successful, an attacker’s chain must become the longest. In other words, devices working on extending an attacker’s chain should “close containers” faster than those who work on extending an honest participants’ chain. On average, that means an attacker’s devices (together with those who joined the attacker) must, in some sense, surpass an honest participants’ devices combined.
In PoW-blockchains, such as Bitcoin, (and yet still Ethereum), they must surpass them in computational power (have more computational power than honest participants combined). In PoS-blockchains, such as Nxt and Peercoin, they must surpass them in «locked balance» (have a bigger balance than honest participants combined).
Q: What are some important terms often used when referring to blockchain technology — can you please explain what a smart contract is, etc.?
A “Smart Contract” is a piece of an open-source code that allows for monetary relations. The easiest smart contract, and the one you are definitely familiar with, is the code inside any vending machine. Essentially, it comprises functions like this:
So, smart contracts are really a simple thing, which is very powerful when placed into a blockchain. Recall that a blockchain is a distributed database which, thanks to its construction, has two powerful properties: the inability to change any piece of data and the inability to delete any piece of data. Thus, once placed onto a blockchain, any smart contract cannot be changed ever (even by its creator) and cannot be deleted from there. You can also be sure that a contract developer won’t change the rules of the game just before you send money to the contract account.
It is also worth emphasizing that contract accounts are controlled not by a person, but by a built-in transparent code instead. Think of this as something that always follows pre-determined rules. The code may have a non-zero balance (some of them keep ether worth millions of dollars, most notably this account keeping $700M) and are unchangeable and indestructible, as everything that resides in a blockchain.
Smart contracts are going to change the landscape of most modern businesses. Some occupations will go down in history, like the coachman or blacksmith. Notary services will enjoy their last years of existence, and the need for lawyers and judges will drop substantially as well. It will take one decade for legal agreements to be replaced by smart contracts. Code is unambiguous, code doesn’t require such third parties as lawyers and judges, and code doesn’t require you to wait for a trial for months.
Q: Do you see blockchain technology continuing to advance in the future? If so, how?
There are still several unresolved issues with blockchain technology — scalability, secure proof-of-stake, cross-blockchain interactions, the ability to refund — with scalability believed to be the most important one.
I’ll use Bitcoin as a reference point (the situation with other cryptocurrencies is similar). The creator of Bitcoin has limited its block size — no more than 1 Megabyte per block could be written there, according to the original design. The smallest possible Bitcoin transaction takes 191 byte (it has to store sender’s address, receiver’s address, and the amount). It is also worth noting that Bitcoin’s proof-of-work mechanism sustains block generation rate at the speed of 1 block per 10 minutes — in the sense that Bitcoin mining difficulty continuously adjusts to maintain this speed.
So, 1 Megabyte per block, 191 byte as least possible size for transaction, 1 block per 10 minutes. Combining this all, it is easy to obtain bandwidth of ∼ 9 transactions per second. This is unacceptable for a worldwide currency.
One may ask now: “Why cannot we just remove the block size limit?” Well, a simple calculation again. 1 Megabyte per block, 1 block per 10 minutes. This means, Bitcoin blockchain growth is limited by 4320 Megabytes per month — it is acceptable for an ordinary enthusiast to deal with 4 Gb of hard disk space being consumed every month. But if we remove this restriction, this may lead to long-term non-stability. If we set block size limit equal to 10 Mb, then Bitcoin blockchain will be allowed to grow more than by 40 Gb per month, which is unacceptable for most individuals. The bigger the blockchain size is, the less people would like to maintain (have and continuously synchronize) the blockchain and the easier it becomes for those who stayed to collude and maliciously change the data.
There are several sophisticated approaches to this issue — some at ready-to-go phase such as Lightning Network or Bitcoin-NG, and some at development phase such as Plasma or EOS. It is interesting to observe which approach will survive in the long-term.
Q: What is one message you want to send to organizations about blockchain technology?
Think of a typical modern legal document: «in case A action B applies; in case C penalty D is enforced». Have a look at the following code:
Have you ever dreamt of making legal agreements readable? Do you like to spend money on lawyers, attorneys and judges? Why do you still use paper documentation?