Smart contract : définition
Les smart contracts, ou contrats intelligents, sont des programmes informatiques irrévocables, le plus souvent déployés sur une blockchain, qui exécutent un ensemble d’instructions pré-définies.
L’idée maîtresse derrière ce concept de smart contracts est de garantir la force obligatoire des contrats non plus par le droit, mais directement par le code informatique : “code is law”, pour reprendre la célèbre formule de Lawrence Lessig.
Comme pour chaque programme informatique, la complexité est variable d’un contrat intelligent à l’autre. Certains implémentent des conditions simples, à l’image d’une fonction « si » Excel (si telle condition est remplie, alors le contrat est exécuté – “if this then that” pour les intimes) alors que d’autres smart contracts sont de véritables usines à gaz. A titre d’illustration, certains contrats intelligents ont même pour ambition de répliquer toutes les clauses et les règles permettant à des sociétés (commerciales ou non) de fonctionner. On parle souvent à ce propos de DAO, acronyme pour Organisation Autonome Décentralisée. Il est à noter que bien souvent, la complexité est l’ennemie de la sécurité.
Le fonctionnement d’un smart contract
Le smart contract propose en quelque sorte un équivalent informatique du contrat papier. Durant l’exécution du smart contract, toutes les étapes de validation sont enregistrées dans la blockchain utilisée (le plus souvent Ethereum), ce procédé permet de sécuriser l’ensemble des données en empêchant leur modification ou leur suppression a posteriori.
En pratique, l’immense majorité des smart contracts servent pour automatiser des échanges de valeur sous forme de cryptoactifs. Toutes les écritures comptables relatives à ces échanges de valeurs numériques sont systématiquement inscrites dans la blockchain. De la sorte tous les transferts d’actifs, sont à la fois publics, prévisibles et irrévocables. N’importe qui peut vérifier sur la blockchain la bonne exécution du smart contract et déterminer à qui l’actif.
Les smart contracts garantissent donc un ensemble extrêmement chargé de conditions d’exécution, qui ne laissent normalement pas de place au doute ou à la confusion. Les conditions sont très clairement fixées et l’interprétation du code est sans équivoque, contrairement à l’interprétation humaine, qui laisse toujours place à la négociation ou à la découverte d’un vide juridique.
Les contrats intelligents sont pour la plupart standardisés, tout comme les contrats papiers, pour lesquels nous avons la possibilité d’utiliser des templates. Le standard de smart contract le plus connu est connu sous le nom de ERC-20, et a pour fonction principale de permettre la création de tokens (actifs numériques, cryptomonnaies) sur le réseau Ethereum.