Le « smart contract » ou « contrat intelligent » est une application de la technologie de la Blockchain qui a pour objectif de rendre un contrat infalsifiable et d’en garantir une exécution parfaite. La technologie de la Blockchain est celle à l’origine notamment des crypto-monnaies comme le Bitcoin pour ne citer que la plus connue.
La Blockchain est un registre qui répertorie des transactions. Elle stocke les échanges de données dans des blocs dans un ordre chronologique. On connaît deux types de blockchains :
- la blockchain privée qui n’admet qu’un nombre restreint d’utilisateurs,
- la blockchain publique qui admet un grand nombre d’utilisateurs, appelés nœuds, qui sont chargés de veiller sur les transactions et de les valider.
Le recours à la blockchain permet donc de renforcer la confiance entre les utilisateurs, puisqu’elle utilise un système de contrôle dit décentralisé – par les nœuds.
Pour se la représenter, il suffit d’imaginer une énorme base de données, un grand registre qui répertorie toutes les transactions réalisées et informations échangées entre ses utilisateurs depuis sa création.
La blockchain a trois applications principales : le transfert d’actifs, en garantir la traçabilité et exécuter automatiquement des contrats, les « smart contracts ». Les informations stockées dans ses blocs sont cryptés, empêchant quiconque de les modifier a posteriori.
Un smart contract est « un programme qui contrôle sans intermédiaire, des actifs numériques » selon le créateur d’Ethereum, Vitalik Buterin.
Les smart contracts sont donc des programmes informatiques qui sont chargés d’exécuter les termes d’un contrat une fois que toutes les conditions sont réunies, de manière automatique et sans qu’aucune intervention humaine supplémentaire ne soit nécessaire. C’est l’un des points phares des smart contracts ; la désintermédiation.
C’est un contrôle des engagements qui s’opère : dès qu’un utilisateur réalise un engagement celui-ci est enregistré. Une fois tous les engagements nécessaires à réalisation du contrat effectués, le contrat s’applique automatiquement.
Alors qu’un contrat légal traditionnel définit les règles d’un accord entre plusieurs parties, un Smart Contract va plus loin et fige ces règles dans une Blockchain tout en assurant le transfert d’un actif quel qu’il soit lorsque les conditions contractuelles se vérifient.
De l’utilité du smart contract
Aujourd’hui les smart contracts trouvent encore peu à s’appliquer dans l’économie réelle mais dans un futur proche, ils permettront notamment aux entreprises de réduire les coûts et le temps nécessaires à certaines de leurs opérations qui passent par le processus contractuel, tout en renforçant la sécurité de celui-ci.
Il est possible de prévoir dans les « clauses » du smart contract des sanctions en cas d’inexécution qui trouveront à s’appliquer automatiquement en cas de défaillance d’une partie. Cet aspect du « smart contract » laisse espérer une réduction du contentieux.
Ainsi, pour une vente par exemple, on pourrait être sûr que le vendeur transmette le bien à son acheteur, qu’il perçoive la contrepartie financière, et que l’acheteur reçoive le bien.
Nick Szabo, le père de la Blockchain, utilise lui l’hypothèse du contrat de leasing, d’une personne qui louerait une voiture contre un loyer. Le smart contract pourrait s’assurer à chaque fois que le loyer soit bien payé et garantir derrière l’utilisation du véhicule. En cas de défaut de paiement, la voiture serait bloquée et inutilisable par le locataire.
La principale utilisation qui est faite actuellement de la blockchain concerne les monnaies virtuelles comme le bitcoin ou l’ether. Les transactions financières présentent en effet des avantages conséquents : traçabilité des fonds, fraudes difficiles, coût par transaction faible …
L’exemple d’Ethereum
Ethereum est une blockchain qui permet de concevoir des applications décentralisées appelées dAPPS. Tandis que la blockchain du Bitcoin est conçue pour des applications monétaires, Ethereum permet d’élargir ce champ de compétences et notamment permet la conception de smart contracts.
Cette blockchain fonctionne avec l’ether, une monnaie virtuelle qui sert à payer le fonctionnement du smart contract.
Le réseau Ethereum est constitué de plusieurs milliers d’ordinateurs connectés en réseau (un réseau décentralisé) grâce à un programme téléchargé appelé « mist ». Ces ordinateurs utilisent la même base de données, la blockchain, et contribuent tous ensemble dans le cas des smart contracts au système de contrôle décentralisé.
Les personnes qui possèdent ces ordinateurs reliés au réseau et qui se mettent au service des autres utilisateurs de la blockchain reçoivent en retour de l’ether. Ils peuvent ensuite vendre cet ether contre des euros. De même, les développeurs de dAPPS qui ont besoin d’ether pour exécuter leur application sur le réseau ethereum vont acheter ces ethers contre de l’euro, via un marché en ligne.