Smart working with blockchain-based smart contracts

| 12-10-2020 | Carlo de Meijer | treasuryXL

Smart contracts are one of the most popular and talked about subjects being built in the blockchain industry. As processes are increasingly digitalised, it is becoming necessary to find a way to make reliable, digital business agreements. Smart contracts are a great alternative for replacing traditional contracts, that are often complex, slow and expensive.

Smart contracts are gaining widespread use and ease of creation. Today, smart contracts are available to optimize many financial and business processes, thanks to the contribution of blockchain consortia such as Hyperledger.

This blog discusses some of the current opportunities and challenges facing the adoption of smart contracts.

What are smart contracts?

A smart contract is a self-executing, self-enforcing protocol which is governed by its explicit terms and conditions, which stores and carries out contractual clauses via blockchain.

To enter into a blockchain based smart contract, the parties first negotiate and agree to the terms of the agreement before memorialising the terms (either in part or entirely) in smart contract code that are stored inside the blockchain.

Smart contracts allow the performance of dependable transactions without the engagement of third parties. It is a decentralised method, which means that intermediaries at the moment of confirming deals are not required.

Smart contracts automatically execute when predetermined terms and conditions are met, based on the rules it was programmed to do.

Smart Contract Key parts

Smart contracts consist of a number of essential parts: signatories, subject and specific terms. First of all the signatories i.e. two or more parties that use the smart contract and give their final ‘go forward’ regarding the proposed terms via their digital signature. Second the agreement’s subject itself that is limited only within the smart contract’s environment. Third the specific terms of the smart contract. They have to be described in detailed mathematical terms and implemented in a programming language that is compatible with the smart contract’s blockchain. Based on these terms, the contract will execute itself.

Smart Contracts and Blockchain

The key to these contracts is the decentralised network known as blockchain. Smart contracts use blockchain technology to verify, validate, capture and enforce agreed-upon terms between multiple parties.

Smart contracts on the blockchain allow for transactions and agreements to be carried out among anonymous parties without the need for a central entity, external enforcement, or legal system. The transactions are transparent, irreversible, and traceable.

Blockchain is the perfect environment for smart contracts, as all the data stored is immutable and secure. The data of a smart contract is encrypted and exist on a ledger, meaning that the information recorded in the blocks can never be lost, modified, or deleted.

Where could smart contracts be used?

Smart contracts can be used to perform functions in a great variety of industries. Whether regulatory compliance, contractual enforceability, cross-border financial transactions, property ownership, home buying, supply management, material provenance, document management and many other applications.

Today, smart contracts are relevant in areas such as trade in digital financial assets with legal transfer of ownership, banking and credit services, logistics processes, tracking the origin and path of goods, decentralized storage, and use of renewable energy.

Supply chain management
An area where smart contracts could be used is in supply chain management. Making supply chains more transparent via smart contracts is helping to smooth out the movement of goods and restore trust in trade. Smart contracts can record ownership rights as items move through the supply chain, confirming who is responsible for the product at any given time. The finished product can be verified at each stage of the delivery process until it reaches the customer.

Insurance
Smart contracts could also be used in the insurance sector. This sector nowadays lack automated administration. It can take months for an insurance claim to be processed and paid. Smart contracts can simplify and streamline the process by automatically triggering a claim when certain events occur. Specific details could thereby be recorded on the blockchain in order to determine the exact amount of compensation.

Mortgage loans
Smart contracts could also simplify the mortgage process. The terms of a mortgage agreement are based on an assessment of the mortgagee’s income, expenditures, credit score and other circumstances. The need to carry out these checks, often through third parties, can make the process lengthy and complicated for both the lender and the mortgagee. By cutting out the middle men, parties could deal directly with each other.

Financial industry
The most widespread use of smart contracts remains in the financial industry, as money and accompanying documents become electronic. In the financial services sector  the opportunities for smart contracts include, for example, payment processing, clearing/settlement of financial instruments, trade finance, as well as regulatory technology such as streamlined ‘know your customer’ certification.

