Smart Contracts

blockchain Oct 24, 2019

When the Bitcoin blockchain miners validate transactions, they are checking only for the most basic accounting rules. For instance, the transaction sender must have sufficient funds in her account and must sign the transaction with her private key. It is easy for Bitcoin miners to verify those transactions and reach consensus.

Now, instead of checking the basic accounting rules, the blockchain miners can run any kind of computer program and then reach consensus on the correctness of the computing results. The consensus results can then be saved to the blockchain for a permanent record. That is the idea behind the smart contract. The consensus mechanism developed for Bitcoin can be used to establish trust for any type of computation.contracts. It features a Turing complete virtual machine, known as the Ethereum Virtual Machine (EVM). The EVM runs on all nodes to validate the correctness of arbitrary computation tasks. Programs written for the EVM are stored in accounts on the blockchain. Any transaction that involves the account will be validated against the program by Ethereum miners before the transaction can be recorded on the blockchain. Smart contracts have become the most important applications for the blockchain.

The truly revolutionary idea behind blockchains is trustworthy computing results generated from uncooperative participants on trustless networks.

A Trustless Network

The original killer application of blockchain technology is the Bitcoin network. The Bitcoin network was created by and is managed by a completely trustless network. Anyone can get on the Bitcoin network to validate transactions, propose new blocks, and receive Bitcoin awards if the block is accepted by the consensus. Bitcoin network participants do not know each other and do not trust each other. Yet, the system is designed to prevent any of the participants from making malicious changes to the blockchain.

The exact mechanism Bitcoin uses for consensus is called proof of work (PoW) . For now, just know that there are mechanisms for untrusted network participants to agree on which transactions are valid and should be recorded in the blockchain. Core to the consensus mechanism is the use of cryptocurrencies that incentivize participants to behave according to rules (e.g., not validate invalid transactions). This use of cryptocurrencies as incentives is known as cryptoeconomics.

The ability to reach consensus without a central trusted authority is powerful. The greatest Internet companies today are all built on the network effect. Companies like Uber and Airbnb act as central authorities for the networks they built.

They make the rules, especially the rules around how money is transacted in the network. They make sure everyone follows the rules and in the process extract great profits. But are they really needed? Can their networks function without the company being the rule maker and arbitrator? Why can’t the network participants themselves own the network and reap the profits?

However, past efforts to replace Uber and build a coop-style nonprofit transportation network have largely failed. There are a few reasons, listed here:

▪ Replacing the centralized company with a centralized nonprofit does not solve the trust issue. Many nonprofits are corrupt and mostly enrich their operators. The drivers and riders still have no real “ownership” of the network.

▪ A centralized nonprofit lacks the means to award early adopters and jump-start the network. Uber, however, can raise venture capital (VC) money and spend heavily on incentives until the network effect is self-sustainable.

A blockchain network with crypto tokens could solve both problems. The network is run by untrusted peers and hence cannot be corrupted. The network can issue tokens to compensate early adopters through a process like an initial coin offering (ICO). Furthermore, by turning network participants (drivers and riders in the Uber example) into token holders, we can establish a monetary network and create loyalty to the network Uber has never been able to build.

Neeraj Dana

Experienced Software Engineer with a demonstrated history of working in the information technology and services industry. Skilled in Angular, React, React-Native, Vue js, Machine Learning