Overcoming Trust Issues with Smart Contracts
Tags: Hyperledger, Ethereum, Smart Contracts, Blockchain, Bitcoin

In a previous article, I shared some insights on how your business can use blockchain technology to drive its digital transformation, such as, automating standardized but repetitive business processes, issuing digital private shares, creating micropayment channels, and processing foreign exchange. If you are new to the world of blockchain, I highly recommend you read that article to catch up on key terminologies and concepts (including smart contracts, the subject of this article).

To understand why blockchain technology is disrupting many industries on such an epic scale, let’s look at the four (4) crucial roles fulfilled by a blockchain:

Providing a decentralized infrastructure, i.e. applications run on computers (nodes) in a peer-to-peer network, instead of servers from a central authority or corporation. Distributed ledger technology. Running on top of the decentralized infrastructure is the ledger. It is distributed because all the stakeholders involved have a record of the same transactions and facts. Providing a disintermediation protocol, i.e. the stakeholders in the decentralized system follow the same rules to connect, communicate, and transact with one another. Examples of blockchain protocols include Ethereum, Hyperledger, and Bitcoin. Acting as trust enabler, i.e. providing the software that allows transactions to be executed without parties having to trust one another. Ethereum, for example, assumes this role of trust enabler by allowing smart contracts to be executed on its virtual machine — the “notorious” EVM.

Like the good ol’ vending machine

So, what is a smart contract? To use Nick Szabo’s analogy, consider a vending machine. You put some money into the machine, select the kind of snack you want, and the machine dispenses a snack to you. This logic — money + selected snack = snack dispensed — is programmed into the vending machine. A smart contract, like the vending machine, has some business logic programmed into it. More specifically, it is a piece of computer code that is shared between participants of the business network (the blockchain), and it implements the business rules associated with each transaction.

Think of any transaction that requires trust among the parties involved. That’s right, a ton of them! From international money transfers to bank loans, our “traditional” financial system is built on the concept of trust. This is why we have banks serving as intermediaries (third parties) between transacting individuals and/or businesses in order to prevent fraud. To overcome the lengthy paper work and frequent delays in transactions, smart contracts — in many business instances — can effectively remove the need for intermediaries, thereby speeding up the processes and saving costs.

The benefits are endless!

Smart contracts are autonomous and tamper-proof. Once they are deployed on the blockchain, they execute transactions on behalf of stakeholders without interference by any human agent. If anyone wants to change anything in the code, they have to deploy an entirely new code. The message is clear: once you deploy a smart contract, you cannot change it, unless in very rare circumstances where some “caveats” are placed in the code and agreed on by all nodes that will be executing the program.

Smart contracts eliminate the need for trust. Like our vending machine, once there is an input (money), there will be an output (snack). As long as the machine is not faulty, you do not have to worry about it fulfilling its end of the deal, i.e. the system is trustless.

Smart contracts eliminate the need to KYC. In finance, Know Your Customer (or KYC) is a requirement that businesses make an effort to verify the identity, suitability, and risks involved with maintaining a relationship with a client. Many people are uncomfortable sharing that much information just for a simple transaction. Smart contracts can help overcome this hassle by simply verifying a customer’s identity using their digital (wallet) address. Done this way, there is no need to submit photo IDs, usernames, passwords, and such other “proofs” of identity.

Smart contracts simplify international and/or cross-border trades. There is no need for a third party to hold funds in escrow in this situation. This can be achieved simply with code. For example, when goods are confirmed to have been shipped to the receiving party, the smart contract would trigger a payment transaction to the sending party. When goods are not received, the program would trigger a reverse transaction of the funds.

One real-world use case: Ripple — a blockchain company — has partnered with financial institutions like Santander and Western Union with the goal of improving the efficiency of cross-border payments.

Not a panacea, though!

It is evident that the practical use cases of blockchain technology go beyond the transfer and ownership of cryptocurrencies like BTC, ETH, BAT, etc., however, not all business situations and/or applications require blockchain solutions.

Blockchain solutions are most suitable for applications that:

Are decentralized — that is, the nodes or peers or participants in the network maintain the same ledger, and are not necessarily in the same location

Require no intermediation from middlemen — that is, transactions need to be made peer-to-peer, without third parties serving as “trust enablers”

Are trustless — that is, participants in the network do not have to trust one another in order to operate or perform transactions

Require transactions to be validated, verified, and recorded in an immutable ledger that is universally timestamped.

Smart contracts are often visible to all the nodes and/or participants in the blockchain network. The source code is often released to the public as well. Therefore, you need to make sure that you really need a smart contract for your application before using it. For a business operating alone, i.e. without being a member of a consortium of peer-companies, a smart contract is not necessary. Distributed systems that are also decentralized are the perfect environment for smart contracts.

A nascent technology

Web 3.0, brought to you by blockchain is here, and the best time for any business to know and use this technology is now. Though it’s early days, the potential is practically visible. Like the Internet in the early 1990s, there is a first-mover advantage lurking. If you invest in the technology now, you will be among the top companies that reap the rewards in 2025 and beyond.

On Tuesday, December 1, 2020, Ethereum 2.0 (Serenity) launched. This is the first stage (“Phase 0”) of the next-generation proof-of-stake (PoS) which is different from the current proof-of-work (PoW) consensus algorithm that has been running since 2015. According to Vitalik Buterin, by the time this first phase is fully implemented, we will see the Ethereum network processing about 100,000 transactions per second. You read that right! That is a huge improvement on the “current” 25 transactions per second. Talk about VISA-esque speed!