Smart contract platforms

There are nowadays a number of smart contract platforms. They could be subdivided on the basis of technology, end-user (banking, government, supply chain, real estate, insurance etc.) and region (Europe, North America, Asia or rest of the world oriented).

Their differences are in programming languages, blockchain consensus, the cost of maintaining an application’s smart contracts, differences in blockchain security, transaction confirmation speed, trust in the main network nodes, and much more.

Ethereum was the first blockchain platform to develop codes specially made for dApp development. Their appearance has prompted the arrival of many other platforms including names like Aeternity, Cardano, Qtum, Stellar, and Waves.

Ethereum
Ethereum, the well-known global blockchain platform was the first to introduce smart contracts to a more wide-spread crypto community. Ethereum is still the most advanced platform for coding and processing of smart contracts. This open-source platform has one of the largest networks of developers available, and due to this, it can keep up with the continually changing environment in the blockchain industry.

Aeternity
Using a hybrid of Proof-of-Work and Proof-of-Stake model, Aeternity offers a method for powering so-called Turing-complete smart contracts that are capable of being executed off-chain. Thereby they deliver both privacy and security.

Cardano
Cardano is a decentralised blockchain and cryptocurrency project. Like many crypto projects, Cardano is open source. The Cardano platform is working towards implementing smart contract functionality with the Goguen update this year. This should bring their smart contracts a step further to ‘smarter contracts’.

Qtum
Qtum is an open-sourced blockchain application platform, where security and flexibility are two of the most essential components. The Qtum team has worked intensively to assure that smart contracts can be executed safely, making the platform perfect for businesses and their enterprise clients. Qtum uses Proof-of-Stake and a Decentralized Governance Protocol.

Stellar
Stellar, unlike many crypto coins, was created by developers for developers. That means that it is capable of handling extremely complex smart contracts. For simple smart contracts, Stellar offers a clean, easy-to-use alternative for developers that want to build smart contracts delivering greater efficiency.

Waves
Waves is an open blockchain project, strongly focusing on dApps and using Web 3.0 technology. To keep their smart contract project simple, Waves offers many online courses, and other methods of support for developers that may want to work with Waves. Like many smart contract projects, Waves uses Proof-of-Stake.

Benefits of Smart Contracts

Smart contracts provide many benefits over traditional contracts for a wide range of industries. In theory, they are more efficient and trustworthy than traditional contract law, and are also thought to offer better security as all actions are recorded and verified. As a result they may reduce unnecessary costs and time expenditure while enhancing transparency.

Greater efficiency and speed
Smart contracts are able to improve the efficiency and speed with which commercial arrangements are carried out.  Smart contracts are automated so there is no need to spend a lot of time on the paperwork and also correcting the errors that are manually written in the documents. They can be executed in minutes, for a fraction of the cost, from wherever the involved parties are, and without the need for lawyers.

Accuracy and transparency
As the codified terms are fully visible and accessible to all relevant parties, there is no way to dispute them once the smart contract is established.  This facilities complete transactional transparency and may removes the likelihood of manipulation, bias or error. This, in turn leads to decreased monitoring costs and risks of opportunistic behaviour.

Trust
Smart contracts may provide parties with a degree of trust. They automatically perform transactions following predetermined laws, and the encrypted documents of these transactions are distributed over participants. The information on the contract and the terms of the contract is straight. Specific validation by everyone and the immutability of the work guarantee that the smart contract can never more be broken.

Security
Smart contracts are also thought to offer better security as all actions are recorded and verified. Blockchain transaction documents are encrypted. That makes them extremely difficult to hack. Security features can also be integrated into a smart contract to automatically generate backups and duplicates in the event of damages, data losses to the original one or hacks.

Challenges

Smart contracts could also bring a number of challenges that may prevent more massive adoption.

Human errors
Like paper contracts, smart contracts could still experience fraud, because of human errors. Smart contracts are codes, and these codes are written by people (coders). As such, there is a (high) chance of a smart contract code having many bugs. They can be delayed, intercepted and corrupted. Some mistakes have proven to be very costly.

