The mechanics of smart contracts.
In essence, an insurance contract is a combination of “if/then… or else” statements. Depending on the complexity of a contract, the number of such statements may be very large, which is what is happening more and more with contracts in modern society in general and insurance contract in particular. For example, an insurance contract for a car could include health coverage but not include collision coverage. It could also have various deductibles for different accident scenarios. An insurance contract for a company operating in a country with an unstable political environment can be even more complex. For instance, such a company may want to buy a contract that protects it in case a country starts a trade war, imposes tariffs on certain products or services and more.
One of the reasons why the trust between consumers and businesses today is low is that life and transactions are getting increasingly complex.
Because of this, large organizations have to hire attorneys and multiple third parties to handle their transactions, which are often very expensive. At the end, this expense reflects in the prices of products and services and ultimately it is customers who are paying for these expenses.
Consumers often do not have time or education to understand the complexity of transactions they are forced to participate in, which is why they have to rely on third parties such as insurance companies, yet all the time they see the news about companies large and small making honest mistakes, such not taking enough security measures to protect customer data (which was the case with the hacks of Equifax, Target, Yahoo and Ebay) or intentionally trying to deceive customers (Uber paying hackers and not disclosing the hack, Wells Fargo opening accounts without customers knowing about it, Equifax not disclosing right away the news about the hack of its databases and so on).
Blockchain technology and smart contracts could solve these problems and more.
For instance, insurance companies today spend a lot of money on the verification of claims. With smart contracts, many of the steps in the verification process could be automated, meaning that the companies would be processing the contracts faster, more efficiently, and that there would be less insurance fraud. Even the implementation and activation of the claims could be activated. There would be no need for customers to waste time collecting the information from various sources and no need for insurance companies to spend resources verifying that information. Blockchain networks could serve as a place that both customers and insurance companies trust.
Mechanics of smart contracts
The code of a contract on the Ethereum network also describes when the contract becomes active, what triggers the contract to become active and when the contract terminates.
To do so, a contract may use what is known on blockchain networks as oracle. An oracle is software that finds information outside of the blockchain network and then submits it to the network. The name for the software comes from the Greek mythology. In it, people asked oracles for more information when they lacked understanding on certain subject or issue. Oracles on blockchains work in a similar way. They are tools that provide blockchain networks with information that the networks do not have on their own.
For example, for an insurance contract between a farmer and an insurance company, an oracle may be obtaining information from a weather service and delivering it to the blockchain. If the weather meets certain conditions, for example, the temperature stays in a certain range for a specific number of days, the contract initiates a claim and a payout to the farmer.
The reason blockchain networks need oracles is that blockchain networks record information in a sequential way. For example, when a user on the Bitcoin network sends funds to another user on the network, this transaction becomes a part of the Bitcoin blockchain at a certain date and time. This is what prevents the user from spending money multiple times. The network will simply not allow double-spending because at a certain date and time it has recorded a transaction. On a blockchain that keeps record of cargo shipments, shipments arrive at various locations also at certain dates and times, and the data becomes a part of the blockchain sequentially. This allows blockchains to preserve the information in a secure and immutable way, but reduces the flexibility of what and how blockchain networks can do.
In the real world the creation of information is not always sequential. For example, a weather service may be getting data at the same time from sensors located in multiple locations. The job of oracles is to connect blockchains with such sources of information and allow them to communicate with each other. For instance, even though a weather service may be getting data from multiple sources simultaneously, there is a way to record this data sequentially and that’s what oracles help blockchain networks with.
The second element of a smart contract on a blockchain network is storing the code on the blockchain network.
The third element is the execution of the contract by the machines on the network. The fourth element is updating the contract and dispatching the payments mentioned by the contract.
Finally, active smart contracts on the Ethereum network create execution logs that have no impact on how the network executes the contract, but that provide useful information to the parties involved in the contract.