Smart contracts are one of the most promising applications in the Blockchain ecosystem.
Unlike a traditional deal, the execution is guaranteed by a legislative framework, and the execution is governed by computer code. It is automatically triggered when its conditions are met. A smart contract, therefore, defines the terms of an agreement between several parties, and its implementation does not require any trusted third party (legislative framework, notary, etc.).
The idea was first described in 1996 by Nick Szabo, a scientist, and cryptographer
The implementation of smart contracts is enabled by blockchain technology. More precisely, it is the secure distributed registry that guarantees the smooth running of the contract. Smart contracts can be the basis for elaborate creations such as Dapp (Decentralized Applications) or DAO (Decentralized Autonomous Organization). These are real programs and services capable of operating autonomously.
Insurance is one of the first sectors of activity, likely to be affected. One can imagine a smart contract where the payment is sent as soon as a condition is fulfilled (weather for farmers, plane delay, car loan...).
The main interests are :
- Autonomous execution of the insurance contract without human intervention.
- The reduction of operating costs.
- They are saving time (declarations, administrative procedures, etc.).
- No material infrastructure is needed (servers, computer parks...).
The integration of external information into smart contracts implies the connection of the blockchain with oracles where the smart contract will come to find the necessary data (temperature, transport schedules, location ...).
Where is the smart contract stored?
Let's take the example of Ethereum, one of the most promising platforms in the field of smart contracts.
The smart contract is stored directly on the register of the blockchain. It is, therefore, read and executed by minors (Ethereum Virtual Machine). The code and data reside on an address in the blockchain and can be requested at any time. The contract is programmed in an appropriate programming language (mainly Solidity) before being compiled in a specific binary format (EVM Bytecode) and then written on the register of the blockchain.
If you want to go further with Ethereum we recommend this article:
Go further - Understand the Blockchain
Here is a great video that explains how a "standard" blockchain works.