Définition
Les smart contracts (ou "contrats intelligents") sont l'une des applications les plus prometteuses de l'écosystème Blockchain. A la différence d'un contrat traditionnel dont la réalisation est garantie par un cadre législatif, l'exécution d'un smart contract est régie par le code informatique. Ce dernier est automatiquement déclenché lorsque ses conditions sont remplies. Un smart contract définit donc les termes d'un accord entre plusieurs parties et sa mise en application ne nécessite aucun tiers de confiance (cadre législatif, notaire etc.).
L'idée fût décrite pour la première fois en 1996 par Nick Szabo, scientifique et cryptographe.
La loi du code
La mise en oeuvre des smart contracts est permise par la technologie blockchain. Plus précisément, c'est le registre distribué sécurisé qui garantit le bon déroulement du contrat. Les smart contracts peuvent être à la base de créations complexes telles que les Dapp (Applications Décentralisées) ou DAO (Organisation Autonome Décentralisée). Il s'agit-là de véritables programmes et services capables de fonctionner de manière autonome.
L'assurance fait partie des premiers secteurs d'activités qui seront probablement touchés. On peut imaginer un smart contract dont le déclenchement du versement d'une somme est automatisé dès lors qu'une condition est signalée comme remplie (météo pour les agriculteurs, retard d'avion, emprunt de voiture...).
Les principaux intérêts sont :
L'exécution autonome du contrat d'assurance sans intervention humaine.
La réduction des frais de fonctionnement.
Le gain de temps (déclarations, procédures administratives...).
Pas d'infrastructure matérielle à mettre en place (serveurs, parc informatique...).
L'intégration d'informations extérieures aux smart contracts suppose la mise en relation de la blockchain avec des oracles chez lesquels le smart contract viendra trouver les données nécessaires (température, horaires de transport, location ...).
Où est stocké le smart contract ?
Prennons l'exemple d'Ethereum, l'une des plateformes les plus prometteuses dans le domaine des smart contracts : le smart contract est contenu directement sur le registre de la blockchain. Il est donc lu et exécuté par les mineurs (Ethereum Virtual Machine). Le code et les données résident sur une adresse de la blockchain et peuvent être sollicités à tout instant. Le contrat est programmé dans un langage de programmation approprié (Solidity principalement) avant d'être compilé en un format binaire spécifique (EVM Bytecode) puis inscrit sur le registre de la blockchain. Pour en savoir plus.
Exemples de blockchains et "crypto-monnaies infrastructures" pour smart contracts :
- Ethereum
- EOS
- IOTA
- NEM
- NEO
- Stratis
- Waves
- Lisk
Infographie réalisée par Julie Pottin disponible sur H2 University :
Comments