Qu'est-ce qu'un smart contract ?
Un smart contract est un programme stocké sur une blockchain qui s'exécute seul quand ses conditions sont remplies, sans intermédiaire.
Un smart contract (contrat intelligent) est un programme informatique stocké sur une blockchain. Il contient un ensemble de règles et les applique automatiquement quand quelqu'un lui envoie une transaction, sans banque, courtier ou autre intermédiaire pour valider chaque étape. Malgré son nom, il n'est ni particulièrement intelligent ni forcément un contrat au sens juridique.
Comment fonctionne un smart contract ?
La comparaison habituelle est celle du distributeur automatique, une analogie de l'informaticien Nick Szabo, qui a inventé le terme dans les années 1990. Vous insérez la bonne somme et appuyez sur un bouton, et la machine délivre la friandise. Aucun vendeur n'est nécessaire, car les règles sont intégrées à la machine.
Un smart contract fonctionne de la même façon avec des actifs numériques. Un développeur écrit les règles sous forme de code et les publie sur une blockchain comme Ethereum, où le contrat reçoit sa propre adresse. N'importe qui peut ensuite lui envoyer une transaction. Chaque nœud, c'est-à-dire chaque ordinateur qui conserve une copie de la blockchain, exécute le code et vérifie que le résultat est identique. L'exécution du code coûte des frais de gas, payés par la personne qui a envoyé la transaction.
À quoi servent les smart contracts ?
- Les jetons. La plupart des jetons crypto sont des smart contracts qui tiennent la liste de qui possède combien d'unités.
- Le trading et le prêt. Une plateforme d'échange décentralisée utilise des contrats pour échanger un jeton contre un autre.
- Les NFT. Un contrat enregistre quel portefeuille possède chaque objet unique.
- Les décisions collectives. Une DAO utilise des contrats pour compter les votes et débloquer des fonds communs.
Un smart contract ne voit que ce qui se trouve sur sa propre blockchain. Pour réagir à des faits extérieurs, comme un cours de marché, il s'appuie sur un service de données appelé oracle.
Qu'est-ce qui peut mal tourner ?
Le code fait ce qu'il dit, pas ce que son auteur voulait dire. Une fois publiés, la plupart des smart contracts ne peuvent plus être modifiés, et les transactions ne peuvent pas être annulées. Une erreur dans le code peut donc être exploitée par quiconque la découvre. En 2016, un attaquant a siphonné environ un tiers des ethers détenus par un des premiers fonds d'investissement, The DAO, en exploitant une faille de son contrat.
Les projets tentent de réduire ce risque en payant des cabinets extérieurs pour auditer leur code. Un audit diminue la probabilité d'un bug, sans l'exclure. Certains contrats sont conçus pour que leurs développeurs puissent les mettre à jour, ce qui permet des corrections mais oblige les utilisateurs à faire confiance à celui qui détient ce pouvoir.
Un smart contract a-t-il une valeur juridique ?
Pas par défaut. Un smart contract est un logiciel, et la question de savoir s'il crée un accord juridique dépend du droit des contrats ordinaire du lieu concerné et de l'intention des parties. Si le code et un accord écrit se contredisent, un tribunal peut devoir trancher lequel s'applique. Les lois varient selon les pays et les États, et ce domaine est encore en construction.
Ce guide explique le fonctionnement des choses. Il ne constitue pas un conseil financier, juridique ou fiscal. Dernière mise à jour le .