DEV Community

Rodolphe Vanderaspoilden for JetDev

Posted on

Qu'est ce qu'un smart contract ?

Image description
Image by pch.vector on Freepik

Origine du Smart contract

Nick Szabo expert en cryptographie est le créateur du concept de “contrats intelligents” plus connus sous le nom de “smart contract”. En 1998 il conçoit le premier mécanisme numérique décentralisé le “Bit gold”, reconnu comme étant le précurseur du “Bitcoin”. Cependant il n’a jamais été implémenté par manque de financements.

Nick Szabo définit un smart contract comme étant un programme informatique inscrit dans la blockchain composé de conditions prédéfinies ayant pour but d'exécuter un code particulier quand celles-ci sont remplies.

L’objectif principal étant de simplifier les conditions contractuelles de la vie courante telles que les problématiques de paiement mais pas que. Il permet aussi de réduire le besoin d’avoir un tiers de confiance pour vérifier les transactions entre pairs.

Ses spécificités

  • Immuable : Les conditions ayant été prédéfinies dans le contrat assurent un fonctionnement régi par le code sans intervention humaine possible. Attention, étant donné que le smart contract est écrit dans la blockchain: il ne peut être modifié ni supprimé. Cela a beaucoup d’avantage mais en cas d’erreur humaine dans le code, ce sera irréversible. Nous avons déjà pu assister à des histoires de fonds bloqués sur un smart contract ne pouvant être retirés par faute de code. Je vous laisse jeter un oeil à cet article.

  • Intègre : Le smart contract étant inscrit dans la blockchain permet à tous de lire les conditions du contrat, mais aussi de voir chaque transaction qui a été effectuée depuis le déploiement du smart contract (dans le cas d'une blockchain publique).

  • Sécurisé : Chaque transaction implique des signatures numériques et cryptées afin de vérifier l’identité des acteurs.

  • Transparent : Un smart contract est transparent, toute transaction est visible par tous dans le cas d'une blockchain publique. On en déduit donc les problématiques de confidentialité dans le cas où nous souhaitons stocker de la donnée “sensible/privée”. Il existe toujours des solutions pour palier à cela bien sûr (par le biais de protocoles de type zk-SNARKs comme la blockchain Z-Cash par exemple).

  • Coût de transaction : Écrire sur la blockchain a un coût, on appelle ça les frais de gas (gas fees). Lorsque le smart contract exécute une transaction, les gas fees appliqués vont servir à rémunérer les acteurs qui sécurisent la blockchain. Ces frais sont variables en fonction de l’activité de la blockchain mais aussi de l’architecture de celle-ci et de l'optimisation du smart contract. On a pu assister à des frais dépassant une centaine de dollars sur la blockchain Ethereum pendant les périodes de forte activité, contre quelques centimes de dollars sur la blockchain Polygon. Il faut donc garder à l’esprit ce point là lors de votre choix de blockchain car il peut être un frein à votre projet.

Quelques exemples d'utilisation

Les smart contracts ont une plus-value intéressante, on peut naturellement penser à des secteurs d’activité auxquels ils pourraient servir : le bancaire, l'immobilier, les assurances...

L’immobilier est un bon exemple; la problématique de ce secteur est la nécessité d'avoir un tiers de confiance (le notaire) pour effectuer le contrat et les paiements entre les vendeurs et acquéreurs. Avec un smart contract sur la blockchain on pourrait se passer de ce tiers de confiance car ce dernier garantit la transaction. La signature du smart contract serait équivalente à celle du notaire.

Dans le cas des assurances, on se rend compte que son fonctionnement peut être régi par un smart contract :

Si le véhicule A percute le véhicule B alors le véhicule A est en tort et doit indemniser le véhicule B.

Cette condition exécuterait une transaction dans le cas où elle est vérifiée. Tiens tiens, ne serait-ce pas la définition d’un smart contract ? 😉

Dans le secteur artistiques, l'authenticité d'une oeuvre numérique peut être vérifiée par son smart contract comme dans le cas des NFT (Not Fongible Token). Il est composé de certaines conditions prédéfinies qui permettent :

  • De gérer le transfert de droit entre son propriétaire et son futur acquéreur
  • De vérifier les fonds de l'acquéreur avant d’acheter l'œuvre
  • De récupérer le lien vers l’image du NFT. Il s’agit d’un vaste sujet qui mérite un article à lui tout seul.

Le mot de la fin

De par ses spécificités, le smart contract pourrait révolutionner le monde de demain. Il n’en est qu’à ses débuts mais sa courbe d'adoption est en forte progression.

Quant à moi je suis convaincu qu’il y a de grandes choses à faire pour résoudre des problématiques de notre quotidien et ainsi améliorer le confort de la société.

En savoir plus

(Explications de Nick Szabo à propos des smart contracts)
https://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart.contracts.html

(Introduction aux smart contracts)
https://ethereum.org/fr/developers/docs/smart-contracts/

(Qu’est ce que la blockchain ?)
https://www.ibm.com/fr-fr/topics/what-is-blockchain

(Rapport d'analyse du marché des smart contracts)
https://reports.valuates.com/market-reports/QYRE-Auto-31L1599/global-smart-contracts

Top comments (0)