Les contrats intelligents ne sont ni des contrats ni particulièrement intelligents. Ce sont de simples programmes qui sont stockés sur la blockchain avec des informations sur les pièces, les jetons et les portefeuilles. Les contrats intelligents sont essentiels au développement d’applications décentralisées basées sur les crypto-monnaies.
Les contrats intelligents ne fonctionnent pas sur la blockchain Bitcoin. La technologie a été introduite dans le cadre de la spécification d’Ethereum en 2014, qui comprenait une définition de contrat intelligent. Ainsi, lorsqu’il s’agit de contrats intelligents, Ethereum est le nom qu’il faut retenir. C’est l’une des raisons pour lesquelles tant de dApps sont construites pour fonctionner sur Ethereum et les blockchains compatibles avec Ethereum.
Qu’est-ce qu’un contrat intelligent, en réalité ? Au départ, il s’agissait de simples instructions SI/ALORS. Le développeur qui a inventé le terme « contrat intelligent » a décrit un contrat intelligent comme la version blockchain d’un distributeur automatique : SI les bonnes pièces sont déposées, ALORS on distribue une collation. Dans un sens, le distributeur automatique est intelligent, c’est-à-dire qu’il est capable d’exécuter sa tâche automatiquement et indépendamment.
Sur Ethereum, un contrat intelligent pourrait spécifier que SI une somme est reçue dans le portefeuille de l’utilisateur, ALORS 10% sont transférés vers un second portefeuille réservé à l’épargne à long terme.
La plupart des contrats intelligents sont désormais écrits dans un langage de programmation appelé Solidity, qui a été créé par certains des mêmes ingénieurs logiciels qui ont créé les premières versions d’Ethereum. Solidity permet de créer des contrats intelligents plus sophistiqués que le simple modèle SI/ALORS.
Les contrats intelligents sont exécutés par l’Ethereum Virtual Machine, une plateforme logicielle qui est installée sur les nœuds Ethereum avec les copies des transactions de la blockchain. Il existe désormais des EVM qui permettent de créer des contrats intelligents en C++, C#, Go, Haskell, Java, JavaScript, Python, Ruby, Rust, Elixir, Erlang et d’autres langages de programmation. Des outils de programmation visuelle comme EtherScripter servent d’environnements virtuels qui permettent de construire des contrats intelligents sans avoir à écrire de code dans un langage de programmation.
Comme toute autre information sur la blockchain, les contrats intelligents sont immuables, c’est-à-dire qu’ils ne peuvent pas être modifiés après leur déploiement, et irréversibles, c’est-à-dire qu’ils ne peuvent pas être effacés. La plupart des développeurs mettent le code source de leurs contrats intelligents à disposition pour inspection afin que les utilisateurs puissent s’assurer que les contrats ne siphonnent pas une partie ou la totalité de leurs fonds vers le portefeuille du développeur.
Toutes les applications financières décentralisées basées sur la blockchain et autres dApps sont basées sur des contrats intelligents.
Essayez de modifier votre recherche
Le texte est de nature informative et ne constitue pas une recommandation d'investissement. Il ne reflète pas l'opinion personnelle de l'auteur ou du service. Tout investissement ou commerce est risqué, les rendements passés ne sont pas une garantie pour les rendements à venir – ne risquez que les actifs que vous êtes prêt à perdre.