Confidentiality, security and privacy
Unlike traditional contracts, all transactions executed via a smart contract, are propagated across all of the nodes in the network.

This may create privacy issues, particularly when the accounts of the parties are associated with known entities. Even when the parties rely on pseudonymous accounts, certain identification techniques can be used to discern the identities of parties who transact with a particular smart contract.

Lack of engineering experience
As smart contracts begin to proliferate, there will be a need for new types of cryptography experts, and forensics experts, to verify software code and to translate the code into human-readable form. A lot of engineering expertise is required to make perfectly operational smart contracts. Experienced coders however are hard to find, and costly.

 Legal and regulatory challenges

There are also a number of legal and regulatory challenges, which are preventing the more widespread utilisation of smart contracts.  Smart contracts lack a clear legal status. There is no official government regulation that applies to them.

Interpretation and enforceability
If there is a dispute about whether a smart contract accurately memorialised the parties’ intentions or whether one party has breached the contract, the parties may still bring legal proceedings or engage in alternative dispute resolution processes.  As contract law varies between different jurisdictions, so too will the enforceability of smart contracts.

Jurisdictional issues
Smart contracts also raise jurisdictional issues. Because blockchain operates as a decentralised ledger, smart contracts can be formed and accessed anywhere across the globe.  They do not reside in any one location, but exist across multiple locations at the one time.

Yet existing laws are jurisdiction-based. The differences in laws across jurisdictions can be highly problematic, and may result in incongruent rights and responsibilities, and confusion regarding the consequences if there is a contract violation.

What steps are needed?

Comprehensive/clear picture of business/operational practices
Vague contracts allow space for argument. This can lead to claims, disputes, high legal expenses, project and operational delays, as well as invoicing and payment delays. To prevent these situations (as much as possible) a comprehensive and clear picture of the business and operational practices for involved parties is necessary when defining and agreeing on terms in order to automate contracts. Participants need to agree on “specific data,” which may include the exact time zone to be used along with the specific time, the location and what that means for contractual terms and fulfilment. Legal departments drafting contracts need to consider details like this in advance.  

Creating Logic Parameters
Parties should also ask themselves a number of questions. What data source will the companies use for their contract? And what are the tolerances? Furthermore, what type of rounding will the smart contract act on? These types of questions must be discussed prior to translation for smart contract codification.

Legal contracts must contain terms on parameters including sources, tolerances, frequency and time frames of data capture methods among others. Specificities such as location, time, and rounding decisions inform logic parameters around data. These impact how contracts translate into code. Incongruent readings can’t be automated.

Clear, non-conflicted contract terms
Problems may arise when an older contract that is used as a starting point has irrelevant or inapplicable clauses that have been forgotten to be removed. This may result in terms and conditions that are either disparate or contradictory. The code of a smart contract cannot be made to execute contradictory terms.

Smart contracts execute exactly what they are programmed to execute and are incapable of judgment. Rules of engagement, particularly those regarding fee calculations and billing practices, must be able to be encoded from clear, non-conflicted contract terms.

Anticipating Data Glitches and Gaps
There will always be technology glitches and failures that may result in data gaps or errors. These occasions can be reasonably anticipated and protocol for them can be incorporated into both natural language and smart contracts.

With agreed-upon terms for these events, a smart contract can be programmed to navigate data tolerances and triggers that automatically recognize when a glitch or failure has occurred. It can then execute the correct predefined action, agreed upon upfront by both parties resulting in zero delays or downtime to the relationship.

Going forward

The potential market for smart contracts is great. Smart contracts can actually change the way agreements are made across various industries.

It however will take some time and require more development before it reaches its mainstream approach. We cannot implement smart contract technology en-masse, as more experimentation is needed at this point. At the moment, smart contracts are still a technology in its early stages. And existing challenges esp. the legal and regulatory ones should be solved first.

That asks for smart thinking|

 

Carlo de Meijer

Economist and researcher