Smart Contract (Contrat intelligent) : concept et applications
Définition
Comme n’importe quel contrat, un contrat intelligent énonce les conditions d’un accord. Ces termes sont appliqués sous forme de code exécuté sur une blockchain comme Ethereum. Les contrats intelligents permettent aux développeurs de créer des applications qui tirent parti:
- de la sécurité
- de la fiabilité
- de l’accessibilité de la blockchain
- offrent des fonctionnalités peer-to-peer sophistiquées, allant des prêts aux assurances en passant par la logistique et les jeux vidéo.
Comme tous les contrats, les contrats intelligents définissent les conditions d’un accord ou d’une transaction. Toutefois, ce qui les rend « intelligents », c’est que les modalités sont établies et signées en tant que code exécuté sur une blockchain, plutôt que sur du papier traînant sur le bureau d’un avocat. Les contrats intelligents s’appuient sur le concept de base du Bitcoin (envoi et réception d’argent sans intermédiaire de confiance, par exemple) pour automatiser et décentraliser tous les types d’opérations ou de transactions ou presque, quel que soit leur degré de complexité. Et comme ils fonctionnent sur une blockchain telle que l’Ethereum, ils garantissent une sécurité, une fiabilité et une accessibilité sans frontières.
Pourquoi les contrats intelligents sont-ils importants ?
Les contrats intelligents permettent aux développeurs de créer une grande diversité d’applications décentralisées et de jetons. Ils sont utilisés dans tous les domaines, de la finance à la logistique en passant par les jeux vidéo. Ils sont stockés sur une blockchain comme toute autre transaction crypto. Une fois ajoutée à la blockchain, une application de contrat intelligent ne peut généralement ni être annulée ni être modifiée.
Les applications s’appuyant sur des contrats intelligents sont souvent appelées « applications décentralisées » ou « DApps ». Et elles englobent les technologies de la finance décentralisée (ou DeFi) qui visent à transformer le secteur bancaire. Les applications de finance décentralisée permettent aux détenteurs de cryptomonnaies de s’engager dans des transactions financières complexes (épargne, prêts, assurances) sans intermédiaire bancaire ou financier, où qu’ils soient. Parmi les applications basées sur des contrats intelligents les plus populaires, citons :
- Uniswap : plateforme d’échange décentralisée qui permet aux utilisateurs, via un contrat intelligent, d’échanger certains types de cryptomonnaies sans fixation du taux de change par une autorité centrale.
- Compound : plateforme basée sur des contrats intelligents qui permet à des investisseurs de toucher des intérêts et à des emprunteurs d’obtenir directement un prêt sans passer par une banque.
- USDC : cryptomonnaie liée par contrat intelligent au dollar américain, qui donne à l’USDC la valeur d’un dollar américain. L’USDC fait partie d’une nouvelle catégorie de monnaie numérique connue sous le nom de stablecoins.
Comment utiliser ce type d’outils liés à des contrats intelligents ?
Imaginez : vous détenez des ethers et vous souhaitez les échanger contre des USDC. Vous pouvez déposer des ethers dans Uniswap, qui, grâce à un contrat intelligent, trouvera automatiquement le meilleur taux de change, fera l’échange et vous transférera vos USDC. Vous pouvez ensuite placer une partie de vos USDC dans Compound : ils seront prêtés à d’autres utilisateurs et vous recevrez des intérêts à un taux déterminé de manière algorithmique, sans passer par une banque ou autre institution financière.
Dans le secteur financier traditionnel, l’échange de devises coûte cher et prend beaucoup de temps. Et pour des particuliers, le prêt d’actifs liquides à des inconnus à l’autre bout du monde est complexe et risqué. Mais les contrats intelligents permettent de concrétiser ces deux scénarios, et bien d’autres.
Comment fonctionnent les contrats intelligents ?
Ethereum est actuellement la plateforme la plus utilisée pour les contrats intelligents. Mais ceux-ci sont exécutables dans de nombreuses autres blockchains dans l’univers des cryptomonnaies. La création et le déploiement d’un contrat intelligent sur une blockchain est accessible à tous. Son code est transparent et disponible publiquement. Cela signifie que toute partie intéressée peut voir précisément quelle logique suit le contrat intelligent lorsqu’elle reçoit des actifs numériques.
- Les contrats intelligents sont rédigés dans divers langages de programmation (notamment Solidity, Web Assembly et Michelson). Sur le réseau Ethereum, le code de chaque contrat intelligent est stocké sur la blockchain. Toute partie intéressée peut donc consulter le code du contrat et son état actuel pour vérifier son fonctionnement.
- Chaque ordinateur du réseau (ou « nœud ») stocke une copie de tous les contrats intelligents en vigueur et leur état actuel, ainsi que les données relatives à la blockchain et aux transactions.
- Lorsqu’un contrat intelligent reçoit des fonds d’un utilisateur, son code est exécuté par tous les nœuds du réseau afin de parvenir à un consensus sur le résultat et le flux de valeur qui en résulte. C’est ce qui permet aux contrats intelligents de fonctionner en toute sécurité sans aucune autorité centrale, même en cas de transactions financières complexes avec des entités inconnues.
- L’exécution d’un contrat intelligent sur le réseau Ethereum requiert en général le paiement d’une redevance appelée « gaz » (nommée ainsi car ces frais permettent à la blockchain de fonctionner).
- Une fois déployés sur une blockchain, les contrats intelligents ne peuvent généralement pas être modifiés, même par leur créateur. (Il existe toutefois des exceptions à cette règle.) Cette restriction aide à garantir que le contrat ne sera ni clos ni censuré.