BlockPulseNews
Définition

Smart contract : définition

Aussi appelé : contrat intelligent

Un smart contract, ou contrat intelligent, est un programme déployé sur une blockchain qui s'exécute de manière déterministe selon son code, sans intermédiaire, et dont l'état et les règles sont vérifiables par tous les participants du réseau.

Thème : Ethereum et smart contracts

Smart contract : comment ça marche ?

L'idée a été formulée dans les années 1990 par l'informaticien Nick Szabo, mais elle s'est concrétisée à grande échelle avec Ethereum, conçu pour exécuter des programmes arbitraires. Un smart contract possède une adresse, du code et un espace de stockage. N'importe qui peut l'appeler en envoyant une transaction ; chaque nœud du réseau exécute alors le même code et aboutit au même résultat.

Malgré son nom, un smart contract n'est ni intelligent ni forcément un contrat au sens juridique. C'est un programme qui applique mécaniquement des règles : si telle condition est remplie, transférer tel montant, enregistrer tel vote ou créer tel token. Il ne s'exécute pas seul : il réagit à des transactions, et il ne connaît du monde extérieur que ce que lui transmettent des oracles. Les smart contracts sont la base des tokens, des DEX, des protocoles de prêt, des NFT ou des DAO. Une fois déployé, le code est en principe immuable, sauf si ses auteurs ont prévu un mécanisme de mise à jour, ce qui introduit d'autres questions de confiance.

Un exemple concret

Imaginons un contrat de collecte de fonds : chaque contributeur envoie des cryptos au contrat avant une date limite. Si l'objectif est atteint, le contrat transfère la somme au porteur de projet ; sinon, chaque contributeur peut appeler une fonction pour récupérer sa mise. Aucune banque ni plateforme n'intervient, et tout le monde peut vérifier le code.

Les risques à connaître

Un bug dans le code peut être exploité et entraîner la perte des fonds, sans recours possible. Le piratage de The DAO en 2016 en est un exemple célèbre. Les clés d'administration, les mécanismes de mise à jour et la dépendance aux oracles sont d'autres sources de risque. Un audit réduit ces risques sans les supprimer.

À ne pas confondre avec

  • DApps : Une dApp est une application complète, avec souvent une interface web, qui s'appuie sur un ou plusieurs smart contracts.
  • Smart contract wallet : Un smart contract wallet est un type particulier de smart contract qui sert de portefeuille.
  • EVM : L'EVM est la machine virtuelle qui exécute les smart contracts sur Ethereum et les chaînes compatibles, pas le contrat lui-même.

Questions fréquentes sur Smart contract

Un smart contract a-t-il une valeur juridique ?

Pas automatiquement. C'est un programme ; sa portée juridique dépend du droit applicable et des accords conclus entre les parties en dehors du code.

Peut-on modifier un smart contract après son déploiement ?

Le code déployé ne change pas, mais les développeurs peuvent prévoir une architecture de proxy qui redirige vers une nouvelle version. Il faut alors savoir qui détient ce pouvoir.

Termes liés

Dans le même thème : Ethereum et smart contracts

Tous les termes du thème Ethereum et smart contracts →

À lire

Smart contract dans l'actualité

Nos articles qui parlent de Smart contract, les plus pertinents d'abord.

Approfondir avec l'Académie : Ethereum en Profondeur Un module gratuit, en leçons courtes et quiz, pour maîtriser ce thème pas à pas.
Découvrir le module

Les autres termes en S

← Tout le lexique crypto de A à Z