What are the Limitations of Smart Contracts, and How Can Service-Based Organisations Address These?
<em>"This is a Guest post originally shared by Amit Dua, CEO of Signity Solutions at <a href="https://e27.co/smart-contracts-service-sector-20180814/">e27.co</a>" </em>
"While many ideas around smart contract usage are being generated, most of them are futile". Smart contracts are computer protocols which are used to digitally verify and enforce a contract or a negotiation. In simple terms, it is a piece of code based on the blockchain technology, which is triggered during blockchain transactions. It reads as well as writes the data that is in the blockchain database. It allows to verify any transaction done digitally without the need of third parties. Smart contract development makes transactions trackable, immutable and irreversible. They are also self-executing and self-enforcing in nature.
Due to these benefits of smart contracts, there is considerable hype around it. The technology behind smart contract development – blockchain technology, removes the friction that comes with the currently prevalent traditional transaction system.
Many have touted it as the way towards the future of transactions. According to Capgemini Consulting, smart contracts will enable service sectors like finance, save billions. Capgemini says that there are three fields where smart contracts have far-reaching results. All these fields are part of the services sector:
It is said that smart contract will help get rid of the red tape that surrounds the personal loans and mortgage business. This will lead to a quicker turnaround time for the stakeholders.
The processing of applications in this field takes considerable time due to its criticality. However, with the verified and immutable smart contract transactions, the time taken for applications getting processed will decrease significantly. This is resulting in higher customer satisfaction and improved productivity for the business.
Smart contracts will bring trust in the system. Loan processing time and operational costs resulting from the excessive time taken in doing so, will go down for investment banks. They will get a faster and better view of the risks and capital requirements of any investment and thereby save both time and money.
However, not everyone is this positive about smart contracts. Dr Gideon Greenspan, founder and CEO of Coin Sciences, a company behind the MultiChain platform for private blockchains. He believes that while many ideas around smart contract usage are being generated, most of them are futile.
Smart contracts are codes written in a computer language like Pascal, Python, PHP, Java and R. For stored databases, it is a set of stored procedures written in an extension of SQL. All these languages do one job – they solve some problems in some way. Each language has its own strength and weakness. Some jobs are suited to one language while some to another. If you try to use a language to solve all the problems, you will end up spending more time and money than what is feasible. This will not only be expensive and time consuming, it will also be inconvenient and low on performance.
Major Misconceptions about Smart Contract Development
There are high expectations with smart contract development, many of which are overblown. However, there are three major misconceptions that most organizations carry about smart contract development. They are mentioned as below –
1. Contracting external services
It is believed that smart contracts can change behavior depending on external circumstances. In a service sector scenario like agricultural insurance, imagine a policy that pays out conditionally based on rainfall received. The smart contract will work based on the weather report, which it will retrieve externally.
Since, blockchain is a democratic system made of several nodes, all nodes have to have consensus between them for a transaction to pass through. There is no guarantee that each node will receive the same answer externally and hence may disagree. The solution lies in data being pushed manually into the entire system, instead of being automatically pulled in.
2. Enforcing on-chain payments
Issuing automated payments for financial bonds is another use case known as ‘smart bonds’. The problem is that the funds used for bond issuance in smart contracts cannot be used for anything else by the issuer (like a bank) because they are controlled by the blockchain development. This will effectively restrict the flow of funds for the issuer.
3. Hiding confidential data
A major challenge in deploying smart contract is in the very transparency it provides. If multiple banks set up a blockchain together, any transaction between two parties will be visible to all the others. Due to lack of privacy, there is an inherent risk of confidential data of one party being accessible to all. Even the hidden data can be accessed with the skills of a decent programmer adept in blockchain.
Smart contracts have their own constraints to deal with, in spite of the overhype surrounding them. They are undoubtedly useful. However, they cannot escape their limitations and any organization needs to assess the use of it before implementing it.