Qu’est-ce que la DeFi ?
La finance décentralisée (decentralized finance, DeFi) est une catégorie d’applications qui fournit des fonctions financières telles que l’échange d’actifs et le prêt, principalement au moyen de blockchains et de contrats intelligents. Un contrat intelligent est un programme déployé sur une blockchain qui traite des opérations selon un code prédéfini. Les utilisateurs envoient généralement des transactions depuis leur propre portefeuille, et des contrats contrôlent les conditions et mettent à jour les enregistrements en chaîne, au lieu de confier chaque étape à la base de données interne d’un même prestataire.
La DeFi n’est pas un projet, une blockchain ou un produit particulier, et n’équivaut pas non plus à « aucune partie n’a d’administrateur ». Une application DeFi peut laisser des contrats gérer des fonds tout en dépendant encore d’une équipe de développement, de clés d’administration, d’une page web, d’un service de données de prix ou d’une blockchain déterminée. Pour juger de son fonctionnement, il faut examiner séparément à qui les utilisateurs remettent leurs actifs, selon quelles règles un contrat traite, d’où viennent les données externes, et qui peut mettre à niveau ou suspendre le système.
La DeFi inscrit des règles financières dans des programmes appelables
Les services financiers en ligne traditionnels emploient aussi des logiciels, mais enregistrements de comptes, règles métier et exécution finale sont généralement contrôlés par le prestataire. La DeFi place en revanche une partie des règles et des enregistrements d’actifs sur une blockchain, ce qui permet aux utilisateurs, aux portefeuilles et à d’autres applications d’appeler le même ensemble de contrats intelligents via des interfaces publiques.
Un service DeFi comprend généralement :
- un réseau blockchain : conserve transactions et état des contrats, des nœuds vérifiant les mises à jour selon des règles communes ;
- des actifs numériques : tokens transférés, échangés, déposés ou employés comme collatéral au sein du réseau ;
- des contrats intelligents : contrôlent les conditions des transactions, calculent des montants et mettent à jour soldes ou dettes ;
- un portefeuille : permet à l’utilisateur d’examiner une demande et de signer avec son propre compte ;
- une interface applicative : présente les fonctions des contrats sous forme d’opérations web ou mobiles ;
- des données et services hors chaîne : peuvent fournir prix, recherche, routage de transactions ou notifications.
L’utilisateur voit une page applicative, mais le résultat réel est produit par ces composants ensemble. L’aperçu DeFi d’Ethereum.org distingue de même blockchain, actifs, protocoles et interfaces applicatives comme des couches différentes. Cette méthode de découpage en couches peut tout autant servir à examiner d’autres réseaux prenant en charge les contrats intelligents, plutôt que de limiter la DeFi à Ethereum.
Par quelles étapes passe une opération DeFi
L’utilisateur lit d’abord, via l’interface applicative, les soldes des pools, des cotations, des taux d’emprunt ou sa propre position, c’est-à-dire l’état d’un emprunt donné avec son collatéral, sa dette et ainsi de suite. Ces informations peuvent venir de nœuds de la blockchain, ou passer par un service d’indexation hors chaîne ; ce type de service organise les données en chaîne en résultats plus faciles à interroger. Une valeur affichée sur une page web n’est donc pas nécessairement celle qu’une transaction suivante retiendra finalement.
Lorsque l’utilisateur lance un échange, un dépôt ou un emprunt, l’interface génère une demande de transaction. Le portefeuille lui présente le réseau cible, le contrat appelé, les montants d’actifs, les autorisations et des frais de réseau estimés. Après signature, la transaction est envoyée au réseau blockchain ; les nœuds exécutent le contrat et contrôlent soldes, autorisations, exigences de collatéral et autres règles.
Une transaction ne modifie l’état d’un contrat qu’après une exécution réussie en chaîne. Soumettre une demande ne signifie pas qu’elle réussira à coup sûr, et le résultat estimé affiché par une interface peut aussi différer en raison de variations de prix pendant l’attente, de variations du montant d’actifs disponibles à la négociation ou au prêt — c’est-à-dire de la liquidité — ou de variations de l’état du réseau. Une exécution réussie indique seulement que l’opération était conforme au code et aux conditions en chaîne du moment ; elle ne prouve pas que l’utilisateur ait compris les risques ni que les informations de la page web n’aient pas été trompeuses.
Un échange d’actifs dépend de ce qui se trouve dans le pool
Dans un contexte d’échange, la liquidité prend la forme concrète du montant d’actifs disponibles à l’échange dans un pool. Les échanges d’actifs en DeFi peuvent employer des ordres en chaîne, et peuvent aussi employer un teneur de marché automatisé. Un teneur de marché automatisé (automated market maker, AMM) est une catégorie de mécanisme qui produit un résultat d’échange au moyen d’un contrat intelligent et d’une règle de calcul. Plutôt que d’attendre qu’une contrepartie désignée prenne l’autre côté, l’utilisateur interagit avec un pool géré par un contrat.
Un pool se compose d’un ou de plusieurs actifs. Les participants qui apportent des actifs sont généralement appelés fournisseurs de liquidité ; un échangeur retire un actif et en place un autre, et le contrat détermine le montant pouvant être reçu d’après les soldes du pool, une formule de calcul et des frais.
Une transaction modifie la proportion des actifs dans le pool, de sorte que le prix estimé et le résultat final d’exécution peuvent différer. Plus une transaction est importante par rapport à la liquidité disponible, plus le prix d’exécution s’écarte généralement de façon sensible de la cotation d’avant l’opération ; cette différence est couramment appelée impact sur le prix. Après sa soumission, une transaction peut aussi rencontrer d’autres transactions exécutées avant elle, et le résultat final subit l’influence de l’ordonnancement au sein du bloc.
Un pool n’a pas qu’un seul mode de calcul. La description technique d’Uniswap v2 présente une implémentation entretenant un pool en chaîne avec deux réserves de tokens et une formule de calcul ; d’autres protocoles DeFi peuvent tout autant adopter d’autres formules, des carnets d’ordres ou des conceptions mixtes.
Le prêt relie apport de fonds, collatéral et liquidation
Le prêt en DeFi regroupe souvent les actifs apportés par plusieurs utilisateurs dans un pool, puis permet à d’autres utilisateurs d’emprunter selon les règles. Après avoir remis des actifs à un contrat, un apporteur reçoit généralement un enregistrement en chaîne représentant sa part déposée ou son droit au remboursement ; une partie des intérêts d’emprunt peut être répartie aux apporteurs selon les règles du protocole.
Beaucoup d’emprunts en DeFi ne reposent pas sur une évaluation de crédit traditionnelle et exigent au contraire que l’emprunteur verrouille d’abord un collatéral. Le collatéral est un actif que l’emprunteur place sous la contrainte d’un contrat, servant au remboursement de l’emprunt lorsque la dette ne peut plus satisfaire aux exigences. Une disposition courante exige un collatéral d’une valeur supérieure à l’actif emprunté, mais la proportion précise, les actifs acceptés et le mode de valorisation varient selon le protocole.
Un contrat compare la dette à la valeur du collatéral. Si le prix du collatéral baisse, si celui de l’actif emprunté monte, ou si l’accumulation des intérêts fait franchir à la position un seuil déterminé, celle-ci peut entrer en liquidation. La liquidation signifie que d’autres participants remboursent une partie ou la totalité de la dette selon les règles du protocole et obtiennent le collatéral correspondant ; ce processus sert à réduire la dette que le protocole ne peut pas recouvrer, mais l’emprunteur peut perdre son collatéral et acquitter des frais de liquidation.
Les paramètres de prêt ne sont pas uniformes. La documentation de prêt d’Aave fournit un cas d’implémentation de pools, de surcollatéralisation, de taux variant avec le taux d’utilisation des fonds et de liquidation, mais on ne peut pas en déduire que tous les prêts en DeFi emploient les mêmes paramètres, ni que le rendement des actifs apportés soit fixe ou que le principal ne subira pas de perte.
Taux et frais découlent de règles précises
Une page DeFi affiche souvent en même temps un taux d’apport, un taux d’emprunt, des frais d’échange et des frais de réseau ; ce ne sont pas le même concept.
- le taux d’emprunt est le coût supporté par l’emprunteur pour l’usage des fonds, et peut varier avec le taux d’utilisation d’un pool ;
- le rendement de l’apport peut venir des intérêts payés par les emprunteurs, de frais de transaction ou d’une distribution de tokens supplémentaires ;
- les frais de protocole sont prélevés selon les règles des contrats sur les échanges, les prêts ou d’autres opérations ;
- les frais de réseau sont versés aux participants du réseau qui traitent les transactions blockchain, et ne sont pas nécessairement déterminés par le protocole DeFi.
Un chiffre annualisé affiché sur une page est généralement converti à partir des conditions actuelles ou de celles d’une période passée, et n’est pas un résultat garanti. Taux d’utilisation des fonds, répartition des frais, prix des tokens, paramètres de gouvernance et récompenses supplémentaires peuvent tous changer. Même lorsque la quantité de tokens augmente, la valeur mesurée dans un autre actif ou en monnaie fiduciaire peut baisser.
Un contrat en chaîne emploie un oracle lorsqu’il a besoin d’un prix externe
Une blockchain peut contrôler les transactions inscrites en chaîne, mais ne connaît pas automatiquement le prix des actifs sur les marchés hors chaîne. Lorsqu’un ratio de collatéral, une condition de liquidation ou le règlement d’un dérivé doit être calculé à partir d’un prix, un protocole lit généralement les données fournies par un oracle.
Un oracle est un système qui recueille des informations en dehors d’une blockchain, puis publie des données d’une façon que des contrats peuvent lire. Il peut agréger des prix de plusieurs marchés et fournisseurs de données, et peut aussi adopter d’autres règles de mise à jour. La documentation Chainlink Data Feeds présente une catégorie de service publiant sur plusieurs blockchains des données telles que prix d’actifs et taux d’intérêt.
Employer un oracle ne rend pas les données intrinsèquement correctes. La fiabilité des marchés sources, la rapidité des mises à jour, le traitement des valeurs aberrantes et les règles de secours applicables lors d’une interruption du réseau influent tous sur les protocoles qui en dépendent. Un prix erroné ou périmé peut déclencher des résultats d’emprunt, d’échange ou de liquidation inappropriés.
Les protocoles DeFi peuvent se composer entre eux
Des contrats intelligents déployés sur un même réseau, ou dans des environnements capables de communiquer entre eux, peuvent appeler d’autres contrats au sein d’une ou de plusieurs transactions. Par exemple, une application peut d’abord obtenir un actif via un protocole d’échange, puis déposer cet actif dans un protocole de prêt ; une interface d’agrégation peut aussi comparer plusieurs chemins de transaction, puis demander aux contrats correspondants de s’exécuter.
Cette capacité de combinaison est souvent appelée composabilité. Elle permet aux développeurs de réutiliser des fonctions existantes au lieu de bâtir chaque couche de service depuis le début. Mais les dépendances se transmettent aussi le long de la relation d’appel : lorsqu’un actif sous-jacent, un oracle, un pont entre chaînes ou un autre protocole connaît une panne, une stratégie située au-dessus peut en subir les effets.
Dans le cas courant où un contrat n’intercepte pas un appel échoué pour poursuivre son exécution, les mises à jour d’état d’une transaction sont inscrites ensemble lorsque la transaction de premier niveau réussit, ou annulées ensemble en cas d’annulation. Mais cela ne traite que le résultat d’exécution de cette transaction ; cela n’élimine pas les risques de variations de prix entre blocs, de modifications de gouvernance, d’erreurs de données externes ou de plusieurs protocoles mis sous tension en même temps.
Le degré de décentralisation doit être apprécié couche par couche
Des contrats déployés sur une blockchain n’indiquent pas que chaque partie d’une application soit déjà décentralisée. On peut contrôler point par point :
- si les transactions des utilisateurs entrent directement dans des contrats publics, ou passent d’abord par l’approbation d’un prestataire ;
- si les contrats peuvent être mis à niveau, suspendus ou voir des paramètres clés remplacés, et qui détient ces droits ;
- si les fonds sont contrôlés par des règles fixes, ou s’il existe un administrateur pouvant déplacer unilatéralement des actifs ;
- de quels fournisseurs dépendent les prix, les messages entre chaînes et d’autres données externes ;
- s’il n’existe qu’une seule page web, un seul domaine, une seule interface de nœud ou un seul service d’indexation ;
- ce que le vote de gouvernance peut décider, et si les droits d’exécution sont réellement reliés aux résultats du vote ;
- qui participe à la validation, à l’ordonnancement et à la confirmation finale de la blockchain sous-jacente.
Des couches différentes peuvent adopter des modes de contrôle différents. Certains protocoles conservent des droits de suspension d’urgence ou de mise à niveau pour faire face aux failles, mais cela signifie aussi qu’un rôle déterminé peut influer sur les opérations des utilisateurs. Non custodial signifie généralement qu’un prestataire ne peut pas agir unilatéralement pour un utilisateur depuis son propre compte ; comme « sans permission » et « gouverné par la communauté », cela ne décrit qu’un aspect et ne suffit toujours pas à résumer l’ensemble de la structure des droits.
Ce qui distingue la DeFi des services centralisés, et le périmètre de la fintech
Services financiers centralisés et DeFi peuvent être comparés sous l’angle de qui contrôle enregistrements, conservation et exécution. La fintech, de son côté, est une appellation large couvrant les services numériques tels que paiements, prêts et investissement, et peut inclure à la fois des services centralisés et des applications DeFi employant des blockchains.
Un service financier centralisé fait généralement conserver par l’exploitant les enregistrements de comptes, apparier ou exécuter les opérations, et décider si un utilisateur peut y accéder. Le solde que voit un utilisateur est un enregistrement dans le système de l’exploitant, et la possibilité de retirer des actifs dépend des conditions de service et de la situation d’exploitation.
La fintech n’est donc pas une troisième catégorie de système entièrement exclusive des deux précédentes. Elle peut être bâtie sur des institutions traditionnelles et des bases de données centrales, et peut aussi employer blockchains ou contrats intelligents ; qu’une chose relève ou non de la DeFi dépend encore de la façon dont actifs et règles sont enregistrés et exécutés.
La DeFi confie en revanche une partie des actifs et des règles à des contrats sur une blockchain, que les utilisateurs peuvent appeler directement au moyen d’un portefeuille. Mais « appeler directement un contrat » n’équivaut pas à l’absence de dépendances intermédiaires : points d’entrée, données, droits d’administration et réseau sous-jacent doivent encore être contrôlés séparément.
Les principaux risques de la DeFi
Les risques de la DeFi peuvent venir d’une combinaison de code, d’actifs, de marchés et d’infrastructures :
- un contrat intelligent présente des failles, ou les droits réels ne correspondent pas à la description de l’interface ;
- des clés d’administration, la gouvernance ou un processus de mise à niveau font l’objet d’abus ;
- les prix des actifs varient rapidement, déclenchant des liquidations ou causant des pertes aux pools ;
- la liquidité est insuffisante, de sorte qu’un prix d’échange s’écarte nettement des attentes ou qu’une position ne peut pas être dénouée dans le montant prévu ;
- les données d’un oracle sont erronées, retardées ou manipulées ;
- un stablecoin s’écarte de son prix de référence, affectant collatéral et règlement ;
- un pont entre chaînes ou un autre protocole appelé en composition connaît une panne ;
- une page web, un portefeuille ou une demande de signature est altéré, incitant un utilisateur à autoriser le mauvais actif ou le mauvais droit ;
- une congestion de la blockchain, l’ordonnancement des transactions ou une panne de réseau retarde des opérations ou les fait échouer.
Code public, rapports d’audit et durée d’exploitation passée peuvent tous fournir des informations, mais ne prouvent pas qu’aucune faille ni perte ne se produira à l’avenir. Les utilisateurs doivent en outre distinguer la réussite d’exécution au niveau du contrat du résultat économique : du code peut fonctionner selon les règles et produire malgré tout un résultat défavorable d’échange, de liquidation ou de valeur d’actif.
FAQ
La DeFi doit-elle tourner sur Ethereum ?
Non. Ethereum est l’un des environnements d’exécution courants de la DeFi, et d’autres blockchains prenant en charge actifs et contrats programmables peuvent aussi l’accueillir. Comptes, frais, sécurité et mode de confirmation finale peuvent différer d’un réseau à l’autre.
Les actifs restent-ils tout le temps dans le portefeuille lors de l’usage de la DeFi ?
Pas nécessairement. L’utilisateur autorise généralement les opérations au moyen d’un portefeuille, mais des actifs peuvent être transférés dans un pool, un contrat de collatéral ou un autre contrat intelligent. Qu’un portefeuille puisse encore afficher un token ou une position liés ne signifie pas que l’actif d’origine ne soit pas passé sous le contrôle d’un contrat.
Non custodial signifie-t-il l’absence de risque de perte d’actifs ?
Non. Non custodial indique généralement qu’un prestataire déterminé ne peut pas agir unilatéralement pour un utilisateur depuis son propre compte, mais failles de contrat, autorisations dangereuses, liquidations, variations de prix et pannes d’un protocole dont on dépend peuvent encore causer des pertes.
Les taux en DeFi sont-ils fixes ?
Pas nécessairement. Beaucoup de protocoles ajustent les taux selon le taux d’utilisation des fonds et des paramètres de gouvernance ; des produits à échéance fixe ou à taux fixe peuvent aussi adopter d’autres règles. Une valeur affichée sur une page doit se comprendre avec la méthode de calcul et la période d’application.
Un contrat intelligent est-il forcément sûr s’il est open source ?
Pas nécessairement. L’open source donne à des tiers l’occasion d’examiner le code, mais ne garantit pas que toutes les failles ont été trouvées, ni ne prouve que version déployée, droits d’administration et dépendances externes soient exempts de problèmes.
Concepts associés
Poursuis avec contrat intelligent, DApp, décentralisation, stablecoin et token crypto, ou reviens au glossaire des cryptomonnaies.
Sources
- Ethereum.org : aperçu de la DeFi — les fonctions courantes de la DeFi et les couches blockchain, actifs, protocoles et applications.
- Livre blanc Uniswap v2 Core — une implémentation des pools de tenue de marché automatisée, des réserves et des règles d’échange.
- Aave Docs : Aave 101 — une implémentation de l’apport de fonds, de l’emprunt collatéralisé, des taux et de la liquidation.
- Chainlink Docs : Data Feeds — une implémentation d’oracle publiant sur des blockchains des prix hors chaîne et d’autres données.




