Republike, au service de la liberté d’expression

https://journalducoin.com/economie/republike-au-service-liberte-expression/

La liberté d’expression est le droit d’exprimer ses opinions sans qu’il puisse y avoir ingérence d’autorités publiques, et sans considération de frontières. Une liberté fondamentale que tout État démocratique, et tout réseau social, prétend défendre. Pour les États, le cadre juridique définissant les limites de la liberté d’expression est souvent à géométrie variable. Il en va de même pour les conditions d’utilisation des plateformes de médias sociaux. Certaines appliquent une forte modération, allant jusqu’à la censure. D’autres souhaitent étendre le cadre de la liberté d’expression (à vous de deviner qui est quoi …). Hors du champ des médias sociaux monopolistiques, Republike propose son approche innovante. Avec ce nouveau modèle de réseau social, l’utilisateur est le propriétaire de la plateforme. Il est donc en responsabilité face à ces problématiques.

Le Journal du Coin vous propose cet article promotionnel en collaboration avec Republike.

Une surveillance accrue sur les médias sociaux

Le poids que possèdent les réseaux sociaux dans la fabrique de l’opinion n’est désormais plus à démontrer. La campagne numérique réussie de Donald Trump, ayant mené à son élection à la tête des États-Unis en 2017, ou encore le rôle de Facebook dans la montée du climat de haine ayant conduit au massacre des Rohingya en Birmanie, ont  tiré la sonnette d’alarme pour de nombreux gouvernements et corporations. Les grands groupes monopolistiques ont réalisé la puissance des algorithmes sur la psyché des foules. Cela a engendré de vives réactions de la part des régulateurs. Par exemple, en Union européenne, la Commission oblige les opérateurs à se plier aux exigences du Règlement sur les services numériques (DSA). Ils ont l’obligation de contrôler et de modérer les contenus sur leurs réseaux sociaux.

Cette surveillance comporte plusieurs axes, et peuvent être sujets à interprétation. Par exemple, doivent être sujets à modération les contenus pouvant avoir des « effets négatifs réels ou prévisibles sur les processus démocratiques, le discours civique et les processus électoraux, ainsi que sur la sécurité publique. » Ce flou juridique inquiète de nombreux défenseurs des libertés publiques.

Entre liberté d’expression et censure, les réseaux sociaux peinent à trouver le bon équilibre

Thierry Breton, commissaire européen ayant largement participé à l’élaboration du DSA, se défend de mettre en place un “ministère de la censure”. Quoiqu’il en soit, les médias sociaux actuels ont déjà déployé leurs propres méthodes de modération des contenus. Certains jugent qu’elles s’apparentent à de la censure, tandis que d’autres les trouvent trop permissives, et propices à la prolifération de discours haineux et violents.

La modération traditionnelle

Les plateformes de réseaux sociaux s’appuient sur deux outils pour modérer les contenus : l’intelligence artificielle et les signalements des utilisateurs.

Avec les progrès de l’IA, et notamment des grands modèles de langage (LLM), il est désormais possible de filtrer automatiquement du contenu non-désiré. Cependant, ils restent très imparfaits pour déceler les subtilités des langues humaines, et en termes de modération, ils commettent de nombreuses erreurs. Un utilisateur de Facebook peut très vite voir son compte restreint pour avoir écrit une blague un peu trop subtile. Si cette méthode de modération peut s’avérer efficace pour détecter les discours haineux ou violents, elle le sera moins pour détecter du contenu trompeur.

Les réseaux sociaux s’appuient aussi sur la composante humaine. Il s’agit, comme pour la mise en avant des contenus, de faire confiance à la sagesse des foules. Lorsqu’un contenu est signalé pour un groupe suffisamment important d’individus, il est supprimé. Laurent Gayard, auteur et conseiller stratégique chez Republike, parle d’ochlocratie. En effet, les plateformes et leurs algorithmes donnent ainsi le pouvoir aux foules. Malheureusement, cela a des effets néfastes : harcèlement, lynchage public, campagnes de dénigrement…

Facebook - Modération
Le modèle centralisé/hybride de Facebook.

L’uniformisation des contenus nuit à la liberté d’expression

Les algorithmes ont tendance à uniformiser les contenus présents sur les plateformes de réseaux sociaux. Leur mise en avant dépend de l’engagement des utilisateurs, ce qui amplifie certaines voix, et en fait taire d’autres. L’ochlocratie des signalements massifs étouffe rapidement les opinions dissidentes. Si les algorithmes arrivent à façonner une opinion publique uniforme, ils peinent, en revanche, à offrir un cadre courtois et respectueux pour les débats d’idées. De même, ils s’avèrent inefficaces pour lutter contre les fake news.

L’économie de l’attention fait de l’utilisateur des plateformes de réseaux sociaux gratuites un produit. Cela accroît la surveillance et la censure, car les annonceurs n’ont pas envie d’être associés aux voix trop discordantes. La plupart des réseaux sociaux offrent donc un cadre assez limité en matière de liberté d’expression. Les opinions y sont plus binaires que plurielles : like ou dislike, admis ou banni.

À l’inverse, Republike souhaite encourager la diversité d’opinions. La cohabitation entre des sensibilités différentes sur Internet est un casse-tête : la plateforme est donc conçue pour offrir un cadre de discussion sain. Les contenus à haute valeur ajoutée sont tout d’abord privilégiés grâce au système de récompense. En sortant des métriques d’engagement traditionnelles, Republike favorise l’émergence de contenus contradictoires mais qualitatifs. Il faut toutefois mettre en place des méthodes de modération adaptées sur la plateforme.

Republike et la liberté d’expression

L’équipe fondatrice de Republike est profondément attachée à la liberté d’expression. Avec son modèle, elle souhaite trouver un juste milieu entre autocensure et dérives des débats polarisés. Bien entendu, la plateforme, établie en France, respecte en premier lieu les lois établies sur le territoire.

Republike souhaite, avec sa communauté, établir un cadre sain pour l’expression d’opinions contradictoires. Cela passe par un modèle de modération particulier. En cas de signalement, il s’agit de juger non pas du contenu brut, mais de son état d’esprit et de son contexte émotionnel.

La modération sur Republike

Premièrement, les utilisateurs de la plateforme s’accordent à respecter sa Constitution. Le contenu incitant à la haine ou à la violence n’a pas sa place, en revanche, toutes les opinions doivent pouvoir s’exprimer.

En cas de signalement d’un contenu, les modérateurs vont se concerter. L’algorithme sélectionne au hasard un comité de sept utilisateurs pour juger du contexte émotionnel, de l’intention dans lesquels le contenu signalé a été posté. Après le vote, c’est la majorité qui récompensée (via le futur jeton utilitaire de Republike et une influence positive sur le niveau de profil des votants). C’est donc le consensus communautaire qui détermine les limites de la liberté d’expression sur la plateforme. Plutôt que sur l’opinion, le modèle de Republike met l’accent sur l’intention sous-jacente à une publication signalée : incite-t-elle ou non au débat cordial et ouvert ?

Republike - Modération
Le volet modération de Republike.

Republike fait donc le pari d’éviter la modération centralisée et de confier ce pouvoir entièrement à sa communauté. Pour l’instant, le modèle semble vertueux. Tout d’abord, les utilisateurs ont un intérêt économique à participer. Pour l’instant, ils jouent le jeu, et peuvent ainsi s’exprimer librement, par leur vote, sur des sujets variés. Enfin, ce système incite les créateurs de contenu à s’exprimer de façon claire et respectueuse, même si leur publication est clivante. La sélection aléatoire des modérateurs permet d’éviter qu’un petit comité (un “conseil des sages”) ne prenne le contrôle sur ce qui peut être exprimé sur la plateforme.

    Un cercle vertueux

    La modération influence également la réputation des utilisateurs participants. Avec ce système, Republike s’assure que les modérateurs agissent dans les intérêts de la communauté. L’intelligence artificielle prendra également part à la modération dans le futur : le comité sera composé de 5 humains et de 2 IA (et plus si nécessaire). Cela ajoutera une composante plus “froide”, purement logique, pour la prise de décision. Quant aux sources et à la véracité des informations, l’équipe recherche la solution idéale. Les flux de news devraient passer tout d’abord par l’intelligence artificielle pour arriver à détecter les contenus erronés.

    Le système de modération de Republike s’inscrit donc parfaitement dans son modèle pay-to-own. Les intérêts des différents utilisateurs sont alignés afin d’offrir un espace de liberté :

    • Les créateurs de contenus sont incités à fournir de la variété et de la qualité pour être récompensés ;
    • Les utilisateurs deviennent actifs en participant à la modération ;
    • Ils sont récompensés s’ils suivent la majorité.

    Si vous voyez la technologie blockchain comme une opportunité d’accroître les libertés et les opportunités de tout un chacun, vous serez sans doute intéressés par l’interview d’Étienne de Sainte Marie qui aborde les questions de la liberté d’expression et de la modération sur Republike. Un échange disponible sur notre chaîne YouTube. La plateforme sera quant à elle en bêta publique le 22 février. En attendant, n’hésitez pas à faire vos premiers pas sur Republike via notre lien d’invitation !

    Tous les réseaux sociaux ont construit leur succès et leur fortune sur la revente des données privées des utilisateurs. Republike veut proposer un modèle décentralisé et centré sur l’intérêt supérieur de l’utilisateur. et réellement respectueux de la vie privée

    Lien commercial

    L’article Republike, au service de la liberté d’expression est apparu en premier sur Journal du Coin.

    Comment les algorithmes façonnent nos opinions

    https://journalducoin.com/economie/comment-les-algorithmes-faconnent-nos-opinions-republike/

    Republike face aux algorithmes ! Les réseaux sociaux constituent désormais le vecteur d’information primordial de toute une génération d’internautes. Ces plateformes vivent de l’économie de l’attention grâce aux revenus publicitaires. Nous allons nous intéresser au fonctionnement de leurs algorithmes, et présenter leurs défauts. Puis nous partirons découvrir le modèle disruptif proposé par Republike, le média social dont les utilisateurs sont propriétaires.

    Le Journal du Coin vous propose cet article promotionnel en collaboration avec Republike.

    Façonner le comportement de la donnée grâce aux algorithmes

    Les algorithmes des médias sociaux sont conçus pour mettre en avant le contenu générant le plus d’engagement. C’est cet engagement qui, en drainant les données des utilisateurs, génère le revenu des plateformes. C’est ce qu’on appelle l’économie de l’attention. Tout ce modèle économique repose sur la monétisation de celle-ci. Pour faire simple, plus l’utilisateur consomme de temps d’écran, plus il vaut cher.

    Qu’il s’agisse de Facebook, de X ou d’Instagram, les contenus qui reçoivent le plus de likes, de partages et de commentaires sont favorisés. Et ceci, indépendamment de leur qualité réelle. Les systèmes de recommandation composent donc les flux de contenu en fonction des interactions de l’utilisateur. Plus il interagit avec un certain type de contenu, et plus il aura de chances de le voir apparaître sur son fil. Ce modèle économique est conçu pour capter au maximum et par (presque) tous les moyens l’attention. Ceci afin de la revendre ensuite aux publicitaires.

    Republike est en lutte contre les algorithmes qui vampirisent votre attention avec des contenus peu qualitatifs

    À première vue, cela paraît raisonnable pour mettre en avant du contenu de qualité. En quelque sorte, les algorithmes se basent sur la sagesse des foules. Nous souhaitons tous accéder à des informations fiables, obtenir les avis et opinions d’experts, ou à du contenu divertissant. L’utilisation de l’intelligence collective permettrait de sélectionner le contenu à mettre en avant sur les médias sociaux, en fonction des préférences des utilisateurs. Le contenu qualitatif aurait donc plus de chances de devenir viral.

    Cependant, comme nous allons le voir, il est aujourd’hui certain que ce système produit l’effet inverse. Ces algorithmes ont plutôt tendance à diminuer la qualité des contenus proposés, à favoriser la diffusion de fausses nouvelles et à frustrer les utilisateurs.

    Les algorithmes se jouent-ils de nos biais cognitifs ?

    En 2021, Frances Haugen, ancienne cheffe de produit chez Facebook, qualifiait devant le sénat américain son algorithme de dangereux. Ces systèmes de recommandation et de curation seraient même en passe de « nuire aux enfants, attiser la division et affaiblir la démocratie. » 

    Plus tôt, en 2017, Chamath Palihapitiya, vice-président de l’acquisition utilisateurs chez Facebook de 2007 à 2011, pointant les effets à long terme de ce modèle, affirmait devant les étudiants de Stanford :

    « Je crois que nous avons créé des outils qui sont en train de déchirer le tissu social qui définit le fonctionnement de la société. […] Il n’y a plus de discours civil ni de coopération, et la désinformation et les fake news se propagent. Ce n’est pas un problème américain, cela n’a rien à voir avec les publicités russes. C’est un problème mondial. ».

    Chamath Palihapitiya

    Il y a plusieurs points à étudier pour comprendre comment les algorithmes peuvent manipuler nos opinions. Tout d’abord, la mise en avant des contenus les plus populaires est loin d’assurer leur qualité. On parle de biais de popularité. Le phénomène est le suivant : lorsque peu de personnes ont été exposées à un élément, leur engagement génère un signal biaisé – du “bruit”. L’algorithme s’occupera ensuite de l’amplifier. Une fois que la popularité d’une information de mauvaise qualité a atteint une taille critique, elle continue de s’amplifier. Plusieurs chercheurs ont démontré que le biais de popularité est préjudiciable à la qualité du contenu.

    Les contenus qualitatifs ne sont pas favorisés par ce modèle
    Republike dénonce une relation biaisée entre popularité et qualité, créée par les algorithmes – Source : Avram et al.

    Une contagion savamment orchestrée

    Le phénomène dit de contagion complexe est également une source de danger pour notre cerveau. Plus un utilisateur est exposé à une idée ou une information, et plus il a tendance à l’adopter et à la partager. Même en usant d’esprit critique, c’est un biais cognitif qui reste très puissant.

    Ceci est accentué par les algorithmes de recommandation qui vont pousser aux utilisateurs des contenus similaires une fois identifié ce qui les fait réagir (les “engage”), faisant naître une autre dérive cognitive, le biais de confirmation. Il se définit comme le renforcement de nos propres convictions par la confirmation issue des interactions avec des contenus, tendances ou opinions de même nature. Ce biais a un rôle considérable dans la polarisation et la “balkanisation” des opinions sur les réseaux sociaux.

    Enfin, toujours dans l’optique de maximiser l’engagement, les contenus à caractère sensationnel sont naturellement privilégiés. Cela se traduit encore dans les propos de Chamath Palihapitiya :

    « Les cercles vicieux alimentés par de petites doses de dopamine que nous avons créées sont en train de détruire la société ». 

    Chamath Palihapitiya

    Ainsi, une fake news peut tout à fait devenir virale, et se diffuser largement auprès de la population. D’autant plus qu’il a été démontré par une étude du MIT portant sur 126 000 tweets diffusés entre 2006 et 2017 que la propagation des fake news est six fois plus rapide que celle des faits avérés. Cela touche potentiellement jusqu’à 100 000 personnes contre un millier pour les tweets authentiques.

    C’est un fait avéré, un tweet factuel peine à franchir la barrière des 10 partages. La désinformation, elle, se voit amplifiée par jusqu’à 19 relayeurs successifs. 

    L’infiltration de bots sur de nombreuses plateformes vient “exponentialiser” cette dynamique..

    Les limites du paradigme

    Les algorithmes peuvent donc favoriser la désinformation, car les utilisateurs ont tendance à liker et partager le contenu en fonction des métriques d’engagement, et non de leur analyse rationnelle. De même, ils encouragent les comportements grégaires et l’homogénéisation des contenus. Cela engendre plusieurs problèmes :

    • Polarisation des débats ;
    • Violence et censure ;
    • Diffusion de contenus peu qualitatifs ou erronés ;
    • Expérience utilisateur frustrante ;
    • Comportements addictifs.

    En s’attaquant à la racine même du problème, le modèle de l’économie de l’attention généré par les algorithmes, Republike propose une plateforme novatrice. Partant du constat que tant que l’attention demeure la source de financement des plateformes il est structurellement illusoire de prétendre sortir de ces dérives, Republike repose sur un modèle de souscription annuelle qui redistribue la valeur aux utilisateurs. En supprimant de fait la dépendance financière à l’attention des utilisateurs, Republike a pu redéfinir radicalement la notion d’engagement et proposer un design où l’utilisateur devient responsable de la qualité des contenus et garant du respect de valeurs humaines universelles.

    Republike propose une alternative aux algorithmes
    Republike propose une nouvelle donne en matière d’algorithmes

    La vision de Republike

    Dans les faits, Republike est avant tout la première itération d’un tout nouveau modèle, où le média social est indépendant de l’économie de l’attention. La nouvelle définition de l’engagement permet d’aligner les récompenses individuelles sur le respect des valeurs de la communauté. Ces valeurs (respect, altruisme, qualité et compétence) se traduisent dans les fonctionnalités et se mesurent concrètement au travers des  interactions des membres du réseau.

    Comment l’algorithme de Republike mesure-t-il les valeurs communautaires ?

    L’algorithme de Republike combine différentes métriques pour déterminer le niveau de profil d’un membre. Les valeurs sont validées lors de l’inscription sur la plateforme, et énoncées dans sa Constitution :

    • Respect : La modération est conçue pour évaluer le contexte émotionnel (l’intention) sous-jacent au contenu posté, plutôt que la nature du contenu lui-même. La métrique respect dépend ensuite du pourcentage de modération dans la direction de la majorité.
    • Altruisme : il est mesuré en fonction des récompenses (pourboires et dons) attribuées aux autres membres en micro fractions de tokens reçus à la souscription et aux distributions régulières.
    • Qualité : elle est un produit de l’engagement généré (likes, commentaires) sur le nombre total de contenus postés sur la plateforme, et non rejetés par la modération.
    • Compétences spécifiques : elles sont évaluées (version cible) grâce au nombre de votes positifs nets pour les contenus postés par catégorie ou par hashtag.

    Mécanismes de récompense

    Les rétributions sont ensuite de trois types :

    • Profit financier ;
    • Pouvoir de vote dans la gouvernance ;
    • Visibilité.

    C’est un modèle qui promeut l’équité : en effet, il encourage chacun à être responsable et authentique. L’utilisateur devient acteur de la modération du contenu. Ce système est à l’opposé du modèle égalitaire classique, où les utilisateurs sont avant tout mus par l’instinct grégaire et poussés dans cette direction par la mécanique algorithmique.

    Le pay-to-own

    Les utilisateurs de Republike paient un abonnement annuel qui leur octroie des tokens utilitaires (AURE) qui représentent une réserve de valeur liée à l’évolution du projet. Dans la version cible, le capital de la plateforme prendra la forme d’une tokenisation. Les utilisateurs investissent donc dans la maintenance et le développement de Republike, tout en étant incités à agir individuellement dans l’intérêt collectif.

    Les objectifs de Republike sont très différents de ceux des réseaux sociaux classiques
    Les algorithmes de Republike sont à l’opposé des habitudes du secteur

    En combinant ce nouveau modèle d’engagement, le système de modération, le financement participatif de la plateforme et le partage de la valeur créée, Republike propose une alternative très solide à l’économie de l’attention en s’attaquant directement à ses points faibles.  

    Amenés à devenir propriétaires de la plateforme dans la version cible (Republike qui est actuellement en phase de réservation et n’est accessible directement que sur invitation, ouvre sa version bêta au public le 22/2) et n’ayant pas accès au partage de valeur s’ils n’en respectent pas la constitution, ses utilisateurs sont ainsi responsabilisés au maximum. Ils sont ainsi encouragés à participer à la co-construction du projet qui n’en est qu’à ses débuts. Ce nouveau modèle économique permettra-t-il de sortir du paradigme classique des algorithmes, focalisé sur le ciblage des individus et les revenus publicitaires ?

    L’article Comment les algorithmes façonnent nos opinions est apparu en premier sur Journal du Coin.

    De la gouvernance des Automated Market Makers – Les AMM décodés

    https://journalducoin.com/actualites/la-gouvernance-des-amm/

    Dans l’univers de la finance décentralisée (DeFi), comprendre les mécanismes de gouvernance d’un protocole est crucial. En effet, ils déterminent des paramètres très importants, et influencent les aspects économiques du protocole lui-même.

    De manière générale, la communauté crypto souhaite aller vers l’idéal de la décentralisation complète et de la gouvernance on-chain. Cependant, c’est plus facile à dire qu’à faire ! La gouvernance décentralisée est au cœur de nombreux débats. Il existe ainsi une multitude d’approches, de possibilités et de méthodes pour les organisations autonomes décentralisées (DAO) :

    • Délégation des votes ;
    • Pondération des votes – par la mise sous séquestre de jetons, ou l’engagement de l’utilisateur off-chain ;
    • Quorums ;
    • Comités spécialisés ;
    • Vote continuel ;
    • Actions on-chain découlant de votes off-chain grâce aux oracles ;
    • Délais temporels ;
    • Actions d’urgences et pouvoir spéciaux conférés à certaines adresses ;
    • Incitation au vote (via les airdrops, par exemple)…

    La gouvernance d’un protocole est assurée par les détenteurs du jeton dédié. Posséder des jetons de gouvernance d’un protocole donne donc droit à un pouvoir décisionnel. Le poids de ses votes peut dépendre de la quantité de jetons détenues, mais aussi d’autres paramètres, comme la durée de mise sous séquestre des jetons.

    Chaque protocole a ses règles, et sa propre vision de la gouvernance décentralisée. Nous allons passer en revue les principaux modèles, tout en donnant une vue globale des objectifs de la communauté DeFi.

    Uniswap

    La gouvernance d’Uniswap s’effectue via le jeton dédié, l’UNI, déployé à l’adresse suivante sur le mainnet d’Ethereum :

    https://etherscan.io/address/0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984

    Chaque détenteur d’UNI peu donc participer à la gouvernance d’Uniswap, à travers 3 places distinctes, qui ont chacune leurs fonctions :

    Le jeton de gouvernance UNI

    Le jeton UNI est un ERC-20 qui permet de déterminer le poids des droits de vote d’un utilisateur. Ses votes sont ainsi pondérés par la quantité de jetons délégués sur l’adresse dédiée.

    Les utilisateurs doivent ainsi déléguer leurs jetons sur une adresse unique – qui peut être la même que l’adresse personnelle du détenteur de jeton. Les jetons ne sont pas verrouillés : ils représentent simplement le pouvoir de vote de l’adresse de délégation.

    Les propositions

    Un proposal – une proposition – est du code exécutable, qui modifie le contrat de gouvernance d’Uniswap, ou celui qui gère sa trésorerie. Il faut déléguer un minimum de 0,25 % de tous les UNI en circulation sur une adresse pour que son propriétaire puisse faire des propositions.

    Le quorum minimum pour qu’une proposition soit acceptée est de 4 % de tous les UNI, soit 40 millions d’UNI. N’importe quel utilisateur ayant délégué des jetons sur une adresse peut alors voter (oui ou non) lorsqu’une proposition est active. Après cette étape, si un proposal est approuvé, commence une période d’attente (timelock) de 2 jours. Lorsque ce délai est écoulé, la proposition est implémentée.

    Processus de gouvernance sur Uniswap

    Le processus de gouvernance d’Uniswap comporte 3 étapes, et peut changer selon les décisions de la communauté.

    La prise de température

    Premièrement, il faut déterminer si la communauté désire voir un changement appliqué. On appelle cette étape le Temperature Check. Les propositions sont soumises à l’approbation de la communauté, via le forum de gouvernance. La discussion doit commencer par l’étiquette “Temperature Check – [Titre]”. Ensuite, les votants (détenteurs d’UNI) utilisent Snapshot pour exprimer leur avis. S’il y a suffisamment d’intérêt (au moins 25 000 UNI de votes “oui”), le changement proposé peut ensuite se confronter aux étapes suivantes. Les sondages via Snapshot durent 2 jours.

    Le Consensus Check

    Le Consensus Check est une phase de discussion plus formelle autour d’une proposition. Après la phase de prise de température, un nouveau sondage est organisé via Snapshot. Durant une période de 5 jours, les utilisateurs d’Uniswap peuvent alors choisir entre l’option “n’effectuer aucun changement” et tous les changements potentiels ayant de la traction.

    Un nouveau thread est alors créé dans le forum de gouvernance, étiqueté “Consensus Check – [Titre]”. Les utilisateurs soumettant un Consensus Check doivent gagner l’approbation de la communauté pour leur proposition, et la discuter. L’option recueillant le plus de votes gagne, et peut alors rejoindre la troisième phase. Le Consensus Check nécessite un quorum de 50 000 UNI pour passer cette étape. Si c’est l’option “n’effectuer aucun changement” qui l’emporte, alors le Consensus Check est fermé.

    Les propositions de gouvernance

    Un proposal inclut le résultat gagnant du Consensus Check et peut consister d’une à 10 actions. Le code proposé est alors audité par des auditeurs professionnels; le coût de l’audit peut être payé ou remboursé par la trésorerie de la communauté.

    Le nouveau fil de discussion dans le portail de gouvernance est étiqueté “Governance Proposal – [Titre]”. Il comporte les liens vers les sondages Snapshot, les discussions, ainsi que vers le rapport d’audit du code.

    La proposition sera ensuite déployée, en appelant la fonction propose() du contrat GovernorBravo et une période de vote de 7 jours débute. Si elle est approuvée, un délai supplémentaire de 2 jours (timelock) est requis avant son exécution.

    La notion de soft governance

    On parle de “soft governance” (gouvernance douce) ou de métagouvernance quant aux processus de gouvernance prenant place off-chain entre les membres de la communauté. Ils concernent les politiques, procédés et stratégies de gouvernance. Mettre à jour ces processus off-chain ne nécessite pas de vote on-chain de la part des utilisateurs.

    Une partie de la communauté DeFi considère la gouvernance d’Uniswap peu décentralisée. En effet, l’équipe de développement mis en place une fondation, dont la mission est de soutenir la croissance et la pérennité du protocole, de son écosystème et de sa communauté. Certains jugent que cette fondation a trop de pouvoir.

    Balancer

    Comme l’ont déclaré les développeurs de Balancer, la gouvernance est le cœur et le cerveau du protocole. N’importe quel détenteur de jetons BAL peut participer à sa gouvernance. Les utilisateurs qui le souhaitent peuvent ainsi utiliser leurs jetons pour voter quant aux décisions importantes concernant le protocole. Il peut s’agir de l’ajout de nouvelles fonctionnalités, ou de la modification de paramètres-clés au sein des smart contracts.

    Le jeton de gouvernance BAL

    Les jetons BAL garantissent un pouvoir de vote et servent à aligner les intérêts des détenteurs de jetons de gouvernance et les actionnaires – stakeholders – du protocole.

    Provision

    Le taux d’inflation des BAL était de 145 000 BAL par semaine lors du lancement de Balancer. Un calendrier de halving (réduction de l’émission de moitié) fut ensuite introduit : tous les 4 ans, comme sur Bitcoin. La quantité de jetons finale sera d’environ 94 millions de BAL, tous les détails peuvent être trouvés ici :

    https://docs.google.com/spreadsheets/d/1FY0gi596YWBOTeu_mrxhWcdF74SwKMNhmu0qJVgs0KI/edit#gid=0

    Émission monétaire des jetons BAL

    Distribution

    Les jetons BAL sont distribués aux entités suivantes :

    • La communauté – via le Liquidity Mining Program, qui peut être modifié par les processus de gouvernance ;
    • Les fondateurs de Balancer, conseillers et investisseurs ;
    • Le fonds de l’écosystème, pour attirer des partenaires stratégiques et les inciter financièrement. L’utilisation de ce fonds est aussi sujette à la gouvernance du protocole.
    • Le fonds d’investissement – Fundraising Fund : il sert à financer les opérations futures de Balancer Labs et soutien sa croissance.
    Allocation des jetons BAL au sein des acteurs de l’écosystème.

    Procédé de gouvernance

    Le procédé de gouvernance de Balancer se décompose en 5 étapes. Les propositions de modification ou d’extension du protocole sont appelées Request for Comment (RFC) – une réminiscence des Ethereum Request for Comment (ERC).

    Request for comments

    Tout d’abord, les propositions sont postées dans la section “Governance” du forum de Balancer avec l’étiquette [RFC] :

    https://forum.balancer.fi/c/governance/7

    Les RFC doivent respecter un formalisme précis. Ils comportent 5 sections décrivant la proposition :

    • Background (le fond) : la description du problème adressé ainsi que toute les informations nécessaire pour comprendre la proposition.
    • Core proposal (proposition principale) : la proposition d’amélioration du protocole en elle-même.
    • Dependencies (dépendances) : la description de tout ce qui est requis afin d’introduire le changement proposé.
    • Risk assessment : l’analyse des risques induits par un tel changement, ainsi que son impact sur le protocole, la communauté Balancer et son écosystème dans son ensemble.
    • Open questions : toutes les discussions et les informations complémentaires relatives au RFC.

    Discussion

    Durant cette étape, la communauté discute autour du RFC. Elle utilise notamment Discord, le forum et d’autres réseaux sociaux. Le débat est ensuite monitoré et retranscrit sur le forum. Durant cette phase, tous les retours sont les bienvenus, le but étant d’attirer l’attention sur le RFC.

    Proposition

    Après la phase de discussion, qui dure environ deux semaines, si le RFC a reçu suffisamment d’attention et de consensus préliminaire, il sera mis à jour sur le fil de discussion dédié dans le forum. Les diverses suggestions sont également ajoutées au RFC.

    Le fil de discussion devient [Proposal]. Les feedbacks additionnels y sont ajoutés, ainsi que les divers conseils, astuces ou avis.

    Une période minimale d’une semaine est nécessaire pour obtenir un consensus général.

    Snapshot

    Il s’agit de la phase de vote. La proposition est soumise à l’approbation de la communauté. Elle est postée sur un espace dédié :

    https://vote.balancer.fi/#/

    Résultat

    La proposition sera donc ensuite acceptée ou rejetée. Dans le cas où une votation échoue, une période minimale d’un mois doit s’écouler avant de réitérer l’opération.

    Dans le cas d’une approbation, il est ensuite nécessaire de superviser la correcte exécution des changements proposés. Ces derniers peuvent nécessiter l’action du portefeuille multisignatures de Balancer.

    Le portefeuille multisignatures

    Le Multisig de Balancer est déployé grâce à Gnosis Safe, le contrat de multisig le plus sécurisé sur Ethereum. Gnosis Safe a bien résisté à l’épreuve du temps.

    Le Multisig comporte actuellement 11 adresses, et requiert 6 signatures pour être valide. Ces adresses appartiennent à des membres respectés de la communauté. Cette configuration (n sur m adresses) peut être modifiée – toujours en passant par la gouvernance des détenteurs de BAL.

    Il faut noter que le Multisig n’a aucun pouvoir de décision. Son rôle est simplement de transférer on-chain les décisions prises off-chain par les détenteurs de jetons BAL. De même, le Multisig n’a aucun contrôle sur les fonds des fournisseurs de liquidité du protocole.

    L’objectif final de la DAO de Balancer est d’opérer entièrement on-chain. Cependant, ses smart contracts peuvent conférer certains pouvoirs à une adresse d’administration, qui est actuellement celle du Multisig :

    • Accorder des rôles à certains adresses via le contrat Authorizer ;
    • Configurer les frais d’échange ;
    • Définir les frais des flash loans ;
    • Extraire les frais de protocole collectés et/ou les jetons en excès (pour les airdrops), à partir du Vault, et vers n’importe quelle destination ;
    • Définir les adresses de l’oracle ;
    • Définir les adresses des relais.

    Le Multisig existe aussi sur les couches secondaires où Balancer est déployé : Polygon, Arbitrum et Optimism. Les signataires potentiels sont également nominés, ordonnés et listés par la communauté, pour plus d’efficacité en cas de substitution future.

    Un signataire peut être révoqué par décision des signataires restants, dans le cas où il ne se comporte pas correctement :

    • Actions contre les décisions prises off-chain par les votants ;
    • Ne pas remplir ses devoirs de signataire durant 3 mois ou 2 votes successifs.

    Les frais du protocole Balancer

    Les frais de protocole sont collectés par le protocole Balancer lui-même, et non par les fournisseurs de liquidité. Les détenteurs de jetons BAL peuvent activer ou non ces frais. Leurs usages peuvent être variés et sont également choisis par les votants :

    • Ajout dans un pool ;
    • Subventions pour améliorer le protocole ;
    • Financement de campagnes publicitaires ;
    • Subventions pour attirer des partenaires stratégiques ;
    • Assurance décentralisée ;
    • Prêts sur des protocoles externes ;
    • Paiement direct des gouverneurs de Balancer ;
    • Financement des fournisseurs de services de l’écosystème.

    Les protocol fees proviennent de deux sources : les frais de trading et les frais prélevés sur les flash loans. La proportion de ces frais est définie par la communauté des détenteurs de jetons BAL.

    Évolutions futures

    Idéalement, le protocole devrait être gouverné entièrement par les détenteurs de jetons BAL. Bien entendu, c’est un vrai défi, qui est global dans l’univers des plateformes d’échange décentralisées. C’est un sujet brûlant, et pour le moment, il n’y a pas de modèle idéal.

    La gouvernance décentralisée peut revêtir différentes formes, et il est nécessaire de trouver les mécanismes qui fonctionnent le mieux. En effet, chacun a ses avantages, mais aussi ses risques et ses failles. Il y a donc de nombreux progrès à faire en termes d’infrastructure, d’interfaces et d’outils.

    La communauté de Balancer a pris une approche empirique et précautionneuse. La route vers la décentralisation totale est semée d’embûches…

    Curve

    La gouvernance de Curve passe par son Organisation Autonome Décentralisée (DAO) :

    https://dao.curve.fi/dao

    Les détenteurs de jetons CRV utilisent Aragon pour la gouvernance, et contrôlent ainsi les fonctionnalités d’administration du protocole. L’implémentation modifiée de l’application de vote d’Aragon est disponible ici :

    https://github.com/curvefi/curve-aragon-voting

    Les jetons CRV et veCRV

    Pour voter via la DAO de Curve, les utilisateurs doivent verrouiller leur jetons CRV. Il existe un mécanisme incitatif pour augmenter le taux de participation – le boost de liquidité. Les fournisseurs de liquidité voient ainsi leur récompenses augmenter. N’importe quel détenteur de CRV ayant verrouillé des jetons peut voter quant à une proposition. Afin de créer un nouveau proposal, il lui faut atteindre un pouvoir de vote de 2500 veCRV.

    Une fois mis sous séquestre, les CRV deviennent donc des veCRVVote-escrowed CRV. La période de verrouillage peut être ajustée entre une semaine et 4 ans : elle impacte ainsi le pouvoir de vote, tout comme le bonus. Plus longtemps un utilisateur verrouille ses jetons, et plus de veCRV il reçoit. Le bonus maximal est un multiplicateur de 2,5 sur ses récompenses de fournisseur de liquidité.

    Le ratio de 1 pour 1 entre les CRV et les veCRV s’obtient en mettant sous séquestre les jetons pour la durée maximum de 4 ans. 1000 CRV verrouillés pour un an donnent un poids de 250 veCRV à l’utilisateur.

    Processus de vote

    Lorsque les CRV sont séquestrés, l’utilisateur peut voter à partir du bloc où une proposition est créée. Avec l’application de vote, c’est très simple :

    • Sélection de la proposition ;
    • Choix de l’option ;
    • Confirmation de la transaction.

    Toutes les propositions de la DAO de Curve se trouvent ici :

    https://dao.curve.fi/dao

    L’outil Snapshot permet aux utilisateurs de signaler leurs préférences quant aux propositions. Il est très utile, étant donné que les frais de gas sont important sur Ethereum. Le signalement des votes est utilisé pour jauger l’intérêt de la communauté.

    Il est également possible d’utiliser l’interface en ligne de commandes de la console Brownie pour interagir avec la DAO :

    https://eth-brownie.readthedocs.io/en/stable/interaction.html#using-the-console

    Le script Python pour créer de nouveaux votes est disponible sur le dépôt GitHub de la DAO :

    https://github.com/curvefi/curve-dao-contracts/blob/master/scripts/voting/new_vote.py

    Les votes sont ensuite décodés avec le script correspondant :

    https://github.com/curvefi/curve-dao-contracts/blob/master/scripts/voting/new_vote.py

    Création d’une proposition

    Les propositions doivent être formalisées en créant un nouveau fil de discussion sur le forum de gouvernance. Ensuite, les CIP (Curve Improvment Proposals) sont créés à travers Snapshot : https://signal.curve.fi/#/

    Gouvernance décentralisée : modèles et défis

    Grâce aux jetons de gouvernance, les protocoles DeFi permettent de décentraliser les prises de décision à travers leurs utilisateurs. La décentralisation de la gouvernance est une propriété activement recherchée, car elle révolutionne la façon d’administrer les marchés financiers.

    Le pouvoir de décision n’est ainsi plus concentré entre les mains d’une petite équipe de développeurs ou de gouverneurs. Bien que la DeFi n’en soit qu’à ses balbutiements, plusieurs modèles de gouvernance décentralisée ont déjà vu le jour. Ils présentent tous leurs challenges afin d’en arriver à l’idéal de décentralisation totale.

    Au-delà de la modification des paramètres gouvernant un protocole, la gouvernance décentralisée permet de catalyser sa croissance, et de pallier rapidement des failles potentielles. C’est possible, par exemple, en recrutant de nouveaux développeurs, en finançant des opérations marketing, ou encore en créant des fonds d’urgence.

    Il y a encore un long chemin à parcourir avant d’en arriver à une pleine décentralisation. Il est possible de combiner différentes incitations économiques pour accroître la participation des utilisateurs de ces plateformes d’échange décentralisées et sans permission.

    Les équipes de développement préfèrent adopter une approche prudente quant à la gouvernance décentralisée. En effet, ces protocoles sont expérimentaux; leurs smart contracts peuvent comporter des failles, requérant des actions immédiates. Cela rend donc la prise de décision des seuls utilisateurs délicate en cas d’urgence.

    Actuellement, les DAO combinent des procédés de gouvernance on-chain et off-chain, afin de faire évoluer un protocole dans la direction choisie par sa communauté toute entière. Au-dessus du simple aspect technique, c’est aussi une nouvelle forme d’organisation politique, bien plus flexible, accessible et équitable que les standards actuels de la finance traditionnelle.

    L’article De la gouvernance des Automated Market Makers – Les AMM décodés est apparu en premier sur Journal du Coin.

    Curve et l’invariant StableSwap – Les AMM décodés

    https://journalducoin.com/defi/curve-et-linvariant-stableswap-les-amm-decodes/

    Curve est un échangeur décentralisé (DEX) bâti sur Ethereum, optimisé pour le trading de stablecoins. L’automated market maker (AMM) de Curve utilise sa propre fonction de valeur, appelée invariant StableSwap. Ce protocole offre ainsi une haute liquidité, un faible slippage, et des récompenses de frais accrues pour les fournisseurs de liquidité.

    Le terme stablecoins réfère ici aux jetons fournissant une représentation stable d’un autre actif. Il peut s’agir ainsi de stablecoins algorithmiques représentant une monnaie fiat, comme le DAI, ou des versions “enrobées” (wrapped) du BTC, par exemple.

    Les réserves de liquidité de Curve (liquidity pools), dans leur forme la plus simple, sont des smart contracts utilisant la logique de l’invariant StableSwap. Ils permettent d’échanger deux ou plusieurs stablecoins. Dans cet article, nous allons étudier le protocole Curve en profondeur. Il permet de créer des pools aux fonctionnalités variées (comme les Lending Pools ou les Metapools). Curve intègre aussi parfaitement d’autres protocoles DeFi comme Synthetix.

    L’invariant StableSwap, le pilier central de Curve Finance

    Vue d’ensemble

    StableSwap est un faiseur de marché automatisé (AMM) pour les stablecoins, qui combine deux fonctions de valeur bien connues : les formules à somme constante et à produit constant. C’est un AMM particulièrement efficace en ce qui concerne les stablecoins, assurant un slippage minimal, et générant des intérêts stables pour les fournisseurs de liquidité.

    StableSwap solutionne les challenges de la stabilité et de la liquidité des stablecoins dans l’univers de la finance décentralisée. Les stablecoins sont indispensables, qu’il s’agisse de jetons algorithmiques comme le DAI, ou encore de jetons collatéralisés par des réserves de dollars, comme l’USDT, l’USDC, le PAX ou le TUSD. Ils sont largement utilisés par les arbitrageurs, et les échanges de grandes quantités de stablecoins peuvent s’avérer risqués avec les AMM classiques.

    De même, les fournisseurs de liquidité souhaitant générer des intérêts via leurs stablecoins de manière décentralisée recherchent les protocoles les plus sécurisés et rentables.

    C’est à ces fins que Michael Egorov a conçu StableSwap, le pilier central de Curve.

    Rappel : somme constante et produit constant

    La fonction de valeur la plus simple pour un AMM est l’équation de la somme constante. Considérons deux jetons x et y. La fonction à somme constante assure qu’après un échange, la somme des réserves de chaque jeton reste constante. Elle peut être généralisée pour i jetons différents :

    Curve - AMM - Somme constante

    Le prix correspond à la dérivée ( dxi / dxj) – qui sera toujours égale à 1 dans ce cas.

    Comme ce modèle ne fonctionne pas pour les marchés volatils (à moins d’ajuster constamment le prix, par exemple en utilisant des oracles), la fonction à produit constant permet de rééquilibrer les réserves de jetons. Le solde de chaque jeton en réserve reste constant :

    Curve - AMM - Produit constant

    Utilisé sur Balancer, le produit constant est efficace pour les échanges de jetons ERC-20. Cependant, il n’est pas optimal en ce qui concerne les stablecoins, à cause du glissement du prix (price slippage). Afin de maintenir un bon niveau de liquidité, il faut de grandes quantités de fonds.

    Avec StableSwap, l’invariant se situe entre la somme constante et le produit constant. Le prix (la dérivée dx/dy) va s’écarter légèrement de 1 seulement lorsque la quantité de jetons est équilibrée.

    Comparaison entre trois types d’invariants : somme constante, produit constant, et StableSwap. Nous avons deux jetons X et Y, avec des réserves de départ de 5 unités pour chaque, et un prix idéal de 1 $.

    Le coefficient d’amplification

    L’invariant de StableSwap comprend un paramètre appelé coefficient d’amplification (A). Il détermine si l’invariant est proche du produit constant (A=0) ou de la somme constante (A tend vers l’infini).

    Le modèle est très bon quant au slippage, en comparaison du produit constant, et peut fournir de la liquidité pour n’importe quel prix :

    AMM - Curve - Uniswap vs StableSwap - Slippage
    Comparaison du glissement du prix (slippage) : produit constant versus StableSwap.

    Lorsque le prix commence à dévier du point d’équilibre (1), l’invariant commence à opérer de façon suboptimale, mais fournit toujours de la liquidité. Si le coefficient d’amplification A est correctement paramétré, la liquidité sera plus importante qu’avec la fonction à produit constant.

    Construction de l’invariant

    Le prix déterminé par la fonction de valeur est équivalent à la pente de sa courbe – sa dérivée. Dans le cas de la somme constante, la courbe est une droite, tandis qu’avec le produit constant, elle forme une hyperbole. L’objectif de l’invariant StableSwap est d’être le plus proche possible d’une droite lorsque les quantités de jetons sont équilibrées. Si les réserves sont déséquilibrées, il va devenir hyperbolique.

    Rappels

    Les invariants (somme constante et produit constant) pour n jetons (i énumérations) sont notés comme suit :

    Si le prix des jetons est le même, alors D représente le nombre total de jetons dans le pool.

    Propriétés de l’invariant

    Quelles sont les propriétés désirées pour l’invariant ?

    • Faible glissement du prix (slippage) : faible courbure ;
    • Le slippage ne doit pas être nul : cela correspondrait à la fonction à somme constante, avec un levier infini ;
    • Puisque le produit constant équivaut à un levier nul, l’invariant doit se situer entre les deux.

    Le levier (leverage) est noté χ. Alors :

    • L’invariant de la somme constante est multiplié par χ ;
    • Le résultat est ajouté à l’invariant du produit constant.

    Construction

    Nous obtenons donc un invariant qui est équivalent au produit constant lorsque χ = 0 et à la somme constante lorsque χ = ∞. Cependant, χ doit être sans dimension et indépendant du nombre de jetons en réserve. L’invariant de la somme constante est donc multiplié par χDn-1 et ajouté à celui du produit constant. Nous avons alors :

    Curve- AMM - StableSwap invariant - Construction

    En supposant que l’équation est tout le temps vérifiée, le levier des échanges est χ.

    Le levier χ doit être dynamique pour les cas où le prix dévie fortement de 1. Lorsque le pool est parfaitement équilibré, χ est la constante 1; lorsque le pool se déséquilibre, χ tend vers 0. Nous avons alors :

    Curve - AMM - Levier dynamique

    Nous obtenons donc l’invariant StableSwap par substitution :

    Curve - AMM - Invariant StableSwap

    Pour un pool de xi jetons, D est calculé de telle sorte que l’équation reste vérifiée pour n’importe quel trade (xi pour xj). L’AMM va alors trouver une solution convergente par itération, pour D, ou pour xj lorsque toutes les autres variables sont connues.

    L’invariant StableSwap est au cœur de la version 1 de Curve. Il est conçu spécifiquement pour les swaps de stablecoin vers stablecoin, qui ont un prix fixé de 1.

    Avec la version 2 de Curve, l’équipe de développement a conçu un nouveau modèle d’AMM pour les jetons qui ne sont pas directement ancrés l’un à l’autre – par exemple l’ETH et le DAI.

    Curve : un AMM pour les actifs à ancrage dynamique

    Ce modèle d’AMM est aussi le résultat des travaux de Michael Egorov. Il assure de la liquidité pour des jetons qui ne sont pas ancrés entre eux, de façon plus efficace que le produit constant. Son invariant se nomme… CurveInvariant.

    La liquidité est concentrée en utilisant l’oracle de prix interne de l’AMM. Le prix ne dévie que lorsque les pertes engendrées par un swap sont inférieures au profit généré par le protocole. Cela permet d’assurer une meilleure liquidité, et de meilleurs rendements pour les fournisseurs.

    Transformation des invariants pour l’ancrage

    Tout d’abord, il faut changer l’espace des prix à l’aide d’une transformation T(). Tous les prix sont convertis dans une zone proche de 1.

    • Soit b = (b0, b1, …) le vecteur des soldes des jetons au sein du smart contract, bi étant le ième jeton supporté par le pool ;
    • Soit p = (p0, p1, …) l’ensemble des coefficients pour ces soldes.

    Les soldes réels b et les soldes transformés b’ peuvent ainsi être convertis entre eux de la façon suivante :

    b = T(b’, p) = (b0p0, b1p1, …)

    b’ = T-1(b,p) = (b0/p0, b1/p1, …)

    L’invariant est représenté par une hypersurface – une courbe dans le cas de seulement 2 jetons :

    Curve V2 AMM - Comparaison des invariants StableSwap, CurveInvariant et produit constant.
    Comparaison entre l’invariant du produit constant (pointillés), StableSwap (courbe bleue) et le CurveInvariant (courbe orange).

    L’hypersurface est définie par : I(b’) = 0

    Par convention, la fonction de l’invariant sera choisie de telle sorte que p0 = 1. De cette façon, si l’actif 0 est l’USD, tous les prix peuvent être mesurés par rapport à l’USD. L’invariant sera alors construit tel que :

    ∀ x, I (x, x, …) = 0

    L’invariant de StableSwap présente déjà cette propriété, ainsi que le nouvel invariant construit – CurveInvariant. Les dépôts (le solde des jetons dans les pools) vont déterminer l’hypersurface (ou courbe) de l’invariant.

    L’invariant D doit donc être constant pour la même courbe de telle façon qu’il soit égal à la quantité totale de jetons dans le pool lorsqu’il est à l’équilibre :

    • xeq = (xeq, xeq, …)
    • I(xeq, D) = 0
    • D = Nxeq

    N est le nombre de jetons. Le point d’équilibre xeq – le vecteur vers lequel p s’ancre – est désormais facile à obtenir, puisque D paramétrise l’hypersurface.

    Perte de réancrage (repegging loss)

    Afin de minimiser les pertes pour le système, il faut mesurer de façon précise les profits et les pertes. La valeur de l’invariant du produit constant au point d’équilibre donne une bonne mesure du PnL. Comme avec la transformation ci-dessus, par commodité, le PnL pour chaque solde sera converti à la puissance de 1. Nous obtenons ainsi la fonction de valeur du portfolio :

    Curve - AMM - Dynamic peg - Fonction de valeur du portfolio

    Nous pouvons observer que lorsque le coefficient p change, l’ancrage change aussi, mais pas les soldes.

    Le nouveau D est alors calculé pour les nouvelles valeurs b’. Ces D et pi sont substitués pour trouver xcp.

    Le protocole permet de réduire xcp, mais seulement lorsque la perte de valeur de xcp n’excède pas la moitié du profit réalisé.

    L’invariant CurveCrypto

    Enfin, l’invariant CurveCrypto pour les ancrages dynamiques est défini comme suit. Tout d’abord, commençons par l’invariant StableSwap :

    K sera défini différemment que lors de la construction de l’invariant StableSwap :

    Curve AMM - Dynamic pegs - Invariant CurveCrypto

    Où :

    • A est le coefficient d’amplification ;
    • γ est un petit nombre positif, qui représente la distance entre les deux lignes en pointillés sur le graphe ci-dessus.

    Ce nouvel invariant fonctionne comme une superposition de l’invariant StableSwap et de l’invariant du produit constant.

    Résolution de l’invariant CurveCrypto

    Pour résoudre l’invariant pour un xi ou un D particulier, on le définit sous une forme F(x, D) = 0 :

    Curve AMM - Dynamic pegs - Invariant CurveCrypto - Résolution

    Le protocole d’échange commence par résoudre l’équation pour D. Puis il la résout pour xj connaissant xi – prenant ainsi en compte la quantité de jetons i échangés. L’algorithme utilise la méthode de Newton :

    • Tout d’abord, calcul de D par itération :
    • Ensuite, déterminer :

    L’algorithme est optimisé pour l’Ethereum Virtual Machine (EVM). Ainsi, résoudre l’équation ne coûte que 35k gas. Les valeurs de départ sont très importantes, puisque la fonction n’est pas monotone. Après avoir effectué des simulations, l’équipe de Curve a décidé de les fixer comme suit :

    Curve AMM - Dynamic pegs - Invariant CurveCrypto - Valeurs de départ

    En utilisant différents cadres hypothétiques, les développeurs ont trouvé de bonnes valeurs pour la convergence de xi et de D.

    Algorithme de réancrange (repegging algorithm)

    Afin de calculer le PnL pour xcp nous devons suivre la croissance de xcp. Il est monitoré à chaque échange et lors de chaque dépôt dans le pool. Après chaque opération, la variable xcpprofit est multipliée par (xcp,après / xcp,avant) en partant de 1.

    Il y a également la variable xcpprofitréel qui garde la trace des pertes après p ajustements. Si l’ajustement p cause :

    L’oracle interne de prix est basé sur une moyenne mobile exponentielle appliquée dans un espace de dimension N (le nombre de jetons différents). Soient :

    • plast le dernier prix rapporté ;
    • t le temps écoulé (en secondes) depuis la dernière mise à jour ;
    • T1/2 la demi-période de la moyenne mobile exponentielle.

    Alors le prix de l’oracle est donné par :

    p* = plast (1 – α) + αp*prev

    α = 2-t/T1/2

    Le vecteur de prix est ensuite ajusté pour p* dans un espace logarithmique. Ce modèle est approximé afin de faciliter les calculs :

    Curve AMM - Dynamic peg - Oraclede prix

    s est la variation relative du prix.

    Frais dynamiques

    Les frais f vont de fmid à fout et sont déterminés comme suit :

    Curve AMM - IFrais

    Où :

    Les frais s’étalent de 0,04 % à 0,4 % selon la proximité du prix effectif avec celui de l’oracle interne.

    Les pools de liquidité sur Curve

    Vue d’ensemble

    Tous les pools de liquidité de Curve implémentent les invariants StableSwap ou CurveCrypto. Ils permettent aux utilisateurs de déposer et d’échanger deux jetons ou plus. Nous pouvons distinguer trois catégories de pools. Chacun d’entre eux présente différents niveaux de risque pour les fournisseurs de liquidité.

    Quel que soit le type de pool choisi, le fournisseur de liquidité est exposé à tous les actifs qui le composent, qu’il dépose un seul des actifs, ou plusieurs.

    Le vAPY représente le taux annuel de frais de trading récoltés par les fournisseurs de liquidité du pool. Ces frais augmentent avec le volume d’échange. Les jetons CRV sont créées (minted) pour les fournisseurs de liquidité, afin de garder la trace de leurs parts du pool. Ils reçoivent alors leurs intérêts via le mécanisme de retrait.

    Les Plains Pools

    Il s’agit de la forme la plus simple des pools StableSwap. Ils présentent au moins deux jetons, et tous les dépôts restent verrouillés au sein du smart contract en permanence. Ils ne peuvent pas être utilisés par d’autres pools, ou par d’autres protocoles DeFi. Ces pools sont idéaux pour les échanges de stablecoins, par exemple le 3Pool : USDT/USDC/DAI.

    Le code source des Plain Pools (écrit en Vyper) est disponible ici : https://github.com/curvefi/curve-contract/blob/master/contracts/pool-templates/base/SwapTemplateBase.vy

    Les Plain Pools présentent le niveau de risque le plus bas, puisque les liquidités restent au sein du smart contract. Les fournisseurs de liquidité ne supportent que le risque systémique liés à chacun des stablecoins.

    Les Lending Pools

    Il s’agit d’un type de pool plus avancé, présentant aussi plus de risque. En plus des intérêts générés via les frais de trading, les fournisseurs de liquidité vont générer des intérêts supplémentaires en prêtant (lend) leurs liquidités. Le lending est effectué grâce à des protocoles tiers, comme Compound, Yearn Finance, DyDx ou encore Aave.

    Il y a différentes implémentations de Lending Pools, qui dépendent des mécanismes d’enrobage (wrapping) des jetons. Les types principaux sont les cTokens et les aTokens, basés sur les protocoles Compound et Aave.

    Le risque est supérieur à cause des failles potentielles qui pourraient être présentes chez les protocoles tiers.

    Les Metapools

    Les Metapools permettent à leurs utilisateurs d’échanger un jeton contre un autre en utilisant un pool sous-jacent. Par exemple, il est possible d’échanger du BUSD (Binance USD) contre les jetons du 3Pool (USDT/USDC/DAI). C’est très utile, car cela évite la dilution des pools de base existants. De plus, cela permet de créer des pools contenant des actifs à faible liquidité.

    Le système des Metapools n’expose pas automatiquement les fournisseurs de liquidité à tous les jetons du Metapool. En effet, les Metapools permettent d’échanger le jeton sous-jacent contre les jetons de liquidité (LP tokens) du pool de base.

    Par exemple, un fournisseur de liquidité peut déposer des USDC dans le 3Pool. En échange, il recevra le jeton de liquidité du pool – le 3CRV. Ces jetons 3CRV peuvent alors être déposés dans le Metapool BUSD (BUSD et 3CRV). En retour, le fournisseur de liquidité recevra ainsi le jeton de liquidité du Metapool, busd3CRV. Ce jeton de liquidité peut ensuite être “staké” afin de recevoir des récompenses en CRV (plus de détails dans le chapitre consacré aux jauges de liquidité).

    Administration des pools sur Curve

    Seul le propriétaire d’un pool en possède les droits d’administration. Certains méthodes d’administration requièrent un processus de transaction en deux phases. Après une première transaction effectuant des mises à jour, un délai minimum peut être défini avant qu’une deuxième transaction ne confirme les changements. Les attributs des pools sont :

    • Propriété ;
    • Coefficient d’amplification ;
    • Frais de trading (incluant les frais d’adminsitration).

    Il est possible de mettre un pool en pause, mais seulement durant les 30 premiers jours suivant son déploiement. Ensuite, les fournisseurs de liquidité peuvent seulement retirer leurs fonds.

    Les jetons de liquidité de Curve (LP tokens)

    Les jetons de liquidité de Curve sont des ERC-20 dont les smart contracts ont évolué au cours du temps. Il y eut 3 mises à jour majeures du protocole (V1, V2, V3). Les codes sources en Vyper de chacune des versions des jetons LP sont disponibles ici :

    Les jetons de liquidité sont transférables et peuvent être déposés dans les Metapools, comme nous l’avons vu plus haut. Les fournisseurs de liquidité reçoivent également dans ce cas le jeton de liquidité dédié du Metapool.

    Les contrats de dépôt sur Curve

    Les contrats de dépôt d’un pool Curve sont appelés Deposit Zaps, et diffèrent suivant le type de pool. Par exemple, les Lending Pools peuvent n’intégrer que des jetons enrobés (wrapped coins), et les Metapools n’intègrent pas les jetons des pools de base.

    Dépôt dans les Lending Pools

    Les Lending Pools peuvent autoriser les échanges de jetons “enrobés” (wrapped tokens) et leur sous-jacent. Cependant, à cause de la taille limitée des smart contracts sur Ethereum, les dépôts et les retraits des jetons sous-jacents pour un Lending Pool sont gérés séparément de leur version “wrappée” – via le Deposit Zap. Les contrats de dépôt pour les Lending Pools peuvent être complexes, et proches de la taille limite d’Ethereum. La séparation des contrats permet de passer outre cette restriction.

    Dépôts dans les Metapools

    Les Metapools de Curve gèrent les échanges entre les jetons de pools de base, les jetons de liquidité associés (base pool LP tokens), et les jetons des Metapools. Il ne permettent cependant pas aux fournisseurs de liquidité de déposer et/ou de retirer des jetons disponibles dans les pools de base. Tout comme les Lending Pools, c’est dû à la taille maximale des msart contracts d’Ethereum.

    Le smart contract des Metapools zaps est disponible ici : https://curve.readthedocs.io/ref-addresses.html#addresses-metapools

    Les échanges d’actifs de classe différente (Cross Asset Swaps)

    Description

    Curve permet d’effectuer des Cross Asset Swaps très efficaces, grâce à l’intégration de Synthetix. Ce protocole permet de réaliser des conversions d’actifs synthétiques sans slippage. En le couplant avec le système de liquidité et les frais de Curve, les utilisateurs peuvent réaliser des cross-assets swaps pour de gros volumes, des frais de 0,4 %, et un glissement de prix minime.

    Le contrat dédié s’appelle SynthSwap :

    https://etherscan.io/address/0x58A3c68e2D3aAf316239c003779F71aCb870Ee47#code

    Mécanismes

    Supposons que nous possédons l’actif A, et que nous souhaitons l’échanger contre l’actif D. A et D doivent être de deux classes d’actifs différentes (par exemple, l’USD et l’ETH). Un pool Curve doit aussi autoriser l’échange entre A et D, avec un actif synthétique – dans notre cas sUSD et sETH.

    • L’actif A est échangé dans le pool Curve pour B, un actif synthétique de même classe ;
    • B est converti en C, un actif synthétique de la même classe que D ;
    • Puisqu’il peut y avoir des fluctuations de prix entre B et C, on établit une période de règlement. C’est fait via Synthetix et le SIP-37 – https://docs.synthetix.io/integrations/settlement/ ;
    • C est échangé sur Curve pour D à la fin de période de règlement.

    Durant la période de règlement, un jeton non-fongible (ERC-721) est créé par le contrat SynthSwap. Il représente ainsi un IOU – une reconnaisse de dette – pour le swap. Ce NFT est transférable, et sera brûlé lors du règlement. Il présente un identifiant unique, non-séquentiel, qui ne sera jamais réutilisé.

    Utilité

    Les Cross Asset Swaps sont efficaces pour de gros volumes (supérieurs à 1 million de dollars). Il y a des risque de frontrunning, à cause de la période de règlement. En effet, les participants au marché peuvent voir qu’un swap post-règlement va se produire, une fois que le premier trade est initié. Pour pallier le problème, D est donc gardé hors-chaîne durant la transaction de A vers C. Il y a alors plusieurs actions possibles qui rendent la prédiction du résultat du trade très difficile, et empêchent de trader contre :

    • Swap partiel de C vers D, puis conversion de C en de multiples actifs ;
    • Les utilisateurs peuvent effectuer le second swap n’importe quand ;
    • Pas de deuxième échange : l’utilisateur récupère C.

    Le NFT associé ne sera pas brûlé tant que C n’est pas complètement échangé, ou que le second swap est annulé. Si besoin est, les utilisateurs peuvent ajouter des swaps A -> B -> C, et le solde du NFT correspondant sera mis à jour.

    Le code source et la documentation concernant les Cross Asset Swaps se trouve ici : https://github.com/curvefi/curve-cross-asset-swaps

    La DAO de Curve

    Curve possède sa propre organisation autonome décentralisée.

    Vue d’ensemble de Curve DAO

    Curve est constitué d’un ensemble de smart contracts, connectés grâce à Aragon. Le système de vote d’Aragon a été modifié, afin de pondérer les votes des utilisateurs en fonction de la quantité de jetons de gouvernance (CRV) qu’ils verrouillent.

    Le code source de l’application de vote d’Aragon est ici :

    https://github.com/aragon/aragon-apps/tree/master/apps/voting

    L’implémentation de Curve est là :

    https://github.com/curvefi/curve-aragon-voting

    Enfin, les contrats de la DAO de Curve sont ici :

    https://github.com/curvefi/curve-dao-contracts

    Les utilisateurs de Curve doivent donc verrouiller leurs CRV afin de pouvoir voter. La mise sous séquestre des jetons leur donne également droit à un boost quant à la liquidité qu’ils fournissent.

    Les veCRV (vote-escroweed CRV)

    Lorsque les CRV sont verrouillés, Curve distribue des jetons veCRV à leurs propriétaires. La quantité de veCRV croît avec la durée de mise sous séquestre. Ils confèrent un boost de liquidité de 2,5x. Cela fonctionne comme un mécanisme incitatif, afin d’encourager les utilisateurs de Curve à participer à la gouvernance du protocole.

    Les veCRV sont des jetons ERC-20 (non-standards) gérés par le contrat VotingEscrow :

    https://etherscan.io/address/0x5f3b5dfeb7b28cdbd7faba78963ee202a494e2a2

    Ils présentent les caractéristiques suivantes :

    • Les veCRV ne peuvent pas être transférés ;
    • Verrouiller des CRV est la seule façon d’en obtenir ;
    • La durée de mise sous séquestre maximale est de 4 ans ;
    • 1 CRV verrouillé pour la période maximale donne droit à un solde de 1 veCRV ;
    • Le solde des veCRV décroît de façon linéaire en fonction de la période de déverrouillage restante des CRV correspondants.

    Les jauges de liquidité et le Minter de CRV

    Les jauges de liquidité (Liquidity Gauges) mesurent la liquidité fournie par les utilisateurs (en dollars). Chaque pool dispose de sa propre jauge. Ces jauges déterminent quelle quantité de CRV sera donnée au fournisseur de liquidité, à travers l’inflation. Elles présentent différentes pondérations. Ce sont les votes de la DAO qui déterminent le poids relatif des jetons au sein d’une jauge.

    Curve AMM - Jauge de liquidité
    Exemple de pondération d’une jauge

    Les poids des jauges peuvent être trouvés ici :

    https://dao.curve.fi/minter/gauges

    Trois smart contracts déterminent l’allocation des CRV, leur distribution et leur minting :

    • LiquidityGauge : mesure la liquidité fournie au cours du temps ;
    • GaugeController : ce contrat central maintient l’index des jauges, les poids, et détermine le taux de minting de CRV pour chaque jauge ;
    • Minter : crée les CRV en fonction des jauges.

    L’inflation des CRV est réduite par 21/4 chaque année, avec :

    • Un taux initial de 22% ;
    • Une provision initiale de 1,273 milliards de CRV ;
    • Un maximum asymptotique tendant vers 3,03 milliards de CRV.

    La courbe d’inflation des CRV ressemble à ceci :

    Curve AMM - Inflation des CRV

    Types de jauges

    Les jauges de liquidité sont regroupées par types au sein du contrôleur. Il est possible d’ajuster l’émission de CRV pour toutes les jauges d’un même type. Les types actuels sont :

    • Ethereum (stableswap pools) ;
    • Fantom ;
    • Polygon (Matic) ;
    • xDAI ;
    • Ethereum (crypto pools) ;
    • Arbitrum ;
    • Avalanche ;
    • Harmony.

    Récompenses de jauges

    Elles sont gérées par le contrat LiquidityGaugeReward. On l’utilise pour staker les jetons de liquidité dans un contrat de récompenses de staking Synthetix. Il assure ainsi la distribution des jetons en récompense. Le contrat SNX correspondant est ici :

    https://github.com/Synthetixio/synthetix/blob/master/contracts/StakingRewards.sol

    Les jauges de liquidité V2 et V3

    La version 2 de la jauge de liquidité de Curve comprend une interface ERC-20 complète : ainsi, les dépôts sont “tokénisés” et peuvent être directement transférés entre comptes, sans avoir à retirer et redéposer les fonds. Cela permet aussi d’activer ou de désactiver le staking à n’importe quel moment, et ce pour 8 jetons différents.

    La V3 des jauges de liquidité est la version actuelle déployée sur le mainnet d’Ethereum. Elle comprend de nombreuses fonctionnalités très pratiques, par exemple des coûts en gas réduits, ou encore la possibilité de rediriger les récompenses vers un compte alternatif.

    Le contrôleur de jauge

    Le smart contract GaugeController est déployé à l’adresse suivante :

    https://etherscan.io/address/0x2F50D538606Fa9EDD2B11E2446BEb18C9D5846bB

    Le Minter

    Le Minter de CRV est déployé ici :

    https://etherscan.io/address/0xd061D61a4d941c39E5453435B6345Dc261C2fcE0

    Son code source se trouve là :

    https://github.com/curvefi/curve-dao-contracts/blob/master/contracts/Minter.vy

    Les jauges de Curve pour les sidechains d’Ethereum

    Curve est également disponible sur plusieurs sidechains d’Ethereum. Les CRV sont aussi créés pour les fournisseurs de liquidité qui utilisent ces sidechains et les pools correspondants. Le smart contrat peut être trouvé ici :

    https://github.com/curvefi/curve-dao-contracts/tree/master/contracts/gauges/sidechain

    À haut niveau, l’implémentation de Curve sur une sidechain n’est pas chose aisée, car les contrats sont complexes. La DAO de Curve ne peut ainsi pas être directement implémentée sur les sidechains d’Ethereum. Cependant, certaines de ses fonctionnalités – comme l’émission des CRV – sont intégrées sur les sidechains où des pools sont actifs.

    Le processus de distribution des CRV sur une sidechain fonctionne ainsi :

    • Tout d’abord, le contrat RootChainGauge crée (mint) les CRV chaque semaine sur Ethereum et les transfère via un bridge sur la sidechain ;
    • Ensuite, le contrat ChildChainStreamer reçoit les CRV et les transfère vers le contrat RewardsOnlyGauge ;
    • Enfin, les fournisseurs de liquidité qui ont reçu leurs CRV sur le contrat RewardsOnlyGauge peuvent les réclamer à tout instant.

    On peut recevoir de multiples jetons en récompense sur une sidechain. Par exemple, le pool am3CRV sur Polygon donne droit à la fois à des CRV et à des WMATIC.

    Les frais sur Curve

    Les fournisseurs de liquidité peuvent réclamer leur part des frais collectés n’importe quand. Cependant, ils ne seront convertis en 3CRV qu’une fois par semaine. Les frais de trading sont toujours collectés dans le jeton de sortie lors d’un échange. Lors d’un dépôt ou d’un retrait, les fournisseurs de liquidité paient également des frais – de telle sorte qu’un swap requiert la même quantité de frais qu’un dépôt du jeton jeton d’entrée et qu’un retrait du jeton de sortie dans le pool.

    Les frais sont gérés par un contrat nommé Proxy Ownership. C’est ce contrat qui permet aux utilisateurs de retirer leur part de frais, les convertit en 3CRV, puis les envoie vers le Fee Distributor Contract.

    • Les frais sont ainsi collectés sous forme de plusieurs jetons différents ;
    • Puis ils sont échangés en USD ;
    • Enfin, il sont déposés dans le 3Pool pour obtenir des 3CRV en retour.

    Ce processus est appelé le “burn process“. Il est coûteux en gas, étant donné qu’il implique de nombreuses transactions complexes.

    Frais d’administration

    Chaque propriétaire de pool peut définir des frais d’administration pour son pool. Ils sont définis dans le contrat correspondant, et sont donc publics. Ils sont visibles en utilisant la commande admin_balances.

    Processus de burn

    Le burn process est spécifique à chaque jeton. En appelant la fonction PoolProx.burn, les jetons sont tout d’abord transférés dans le contrat Burner, avant d’appeler la fonction burn.

    Cette fonction convertit les jetons directement en 3CRV – ou prend le plus court chemin possible. En effet, cela peut demander plusieurs “sauts” avant de convertir les frais en 3CRV.

    Au total, il y a 9 contrats Burner différents, qui traitent différentes catégories de jetons. La séquence de la conversion est donc très importante, car il est nécessaire d’éviter de brûler le même jeton deux fois, pour des raisons de coûts et d’efficience.

    Distribution des frais

    Les frais sont distribués aux détenteurs de jetons veCRV via le contrat suivant (FeeDistributor) : https://github.com/curvefi/curve-dao-contracts/blob/master/contracts/FeeDistributor.vy

    Les récompenses sont calculées en se basant sur le ratio entre le solde en veCRV des utilisateurs et la provision totale de veCRV au début de chaque semaine, puis elles sont distribuées à la fin de la semaine.

    Les soldes en 3CRV sont tracés au sein du contrat FeeDistributor – token checkpoint – afin de déterminer la quantité de frais à distribuer.

    La propriété du protocole Curve

    Les fonctionnalités d’administration sont contrôlées par les détenteurs de veCRV – les CRV mis sous séquestre, via la DAO de Curve. L’appel aux fonctions d’administration n’est alors possible qu’après une proposition de gouvernance fructueuse.

    Plusieurs contrats assurent la propriété du protocoleprotocol ownership :

    • Le contrat de la DAO de Curve ;
    • L’agent Aragon ;
    • L’Ownership Proxy : il se décompose en deux contrats principaux, le PoolProxy, qui administre les contrats d’échange, et le GaugeProxy, qui concerne les jauges de liquidité ;
    • Les contrats de Curve.

    Il est donc possible de changer la propriété des proxies avec un vote de la DAO.

    Les agents de la DAO de Curve

    La DAO de Curve s’appuie sur Aragon pour assurer la gouvernance décentralisée du protocole. Les trois adresses propriétaires de l’Aragon Agent sont gouvernées par deux DAO indépendantes : la Community DAO et l’Emergency DAO.

    La DAO de la Communauté dispose de la propriété de deux comptes administrateurs :

    • Ownership Admin : il contrôle la plupart des fonctionnalités, et requiert un quorum de 30 % de la DAO et 51% de votes positifs de la communauté pour pouvoir effectuer n’importe quelle action.
    • parameter Admin : il contrôle les paramètres des pools, et requiert un quorum de 30 % ainsi que 51 % de votes positifs pour pouvoir effectuer une action.

    La DAO d’urgence – Emergency DAO – a le pouvoir de détruire les pools et les jauges de liquidité, en cas de circonstances extraordinaires. Les 9 membres de cette DAO sont des membres de confiance de l’équipe de Curve, et de la communauté DeFi dans son ensemble.

    Le Pool Proxy

    Le contrat PoolProxy est utilisé pour la propriété (indirecte) des contrats d’échange, et son code source se trouve ici : https://github.com/curvefi/curve-dao-contracts/blob/master/contracts/PoolProxy.vy

    Le Gauge Proxy

    Le contrat GaugeProxy est utilisé pour la propriété indirecte des jauges de liquidité; son code source se trouve là : https://github.com/curvefi/curve-dao-contracts/blob/master/contracts/GaugeProxy.vy

    Le registre de Curve

    Le registre de Curve est composé de contrats, qui peuvent être trouvés ici : https://github.com/curvefi/curve-pool-registry

    Le contrat AddressProvider est immuable et on l’utilise pour l’intégration on-chain des adresses actuelles des autres composants du registre. Il est déployé à la même adresse sur Ethereum et sur toutes les sidechains/layer 2 où Curve est actif. Il s’agit donc du point d’entrée pour les intégrateurs on-chain : tous les autres contrats au sein du registre ont un identifiant au sein du fournisseur d’adresse.

    Le contrat principal est Registry : il est utilisé pour localiser les pools, envoyer des requêtes et référencer les jetons supportés.

    PoolInfo est un contrat conçu pour une utilisation off-chain : il permet ainsi de requêter de grands ensembles de données à propos d’un pool.

    Enfin, le contrat Swaps est le contrat d’échange, utiliser pour trouver les pools pertinents et obtenir les taux d’échange lors d’un swap.

    Curve et la Metapool Factory

    La Metapool Factory permet à n’importe quel utilisateur de Curve de déployer un Metapool. Les codes source des contrats de la Factory sont accessibles ici :

    https://github.com/curvefi/curve-factory

    La Metapool Factory présente 3 composants principaux : le contrat principal (Factory), un contrat proxy pour déployer les Metapools (de la même façon qu’avec Uniswap V1), et les contrats de dépôt – les Zaps, qui “enrobent” les actifs déposés ou retirés d’un pool.

    Le Deployer

    La contrat de la Factory est déployé à cette adresse : https://etherscan.io/address/0xB9fC157394Af804a3578134A6585C0dc9cc990d4

    Son code source est accessible ici : https://github.com/curvefi/curve-factory/blob/master/contracts/Factory.vy

    Les utilisateurs doivent être précautionneux lors d’un déploiement d’un pool, car le contrat de la Factory présente des limitations. Ainsi, utiliser des jetons incompatibles peut entraîner la perte des fonds. De plus, les pools déployés via la Factory ne peuvent pas être mis en pause ou détruits, et ne sont pas éligibles aux récompenses en CRV.

    Les Pools

    En utilisant la Factory pour déployer un nouveau pool, le contrat proxy cible un contrat d’implémentation, basé sur le contrat BasePool. Ces contrats d’implémentations se trouvent sur le dépôt suivant :

    https://github.com/iamdefinitelyahuman/curve-factory/blob/master/contracts

    Ils sont déployés aux adresses suivantes :

    Les oracles

    Les Metapools comprennent des oracles de prix : ce sont des Time-Weighted Average Price oracles (TWAP), tout comme sur Uniswap.

    Les contrats de dépôt

    Les contrats de dépôt de la Metapool Factory permettent aux utilisateurs d’ajouter et de retirer de la liquidité en utilisant le jeton sous-jacent du pool. Ce sont donc des Zaps spécifiques : un seul contrat est utilisé pour tous les Metapools ciblant un des Base pools.

    Le migrateur de liquidité

    Ce contrat (LiquidityMigrator) sert à transférer la liquidité d’un Metapool à un autre, il est déployé ici :

    https://etherscan.io/address/0xd6930b7f661257DA36F93160149b031735237594

    Son code source est accessible sur le dépôt suivant :

    https://github.com/curvefi/curve-factory/blob/master/contracts/PoolMigrator.vy

    Curve, en conclusion

    Nous avons désormais couvert de façon extensive les mécanismes du protocole Curve. Curve.Finance est l’une des principales plateformes DeFi pour échanger des stablecoins sur Ethereum et ses solutions de couche secondaire. Elle et présente une haute liquidité, ainsi qu’un faible slippage. En termes de valeur totale verrouillée (total value locked ou TVL), nous parlons de plus de 5 milliards de dollars déposés dans ses pools.

    Curve Finance plateforme - Screenshot

    Curve est donc spécifiquement conçue pour le trading de stablecoins, et combine deux fonctions de prix pour fournir un revenu peu risqué pour les fournisseurs de liquidité.

    En alimentant les pools de liquidité avec des protocoles externes, les fournisseurs de liquidité peuvent alors obtenir des revenus supplémentaires. Il s’agit de la plateforme d’échange décentralisée (DEX) de stablecoins la plus avancée : un mustknown pour chaque utilisateur d’Ethereum qui souhaite comprendre l’automated market making dans l’univers de la finance décentralisée.

    Ressources

    L’article Curve et l’invariant StableSwap – Les AMM décodés est apparu en premier sur Journal du Coin.

    zkLink, le nouveau chouchou de la DeFi qui révolutionne le trading multi-chain

    https://journalducoin.com/defi/zklink-infrastructure-trading-multi-chaines-zk-rollups/

    Avec l’avènement des solutions de couche secondaires (Layers 2) pour différentes blockchains, comme Ethereum et Solana, l’industrie crypto est désormais multi-chaînes. Afin d’opérer entre ces différentes couches, zkLink propose une infrastructure de trading permettant d’accéder à l’ensemble des liquidités. zkLink est basé sur les preuves à divulgation nulle de connaissance (ZKP), plus précisément la technologie des zk-Rollups.

    Le Journal du Coin vous propose cet article promotionnel en collaboration avec ZkLink.

    zkLink, le multi-chaînes simplifié

    En 2024, l’univers de la finance décentralisée est composé de différentes blockchains, plateformes et applications. Nous avons en premier lieu les chaînes de couche primaire, comme Ethereum, Solana. Viennent ensuite les solutions de couche secondaire, permettant d’améliorer la scalabilité des blockchains primaires. Pour ce faire, de nombreux layers 2 utilisent les technologies basées sur les ZKP (zero-knowledge proofs). Les plus connues sont les zkRollups et les Optimistic Rollups.

    Dans cet univers multi-chaînes, développeurs et utilisateurs sont face à plusieurs défis :

    • La fragmentation des liquidités entre ces différentes solutions ;
    • Le déploiement complexe d’applications multi-chaînes ;
    • Les coûts élevés des échanges de jetons entre différentes chaînes ;
    • Les risques de sécurité inhérents à ces transactions.

    zkLink est une infrastructure conçue pour répondre à ces challenges : l’interopérabilité et la standardisation entre toutes les couches existantes. L’idée est de concevoir un protocole cross-chain pouvant répondre résoudre le problème de la fragmentation des liquidités, et de simplifier le déploiement d’applications multi-chaînes.

    Pour ce faire, le protocole zkLink utilise les preuves à divulgation nulle de connaissance. Les zkRollups permettent d’obtenir un haut débit pour des coûts de déploiement faibles. Voici un aperçu de ses fonctionnalités :

    • Agrégation multi-chaînes des liquidités entre les L1 et les rollups des L2 ;
    • Kit de déploiement rapide (SDK et API) ;
    • zkEVM (EVM intégrant les ZKP) conçue spécialement pour le trading.

    L’équipe de zkLink vient de dévoiler son nouveau livre blanc décrivant en profondeur son protocole. Nous allons présenter dans cet article ses principes de fonctionnement et sa feuille de route pour l’année 2024.

    zkLink et la synchronisation entre zkRollups et layers 1

    L’infrastructure multi-chaînes de zkLink peut être décomposée en 4 couches :

    • La couche de disponibilité des données (DA) ;
    • Le séquenceur ;
    • La couche d’exécution ;
    • La couche de règlement.

    Ces différentes couches peuvent être visualisées comme suit :

    Architecture générale de zkLink

    Comme nous allons le voir, les principales innovations de zkLink reposent sur les couches d’exécution et de règlement.

    Disponibilité des données (DA)

    Rappelons que la disponibilité des données de transaction est cruciale pour les rollups. En effet, ce sont ces données qui permettent de reconstruire l’état d’un rollup en cas d’interruption soudaine du service. zkLink utilise à la fois :

    • Les layers 1 (chaînes primaires) ;
    • Validium ainsi que plusieurs solutions modulaires comme Celestia ou encore EigenDA.

    Le séquenceur de zkLink

    Dans un système de rollup, le séquenceur est le module chargé de recevoir les transactions des utilisateurs. Il va ensuite les ordonnancer et produire des ensembles (les batches). Enfin, il expédie ces batches vers la couche de règlement. Le séquenceur est également chargé d’assurer la transmission des données de transaction, dans le cas où l’infrastructure utilise une couche de DA externe.

    Comme de nombreuses solutions basées sur les rollups, le séquenceur de zkLink est tout d’abord centralisé. Cependant, afin d’éviter les problèmes de centralisation, l’équipe de développement a pour but d’utiliser des solutions décentralisées, comme par exemple Espresso, Astria et Fairblock.

    La couche de règlement

    C’est à ce niveau que zkLink se distingue particulièrement. Le protocole s’appuie sur deux solutions pour assurer vérification des preuves et règlement des transactions.

    zkLink Nexus

    Tout d’abord, Nexus. Il s’agit d’un Layer 3 dédié au règlement des zkRollups des L2 d’Ethereum. Les transitions d’état et les transactions sont réglées sur les L2 d’Ethereum, puis elles sont finalisées sur le L1 :

    zkLink Nexus

    En premier lieu, les données de transactions du L3 (Nexus) et les ZKP sont postées sur les L2 zk connectés. Ensuite, une fois vérifiées par les L2, elles sont envoyées sur Ethereum. À chaque étape, les ZKP sont donc vérifiées pour assurer l’intégrité des transitions d’états et des transactions du L3.

    La synchronisation des états entre les zkRollups d’Ethereum passe par leurs bridges officiels :

    Les ZKP sont vérifiées pour assurer l'intégrité des transitions d'états et des transactions du 3e layer
    Les bridges officiels de la synchronisation

    Voici comment la messagerie fonctionne :

    • Premièrement, le séquenceur du L3 envoie les transitions d’état et les preuves à la chaîne primaire (donc aux ZKL2) : étapes 1, 2 et 3.
    • Deuxièmement, les ZKL2 vont calculer les hashes de synchronisation des contreparties et les envoyer à Ethereum (étapes 4,5 et 6).
    • Troisièmement, le contrat primaire sur Ethereum effectue la comparaison entre les hashes.
    • Finalement, s’ils sont identiques, il envoie les messages de confirmations à tous les ZKL2 à travers leurs bridges officiels (étapes 7, 8 et 9).

    Ce système permet d’assurer la transmission fiable et sécurisée des états entre les L2 et de synchroniser le tout.

    zkLink Origin

    En ce qui concerne le règlement de transactions entre différents L1 ou des OP-L2 (les L2 basés sur les optimistic rollups), zkLink a conçu Origin. Origin fonctionne avec tous les réseaux qui intègrent un système de vérification des preuves de type zk-SNARKs. Afin d’assurer une communication rapide et sécurisée entre Ethereum et les autres L1, zkLink s’appuie sur un réseau de messagerie cross-chain dit Light Oracle Network.

    Ce réseau est composé de nœuds de services indépendants comme LayerZero, zkBridge ou Chainlink. Le transfert des messages est donc décentralisé :

    zkLink - Light oracle network
    Principe de décentralisation des messages

    Le séquenceur d’Origin va tout d’abord envoyer les transitions d’état et les preuves aux L1 (étapes 1, 2 et 3). Ensuite, les chaînes secondaires envoient leurs hashes à travers le réseau d’oracles (étapes 4,5 et 6). Enfin, le contrat primaire calcule tous les hashes des chaînes secondaires pour les comparer avec les hashes venant de ces chaînes secondaires. S’ils sont identiques, les messages de confirmation sont envoyés aux chaînes secondaires via le réseau d’oracles (étapes 7,8 et 9).

    C’est ce système qui assure une synchronisation rapide et sûre entre les chaînes.

    L’environnement d’exécution : TS-zkVM

    zkLink a conçu un environnement d’exécution haute performances dédié au trading. Le zkLink Trading-Specific-zkVM (TS-zkVM) utilise des circuits ZK spécifiques :

    • D’un côté, les circuits principaux précompilés, dédiés aux transactions. Par exemple, il y a des circuits spécifiques aux dépôts, retraits et transferts de fonds, aux trading au comptant, aux produits dérivés, aux opérations de management (financement, liquidation), et ainsi de suite.
    • De l’autre, les extensions basés sur le langage Risc0. Elles permettent aux développeurs de réaliser des opérations utilisant la zkVM de Risc0, comme des circuits dédiés au grid trading, au trading d’options, etc. zkLink fournira un SDK dédié permettant d’effectuer les opération les plus communes, ainsi que des templates.

    Cette couche d’exécution se décompose en 3 sous-couches : stockage, exécution et agrégation.

    Le layer d'execution est composé de 3 étages, le stockage, l'exécution et l'agrégation
    Les 3 sous-couches du layer

    Les états sont stockés via une structure de données nommée Sparse Merkle Tree (SMT). Elle est optimisée pour assurer des transactions haute-fréquence. La performance au niveau des ZKP est donc particulièrement adaptée au trading et les SMT de zkLink sont conçus pour assurer des transitions d’état rapides et efficaces.

    La couche d’exécution repose sur les circuits ZK mentionnés plus haut. Quant à la couche d’agrégation, elle assure que les preuves de transaction sont traitées en batches, réduisant ainsi les coûts.

    Nous n’entrerons pas dans les détails dans cet article, ce sera pour plus tard ! En attendant, vous pouvez en savoir plus en parcourant la documentation de zkLink et son whitepaper.

    La feuille de route 2024 de zkLink

    Comme nous l’avons vu, zkLink est une infrastructure permettant d’améliorer la façon dont les utilisateurs et les développeurs naviguent dans l’univers inter-chaînes du Web3. En 2023, son équipe de développement a beaucoup travaillé, marquant ainsi l’année avec le lancement de la première solution de L3 cross-rollup : Nexus. Sa feuille de route technique pour 2024 est tout aussi remplie d’étapes et objectifs :

    ZkLink affiche des projets ambitieux qui seront implémentés tout au long de l'année
    Une roadmap bien remplie est annoncée pour 2024

    Les fonctionnalités principales verront le jour au premier trimestre : extensions des circuits ZK, solutions de disponibilités des données modulaires, systèmes d’identification ZK et oracles. L’équipe compte intégrant ces fonctionnalités à son SDK et embarquer des développeurs de talent dans l’aventure.

    Le deuxième trimestre devrait apporter encore plus de fonctionnalités, comme les API dédiées aux NFT, un marché d’enchères pour les preuves, et un mode hybride entre AMM et carnets d’ordres.

    Le troisième trimestre se concentrera sur l’amélioration de l”interopérabilité entre les rollups. De plus, l’équipe entamera le développement d’un nouveau système de preuve pouvant amplifier l’agrégation des liquidités.

    Enfin, le quatrième trimestre sera focalisé sur l’optimisation de l’existant. Une solution d’accélération matérielle devrait voir le jour, tout comme le séquenceur décentralisé et le nouveau système de preuve.

    zkLink offre un programme ambassadeur et les inscriptions sont ouvertes. Ainsi, deux programmes inciteront les développeurs à s’engager et seront dévoilés d’ici peu. En attendant, pour en savoir plus n’hésiter à consulter :

    L’article zkLink, le nouveau chouchou de la DeFi qui révolutionne le trading multi-chain est apparu en premier sur Journal du Coin.

    Balancer et les Automated Market Makers à moyenne constante – Les AMM décodés

    https://journalducoin.com/defi/balancer-automated-market-makers-a-moyenne-constante-amm-decodes/

    Balancer est un AMM (automated market maker ou teneur de marché automatique) versatile et flexible, déployé sur Ethereum. Il utilise le modèle de la moyenne constante : Balancer fournit l’équivalent des fonds indiciels pondérés de la finance traditionnelle.

    Introduction

    Un fond indiciel typique est construit autour d’un portfolio diversifié, réparti sur plusieurs actifs. Ce portfolio réplique un indice d’actifs financiers, comme le CAC40, le NASDAQ ou le SP500. En acquérant des parts du fonds, les investisseurs sont exposés de façon passive à tous les produits financiers ou valeurs mobilières de l’indice. Lorsque leur allocation change, les gérants du fonds sont responsables du rééquilibrage des actifs. Le fonds correspond alors à nouveau à l’indice, et ses gestionnaires récoltent des frais.

    Les fonds indiciels sont populaires, car ils présentent moins de risques qu’un portfolio géré de façon active par l’investisseur. C’est dû à leur nature diversifiée, et aux frais de gestion peu élevés.

    Avec les AMM de la finance décentralisée, les fonds indiciels pondérés deviennent des réserves de liquiditéliquidity pools. Puisque le modèle est décentralisé, il n’y a pas de gestionnaires de fonds. Ce sont les traders qui sont incités économiquement à rééquilibrer les portfolios, à travers les opportunités d’arbitrage.

    Le protocole Balancer utilise la fonction à moyenne constante pour rééquilibrer les actifs au sein de ses pools. C’est fait lors de chaque échange (trade). Cette fonction permet aussi aux utilisateurs de créer des pools de liquidité contenant plus de deux actifs (jusqu’à 8).

    Toutes ces opérations de rééquilibrage sont des opportunités financières pour les traders comme pour les fournisseurs de liquidité. Les frais d’échange (trading fees) sont payés aux fournisseurs de liquidité, qui reçoivent également des jetons BAL. Ce jeton de gouvernance natif du protocole leur est versé chaque semaine comme récompense, au prorata des fonds verrouillés. Les BAL permettent à leur détenteurs d’approuver ou de décliner les propositions de mise à jour du protocole, et même de modifier ses paramètres.

    Aperçu théorique du protocole Balancer

    Nous allons faire un peu de mathématiques pour comprendre la fonction à moyenne constante et son implémentation.

    Fonction de valeur

    Grâce à la fonction à moyenne constante, le protocole Balancer maintient (pour chaque trade) les valeurs de chaque actif en réserve en proportions constantes. Il y a entre 2 et 8 actifs dans un pool. La fonction de valeur à moyenne constante définit donc une surface, basée sur le poids et et le solde de chaque réserve de jetons.

    Où :

    • t est le nombre de jetons de chaque type composant le pool ;
    • Bt est le solde (balance) de chaque jeton dans le pool ;
    • Wt est le poids normalisé du jeton, e telle façon que la comme de tous les poids normalisés soit égale à 1.

    Le protocole Balancer utilise cette surface comme invariant. Cela permet donc d’avoir des pools à jetons multiples – cette fonction de valeur est une extension de la fonction à produit constant.

    Détermination du prix

    Prix du marché (spot price)

    Pour chaque paire de jetons dans un pool Balancer, le prix spot est défini par le ratio des soldes des réserves de chaque jeton, normalisés par son poids.

    AMM - Balancer - Prix spot

    Où :

    • Bi est le solde de la réserve du jeton i, le jeton qui est vendu par le trader. Ce jeton va donc dans la réserve (input) ;
    • Bo est le solde de la réserve de jetons o, le jeton acheté par le trader, qui quitte donc la réserve (output) ;
    • Wi est le poids du jeton i ;
    • Wo est le poids du jeton o.

    Ce modèle détermine ainsi le prix de chaque jeton d’un pool Balancer, et nous pouvons déjà en déduire quelques simples observations :

    • Si les poids des jetons en réserve sont constants, leur prix est uniquement déterminé par le changement des soldes de leurs réserves respectives ;
    • Ces soldes seront affectés par les échanges ayant lieu sur le marché, si le propriétaire du pool n’ajoute ou n’enlève pas de fonds ;
    • Le prix d’un jeton de sortie va croître, tandis que le prix du jeton correspondant en entrée va décroître, puisque la surface V reste constante.

    Comme pour les autres protocoles d’AMM, les arbitrageurs jouent un rôle lorsque le prix d’un jeton, déterminé par l’AMM, diverge de son prix sur d’autres plateformes d’échange.

    Prix effectif

    Le prix effectif est égal au prix spot lorsque les volumes d’échanges tendent vers zéro, et dévie du prix spot lorsque les volumes augmentent :

    AMM - Balancer - Prix effectif

    Où :

    • Ao est la quantité de jetons achetés par le trader ;
    • Ai est la quantité de jetons vendus par le trader.

    Formules de trading

    Les formules de trading suivantes sont calculées en gardant à l’esprit que la surface V est invariante. Sa valeur reste donc la même après un trade. En pratique, la valeur de V augmente, à cause des frais qui sont prélevés lors des échanges.

    Out-given-in

    On considère un trade de jetons i pour des jetons o. Tous les soldes des autres réserves de jetons restent les même.

    • Ai est la quantité de jetons i vendus par le trader ;
    • Ao est la quantité de jetons o achetés par le trader.

    Ao est calculé grâce à l’équivalence de la fonction de valeur avant et après le trade :

    On obtient ainsi :

    AMM - Balancer - Formules de trading -  Out given in

    In-given-out

    On calcule quelle quantité du jeton d’entrée i est nécessaire pour recevoir la quantité désirée de jeton de sortie o. La quantité Ai est fonction de la quantité Ao.

    Nous obtenons donc :

    AMM - Balancer - Formule de trading - In given out

    In-given-price

    Cette formule donne la quantité Ai de jetons i nécessaire pour changer son prix du prix spot SPio vers le prix spécifié SP’io. Cette formule est utile pour les arbitrageurs. Le prix spot désiré sera généralement le prix du marché sur d’autres exchanges. Les arbitrageurs génèrent donc du profit tant que le prix spot d’un jeton sur l’AMM diverge de son prix sur les marchés externes.

    Le profit maximal est atteint lorsque le trade d’arbitrage aligne le prix spot du jeton sur l’AMM exactement avec son prix sur les marchés externes. C’est donc ce qui permet à Balancer de suivre les prix des marchés externes : on parle d’on-chain price sensor.

    La quantité de jetons Ai de jetons i qu’un utilisateur doit échanger contre les jetons o afin que le prix spot de l’AMM change de SPio à SP’io est alors :

    AMM - Balancer - In given price

    Formules d’apport de liquidité

    N’importe quel utilisateur de Balancer peut déposer et retirer des actifs dans les réserves. Afin de garder la trace des actifs des fournisseurs de liquidité, le protocole crée des jetons LP (liquidity provider tokens ou pool tokens).

    La quantité de jetons LP est proportionnelle à la fonction de valeur du pool. Ainsi, lorsqu’un fournisseur de liquidité dépose des actifs dans le pool, et accroît la fonction de valeur de 10%, la quantité de pool tokens augmente également de 10%

    Il y a deux types d’opérations qui permettent aux fournisseurs de liquidité d’ajouter ou de retirer des jetons d’un pool : dépôt/retrait d’actifs pondérés (weighted asset deposit/withdrawal) ou dépôt/retrait d’actif unique (single asset deposit/withrawal).

    Weighted asset

    Ce type de dépôt doit respecter la distribution de chacun des actifs du pool. Ainsi, si un dépôt représente 10% du total des jetons en réserve :

    • La fonction de valeur augmente de 10% ;
    • Les pool tokens sont créés (minted) puis transférés au fournisseur de liquidité, et représentent donc 10% de la quantité totale de jetons LP.

    On calcule la quantité de jetons Dk (pour chaque jeton k) à déposer dans le pool pour créer Pminted jetons LP, étant donné la quantité totale Psupply de jetons LP, et les soldes Bk de chaque jeton k en réserve avant le dépôt :

    AMM - Balancer - Dépôt

    De la même façon, on calcule la quantité Ak de chaque jeton k retournée au fournisseur de liquidité lorsque qu’il retire Predeemed jetons LP, étant donné la quantité totale Psupply de jetons LP, et les soldes Bk de chaque jeton k en réserve avant le retrait :

    Dépôt d’actif unique

    Un fournisseur de liquidité peut souhaiter déposer dans un pool, mais sans être capable de fournir chaque actif dans les proportions. On parle alors de single asset deposit. Le protocole permet aux fournisseurs de liquidité d’obtenir des jetons LP même s’ils ne possèdent qu’un seul des actifs présents dans le pool.

    Un dépôt d’actif unique est équivalent à :

    • Déposer tous les actifs du pool proportionnellement à leur répartition ;
    • Vendre l’actif A pour obtenir en retour tous les autres jetons déposés.

    Le déposant va donc seulement dépenser l’actif A. La quantité de chaque autre jeton déposé dans le pool sera rendue à travers les trades.

    On utilise la fonction de valeur pour obtenir la quantité de jetons LP envoyée au fournisseur de liquidité lors d’un dépôt d’actif unique :

    AMM - Balancer - Création des pool tokens

    Soit Pissued la quantité de jetons LP correspondant au dépôt. La quantité totale de jetons LP avant le dépôt est Psupply. La quantité totale de jetons LP va augmenter proportionnellement avec la fonction de valeur :

    Où :

    • V est la fonction de valeur avant le dépôt ;
    • V’ est la fonction de valeur après le dépôt.

    Soient :

    • Bk le solde de l’actif k avant le dépôt ;
    • B’k le solde de l’actif k après le dépôt.

    Nous avons ainsi :

    Soit t le jeton déposé. Comme les soldes de chacune des autres réserves de jetons ne change pas, nous avons donc :

    Soit At la quantité de jeton t déposée. Le nouveau solde de la réserve de jetons t est donc :

    Par substitution, la quantité de nouveaux jetons LP émise est donc :

    Retrait d’actif unique

    Dans le cas d’un retrait d’actif unique, on calcule la quantité Predeemed de jetons t qui sera envoyée au fournisseur de liquidité, pour une quantité At de jetons LP, et un solde Bt de jetons t avant le retrait :

    Sans frais de trading, un fournisseur de liquidité effectuant un dépôt d’actif unique pour une quantité At de jetons t obtiendra la même quantité At de jetons, après avoir retiré la quantité correspondante Pissued de jetons LP.

    Un dépôt (ou un retrait) d’actif unique dans un pool est l’équivalent d’échanger (1 – Wt) jetons pour tous les autres actifs du pool. Puisque le pool contient déjà la quantité Wt de jetons t, le protocole ne prélève pas de frais lors de cet échange.

    Les réserves de liquidité de Balancer

    Les liquidity pools de Balancer sont des smart contracts flexibles, qui définissent les règles de l’échange de jetons entre ses utilisateurs. La contribution principale du protocole Balancer est de permettre à ses utilisateurs de définir n’importe quel type de composition et de paramètres pour les liquidity pools. Il est possible de personnaliser entièrement les pools; il y en a donc différents types.

    Réserves pondérées – weighted pools

    Vue d’ensemble

    Grace à la fonction de valeur, les weighted pools sont hautement configurables. Il peuvent ainsi inclure jusqu’à 8 jetons différents, même s’ils n’ont aucune corrélation de prix.

    AMM - Balancer - Pools multi-jetons
    Les pools 50/50 et multi-jetons de Balancer.

    Au sein des weighted pools, chaque jeton peut donc être échangé contre les autres. Ainsi, le nombre de paires de trading augmente significativement avec le nombre de jetons disponibles.

    AMM - Balancer - Pools multi-jetons et paires de trading
    Nombre de paires de trading en fonction du nombre de jetons dans un pool.

    Fonctionnalités

    Les weighted pools offrent également aux fournisseurs de liquidité plus de flexibilité en termes d’exposition à un actif particulier. Cela a donc des conséquences sur les pertes impermanentes. Plus le poids d’un jeton est important dans un pool, et plus la perte impermanente sera élevée en cas de changement de prix.

    Les utilisateurs peuvent alors affiner la composition d’un pool en fonction de leur stratégie. Un actif aura plus de poids si l’on suppose que son prix va augmenter; tandis qu’un pool 50/50 implique implicitement que la valeur des deux jetons restera proportionnelle sur le long terme.

    AMM - Balancer - Exemples de répartition
    Exemples de compositions.

    Cependant, lorsqu’on augmente le poids d’un actif relativement aux autres, la réduction des pertes impermanentes entraîne plus de slippage.

    AMM - Balancer - Pertes impermanentes
    Comparaison des pertes impermanentes pour différentes compositions.

    Réserves stables – stable pools

    Les stable pools sont dédiés aux actifs qui s’échangent généralement à parité. Il s’agit par exemple des stablecoins, ou des jetons synthétiques. Ces pools utilisent un modèle appelé Stable Maths, qui provient du protocole Curve. Stable Maths réduit ainsi le slippage, et améliore l’efficacité du capital.

    Stable Maths

    Ce modèle d’AMM combine les fonctions à somme constante et à produit constant pour former un nouvel invariant. Cet invariant permet d’échanger des actifs qui ont le même prix (ou sont liés au même actif).

    L’invariant est déterminé en résolvant l’équation suivante pour D :

    AMM - Balancer - StableMaths invariant

    Où :

    • n est le nombre de jetons ;
    • xi le solde de chaque jeton i ;
    • A le cœfficient d’amplification.

    Pour plus d’informations sur la méthode employée pour calculer D, nous pouvons jeter un œil au dépôt GitHub de Balancer. Cette fonction peut ainsi être utilisée pour calculer l’invariant.

    Voici à quoi ressemble la fonction de prix avec A tendant vers l’infini :

    Caractéristiques

    Le modèle permet aux utilisateurs d’effectuer des échanges à haut volume sans impact significatif sur le prix des jetons. Le spread est ainsi plus étroit qu’en utilisant une simple fonction à somme constante.

    Puisque le protocole est le même pour les stable pools et pour les autres pools de jetons, les arbitrageurs qui échangent un jeton lié à 2 stablecoins différents peuvent échanger un stablecoin pour l’autre, en combinant les échanges en un trade unique (batch swap).

    Les pools MetaStable de Balancer

    Les MetaStable Pools sont l’extension des Stable Pools dédiée aux jetons ayant un taux d’échange connu. Le protocole utilise Stable Maths et le combine avec les taux d’échange. Ces pools sont efficace quand il s’agit d’échanger des jetons non-liés, mais dont les prix sont hautement corrélés.

    Cela inclut, par exemple, les jetons avec des dérivés, comme le WETH et le wstETH.

    Les pools d’amorçage de liquidité

    Les Liquidity Bootstrapping Pools permettent à leur propriétaire de définir de quelle façon le poids des différents jetons va changer au cours du temps (dynamic weight). Le propriétaire du pool a tous les droits. Il peut ainsi définir les valeurs de départ, et peut aussi mettre les échanges en pause. La distribution des actifs dépend donc du temps et peut changer comme on le souhaite. Par exemple, elle peut passer de 1%/99% à 99%/1%.

    Ces LBS présentent plusieurs avantages :

    • Fair market (marché équitable) : les LBP qui se lancent avec des prix élevés découragent les whales et les bots de drainer la liquidité du pool dès son ouverture. Utiliser les LBP pour les premiers stades du lancement d’un jeton aide à assurer sa large diffusion.
    • Faible capital requis : l’équipe de développement d’un jeton peut utiliser un LBP pour amorcer sa liquidité. Elle peut le faire avec moins de fonds qu’en créant un pool 50/50. Par exemple, une équipe lançant un pool TOKEN/DAI va bénéficier de la réduction de la quantité de DAI requise, disons 10 ou 20% plutôt que 50%. Les fonds économisés peuvent alors être utilisés ailleurs. De pus, la volatilité lors de la découverte du prix sera réduite. Enfin, l’équipe aura accès à plus de DAI à la fin de l’opération.
    AMM - Balancer - Liquidity Bootstrapping Pools
    Passage d’une distribution 80% TOKEN / 20% DAI à une distribution 20% TOKEN / 80% DAI.

    Les Liquidity Bootstrapping Pools sont adaptés aux ventes de jetons “équitables” en permettant aux petit investisseurs de rentrer.

    Les Managed Pools de Balancer

    Les Managed Pools tirent avantage de la nature flexible du protocole Balancer. Ils permettent ainsi de créer des pools personnalisés, comportant jusqu’à 50 jetons différents. Les gestionnaires de fonds peuvent utiliser le mécanisme de pondération des actifs, et composer des stratégies complexes. Par exemple, on peut définir un indice dédié à un ensemble de jetons particulier.

    Les Managed Pools ont aussi des fonctionnalités classiques, telles que la possibilité de mettre en place des frais de gestion, ou des listes blanches pour les fournisseurs de liquidité.

    Les Boosted Pools

    Les Boosted Pools combinent les Stable Pools à des protocoles externes, comme Aave, et confèrent aux fournisseurs de liquidité et aux swappers une efficacité optimale. Les traders bénéficient des liquidités de Balancer pour leurs échanges de stablecoins, tandis que les fournisseurs de liquidité génèrent des intérêts supplémentaires.

    Cela améliore l’efficacité du capital, car les fournisseurs de liquidité peuvent prêter leur jetons “inactifs” sur un protocole externe. Ils recevront les intérêts correspondants en plus de leur part des frais de trading.

    De plus, chaque jeton d’un Boosted Pool peut être échangé avec les autres, et avec les pools tokens imbriqués (comme les aTokens d’Aave). Cela accroît leur liquidité.

    Les Boosted Pools combinent les Linear Pools et les Phantom Pool Tokens pour optimiser la consommation de gas lors des processus de mint et de burn des jetons LP :

    • Les Linear Pools utilisent le modèle Linear Maths pour faciliter les échanges entre deux jetons ayant un taux d’échange connu. Les frais peuvent être positifs ou négatifs, pour inciter les arbitrageurs à maintenir le ratio souhaité ;
    • Phantom Boosted Pool Tokens (Phantom BPT) est une fonctionnalité utile qui permet de réduire les frais de gas lors de la création et de la destruction des jetons LP. Tous les jetons LP sont émis lors de la création du pool, et sont conservés par le pool lui-même. Au lieu d’appeler les fonctions join et exit, les fournisseurs de liquidité utilisent les Batch Swaps pour trade vers un jeton LP (join) ou depuis un jeton LP (exit).
    Les opérations dans les Boosted Pools, avec ou sans PhantomBPT

    Les Boosted Pools augmentent la profondeur de la liquidité des stablecoins et des jetons des linear pools. En effet, ils relient ces jetons et leurs versions dérivées au sein du même pool. De même, ils augmentent les intérêts générés par les fournisseurs de liquidité.

    Balancer et ses pools personnalisés – Custom Pools

    Balancer est un protocole sans permission. Ainsi, n’importe quel utilisateur peut créer son propre AMM. Il peut se focaliser sur la création de fonctions de prix personnalisées, dédiées à des stratégies de trading spécifiques. Lorsqu’un Custom Pool est intégré au protocole, il peut accéder à la liquidité déjà existante sur Balancer. Les gestionnaires de pool peuvent définir des conditions d’entrée de sortie.

    Les frais sur Balancer

    Il y a différents types de frais sur Balancer, qui incitent économiquement les utilisateurs à participer à la croissance du protocole.

    Les frais de swap

    Ce sont les frais que les utilisateurs paient pour échanger des jetons avec un pool. Ils s’appliquent donc à chaque swap. Ils récompensent les fournisseurs de liquidité pour leur travail, et vont directement dans le pool, augmentant ainsi son solde. De ce fait, les fournisseurs de liquidité reçoivent automatiquement leur part des frais.

    Quantitéfrais = Quantitéjetond’entrée * swapFee

    Frais statiques et frais dynamiques

    Le créateur d’un pool définit des frais et un propriétaire. Si le

    Bibliographie

    L’article Balancer et les Automated Market Makers à moyenne constante – Les AMM décodés est apparu en premier sur Journal du Coin.

    ETF Bitcoin : Hester Peirce tacle ses confrères de la SEC

    https://journalducoin.com/bitcoin/etf-bitcoin-approuves-hester-peirce-securities-exchange-commission/

    Les régulateurs financiers américains ont approuvé, la nuit dernière, les ETF sur Bitcoin au comptant. Ces véhicules d’investissement permettront aux américains de s’exposer au cours du bitcoin via leur compte titre. Une décision très attendue, qui aura divisé les fonctionnaires de la Securities and Exchange Commission, non pas en leur qualité de juristes, mais plutôt en fonction de leur opinion. De longues tergiversations commentées par Hester Peirce, commissaire à la SEC, non sans humour et ironie.

    Hester Peirce, une commissaire qui n’a pas la langue dans sa poche

    Hester Peirce est une juriste américaine au parcours que nombre lui envient. Elle a tout d’abord débuté sa carrière en tant que greffière pour la Cour fédérale des réclamations des États-Unis. Ce tribunal fédéral se charge des réclamations financières faites à l’encontre du gouvernement. Après y avoir passé trois ans, elle devint avocate au sein de la Division de la gestion des investissements. Puis, en 2004, elle exerça en tant qu’avocate du commissaire (Paul Atkins). Après la crise financière de 2008, Peirce rejoignit le Comité sénatorial des banques, du logement et des affaires urbaines, dans l’idée de réformer la réglementation financière.

    Hester Peirce – crédits photo : Fortune Brainstorm Tech 2019

    C’est en 2015 qu’Obama la propulsa à la Securities and Exchange Commission, malgré les réticences des sénateurs. En effet, elle s’opposait à la divulgation publique des dons politiques effectués par les entreprises américaines. Des secrets à garder satisfaisant tous les partis, puisque Donald Trump la nomma commissaire à la SEC en 2017.

    Peirce s’est comportée comme une juriste américaine libérale, dans le sens premier du terme. Elle a toujours milité en faveur d’une microgestion réglementaire, de la liberté économique, et de l’acceptation des cryptoactifs comme produits négociables en bourse.

    La tâche damnée : réguler les ETF Bitcoin

    Hester Peirce a écrit de nombreux articles, et son style est inimitable. Son billet publié sur le site officiel de la SEC, suite à l’approbation des ETF Bitcoin, se veut très caustique. Elle n’hésite pas à citer Shakespeare pour ironiser sur l’immobilisme pesant de ses pairs.

    ETF Bitcoin - Hester Peirce - Déclaration officielle

    Cette décision marque donc la fin d’une saga inutile, mais lourde de conséquences. Dès le premier paragraphe, elle souligne que ces ETF spot sur Bitcoin, qui furent dans l’attente d’une approbation durant 10 ans, sont pourtant semblables à de nombreux produits financiers sur d’autres commodités, acceptés quant à eux sans sourciller.

    Après avoir rappelé ce que sont les ETP (Exchange Traded Products) et donc les ETF (Exchange Traded Funds) au comptant, elle parle de son expérience personnelle, à travers la question qu’on lui a la plus posée.

    « Quand la Commission approuvera-t-elle un ETP spot Bitcoin ? » Pour des raisons que j’ai expliquées à maintes reprises auparavant, la logique de cette longue série de dénégations laisse perplexe. Il était impossible de prédire les délais d’approbation des ETP spot Bitcoin, car le processus d’examen de ces dépôts ne ressemblait pas aux processus assez simples d’approbation d’ETP comparables.

    Hester Peirce

    En d’autres termes, la SEC a traité ces demandes différemment des autres. Elle précise que l’opinion personnelle des régulateurs sur le sous-jacent – Bitcoin – en est la cause, et va plus loin. L’indécision de la SEC aurait poussé ceux qui voulaient s’exposer au BTC à investir dans des produits déjà régulés, mais moins efficients ! Elle cite en particulier les futures – contrats à terme. En effet, il n’y avait aucune base légale pour les interdire, bien qu’ils soient plus complexes à gérer pour leurs émetteurs, et plus coûteux pour les investisseurs.

    Hester Peirce cite les justifications de l’approbation récente des ETF Bitcoin au comptant :

    L’ordonnance d’approbation d’aujourd’hui indique que le Conseil conclut désormais que les moyens de « prévenir la fraude et la manipulation » ont été démontrés, car les prix sur le marché à terme [les futures du Chicago Mercantile Exchange] et des marchés au comptant [les exchanges classiques] ont été fortement corrélés au cours des deux dernières années et demie. Nous avons refusé plusieurs demandes au cours de cette période, privant les investisseurs de la possibilité de s’exposer au bitcoin, d’une manière plus pratique et plus conviviale pour les investisseurs.

    Hester Peirce

    Il s’agit d’un tacle en bonne et due forme auprès de ses collègues. Selon Peirce, l’organe de régulation a « gaspillé une décennie d’opportunités pour faire son travail ». Si les standards appliqués aux commodités classiques avaient fait foi, les ETF Bitcoin eurent été approuvés bien avant.

    La réputation de la SEC mise à mal

    Sans évoquer le piratage du compte X de l’institution le 9 janvier, Peirce ne cache pas son malaise quant au manque de crédibilité du gendarme financier américain.

    L’ordonnance d’aujourd’hui ne répare pas les nombreux dommages causés par le traitement disparate des ETP Bitcoin au comptant.

    Premièrement, notre traitement arbitraire et capricieux des applications dans ce domaine continuera de nuire à notre réputation bien au-delà des cryptos. […]

    Deuxièmement, notre attention disproportionnée sur ces dossiers a détourné des ressources humaines limitées d’autres travaux essentiels à la mission. En dix ans, des millions de dollars ont probablement été consacrés au blocage de ces applications. […]

    Troisièmement, nos actions ont brouillé la compréhension du rôle de la SEC. […]

    Quatrièmement, en ne respectant pas nos normes et processus habituels en matière d’examen des ETP Bitcoin au comptant, nous avons créé une frénésie artificielle autour d’eux. […]

    Cinquièmement, nous avons aliéné une génération d’innovateurs de produits au sein de notre espace.

    Hester Peirce

    La commissaire semble donc exaspérée par le traitement particulier que la SEC a fait subir aux ETF Bitcoin spot. Ce manque de consistance a fait perdre au régulateur la confiance du public. Ces tergiversations inutiles auront coûté des millions de dollars. Les innombrables refus seraient dus au mépris des fonctionnaires de la SEC pour Bitcoin. L’industrie crypto a perdu un temps précieux pour lancer des produits innovants, à cause d’une régulation poussive.

    ETF Bitcoin - Hester Peirce - Déclaration officielle

    Hester Peirce conclut que cette décision finale est à la fois matière à réflexion et à célébration. Elle termine sa missive avec une phrase que les libéraux apprécieront, venant d’un régulateur financier :

    Je célèbre le droit des investisseurs américains d’exprimer leurs réflexions sur Bitcoin, en achetant et en vendant des ETP Bitcoin au comptant. Je rends hommage à la persévérance des acteurs tentant de mettre sur le marché un produit que les investisseurs souhaitent. Je salue leur persévérance, face à 10 ans d’obstruction de la Commission.

    Hester Peirce

    La commissaire semble donc particulièrement soulagée par le dénouement du soap opera des ETF Bitcoin américains. Le marché nous dira, dans les mois suivants, quelle est la demande réelle pour ces produits financiers. Quoiqu’il arrive, le JdC continuera de vous en informer !

    Pour vous, c’est décidé, vous dites « oui » aux cryptomonnaies ! Faites le plein de Bitcoin, d’Ether et autres tokens sur Binance, leader des exchanges et bénéficiez de 10 % de remise sur vos frais de trading.

    Lien commercial

    L’article ETF Bitcoin : Hester Peirce tacle ses confrères de la SEC est apparu en premier sur Journal du Coin.

    Uniswap et l’évolution des AMM décentralisés – Les AMM décodés

    https://journalducoin.com/defi/uniswap-et-levolution-des-amm-decentralises-les-amm-decodes/

    Les premiers modèles d’AMM (automated market makers) pour la finance décentralisée virent le jour sur Ethereum, grâce aux smart contracts. Originellement, réaliser des échanges décentralisés avec des réserves de liquidité (liquidity pools) était un challenge. Les premières solutions furent proposées par Bancor (courbe de liaison ou bonding curve) et Uniswap (fonction à produit constant).

    Ces protocoles étaient loin d’être parfaits. Ils pouvaient être grandement améliorés en termes d’efficience (frais, slippage, profondeur de marché) et de fonctionnalités.

    Les chercheurs travaillant sur les AMM ont proposé de nouveaux modèles. Conjointement, les développeurs des plateformes d’échange décentralisées (DEX) ont constamment amélioré leur expérience utilisateur, et ajouté de nouvelles fonctionnalités.

    Nous présenterons ici les principales améliorations du protocole Uniswap, ainsi que les nouvelles fonctions de prix qui servent de fondations pour les AMM les plus élaborés.

    Uniswap V2

    Selon les mots de ses développeurs eux-mêmes, la première version d’Uniswap était une preuve de concept : un nouveau type de place de marché décentralisée. Après les premières expérimentations, le protocole devait être amélioré. Hayden Adams, Noah Zinsmeister et Dan Robinson publièrent donc le livre blanc d’Uniswap V2 en mars 2020.

    Plusieurs nouvelles fonctionnalités firent leur apparition : la possibilité d’échanger des ERC-20 entre eux, les flash swaps, et les oracles de prix.

    Les paires d’ERC-20

    Sur Uniswap V1, les réserves de liquidité étaient toujours composées d’ETH et d’un jeton ERC-20. Cette décision fut prise par conception. En effet, l’ether était l’actif du réseau Ethereum le plus liquide, et ne présentait aucun risque de plateforme. Un échange (swap) entre deux ERC-20 était simplement routé à travers l’ETH. Cela améliorait ainsi l’expérience utilisateur, et réduisait la fragmentation des liquidités.

    Échange de deux stablecoins (DAI et USDC) via l’ether sur Uniswap V1 – Source : blog d’Uniswap.

    Avec Uniswap V2, n’importe quel jeton ERC-20 peut être directement “poolé” avec un autre ERC-20. Les smart contrats principaux (core contracts) utilisent du wrapped ether (WETH) à la place de l’ether lui-même. Le contrat de routage permet de réaliser un échange direct entre les deux jetons.

    AMM - Uniswap - Contrat de routage
    Swap de deux ERC-20 en utilisant le routeur sur Uniswap V2.

    Les pools ERC-20/ERC-20 confèrent ainsi plusieurs avantages, à la fois pour les traders et pour les fournisseurs de liquidité :

    • Les fournisseurs de liquidité peuvent s’exposer à plus de jetons ERC-20 sans être exposés à l’ether ;
    • Les traders ont accès à plus de paires d’échange (particulièrement les stablecoins) ;
    • Les prix sont meilleurs, car le routage via l’ETH impliquait des frais supérieurs.

    De même, on peut échanger deux jetons ERC-20 même s’ils ne forment pas une paire dans un pool. Il suffit alors qu’un chemin entre les deux jetons existe. Les smart contracts de routage sont optimisés pour choisir le meilleur chemin entre les deux jetons.

    L’oracle de prix d’Uniswap

    La première version d’Uniswap proposait un oracle de prix approximatif. En effet, le prix marginal d’un jeton sur Ethereum à l’instant est calculé en divisant les réserves du jeton d’entrée a par celles du jeton de sortie b :

    AMM - Prix marginal d'un jeton - Uniswap

    Les failles de l’oracle sur Uniswap V1

    Grâce à l’arbitrage, le prix sur Uniswap va tendre vers le prix de marché relatif des jetons. Cependant, cet type d’oracle peut être manipulé, et les hackers trouvèrent vite la faille :

    • Acheter de l’ETH depuis une paire ETH/stablecoin ;
    • Lorsque le prix est suffisamment gonflé, déclencher le règlement d’un contrat dérivé sur un autre exchange utilisant l’oracle ;
    • Finaliser l’opération en vendant les ETH dans le premier pool, pour le faire revenir à son “vrai” prix.

    Afin de combler cette lacune, le prix doit être mesuré et enregistré :

    • Soit avant que le premier trade ne soit inscrit dans un bloc Ethereum ;
    • Soit après que le dernier trade du bloc précédent ait eu lieu.

    De cette façon, l’attaquant qui essaie de manipuler le prix avec sa transaction sera contré par les arbitrageurs, qui vont réaliser le trade inverse au sein du même bloc. Un mineur pourrait tenter de manipuler le prix à la fin d’un bloc, cependant, il devra également miner le bloc suivant pour que l’arbitrage soit profitable. On parle de minage égoiste (selfish mining attack).

    L’oracle d’Uniswap V2

    Uniswap V2 inclut un oracle de prix on-chain. Plus précisément, le protocole implémente des flux de prix on-chain décentralisés et résistants à la manipulation. Les prix sont ainsi mesurés lorsqu’ils sont très coûteux à manipuler, et l’oracle sauvegarde les données historiques.

    L’oracle on-chain procède de la façon suivante :

    • Tout d’abord, le prix de marché est mesuré au début de chaque bloc, avant qu’un trade n’ait eu lieu ;
    • Le prix de marché est ensuite mesuré à la fin du bloc et sauvegardé ;
    • Puis une variable unique, cumulative, stockée au sein du core contract, est pondérée par la durée durrant laquelle ce prix existait. Il s’agit ainsi de la somme du prix, pour chaque seconde dans l’histoire complète du contrat ;
    • Enfin, le prix de marché à la fin du bloc est ajouté à cette variable.

    Le prix de marché au début d’un bloc est très difficile à manipuler à cause des arbitrageurs qui vont renverser le trade de l’attaquant. Grâce à l’enregistrement de chaque prix à la clôture des blocs, l’oracle fournit des prix moyens temporellement pondérés (time-weighted average prices ou TWAP) pour chaque période de temps supérieure à une seconde.

    Comment cela fonctionne-t-il ? Voici les mathématiques d’un oracle de prix.

    Fonctionnement de l’oracle on-chain

    En d’autres termes, l’oracle utilise un accumulateur pour tracer les prix de marché à chaque seconde :

    AMM - Uniswap - Accumulateur

    Pour obtenir le prix moyen pondéré pour la période entre le temps t1 et le temps t2, nous devons soustraire t1 de t2 et diviser le résultat par la période écoulée en secondes :

    AMM - Uniswap - Prix moyen pondéré - TWAP

    Le smart contract de l’accumulateur ne stocke pas les données historiques. Les utilisateurs de l’oracle doivent donc choisir t1 et t2, appeler le contrat au début de la période et stocker cette valeur.

    Plus la période est longue, et plus il est difficile d’attaquer l’oracle, mais moins le prix est à jour. Le coût d’une attaque pour faire dévier le prix de 5% sur un TWAP d’une heure est à peu près égal aux somme perdues en arbitrage et en frais pour faire bouger le prix de 5 % à chaque bloc durant une heure.

    Les flash swaps

    Cette nouvelle fonctionnalité permet aux traders d’obtenir un actif sans payer pour celui-ci. Les flash swaps permettent de retirer n’importe quel ERC-20 sur Uniswap, lorsqu’une des conditions suivantes est remplie :

    • Tous les jetons retirés seront payés à la fin de la transaction ;
    • Un certain pourcentage des jetons est payé à la fin de la transaction, tandis que le restant est rendu ;
    • Tous les jetons retirés sont rendus.

    On parle de transaction atomique (atomic transaction). Les frais réglés aux fournisseurs de liquidité sont de 0,3 % pour chaque entrée, et ce même si les jetons retirés sont renvoyés.

    AMM - Uniswap - Flash swaps
    Mécanisme des flash swaps – Blog d’Uniswap

    Les flash swaps permettent donc aux traders de recevoir des actifs, et de les utiliser ailleurs à leur guide avant de les payer (ou de les rendre) plus tard dans la transaction.

    C’est très utile, car le capital requis pour réaliser des transactions complexes en plusieurs étapes n’est plus nécessaire. Par exemple, un arbitrageur qui n’a pas les fonds requis pour acheter un jeton sur Uniswap, puis le revendre sur un autre plateforme, peut passer par un flash swap.

    Frais de protocole

    Avec Uniswap V2, une nouvelle commission fit son apparition : le protocol fee. Ces frais de 0,05 % peuvent être activés ou non, et si c’est le cas, ils vont vers une adresse feeTo spécifiée. L’idée est de récompenser les détenteurs du jeton UNI (le jeton de gouvernance natif du protocole) grâce à ces frais.

    À l’heure d’écriture, les protocol fees n’ont pas encore été activés. Ce sera le cas si les utilisateurs d’Uniswap le décident via le processus de gouvernance du protocole.

    Meta-transactions

    Cela permet aux fournisseurs de liquidité de transférer leurs parts d’un pool avec une simple signature, plutôt que d’exécuter une transaction on-chain depuis leur compte Ethereum. En appelant la fonction permit, n’importe qui peut soumettre sa signature.

    Nouvelle architecture des contrats

    Le smart contrat principal – core pair contract – fut réécrit pour la V2 d’Uniswap. Il est désormais écrit en Solidity (la V1 était codée en Vyper). Afin de minimiser la surface d’attaque, toutes les fonctionnalités de trading – hormis le simple swap – sont gérées séparément par le contrat de routage.

    Certaines parties de la fonctionnalité de swap sont aussi gérées par le routeur. Tout d’abord, les vendeurs transfèrent leurs actifs vers le core contract, avant d’appeler la fonction swap. Puis le contrat mesure la quantité d’actifs reçue (en comparant les soldes avant et après le transfert). Cela signifie qu’il est aussi possible d’utiliser les meta-transactions à la place de la fonction transferFrom pour initier unetransaction.

    Les wrapped ethers

    Les wrapped ethers (wETH) ou ethers “enrobés” sont des jetons ERC-20 qui représentent de “vrais ethers”, et qui ne peuvent être échangés qu’avec d’autres ERC-20. Les “vrais” ethers correspondants sont verrouillés dans un contrat, pour garantir la valeur des wETH. Ils sont très utiles pour des raisons d’interopérabilité.

    La première version de l’AMM d’Uniswap utilisait les ETH natifs pour des raisons d’économies de gas. La version 2 intègre n’importe quel jeton ERC-20 : utiliser de l’ETH natif ne faisait plus sens – cela doublerait la taille du code. De plus, cela engendrerait un problème de fragmentation de la liquidité, entre les paires en ETH natif et celles en wETH.

    Il faut donc “wrap” ses ethers, avant de les transférer vers les réserves de liquidité.

    Uniswap V3

    La troisième version d’Uniswap vit le jour un an après le lancement de la V2 du protocole. Elle offre encore plus de flexibilité et de contrôle aux fournisseurs de liquidité. Les chercheurs se sont focalisés sur l’efficacité du capital, tout en améliorant encore un peu plus l’oracle de prix.

    La liquidité concentrée

    Il s’agit de la fonctionnalité la plus notable d’Uniswap V3. Les fournisseurs de liquidité peuvent concentrer leur capital sur des fourchettes de prix personnalisées. Cela améliore ainsi la liquidité sur les niveaux de prix choisis. En d’autres termes, au lieu d’utiliser continuellement la fonction à produit constant, les fournisseurs de liquidité peuvent créer leurs courbes de prix propres.

    Au sein d’un pool, il est possible de combiner toutes les positions concentrées individuellement par les LP. Les utilisateurs du protocole échangent avec cette liquidité combinée; les LP reçoivent leur part des frais en proportion de la liquidité qu’ils ont concentré dans la fourchette de prix considérée.

    Efficacité du capital

    La concentration de la liquidité a un effet bénéfique : elle augmente l’efficacité du capital des fournisseurs de liquidité. La profondeur de marché reste la même que sur Uniswap V2, mais il y a moins de capital à risque. Le capital “préservé” peut alors être :

    • Investi sur différents actifs ;
    • Transféré sur d’autres protocoles DeFi ou plateformes ;
    • Conservé dans un environnement externe ;
    • Placé sur d’autres fourchettes de prix, afin d’augmenter l’exposition du fournisseur de liquidité et lui rapporter plus de commissions.

    Liquidité active

    La notion de liquidité active renvoie au capital qui est alloué sur la fourchette de prix (range) courante du marché. Si le prix dévie de ce range, la liquidité est retirée du pool, et le fournisseur ne reçoit plus de frais. Il devra attendre que le prix de l’actif revienne dans cette fourchette, ou mettre son range à jour en l’accordant avec le prix courant.

    Range orders

    Ces ordres ressemblent aux ordres à cours limité sur une plateforme de change classique. Les fournisseurs de liquidité déposent leurs jetons dans une fourchette de prix spécifiée (au-dessus ou au-dessous du prix courant). Si le prix de marché entre dans le range spécifié, l’actif déposé sera vendu, et le fournisseur de liquidité recevra ses frais pour l’échange.

    Le prix moyen d’exécution d’un range order est tout simplement la moyenne géométrique du prix minimum et du prix maximum spécifiés.

    Frais flexibles

    Tandis qu’Uniswap V2 avait introduit des frais de protocole (pouvant être activés ou pas), Uniswap V3 offre un modèle de frais beaucoup plus flexible. Les fournisseurs de liquidité peuvent choisir entre 3 niveaux de frais par paire de trading : 0,05 %, 0,1 % et 0,3 %.

    Ils peuvent ainsi ajuster leur marge, en se basant sur le risque que chaque paire représente. Par exemple, une paire de stablecoins sera beaucoup moins risquée qu’une paire ERC-20/ETH. Les LP peuvent donc choisir des frais de 0,05 % pour la première, et de 0,3 % pour la seconde.

    Des oracles améliorés

    L’équipe de développement a nettement amélioré l’oracle TWAP pour la V3. À la place d’une unique somme cumulative, on peut stocker de multiples accumulateurs de prix dans la zone de mémoire dédiée. Ainsi, on peut créer des oracles plus avancés – calcul de moyennes mobiles simples et exponentielles, filtrage de certaines valeurs…

    Cela réduit aussi le coût en gas nécessaire pour maintenir les oracles à jour de moitié. Il en va de même pour les coût du calcul des TWAP sur des smart contracts externes.

    Autres types d’AMM à fonction constante

    Il existe d’autres modèles et implémentations d’AMM à fonction constante, qui permettent d’échanger plus de deux actifs au sein d’une même réserve de liquidité. Une version naïve est l’AMM à somme constante, tandis que la version étendue du produit constant est l’AMM à moyenne constante.

    Chacun de ces modèles présente des avantages spécifiques pour un certain type d’actifs (jetons ERC-20 ou stablecoins). Avant d’entrer dans les détails de ces AMM dans les articles suivants, voici une introduction.

    AMM à somme constante

    Les AMM à somme constante sont l’extension du modèle de l’AMM à fonction constante, pour des pools à actifs multiples (> 2). Ils satisfont la fonction d’état suivante :

    AMM - Formule somme constante

    Où les Ri sont les réserves de chaque actif, et k une constante.

    Ainsi, le graphe d’un AMM à somme constante pour seulement une paire d’actif ressemble à ceci :

    AMM - Somme constante - Graphe pour 2 actifs

    Dans le cas de deux jetons, son équation est donc x + y = k. Comme nous pouvons le voir, il n’y a aucun slippage ! Cependant, un tel modèle ne fournit pas une liquidité infinie au marché. Si le ratio entre le prix d’un actif et celui de sa contrepartie est de zéro, alors il n’y a plus de liquidité disponible pour cet actif. Ce type de situation se produit si un des participants au marché draine la liquidité d’un côté (le fameux money pumping).

    AMM à moyenne constante

    Un automated market maker à moyenne constante est la généralisation d’un AMM à produit constant, pour plus de deux actifs, et pour des pondérations de réserves pouvant dériver de la règle des 50/50. Nous étudierons ce modèle en détails dans l’article consacré à Balancer. Ces protocoles satisfont l’équation suivante (en l’absence de frais) :

    AMM - Formule moyenne constante

    Riwi est la réserve de chaque actif, wi le poids de chaque actif, et k une constante.

    Les marchés à moyenne constante assurent que la moyenne géométrique pondérée des différentes réserve reste constante.

    AMM - Moyenne constante, 3 actifs de même poids.
    Visualisation graphique pour 3 actifs de poids équivalent – Balancer.

    Dans cet exemple, la fonction définissant ce portfolio de 3 actifs sera :

    AMM à fonctions hybrides

    En conclusion, et avant de nous attaquer aux modèles d’AMM décrits ci-dessus, nous pouvons dire que les développeurs des protocoles d’AMM ont pris en considération les inconvénients et les failles de leurs prédécesseurs.

    Les fonctions de prix présentées plus haut servent de fondation aux protocoles DeFi les plus avancés, comme Balancer ou Curve. Elles furent adaptées afin de satisfaire les besoins de ces protocoles, en cherchant les meilleurs compromis pour fournir une liquidité efficace, un faible slippage et de bonnes incitations économiques.

    Bibliographie

    L’article Uniswap et l’évolution des AMM décentralisés – Les AMM décodés est apparu en premier sur Journal du Coin.

    Uniswap : construire un Automated Market Maker sur Ethereum – Les AMM décodés

    https://journalducoin.com/defi/uniswap-construire-un-amm-sur-ethereum-serie-amm-4/

    Pour notre premier cas d’étude dans cette série sur les AMM (automated market makers ou faiseurs de marché automatisés) nous nous penchons sur le cas d’Uniswap. Uniswap est l’un des trois AMM les plus utilisés sur Ethereum, et peut être considéré comme le premier AMM à fonction constante.
    La première version du protocole fut lancée en novembre 2018, durant la Devcon 4. C’est une plateforme d’échange décentralisée, qui utilise un protocole à fonction constants pour fournir de la liquidité aux traders.
    Uniswap V1 était conçue pour être simple : un DEX dédié aux échanges de jetons ERC-20 pour les utilisateurs d’Ethereum. Son équipe de développement souhaitait bâtir un modèle où décentralisation, sécurité et résistance à la censure étaient optimaux.
    Le code source d’Uniswap est open-source et se trouve sur ce dépôt GitHub.

    Principes d’Uniswap

    Uniswap utilise la formule du produit constant au cœur de son protocole d’échange de jetons (token swap) décentralisé. Ses utilisateurs peuvent échanger n’importe quel type de jeton ERC-20. Uniswap repose sur un ensemble de smart contracts. Chaque ERC-20 listé sur la plateforme a son contrat dédié, appelé exchange contract – contrat d’échange.

    Un programme, appelé Uniswap Factory, permet à tout utilisateur de créer un exchange contract pour n’importe quel ERC-20. La Factory est donc un registre qui regroupe tous les jetons ajoutés à l’ensemble du système.

    Chaque contrat d’échange présente deux réserves (vaults, coffres numériques). L’un a un solde en ethers (ETH) et l’autre un solde en ERC-20, correspondant au contrat. Ces réserves sont également appelées liquidity pools pour ce jeton ERC-20. N’importe quel utilisateur d’Ethereum peut déposer de la liquidité, à la fois en ETH et en ERC-20, dans le pool. Lorsque ses fonds sont verrouillés au sein du smart contract, cet utilisateur devient un fournisseur de liquidité (liquidity provider ou LP). Il sera ensuite récompensé pour son apport.

    Cette récompense est proportionnelle au stake (enjeu), c’est-à-dire à la quantité de fonds déposés par le fournisseur de liquidité. Afin de garder la trace des liquidités déposées dans le pool, le protocole utilise un jeton spécial. Ces jetons sont appelés LP tokens (liquidity provider tokens) et sont créés lorsque des liquidités sont ajoutées. Si le fournisseur de liquidité décide de retirer ses fonds, les jetons LP correspondant sont brûlés. Enfin, sa part correspondante de la réserve lui est envoyée.

    Les fonctionnalités d’Uniswap V1

    L’équipe de développement d’Uniswap avait bâti les fondations d’un modèle duquel de nombreux AMM se sont inspirés dans les mois suivants. Les fonctionnalités de la plateforme étaient basiques et se focalisaient sur l’expérience utilisateur :

    • Intégration de n’importe quel jeton ERC-20 via l’Uniswap Factory ;
    • Échanges en une transaction unique pour les paires ETH/ERC-20 ;
    • Possibilité d’acheter n’importe quel jeton ERC-20 à partir de n’importe quel portefeuille en utilisant l’Ethereum Name Service (ENS) ;
    • Création de DEX Uniswap privés et personnalisés ;
    • Implémentation de l’interface (front-end) sur mobile.

    L’objectif était d’obtenir des frais de transaction (gas fees) peu coûteux – ce qui s’avéra être un gros problème – et une sécurité maximale. Les smart contracts d’Uniswap V1 étaient codés en Vyper. Ils furent audités en utilisant une méthode appelée lightweight formal verficationvérification formelle légère.

    Comment fonctionne Uniswap ?

    L’algorithme de market making automatisé (AMM) d’Uniswap utilise judicieusement la formule du produit constant : x*y = k. Le pricing des jetons est sensible à la liquidité (liquidity sensitive). Il est déterminé automatiquement par le produit constant. Chaque contrat d’échange (un par paire ETH/ERC-20) contient de la liquidité pour chaque élément de la paire.

    Les prix sont calculés comme fonction de la taille relative des deux réserves (liquidity pools) et de la taille de l’échange (trade).

    Échange de jetons (token swap)

    Lorsqu’un trader souhaite échanger un jeton, dans n’importe quelle direction (ETH vers ERC-20 ou ERC-20 vers ETH), la liquidité est simplement ajoutée dans le pool correspondant. Dans le même temps, la liquidité est retirée de la réserve opposée. Étant donné que l’ether est le carburant principal du réseau Ethereum, et présent pour chaque échange ETH/ERC-20, il est l’intermédiaire de paiement utilisé pour échanger des jetons ERC-20 contre d’autres jetons ERC-20, en une transaction unique. Les utilisateurs d’Uniswap peuvent aussi échanger et transférer des jetons vers une adresse différente de l’originale, en une seule transaction.

    Il n’y a donc aucun carnet d’ordres : les utilisateurs d’Uniswap échangent leurs jetons avec les réserves du protocole.

    Trois variables déterminent le prix d’un jeton :

    • La taille (quantité) de la réserve en ETH dédié à l’ERC-20 échangé ;
    • La taille (quantité) de la réserve du jeton ERC-20 ;
    • La quantité vendue (entrée, input) ou achetée (sortie, output).

    Les effets sur la liquidité

    La formule du produit constant utilise le ratio entre les réserves d’ETH et du jeton ERC-20 correspondant pour fixer le prix du jeton. Ainsi, n’importe quel échange affecte ce ratio :

    • Lorsque l’on vend des ETH pour un jeton ERC-20, la réserve d’ETH augmente, tandis que la réserve d’ERC-20 diminue.
    • Lorsque l’on achète des ETH avec un jeton ERC-20, la réserve d’ETH diminue, tandis que la réserve d’ERC-20 augmente.

    Cela signifie donc que plus la taille du trade est grande, et plus ce dernier aura d’effet sur le ratio ETH/ERC-20 du pool. Par conséquent, le volume de l’échange influe sur le glissement du prix (price slippage). Le prix coté par l’AMM peut alors être appelé “prix relatif”, car il peut dériver de la valeur de marché globale du jeton.

    Les acteurs qui ont vocation à réduire le slippage sont les arbitrageurs. Ils vont ainsi ajouter de la liquidité quand c’est nécessaire et tirer profit des fluctuations du prix.

    Ordres ETH/ERC-20

    Pour les ordres de vente (exact input) la quantité achetée (output) est calculée comme suit :

    // Vendre des ETH pour des ERC20
    const inputAmount = userInputEthValue
    const inputReserve = web3.eth.getBalance(exchangeAddress)
    const outputReserve = tokenContract.methods.balanceOf(exchangeAddress).call()
    // Vendre des ERC20 pour des ETH
    const inputAmount = userInputTokenValue
    const inputReserve = tokenContract.methods.balanceOf(exchangeAddress).call()
    const outputReserve = web3.eth.getBalance(exchangeAddress)
    // Output amount (quantité achetée)
    const numerator = inputAmount * outputReserve * 997
    const denominator = inputReserve * 1000 + inputAmount * 997
    const outputAmount = numerator / denominator

    Pour les ordres d’achat (exact output), le coût (input) est calculé comme suit :

    // Achat d'ERC20 avec des ETH
    const outputAmount = userInputTokenValue
    const inputReserve = web3.eth.getBalance(exchangeAddress)
    const outputReserve = tokenContract.methods.balanceOf(exchangeAddress).call()
    // Achat d'ETH avec des ERC20
    const outputAmount = userInputEthValue
    const inputReserve = tokenContract.methods.balanceOf(exchangeAddress).call()
    const outputReserve = web3.eth.getBalance(exchangeAddress)
    // Coût
    const numerator = outputAmount * inputReserve * 1000
    const denominator = (outputReserve - outputAmount) * 997
    const inputAmount = numerator / denominator + 1

    Les frais revenant au fournisseur de liquidité sont les suivants :

    fee = inputAmount * 0.003

    Le taux de l’échange (exchange rate) est la quantité en sortie divisée par la quantité en entrée :

    const rate = outputAmount / inputAmount

    Ordres ERC-20/ERC-20

    Nous avons 4 variables nécessaires pour déterminer les prix lors d’un échange entre une paire de jetons ERC-20 :

    • Tout d’abord, la taille de la réserve d’ETH pour le jeton ERC-20 en entrée ;
    • Puis la taille de la réserve en ERC-20 pour le jeton en entrée ;
    • Ensuite, la taille de la réserve d’ETH pour l’ERC-20 en sortie ;
    • Enfin, la taille de la réserve du jeton ERC-20 en sortie.

    Bien sûr, la quantité de jetons vendues (exact input) et la quantité de jetons achetés (output) sont aussi des paramètres nécessaires.

    Pour les ordres de vente (exact input), on calcule la quantité achetée (output) ainsi :

    // Conversion TokenA (ERC20) vers ETH 
    const inputAmountA = userInputTokenAValue
    const inputReserveA = tokenContractA.methods.balanceOf(exchangeAddressA).call()
    const outputReserveA = web3.eth.getBalance(exchangeAddressA)
    const numeratorA = inputAmountA * outputReserveA * 997
    const denominatorA = inputReserveA * 1000 + inputAmountA * 997
    const outputAmountA = numeratorA / denominatorA
    // Conversion ETH vers TokenB
    const inputAmountB = outputAmountA
    const inputReserveB = web3.eth.getBalance(exchangeAddressB)
    const outputReserveB = tokenContract.methods.balanceOf(exchangeAddressB).call()
    const numeratorB = inputAmountB * outputReserveB * 997
    const denominatorB = inputReserveB * 1000 + inputAmountB * 997
    const outputAmountB = numeratorB / denominatorB

    Pour les ordres d’achat (exact output), le coût (input) est calculé ainsi :

    // Achat de TokenB avec ETH
    const outputAmountB = userInputTokenBValue
    const inputReserveB = web3.eth.getBalance(exchangeAddressB)
    const outputReserveB = tokenContractB.methods.balanceOf(exchangeAddressB).call()
    // Coût
    const numeratorB = outputAmountB * inputReserveB * 1000
    const denominatorB = (outputReserveB - outputAmountB) * 997
    const inputAmountB = numeratorB / denominatorB + 1
    // Achat d'ETH avec TokenA
    const outputAmountA = userInputEthValue
    const inputReserveA = tokenContractA.methods.balanceOf(exchangeAddressA).call()
    const outputReserveA = web3.eth.getBalance(exchangeAddressA)
    // Coût
    const numeratorA = outputAmountA * inputReserveA * 1000
    const denominatorA = (outputReserveA - outputAmountA) * 997
    const inputAmountA = numeratorA / denominatorA + 1

    Les frais des fournisseurs de liquidité s’appliquent deux fois dans ce cas (0,3% + 0,3%) :

    const exchangeAFee = inputAmountA * 0.003
    const exchangeBFee = inputAmountB * 0.003

    Puisque l’utilisateur apporte seulement le jeton A, ils peuvent être représentés ainsi :

    const combinedFee = inputAmountA * 0.00591

    Le taux d’échange (exchange rate) est alors :

    const rate = outputAmountB / inputAmountA

    L’arbitrage

    Les mécanismes d’arbitrage assurent que le prix relatif d’un actif ne déviera pas trop de son prix intrinsèque. Avec ces opportunités d’arbitrage, de la liquidité est également régulièrement ajoutée dans les réserves. En effet, s’il y a de grosses fluctuations du prix, les arbitrageurs en bénéficient, en ajoutant de la liquidité dans les pools.

    Frais et LP tokens

    Les frais d’Uniswap s’élèvent à 0,3 %. Ces commissions s’appliquent pour chaque trade, et les jetons correspondant sont ajoutés aux pools de liquidité. Cela garantit donc que la quantité d’actifs dans les réserves augmentera avec le temps et l’usage, quels que soient les changements du ratio entre les deux actifs de la paire.

    Ces frais bénéficient aux fournisseurs de liquidité. Lorsqu’un LP souhaite retirer ses fonds, les jetons LP correspondants sont brûlés. Ces jetons déterminent les parts du pool que possède le fournisseur de liquidité. Les frais sont donc ajoutés aux fonds retirés comme récompense, au prorata des liquidités fournies.

    En utilisant les pools Uniswap “standards” (créés avec la Factory), les fournisseurs de liquidité ne peuvent créer des LP tokens que pour un unique pool d’ERC-20 dédié. Cela assure que la liquidité pour un ERC-20 donné ne sera pas dispersée à travers plusieurs réserves.

    Les jetons de liquidité (LP tokens) sont hautement divisibles. Les fournisseurs de liquidité peuvent décider de les brûler à tout instant. Ils reçoivent alors leurs fonds proportionnellement à leur contribution.

    Plongée dans le code d’Uniswap

    Dans cette partie, nous allons passer en revue les principales fonctions du protocole Uniswap.

    Fonctions de liquidity minting

    Chaque contrat d’échange contient une réserve d’ETH et de son ERC-20 associé. Il s’agit donc des soldes en ETH et en ERC-20 de chaque contrat :

    const ethReserve = web3.eth.getBalance(exchangeAddress)
    const tokenReserve = tokenContract.methods.balanceOf(exchangeAddress)

    Ajout de liquidités

    Le protocole utilise la fonction addLiquidity() lorsque les fournisseurs de liquidité déposent dans les réserves. Les jetons de liquidité sont alors créés :

    exchange.methods.addLiquidity(min_liquidity, max_tokens, deadline).send({ value: ethAmount })

    La quantité de jetons LP dépend de la quantité d’ETH envoyés vers la fonction. Le fournisseur de liquidité doit aussi déposer la valeur correspondante en jetons ERC-20. C’est donc le premier fournisseur de liquidité d’un pool qui définit le taux de change initial. S’il dévie du taux des marchés externes, les arbitrageurs peuvent alors ramener les prix à l’équilibre, aux dépens du fournisseur de liquidité.

    • ethAmount est la quantité exacte d’ETH déposée, soit la moitié de la valeur totale des liquidités fournies par le LP. Cette variable est utilisée pour déterminer la quantité d’ERC-20 devant être déposés.
    • max_tokens est utilisée pour borner les fluctuations du taux de change. Pour le premier fournisseur de liquidité, il s’agit donc de la quantité exacte de jetons déposés.
    • min_liquidity est utilisé en combinant les deux variables précédentes pour borner le taux auquel les jetons de liquidité sont créés.
    • La deadline permet de fixer un délai après lequel la transaction ne peut pas être exécutée. Ainsi, les mineurs n’ont pas la possibilité de retenir des transactions signées et de les exécuter en fonction du prix du marché à leur avantage.

    Retrait de liquidités

    La fonction removeLiquidity() permet aux LP de retirer leur part de la réserve :

    exchange.methods.removeLiquidity(amount, min_eth, min_tokens, deadline).send()

    amount spécifie la quantité de jetons de liquidité à brûler. En la divisant par la quantité totale de jetons de liquidité, on obtient le pourcentage d’ETH et d’ERC20 que le fournisseur de liquidité retire.

    Ces liquidités sont donc retirées au même ratio que celui des réserves lors du retrait. Ici encore, si le taux de change est mauvais, alors il y a une opportunité d’arbitrage qui corrigera le prix.

    Ajustements des ordres

    L’AMM d’Uniswap est déployé totalement on-chain. Il y a donc un délai entre le moment où une transaction est signée (initiation du trade) et le bloc dans lequel elle est incluse. Cela engendre des fluctuations de prix.

    Il est possible d’ajuster la quantité minimale vendue pour un ordre de vente, ou la quantité maximale achetée pour un ordre d’achat. De la même façon, on peut fixer un délai à partir duquel la transaction ne sera plus exécutée. Le trader a ainsi la garantie que son ordre ne sera pas exécuté si les conditions requises (quantité, prix et latence) ne sont pas remplies.

    Les deadlines pour la transaction sont définies en secondes :

    web3.eth.getBlock('latest', (error, block) => {
    deadline = block.timestamp + 300 // la transaction expire dans 300 seconds (5 minutes)
    })

    Par exemple, après un délai de 300 secondes, la transaction ne sera pas incluse par les mineurs. Ces deadlines de transaction présentent deux avantages :

    • Les traders peuvent empêcher les mineurs de “suspendre” leurs transactions pour des périodes de temps longues. En effet, ils pourraient être tentés de les inclure dans un bloc en fonction des mouvements du marché ;
    • Cela limite l’incertitude quant aux frais en gas pour les utilisateurs.

    Réserves de liquidité personnalisées

    Tandis que les réserves publiques enregistrées avec la Factory sont liées à leur DEX dédié, les utilisateurs d’Uniswap peuvent créer des pools personnalisés (custom pools). Ils possèdent leurs propres paramètres. Les mécanismes de formation des prix peuvent être différents, tout comme les frais ou le système de création des jetons de liquidité.

    Bien entendu, dévier du modèle initial d’Uniswap peut engendrer des problèmes en termes de sécurité du protocole.

    Les challenges des AMM du type Uniswap

    Concevoir un AMM à fonction constante présente de nombreux défis à surmonter. Chaque design d’AMM décentralisé est un compromis entre les propriétés désirées pour le protocole et les limitations qui en découlent.

    La première contrainte est évidemment de bâtir un système qui assure une sécurité maximale pour les fonds des fournisseurs de liquidité. Il faut ensuite maximiser les retours sur investissement des LP, pour les encourager à déposer dans les réserves. Enfin, l’allocation du capital doit être optimale, pour assurer la meilleure liquidité possible pour le marché.

    Les pertes impermanentes

    Les pertes impermanentes (impermanent losses) se produisent lorsqu’un fournisseur de liquidité retire ses fonds après que le ratio de réserve ait changé.

    Quand un fournisseur de liquidité brûle ses jetons LP, afin de retirer ses parts d’ethers et d’ERC-20 des pools de liquidité, ces fonds sont retirés au taux d’échange courant, déterminé par le ratio de réserve :

    • ethWithdrawn = ehtPool * (amountBurned / totalAmount)
    • tokensWithdrawn = tokenPool * (amountBurned / totalAmount)

    Un risque pour les fournisseurs de liquidité

    Avec les fluctuations des prix du marché, les fournisseurs de liquidité peuvent perdre de la valeur si le ratio de réserve courant diffère du ratio initial (au moment de leur dépôt). C’est ce qu’on appelle une perte impermanente : la différence entre la valeur initiale des deux actifs déposés dans les réserves de l’AMM et leur valeur courante.

    Il s’agit d’un des risques principaux pour les fournisseurs de liquidité : perdre de la valeur en prêtant et verrouillant leurs jetons plutôt que de les avoir simplement conservés à l’abri dans un wallet. Le risque de pertes impermanentes dépend du nombre de fournisseurs de liquidité contribuant à un pool, et de la quantité de jetons en présence.

    Les pertes impermanentes subviennent quelle que soit la direction que prend le prix de la paire d’actifs. La seule chose qui importe, c’est la valeur absolue de la différence entre prix de dépôt et prix de retrait.

    Le mécanisme des pertes impermanentes

    L’impermanent loss est donc la différence entre la valeur des LP tokens lors du retrait, et la valeur théorique des actifs sous-jacents – s’ils n’avaient pas été verrouillés dans la réserve. Nous allons illustrer ce mécanisme avec un exemple.

    Disons que Bob dépose 10 ETH, et la quantité d’ERC-20 correspondante dans un pool de liquidité. Au moment du dépôt, 1 ETH = 1000 $. Avec un ratio de 50/50, Bob doit donc déposer 10 ETH + 10000 $ dans la réserve.

    Si le pool a une valeur totale de 100 000 $ (50 ETH et 50 000 $), alors Bob possède 20 % du pool – (20000/100000)*100.

    Bob a donc contribué au pool en déposant sa part d’ethers et de stablecoins. Il peut retirer ses parts à tout instant en brûlant ses jetons LP. Nous parlons bien de parts, et non d’un nombre de jetons fixé !

    Si la valeur des actifs déposés (l’ETH dans notre cas) change durant la période de lending, Bob souffrira de pertes impermanentes. Plus le prix courant de l’ether diverge du prix initial, plus la perte est importante.

    On utilise le terme “impermanente” car si le prix des actifs revient à sa valeur initiale, le fournisseur de liquidité ne perd rien. Les frais de trading, donnés en récompense au fournisseur de liquidité, aident à compenser une perte impermanente potentielle.

    Calcul des pertes impermanentes

    Disons que depuis le dépôt des 10 ETH de Bob, le prix de l’ether soit passé de 1000 à 2000 $. La fonction à produit constant nous donne :

    k = 50 * 50 000 = 2 500 000

    Le prix de l’ether est le suivant :

    ETHPrice = TokenLiquidity / ETHLiquidity = 50 000 / 50 = 1000

    La liquidité pour chaque actif de la paire est calculée ainsi :

    eth_liquidity_pool = sqrt(constant_product / eth_price)
    token_liquidity_pool = sqrt(constant_product * eth_price)

    Si le nouveau prix de l’ether est de 2000 $, alors :

    ETHLiquidity = 35,355

    USDTLiquidity = 70 710,6

    Nous pouvons vérifier, en utilisant le produit constant, que k est bien le même :

    ETHLiquidity * USDTLiquidity = 35,355 * 70 710,6 = 2 500 000

    Si Bob souhaite retirer ses parts des réserves, il obtiendra donc 20% de la quantité d’ethers et d’USDT présents dans le pool :

    • 20% de 35 ETH soit 7 ETH ;
    • 20% de 70 710 USDT soit 14142 USDT.

    Si nous calculons la valeur totale de ses actifs, nous obtenons :

    7 * 2000 + 14 142 = 28 142 USDT

    S’il n’avait pas effectué de dépôt, la valeur totale des actifs de Bob serait :

    10 * 2000 + 10 000 = 30 000 USDT

    Bob souffre donc d’une perte impermanente de 30000 – 28142 = 1858 USDT.

    Modélisation

    Il est possible de modéliser les pertes impermanentes comme une fonction du prix courant (en tant que pourcentage du prix initial) et de la variation de la valeur totale des actifs (en pourcentage également) :

    Source : AlfaBlock

    Nous pouvons observer que :

    • Un changement de prix de 1,25x donne une perte impermanente de 0,6%
    • 1,5x => 2%
    • 1,75x => 3,8 %
    • 2x => 5,7 %
    • 3x => 13,4 %
    • 4x => 20 %
    • 5x => 25,5 %.

    Les frais accumulés durant la période de farming doivent donc compenser la perte impermanente résultant des fluctuations des prix. Ainsi, si le fournisseur de liquidité souhaite générer du profit, ces variations ne doivent pas être trop importantes.

    Atténuation des pertes impermanentes

    Il n’y a qu’un seul moyen d’éviter les pertes impermanentes, car les marchés crypto sont hautement volatils. Il s’agit de n’apporter de la liquidité que pour des paires de stablecoins !

    De la même façon, le risque de perte impermanente sera réduit en fournissant de la liquidité pour les paires d’actifs incluant un stablecoin. Ainsi, plus les actifs de la paire sont sujets à la volatilité, plus le risque est élevé. Cependant, si le fournisseur de liquidité a une stratégie “stablecoin only“, il ne bénéficiera pas d’un marché haussier.

    Les fournisseurs de liquidité qui souhaitent réduire leur risque de perte impermanente choisiront donc des cryptomonnaies et des jetons à faible volatilité – s’ils existent. Ils doivent également choisir consciencieusement le moment où ils retirent leurs fonds en brûlant leurs jetons de liquidité.

    Sur les DEX à haut volume utilisant des AMM, et dans des conditions de marché normales, les frais compensent les pertes impermanentes. C’est ainsi que le farming reste profitable pour les fournisseurs de liquidité.

    Efficience du capital

    Il y a aussi un autre inconvénient des AMM à fonction constante comme Uniswap qui mérite d’être mentionné. Il s’agit de la relative inefficience du capital déposé dans les pools.

    Ces réserves nécessitent une quantité de liquidités bien plus importante que les carnets d’ordres des plateformes centralisées traditionnelles. De ce fait, une grande quantité de cette liquidité n’est accessible que lorsqu’on se trouve sur la partie extrême de l’hyperbole de la fonction à produit constant. Et c’est aussi lorsqu’on tend vers un de ces asymptotes de la courbe que l’impact de la fonction est le plus fort sur les prix. La liquidité correspondante, bien qu’accessible, ne sera donc jamais utilisée par les traders rationnels.

    Ce phénomène est typique des AMM à fonction constante comme Uniswap. On parle de “liquidité fainéante” (lazy liquidity). Sur les plateforme d’échange centralisées, les market makers peuvent déterminer exactement la quantité de liquidité qu’ils souhaitent placer dans les carnets d’ordres, à tel ou tel niveau de prix. Ce n’est pas le cas avec les CFMM : les fournisseurs de liquidité n’ont aucune influence sur les niveaux de prix.

    Il est possible d’améliorer l’efficience du capital en utilisant d’autres fonctions pour définir les relations entre les pools de liquidité. Il existe également des mécanismes de concentration de la liquidité, que nous étudierons dans les articles suivants de cette série sur les AMM. C’est notamment le cas pour Curve et pour la V3 d’Uniswap.

    Le slippage

    Nous avons quantifié ci-dessus les impacts d’un trade sur le prix des jetons. Nous avons donc une idée de la façon dont les échanges à gros volume entraînent du slippage. C’est un inconvénient typique des AMM à fonction constante. Ces derniers entraînent d’importants coûts de slippage pour les traders qui drainent trop de liquidité en exécutant des ordres à gros volume.

    Uniswap : un proof of concept pour les AMM de la DeFi

    En conclusion, mentionnons le fait qu’Uniswap est né après une suggestion de Vitalik Buterin lui-même. En 2016, il incitait ainsi les développeurs et les chercheur à concevoir une plateforme d’échange décentralisée basée sur les AMM. À l’époque, les spreads étaient terriblement élevés sur les DEX on-chain. Vitalik suggéra alors de se tourner vers les automated market makers, similaires à ceux qui sont utilisés sur les marchés prédictifs.

    Hayden Adams commença à travailler à ce projet, puis la première version fut déployée quelques mois après. Présentée comme une preuve de concept, Uniswap eut une croissance rapide, et attira de la liquidité depuis de nombreux utilisateurs à travers le monde. La vraie révolution, ce sont ses mécanismes d’incitation économique, qui attirent les fonds de la communauté Ethereum toute entière.

    Grâce aux subventions de la Fondation Ethereum, le projet Uniswap put se développer. L’équipe de développement fut rapidement financée par Paradigm. Malgré les obstacles, l’équipe a continuellement amélioré son produit, et aujourd’hui, Uniswap est la plateforme d’échange décentralisée agrégeant le plus de valeur de toute l’industrie crypto.

    Uniswap a également servi de fondation pour toute une génération d’AMM. Certains de ses smart contracts sont toujours repris par des plateformes plus modernes. Il s’agit donc d’un modèle d’AMM qui a passé avec succès l’épreuve du temps.

    Bien entendu, l’univers de la DeFi est en perpétuel bouillonnement. De nombreux AMM ont adopté des fonctions de prix différentes selon leurs cas d’usage. Nous verrons dans les articles suivants qu’il est possible de redéfinir ces fonctions, pour échanger des cryptoactifs spécifiques, comme les stablecoins. De la même façon, les expérimentations d’Uniswap ont permis de développer et de proposer de nombreuses fonctionnalités et mécanismes d’incitation économique, afin d’améliorer les AMM dédiés à la finance décentralisée.

    Bibliographie

    L’article Uniswap : construire un Automated Market Maker sur Ethereum – Les AMM décodés est apparu en premier sur Journal du Coin.

    Les Automated Market Makers à fonction constante – Les AMM décodés

    https://journalducoin.com/?p=653230

    Comme nous l’avons vu cette série consacrée aux AMM (automated market makers ou faiseurs de marché automatisés), les premiers algorithmes concernaient les marchés prédictifs. C’est le cas du modèle LMSR, repris sur Ethereum par Gnosis et Augur. Il existe d’autres modèles pour les marchés où l’agrégation d’informations est très importante, et où les profits dépendant de la capacité à évaluer les probabilités de la survenue d’événements futurs.

    Bancor fut le premier AMM on-chain pour la finance décentralisée (DeFi). Sa fonction de prix spécifie le cours d’un actif en se basant sur sa quantité totale disponible : la bonding curve. Le prix d’équilibre résultant de cette courbe de liaison équivaut au prix du marché sous certaines conditions.

    Un AMM agrège de la liquidité pour une place de marché numérique, de façon décentralisée et sans permission. Il y a plusieurs façons de définir les dynamiques entre les réserves de chaque actif (liquidity pools).

    Les AMM peuvent utiliser diverses fonctions pour définir ces relations entre les réserves de liquidité. Dans la finance décentralisée, il existe un modèle largement employé. Il est appelé Constant Function Market Maker (CFMM) – faiseur de marché à fonction constante.

    L’équipe de développement d’Uniswap l’implémenta pour la première fois en 2019. Le modèle à produit constant est le point de départ d’une nouvelle génération d’AMM.

    Les AMM à fonction constante (CFMM)

    Comme nous les avons décrits brièvement dans la seconde partie de cette série, les CFMM sont conçus pour garder le produit des réserves de liquidité allouées au marché constant. Par exemple, il peut s’agir d’un pool d’ethers (ETH), et du pool correspondant d’un jeton ERC-20 spécifique.

    N’importe quel échange (trade) affecte les pools de liquidité du marché. Il entraîne l’ajout de fonds d’un côté, et le retrait de liquidités de l’autre.

    Les plateformes d’échange décentralisées (DEX) utilisant des AMM comprennent 3 types de participants :

    • Traders : les utilisateurs souhaitant vendre, acheter ou échanger des jetons ;
    • Fournisseurs de liquidité (liquidity providers ou LP) : ces utilisateurs souhaitent générer un profit en ajoutant des liquidités dans les pools du marché ;
    • Arbitrageurs : ce sont des traders, qui vont générer du profit en exploitant les fluctuations du prix d’un actif au sein d’un AMM. Lorsque le cours d’un actif sur le DEX diverge de son prix sur d’autres exchanges, ils saisissent cette opportunité.

    Les AMM à fonction constante se basent sur une formule mathématique très simple pour définir la relation entre les réserves de deux actifs financiers. Ces deux actifs composent les deux côtés d’une paire de trading.

    La formule du produit constant

    Un automated marker maker à produit constant satisfait l’équation suivante :

    (RX – Δx) x (RY + γΔy) = k

    Où :

    • RX est la quantité de l’actif X en réserve ;
    • RY est la quantité de l’actif Y en réserve ;
    • Δx est la quantité d’actif X acheté ;
    • γ est la commission (les frais) pour la transaction.

    Avec cette fonction, pour n’importe quelle quantité d’actif X ou Y échangée, les réserves en sont affectées de telle sorte que, sans frais de transaction, le produit RX x RY reste égal à la constante k.

    La version simplifiée de cette formule est donc :

    x * y = k

    x et y représentent les réserves de chaque actif. Lorsque les frais de trading sont ajoutés aux réserves (ce qui est le cas avec le protocole Uniswap par exemple) chaque trade augmente graduellement k.

    Le graphe de la fonction forme ainsi une hyperbole, lorsqu’on place les quantités des deux actifs sur leurs axes respectifs x et y.

    La propriété désirée est donc d’avoir toujours de la liquidité disponible, même si les prix tendent vers l’infini.

    Le prix p de l’actif est dérivé de la relation entre les soldes des deux réserves (le liquidity pool de chaque token). On le définit ainsi :

    AMM - CFMM - Produit constant - Prix
    balA/balB : solde (balance) de l’actif A/B.

    Ici, p est donc le prix du jeton B (Y), libellé en jeton A (X).

    Intérêt

    Ce modèle empêche l’AMM de tomber à court de liquidité, que ce soit par excès de demande, ou dans le cas où un attaquant souhaiterait drainer les liquidity pools – cette attaque est appelée money pumping. Lors d’un échange, plus la quantité achetée est grande, et plus le taux d’échange marginal devient élevé pour chaque unité additionnelle.

    AMM - Produit constant - Variation des pools - Curve
    Évolution des réserves dans le cas du produit constant – Extrait du whitepaper de Curve Finance.

    Le market maker génère du profit en ajoutant des frais de transaction (0,3 % pour Uniswap, par exemple).

    Bénéfices

    Le modèle d’AMM à produit constant va plus loin que les précédents et offre plusieurs avantages.

    Des échanges plus rapides

    Avec un système de carnet d’ordres, le market making, et l’exécution des trades en général, requièrent plusieurs étapes. Les market makers doivent tout d’abord créer leurs ordres, puis les publier dans le carnet de l’exchange. Ensuite, les traders vont remplir les ordres qui les intéressent. Les markets makers devront donc attendre que leurs ordres soient exécutés.

    Avec un AMM à produit constant, les trades sont exécutés directement on-chain, sans intermédiaire. Le délai d’exécution dépend des capacités de la blockchain. La fonction constante assure qu’il y aura toujours de la liquidité disponible.

    Amorçage de la liquidité

    Apporter de la liquidité sur une plateforme d’échange centralisée, traditionnelle, est un processus long et coûteux. Premièrement, les plateformes doivent attirer des market makers – généralement en leur fournissant des fonds, et des trading desks personnalisés. Deuxièmement, les market makers doivent créer les algorithmes qui vont distribuer la liquidité à travers le carnet d’ordres. Enfin, ces derniers, qui doivent constamment se couvrir contre le risque (hedging) vont jouer un rôle actif, et utiliser plusieurs plateformes différentes.

    Avec les AMM à fonction constante, les fournisseurs de liquidité jouent un rôle beaucoup plus passif. Ils vont seulement déposer leurs fonds sur les coffres de l’exchange (les liquidity pools) et attendre que les trades aient lieu. Plusieurs mécanismes d’incitation économique assurent que les market makers pourront profiter de l’immobilisation de leurs actifs dès le lancement du marché. De cette façon, la liquidité est disponible rapidement pour tous les participants.

    L’indépendance des chemins

    La découverte du prix d’un actif est dite path-dependant lorsqu’elle est influencée par le comportement des participants au marché. C’est le cas pour les exchanges centralisés, où les prix sont affectés par la profondeur du marché, l’historique des échanges, ou d’autres informations qui ne sont disponibles que pour certains participants.

    Avec un AMM à fonction constante, la découverte du prix est path-independant. En effet, la fonction de prix ne prend en compte que les quantités disponibles de chaque actif et non le chemin que les liquidités ont emprunté entre elles. Ainsi, l’état du marché n’est défini que par ce paramètre – la quantité d’actifs en réserve.

    Les oracles on-chain

    Sous les bonnes conditions, les AMM peuvent fournir des oracles de prix on-chain pour les actifs déposés dans les pools de liquidité. Pusiqu’il y a des opportunités d’arbitrage, lorsque le prix d’un actif au sein de l’AMM diverge de son prix sur des exchanges externe, on peut assumer que le prix de l’AMM reflétera le prix global du marché.

    C’est vrai en théorie, mais en pratique, il faut être certain que personne ne peut manipuler le prix donné par l’oracle.

    Formalisation du modèle d’AMM à produit constant

    Dans cette partie, nous allons faire un peu de mathématiques et décrire la formalisation du pricing d’un jeton lors d’un échange.

    Soient deux réserves de jetons. Considérons un DEX qui permet d’échanger deux jetons, X et Y.

    • Soit x le nombre de jetons X en réserve ;
    • Soit y le nombre de jetons Y en réserve.

    Le prix d’échange du jeton (token exchange price) est déterminé par le ratio entre x et y – de telle façon que le produit x x y reste constant.

    • Soit ∆x la quantité de jetons X vendus ;
    • Soit ∆y la quantité de jetons Y correspondante.

    La relation entre ∆x, ∆y et le produit x x y est donc la suivante :

    x x y = (x + ∆x) x (y – ∆y)

    Notre prix d’échange (∆x/∆y) est donc fonction de x/y.

    Modification des réserves de jetons

    Après l’échange, les réserves sont alors mises à jour comme suit :

    AMM - Produit constant - Modification des réserves

    Où :

    De la même façon :

    Incidence des frais

    Soient ρ les frais prélevés pour chaque échange de jetons. Nous avons donc 0 ≤ ρ < 1 avec ρ = 0,003 pour des frais standard de 0,3 %. Soit γ = 1 – ρ. Désormais :

    AMM - Produit constant - Frais

    Où :

    Nous avons aussi :

    Si nous n’avons aucun frais pour l’échange, alors γ = 1. Lorsque γ < 1, le produit x x y va augmenter lors de chaque trade :

    Le produit reste constant lorsqu’il n’y a pas de frais :

    AMM - Produit constant - Pas de frais

    Fonctions de l’AMM à produit constant

    Avec ce modèle, soit X le jeton représentant l’ether (ETH) et Y le jeton ERC-20 correspondant pour l’échange effectué. Nous avons différentes fonctions au sein du protocole.

    Fonctions de liquidité

    Le protocole utilise les fonctions suivantes pour créer (to mint) et détruire (to burn) les jetons permettant de garder la trace des liquidités déposées et retirées par chaque compte Ethereum. On appelle ces jetons Liquidity Provider tokens (LP tokens) ou Exchange tokens.

    • addLiquidity

    Cette fonction crée (mint) les LP tokens correspondant à la liquidité apportée dans le pool.

    • removeLiquidity

    Cette fonction brûle (burn) les LP tokens correspondant à la liquidité retirée du pool.

    Ces deux fonctions sont l’implémentation des formules mathématiques décrite plus haut, en utilisant l’arithmétique entière. Cela permet ainsi d’éviter les erreurs d’approximation dues aux arrondis entiers, qui pourraient être exploitées par l’utilisateur pour faire de l’argent “gratuit”.

    Apporter de la liquidité (liquidity minting)

    Lorsque de la liquidité est apportée en ether (jeton X), le fournisseur “crée” de la liquidité. La définition mathématique du procédé est alors la suivante :

    Soit (e, t, l) le tuple représentant l’état de l’AMM, où :

    • e est la quantité d’ETH en wei ;
    • t est le nombre de LP tokens ;
    • l est la quantité totale de liquidité.

    La fonction addLiquidity accepte alors en entrée ∆e > 0 et met à jour l’état de l’AMM comme suit.

    • Le tuple (e, t, l) devient (e’, t’, l’) où :

    Ainsi, un fournisseur de liquidité ajoutant ∆e wei et ∆t = t’ – t jetons ERC-20 dans les réserves va créer (mint) ∆l = l’ – l liquidité.

    Le ratio entre e, t et l est préservé. Le produit k = e x t augmente.

    En effet, soit (e, t, l) addLiquidity (e’, t’, l’) le changement d’état de l’AMM. Soient k = e x t et k’ = e’ x t’. Alors :

    AMM - Produit constant - Ajout de liquidité

    Avant de passer à la fonction opposée (retrait de liquidité), il nous faut mentionner l’arrondi.

    Arrondi entier

    Pour une implémentation utilisant l’arithmétique entière, l’approximation de t’ et de l’ (qui ne sont pas des entiers) est formulée de la manière suivante.

    La fonction addLiquidity, une fois codée, reçoit en entrée un entier ∆e > 0 Z. L’état de l’AMM est mis à jour ainsi :

    AMM - Produit constant - Ajout de liquidité - Arrondi

    Si nous revenons à notre fonction addLiquidity spécifiée précédemment, nous avons donc les relations suivantes entre les tuples (e, t, l) et (e”, t”, l”) :

    AMM - Produit constant - Ajout de liquidité - Arrondi

    De cette façon, t’ est approximé vers une plus grande valeur t”, mais dans tous les cas :

    0 < t” – t’ ≤

    Tandis que l’ est approximé vers une plus petite valeur l”, dans tous les cas :

    -1 < l” – l’ ≤ 0

    Nous obtenons donc la propriété désirée pour le schéma d’approximation :

    k” >> k’

    Dans la pratique, cela signifie que lorsqu’un fournisseur de liquidité dépose plus de jetons que nécessaire dans la réserve (jusqu’à 1), il va “mint” moins de liquidité que leur valeur mathématique (jusqu’à -1).

    Retirer de la liquidité (burning liquidity)

    Lorsqu’un liquidity provider souhaite retirer tout ou partie de ses ETH et jetons ERC-20 des pools, il va brûler la liquidité (les LP tokens) correspondante. La fonction est removeLiquidity.

    removeLiquidity reçoit en entrée 0 < ∆l < l et l’état de l’AMM est mis à jour ainsi :

    AMM - Produit constant - Burn de liquidité

    L’utilisateur brûle donc ∆l liquidité tandis qu’il retire ∆e = ee’ wei et t = t – t’ jetons ERC-20. Il s’agit de la définition mathématique du “burn” de liquidité, qui est duale au “mint” de liquidité, et il en va de même pour l’invariant :

    Soient k = e x t et k’ = e’ x t’. Alors :

    D’autre part, si :

    (e0, t0, l0) addLiquidity (∆e) (e1, t1, l1) removeLiquidity (∆l) (e2, t2, l2)

    Avec ∆l = l1l0 alors :

    e0 = e2, t0 = t2 et l0 = l2

    Pour l’implémentation en arithmétique entière, e’ et t’ doivent être approximés, puisqu’ils ne sont pas entiers. La formulation est conçue de la même façon que pour la fonction addLiquidity.

    AMM - Produit constant - Burn de liquidité - Arrondi

    Nous avons bien les propriétés désirées pour k’‘ car :

    e’ et t’ sont approximés en e” et t”. Cela signifie dans la pratique que lorsqu’un fournisseur de liquidité retire des fonds, il peut se retrouver avec une quantité moindre que la valeur mathématique de son dépôt. Encore une fois, cela permet d’éviter les erreurs d’arrondi.

    Mécanisme de pricing de l’AMM à fonction constante

    Pour calculer le prix courant d’un jeton, nous disposons de deux fonctions : getInputPrice et getOutputPrice. Il faut encore une fois prendre en compte l’arrondi à l’entier lors de leur implémentation, et faire des ajustements corrects. Ces deux fonctions sont seulement dédiées au pricing des jetons et n’ont donc aucun impact sur l’état de l’AMM.

    Prix d’entrée

    Cette fonction calcule combien de jetons Y (= ∆y ) peuvent être achetés en vendant une quantité ∆x d’ETH (en wei).

    Soient ρ les frais de l’échange de jetons. La fonction getInputPrice reçoit en entrée ∆x > 0, x et y. L’image (en sortie) est ∆y tel que :

    AMM - Produit constant - Prix d'entrée

    Nous obtenons ainsi les deux relations suivantes :

    Soient k = x x y et k’ = x’ x y’. Alors : x < x’, y > y’ et k < k’.

    Lors de l’implémentation de la fonction, avec des frais de ρ, nous avons x et y Z (entiers relatifs). Le calcul est alors basé sur une division entière avec troncature.

    Si nous supposons que getInputPrice (x’x)(x, y) = y’y avec k = x x y, k’ = x’ x y’ et k” = x” x y” alors nous avons bien :

    • x < x’ = x”
    • y’ ≤ y” ≤ y
    • k < k’ ≤ k”

    Prix de sortie

    La fonction getOutputPrice est formalisée comme suit.

    Soient ρ les frais de l’échange de jetons. La fonction getOutputPrice reçoit en entrée 0 < ∆y < y et x, x et y. L’image (en sortie) est ∆x tel que :

    AMM - Produit constant - Prix de sortie

    Nous avons alors les relations suivantes :

    Si nous supposons que getOutputPrice (y’y)(x, y) = x’x avec k = x x y, k’ = x’ x y’ alors nous avons bien : x < x’, y’ < y et k < k’.

    getOutputPrice est donc la fonction duale de getInputPrice :

    • getOutputPrice (getInputPrice (∆x)(x, y))(x, y) = ∆x
    • getInputPrice (getOutputPrice (∆y)(x, y))(x, y) = ∆y

    Tout comme pour la fonction getInputPrice, avec des frais de ρ pour le trade, nous aurons x et y Z et une division entière avec troncature.

    Si nous supposons que getOutputPrice (y’y)(x, y) = x’x avec k = x x y, k’ = x’ x y’ et k” = x” x y”. Soit k” = tA” * tB, alors nous avons bien :

    • x < x’ < x”
    • y’ = y” < y
    • k < k’ < k”

    Nous allons maintenant examiner les fonctions d’échange de jetons qui permettent de mettre à jour l’état des réserves de l’AMM.

    Apport en liquidité

    Nous désirons une formule pour l’apport de liquidité (liquidity provisioning) satisfaisant une règle de pricing donnée.

    Considérons une paire de trading : jeton X et jeton Y. Soit dx la quantité de jeton X vendue au pool. La réserve RX va augmenter de dx et la réserve RY va baisser de dy.

    Le prix auquel le jeton X sera vendu lors du trade peut être défini par le ratio (-dy/dx) – en considérant un dx infinitésimalement petit. Ainsi :

    AMM - Produit constant - Prix du trade

    Cette équation nous donne la relation entre le prix du trade, les soldes des réserves de jetons, et le ratio des réserves pour X et Y, aussi bien que l’invariant, en résolvant l’équation différentielle.

    Par exemple, dans le cas d’une fonction à somme constante :

    Il nous faut trouver une fonction qui donne toujours le prix constant de 1. Nous avons :

    AMM - Produit constant = somme constante avec réserves identiques

    Nous tombons alors sur le modèle de la somme constante : x + y = k.

    Autre exemple, dans le cas d’une fonction à produit constant :

    Considérons deux pools de liquidité (jetons X et Y) de valeur équivalente (50%/50%). Nous devons trouver une fonction par laquelle le prix de x est seulement basé sur le ratio entre x et y. Nous avons donc :

    Et nous retrouvons bien la formule du produit constant, x x y = k.

    Homogénéité des modèles d’AMM en cas de réserves de liquidité uniformes

    Avec les équations relatives aux échanges de jetons mentionnées ci-dessus, nous pouvons prouver que le modèle d’AMM à produit constant et le modèle à somme constante sont les mêmes lorsque les réserves de jeton sont équivalentes, c’est-à-dire lorsque RX = RY.

    Puisque nous avons RRX = RRY’ alors :

    Cela implique donc :

    C’est l’équation décrivant le modèle à produit constant. Nous pouvons calculer le prix marginal pour le jeton X (prix d’un trade infinitésimal) en dérivant cette formule :

    AMM - Produit constant - Prix marginal

    Comme nous l’avons vu précédemment, le prix de x relativement à y forme une hyperbole.

    Impact d’un trade sur le prix et slippage

    Nous désirons ici quantifier l’impact d’un trade sur le prix d’un jeton donné.

    L’impact de l’échange dépend de la courbure de la fonction définissant le prix relatif de deux (ou plusieurs) actifs. Comme nous pouvons l’observer, l’impact de l’échange (qui est également le price sensitivity, la sensibilité du prix) est une fonction continue non-linéaire.

    • Soit 0  ≤ f  ≤ 100 ;
    • Considérons la vente d’une quantité fRx de x jetons à l’AMM.

    Grâce à la dernière équation nous savons que le prix de x avec une réserve Rx avant le trade est :

    Après le trade, le prix devient :

    Le pourcentage de variation du prix est alors :

    AMM - Produit constant - Calcul du slippage

    Nous pouvons ainsi observer que le changement du prix, pour une quantité donnée de jetons échangés, est non-linéaire. Cela implique donc du slippage pour les traders : plus le trade est important, plus il y a de slippage quant au prix.

    Fonctions d’échange de jetons

    Pour mettre à jour l’état de l’AMM lors d’un échange, nous avons trois fonctions principales : ethToToken, tokenToEth and tokenToToken.

    ethToToken

    La fonction ethToToken reçoit en entrée ∆e avec ∆e > 0 et met à jour l’état de l’AMM de (e, t, l) vers (e’, t’, l) de la façon suivante :

    • e’ = e + ∆e
    • t’ = t – getInputPrice (∆e, e, t)

    Lors de l’implémentation, ∆e est un paramètre entier.

    ethToTokenExact

    La fonction ethToTokenExact reçoit en entrée ∆t avec 0 < ∆t < t et met à jour l’état de l’AMM de (e, t, l) vers (e’, t’, l) de la façon suivante :

    • t’ = t – ∆t
    • e’ = e + getOutputPrice (∆t, e, t)

    Lors de l’implémentation, ∆t est un paramètre entier.

    tokenToEth

    La fonction tokenToEth reçoit en entrée ∆t avec ∆t > 0 et met à jour l’état de l’AMM de (e, t, l) vers (e’, t’, l) de la façon suivante :

    • t’ = t + ∆t
    • e’ = e – getInputPrice (∆t, t, e)

    Lors de l’implémentation, ∆t est un paramètre entier.

    tokenToEthExact

    La fonction tokenToEthExact reçoit en entrée ∆e avec 0 < ∆e < e et met à jour l’état de l’AMM de (e, t, l) vers (e’, t’, l) de la façon suivante :

    • e’ = e – ∆e
    • t’ = t + getOutputPrice (∆e, t, e)

    Lors de l’implémentation, ∆t est un paramètre entier.

    tokenToToken

    Soient A et B deux smart contracts d’échange pour l’AMM, dont les états sont les tuples suivants :

    [(eA, tA, lA), (eB, tB, lB)]

    La fonction tokenToToken reçoit en entrée ∆tA avec ∆tA > 0 et met à jour l’état de [(eA, tA, lA), (eB, tB, lB)] vers [(e’A, t’A, lA), (e’B, t’B, lB)] où :

    • t’A = tA + ∆tA
    • ∆eA = getInputPrice (∆tA, tA, eA)
    • e’A = eA – ∆eA
    • e’B = eB – ∆eA
    • ∆eB = getInputPrice (∆eA, eB, tB)
    • t’B = tB∆tB

    tokenToTokenExact

    De la même façon, lLa fonction tokenToTokenExact reçoit en entrée ∆tB avec tB > ∆tB > 0 et met à jour l’état de [(eA, tA, lA), (eB, tB, lB)] vers [(e’A, t’A, lA), (e’B, t’B, lB)] où :

    • t’B = tB∆tB
    • ∆eB = getOutputPrice (∆tB, eB, tB)
    • e’B = eB + ∆eB
    • e’A = eA – ∆eB
    • ∆tA = getOutputPrice (∆eB, tA, eA)
    • t’A = tA + ∆tA

    Nous en avons fini avec les principales fonctions régissant un AMM à produit constant.

    Implémentation des AMM à fonction constante

    Nous avons décrit ici l’approche formelle pour concevoir un AMM à fonction constante ou Constant Function Automated Market Maker pour des jetons ERC-20 sur Ethereum. Cette formalisation fut proposée par Yi Zhang, Xiaohong Chen et Daejun Park le 24 octobre 2018. Elle le point de départ d’Uniswap, la fameuse plateforme DeFi. Elle est toujours l’un des échangeur les plus utilisés sur Ethereum. En termes de volume, les échanges décentralisés représentent plus de 10 milliards de dollars.

    La TVL (total value locked, les fonds verrouillés) sur Uniswap – DeFi Pulse

    Dans la quatrième partie de cette série, nous allons étudier Uniswap, afin d’obtenir les connaissances de base en termes d’AMM sur Ethereum, avant de nous tourner vers des modèles plus complexes.

    Bibliographie

    L’article Les Automated Market Makers à fonction constante – Les AMM décodés est apparu en premier sur Journal du Coin.

    Wecan, , le gestionnaire des banques privées s’ouvre au grand public

    https://journalducoin.com/actualites/wecan-gestionnaire-banques-privees-ouvre-grand-public/

    Le Wecan Group annonce le listing de son jeton sur la plateforme Bitstamp. Le WECAN est donc désormais échangeable, pour un prix unitaire de lancement de 0,001 CHF. L’entreprise fournit des services de gestion et de sécurisation des données dédiés aux institutionnels, mais aussi une messagerie chiffrée, gratuite et accessible à tous. Le WECAN est le jeton utilitaire nécessaire pour payer les frais de ces services.

    Le Journal du Coin vous propose cet article promotionnel en collaboration avec WeCan

    Gestion et sécurisation de données on-chain

    Wecan est une entreprise suisse fournissant des solutions sécurisées et efficaces dans le domaine de la conformité et de la gestion de données. Elle tokénise ces données pour délivrer plusieurs avantages et fonctionnalités, via une suite de produits :

    • Standardisation et auditabilité ;
    • Chiffrement, sécurisation et stockage distribué ;
    • Horodatage ;
    • Partage sécurisé ;
    • Conformité.

    L’infrastructure blockchain repose sur deux couches. Un layer 2 en preuve d’autorité, et la couche de base, Ethereum. Plus d’une centaine d’institutions financières utilisent le premier produit du groupe, Wecan Comply. L’application permet de standardiser, sécuriser, chiffrer, et partager des données de manière distribuée.

    Architecture générale

    Chaque client possède son propre coffre fort numérique auquel lui seul à accès, il est le détenteur de ses données. Ces dernières peuvent être échangées à des tierces parties. Notamment pour faciliter tous types de processus de conformité et toutes les modifications et actions clés sont auditables car elles sont vérifiables sur la blockchain. Ce produit s’adresse donc aux banques, aux intermédiaires financiers et aux clients.

    Une messagerie sécurisée

    Quant à Wecan Connect, il s’agit d’une messagerie chiffrée, là encore entièrement distribuée et dont les données sont accessibles uniquement par les utilisateurs ou entreprises. Le stockage des données peut être effectué directement sur son appareil, ou sur les serveurs de chaque entreprise. Chaque message génère une preuve qui est stocké dans la blockchain. 10 % des revenus du service sont redistribués à ses utilisateurs, en jetons WECAN. Parmi les fonctionnalités de la messagerie, on notera le verrouillage biométrique des messages et leur authentification on-chain.

    Le groupe se positionne donc comme un pont entre les institutionnels et les technologies blockchain. Il s’agit à la fois de fournir une infrastructure robuste et sécurisée, répondant aux exigences de tels partenaires, mais aussi des interfaces intuitives et faciles d’utilisation.

    Tous les produits de l’entreprise sont conformes à la norme ISO/CEI 27001. Ses solutions et son jeton ont obtenu un ruling de l’Autorité fédérale de surveillance des marchés financiers suisse, la FINMA.

    Le jeton Wecan

    Le WECAN est le jeton utilitaire destiné au paiement des frais d’ancrage, lors de l’inscription des données sur la Wecan Chain. Les hashes des transactions sont ainsi reliés aux données transmises par les utilisateurs des applications Wecan, ce qui permet de déployer l’ensemble des fonctionnalités de la suite logicielle : stockage sécurisé, authentification, auditabilité, partage, mise à jour sécurisée… L’ancrage s’effectue à deux niveaux : sur la Wecan Chain (qui s’appuie sur 3AChain), et sur Ethereum.

    Le jeton WECAN est donc nécessaire pour payer les frais d’enregistrement des services. Il est ainsi directement ancré dans le business modèle de l’entreprise, et la demande grandira avec l’adoption des produits proposés. La quantité totale de jetons est de 19 milliards.

    Avec ce listing, Wecan réalise plusieurs de ses objectifs :

    • Proposer ses produits au grand public, en plus des acteurs institutionnels qui l’utilisent déjà ;
    • Renforcer sa stratégie de positionnement de l’entreprise comme un leader des solutions de Blockchain Data Management pour les institutionnels ;
    • Donner au WECAN le statut de jeton institutionnel.

    Ce listing s’inscrit dans une temporalité idéale pour l’entreprise, qui compte bien profiter du renouveau actuel sur les marchés pour s’imposer comme un des acteurs de grade institutionnel les plus solides.

    “WECAN est honoré d’être listé sur Bitstamp, une plateforme qui incarne l’excellence et la crédibilité dans le monde de la crypto-monnaie. Cette étape reflète notre engagement envers la transparence, la sécurité et l’innovation dans le secteur financier mondial.”

    Vincent Pignon, CEO de Wecan Group

    La plateforme Bitstamp est donc choisie pour son sérieux et sa place d’acteur historique dans l’industrie, mais aussi car elle l’un des nouveaux partenaires de l’entreprise. En effet, Bitstamp devient en parallèle l’un des clients de renom de Wecan Group : la plateforme de change utilisera ses produits pour faciliter l’intégration de ses banques partenaires, de ses intermédiaires financiers, et de ses utilisateurs finaux. Pour en savoir plus sur les produits de l’entreprise et son jeton, rendez-vous sur son site officiel.

    Si vous avez envie de découvrir le monde des actifs numériques et de la technologie blockchain, Choisissez plutot un acteur historique crédible

    Lien commercial

    L’article Wecan, , le gestionnaire des banques privées s’ouvre au grand public est apparu en premier sur Journal du Coin.

    Histoire des Automated Market Makers – Les AMM décodés

    https://journalducoin.com/defi/les-amm-histoire-des-automated-market-makers/

    Dans la première partie, nous avons exploré les notions de liquidité d’un marché et de market making. Nous allons ici introduire le concept d’AMM (automated market maker ou faiseur de marché automatisé). Bien qu’on pourrait penser que les AMM sont apparus avec les cryptomonnaies, leur histoire est plus ancienne.

    Introduction aux AMM (Automated Market Makers)

    Le market making est un pilier crucial de la finance : il n’y a pas de liquidité sans market makers. Avec le développement des sciences informatiques durant le 20ème siècle, les market makers humains “traditionnels” ont été peu à peu remplacés par leurs homologues numériques. On parle ainsi d’AMMautomated market makers, ou faiseurs de marchés automatisés.

    Ces algorithmes de market making ont les objectifs suivants :

    • Apporter de la liquidité à un marché en finançant à la fois les deux côtés de la paire échangée (buy side et sell side, offre et demande) ;
    • Atténuer les fluctuations du prix de l’actif ;
    • Limiter le spread au fur et à mesure que les volumes d’échange augmentent sur le marché.

    Nous allons étudier l’histoire des AMM, depuis leur enfance au début des années 2000 jusqu’aux derniers modèles de la finance décentralisée.

    Les marchés prédictifs

    Les AMM (automated market makers) ont tout d’abord été étudiés de façon extensive dans la théorie des jeux. Plus précisément, ils furent utilisés en premier lieu au sein des algorithmes pour les marchés prédictifs.

    Un marché prédictif permet à ses participants de parier sur l’issue d’un événement à venir. Ces paris sont donc matérialisés par des échanges financiers, des trades.

    Pour obtenir une estimation commune des probabilités des résultats d’un événement, interroger des individus à plusieurs reprises n’est pas suffisant. En effet, la participation peut être irrationnelle. C’est par exemple le cas des sondages.

    Avec une incitation économique, les participants tendent à se comporter de manière rationnelle. C’est parce que les participants ayant une meilleure information que les autres (sur l’occurrence d’un événement) ont un intérêt économique à fournir une estimation honnête.

    Les marchés prédictifs sont basés sur l’agrégation de l’information – les convictions des participants au marché quant au futur d’un événement – et sur les paris. Les traders échangent des contrats, et le prix de ces contrats indique la probabilité de l’issue de l’événement. Comprise entre 0 et 100%, cette probabilité représente l’estimation générale. C’est donc une forme de crowdsourcing. Elle est moins biaisée qu’un sondage, grâce à l’incitation économique à agir de façon rationnelle et honnête.

    Les options binaires représentent la forme la plus simple d’un marché prédictif. Elles sont aussi appelées “all-or-nothing options” (tout ou rien). Il s’agit d’un contrat qui, à expiration, règle un prix de 0 ou de 100%. Le paiement est donc une somme fixe, ou rien du tout, en fonction de l’issue de l’événement sous-jacent.

    Règle de notation (scoring rule)

    Afin de calculer le prix d’un contrat sur un marché prédictif, nous avons besoin d’une règle de notation ou scoring rule. Les règles de notation furent utilisées dès la fin du 20ème siècle pour obtenir des estimations de probabilité, par exemple dans la météorologie, les prévisions économiques ou encore l’analyse de risques. Cependant, ces modèles, et même les plus complexes, n’étaient pas satisfaisant en termes de convergence vers un prix d’équilibre.

    Les chercheurs s’aperçurent que les marchés spéculatifs (tels que les actions, les commodités ou les contrats à terme) étaient beaucoup plus efficaces pour transformer des agrégats d’informations en prix.

    C’est spécialement le cas des paris, même en cas de comportement irrationnel de certains participants. C’est ainsi que naquit l’idée de combiner règles de notation (scoring rules) et paris (betting markets). Après avoir combiné les deux de façon empirique, il apparut que c’était le meilleur moyen d’obtenir des estimations fiables.

    Le premier modèle d’AMM : le modèle LMSR

    Le premier modèle d’AMM est basé sur les LMSR. Le sigle signifie Logarithmic Market Scoring Rules for Modular Combinatorial Information Aggregation. On peut le traduire par “règles de notation logarithmique d’un marché pour l’agrégation d’information combinatoire et modulaire”. Le chercheur et professeur d’économie Robin Hanson le proposa en janvier 2002.

    Règles de notation du marché

    Une règle de notation d’un marché (market scoring rule) combine le meilleur des estimations de probabilité individuelles et des estimations de groupes, à travers les paris. Le modèle logarithmique préserve la probabilité de l’issue d’un événement donné, indépendamment des paris dépendant d’autres événements. Ce modèle est conçu pour les marchés prédictifs. Il optimise l’agrégation d’information et l’élicitation de probabilité.

    De nombreux marchés prédictifs crypto utilisent aujourd’hui des versions améliorées de ce modèle. Il existe d’autres modèles pour des marchés où l’agrégation d’information est cruciale, et où les profits dérivent de l’habilité à évaluer les probabilités de la survenue d’événements futurs.

    « En pratique, les règles de notation donnent de bonnes estimations de probabilité de la part des individus, tandis que les paris engendrent de bonnes estimations consensuelles des groupes. »

    Robin Hanson

    Dans le market making traditionnel, quelques acteurs centralisés (les market makers) fournissent de la liquidité de chaque côté du marché. Ils ajustent leur prix en fonction de l’activité. C’est un moyen correct d’agréger l’information, cependant, ces règles de notation basiques sont unidimensionnelles. Les règles logarithmiques permettent d’obtenir le même degré de précision pour des dimensions supérieures.

    Les AMM basés sur les LMSR permettent de disposer d’un nombre arbitraire d’agents algorithmiques et d’interactions, sans augmenter les coûts opératifs.

    La règle logarithmique

    La LMSR détermine une fonction de récompense pour chaque participant au marché. Elle les incite à agir de façon rationnelle.

    • Soit X une variable aléatoire indépendante, avec un espace de résultat fini Ω ;
    • Soit p l’estimation de probabilité rapportée pour la variable aléatoire X.

    Nous avons donc :

    La fonction de récompense est définie ainsi :

    AMM - LMSR - Fonction de récompense

    b > 0 est une constante. lorsqu’un participant au marché change l’estimation de probabilité courante p1 vers p2, il est récompensé sω (p2) – sω (p1) si l’issue de l’événement est ω. L’espérance de gain pour le participant est donc :

    Ce modèle incite les participants à rapporter leur estimation de probabilité honnêtement afin de maximiser leur profit. D(p2 || p1) est appelé l’entropie relative ou la distance de Kullback Leibler entre les probabilités p1 et p2.

    Un marché basé sur une LMSR peut donc être considéré comme :

    • Une séquence de règles de notation logarithmiques où le market maker paie le dernier participant, et reçoit un paiement du premier participant ;
    • Un market maker offrant |Ω| valeurs mobilières (securities). Chaque security correspond à l’issue d’un événement, et paye 1 $ si elle se réalise.

    Changer la probabilité de ω ∈ Ω en une valeur p(ω) équivaut à acheter la security pour ω jusqu’à ce que le prix de marché de la security atteigne p(ω).

    Le modèle LMSR et la finance décentralisée (DeFi)

    Il est possible d’appliquer le modèle LMSR dans la finance décentralisée, pour obtenir une fonction de prix (cost function) pour chaque jeton listé sur un exchange. Cependant, comme nous allons le voir, ce n’est pas idéal, et ce n’est pas résistant au money pumping.

    Soit un market maker proposant n catégories de jetons. Soit q = (q1, …, qn) où qi représente le nombre de jetons correspondant à la catégorie i.

    La fonction de coût est la suivante :

    AMM - LSMR - DeFi - Fonction de coût

    Pour chaque jeton, la fonction de prix est alors la suivante :

    AMM - LMSR - DeFi - Fonction de prix pour un jeton

    Il s’agit donc de l’inverse généralisé de la règle de notation.

    • La fonction de coût fixe le montant total des actifs misés sur le marché, où C(q) est la subvention maximale du market maker ;
    • La fonction de prix Pi(q) donne le coût courant d’un achat d’une quantité infinitésimale de jetons de la catégorie i.

    Lorsqu’un trader désire modifier la quantité de parts d’actifs de q1 vers q2, il doit payer la différence des coûts C(q1) – C(q2).

    Augur et Gnosis, deux plateformes de marchés prédictifs basées sur Ethereum, utilisent le modèle LMSR. Il est bien conçu pour ce cas d’usage particulier. Cependant, le modèle LMSR ne convient pas à la plus répandue des applications DeFi : l’échange de jetons à travers un AMM.

    Voici les graphes des fonctions de prix pour 2 jetons et pour 3 jetons (i=2 et i=3). Dans le cas de 2 jetons, la fonction est une courbe; pour 3 jetons, il s’agit d’une hypersurface de dimension 3.

    Extrait du papier original de Robin Hanson

    Le premier graphe représente la fonction de prix C (x, y, z) = 100 pour 3 jetons. Le second la fonction de prix C(x, y) = 100 pour deux jetons.

    Le money pumping

    Nous pouvons voir que le prix de chaque jeton fluctue légèrement seulement sur une petite partie de la courbe (coin supérieur droit), dans le cas où les réserves de chaque jeton sont équitablement distribuées. En dehors de cette partie, la droite de tangente devient verticale ou horizontale. Cela signifie qu’un trader peut utiliser une petite quantité d’un des jetons pour acheter tous les jetons restants dans le pool de liquidité.

    C’est ce que l’on appelle le money pumping : nous en avons ici un exemple dans la finance décentralisée.

    Ainsi, pour les applications d’échange de jetons (token swap) dans la DeFi, le modèle LMSR n’est pas utilisable. Les market makers courraient à leur perte, et le seul paramètre b contrôle trop d’aspects du comportement du market maker. Cela nous amène à une autre version du modèle : le liquidity-sensitive LMSR.

    Liquidity-sensitive AMM – LS-LMSR

    La sensibilité à la liquidité ou liquid sensitivity signifie qu’un échange (trade) de taille donnée influence moins le prix d’un actif sur un marché liquide que sur un marché illiquide.

    C’est la propriété désirée pour la fonction de prix d’un AMM. En 2010, Abraham Othman and Tuomas Sandholm proposèrent un modèle liquidity-sensitive pour les AMM. Il est capable d’ajuster la réponse du prix au niveau d’intérêt actif du marché (l’activité de trading). C’était une grosse amélioration, car les prix ne fluctuent pas trop lorsque de gros trades sont effectués sur le marché. A contrario, les AMM simplistes étaient des agents de market making algorithmiques qui fournissaient toujours une réponse identique sans se soucier de l’activité du marché.

    Cependant, il est difficile de transformer une règle de notation de marché en règle sensible à la liquidité. Sans trop entrer dans les détails mathématiques, voici comment cela se passe avec le modèle LMSR.

    Le LS-LMSR change la constante b des formules du LMSR en la somme suivante :

    α est une constante.

    La fonction de coût doit toujours progresser dans l’espace des obligations. Ainsi, spécifiquement, pour q = (q1, …, qn) la fonction de coût est :

    Cette variante du LMSR ajuste de façon efficace le paramètre b en fonction de la quantité d’échanges ayant lieu sur le marché.

    La fonction de coût doit toujours avancer dans l’espace. Spécifiquement, pour q = (q1, …, qn) la fonction de prix est la suivante :

    Cette variante des LMSR ajuste donc de façon efficace le paramètre b comme fonction de la quantité de trades prenant place sur le marché.

    Graphes des fonctions de prix LS-LMSR

    AMM - Modèle LS-LMSR - Fonctions de prix
    Graphes extraits du papier original de Robin Hanson

    Il y a cependant un autre obstacle à surmonter pour nos AMM : ce modèle de market maker sensible à la liquidité peut s’avérer très lent. C’est le cas lorsqu’il faut s’adapter à des sauts importants de la valeur de l’actif sous-jacent. Ainsi, ce modèle déraille lorsque la valeur de l’actif varie brutalement après qu’une importante quantité de trading a eu lieu.

    Market makers bayésiens

    Les faiseurs de marché bayésiens (Bayesian Market Makers ou BMM) sont dédiés aux marchés prédictifs dont l’issue est binaire (0 ou 1). Un BMM fournit de la liquidité en adaptant son spread en fonction du niveau d’incertitude quant à la vraie valeur des actifs sous-jacents.

    Dans de tels modèles, les fournisseurs de liquidité déposent tout d’abord leurs actifs en utilisant un ratio fixe. Ils fixent donc la distribution initiale des convictions quant aux résultats possibles. Ensuite, l’algorithme de l’AMM fournit la règle de notation. Il spécifie le coût nécessaire pour modifier la distribution des convictions de l’état courant vers le nouvel état souhaité. Cette scoring rule va inciter les traders à donner leur sentiment réel, afin que l’espérance de gain de l’ajustement de la distribution soit positive.

    L’état de l’exchange (de la plateforme) dépend seulement de la quantité totale d’actifs déposés.

    De plus, fixer le prix d’un échange requiert une unique fonction d’évaluation. Ce n’est pas le cas des algorithmes de correspondance des ordres (matching) plus complexes des carnets d’ordres.

    Usage des BMM

    Ces algorithmes bayésiens sont conçus pour prédire l’issue d’un ensemble d’événements disjoints, non pas pour définir un prix spécifique pour un actif. Ils ne peuvent donc pas être directement utilisés pour fixer les prix d’une paire de trading. De même, ils ne permettent pas d’attirer la liquidité avec des mécanismes suffisamment incitatifs pour les market makers.

    Les premiers AMM pour la DeFi ont donc utilisé de nouveaux modèles. Avec ces systèmes, la fonction de prix (pricing function) spécifie le cours d’un actif en se basant sur la quantité totale disponible, et non pas en spécifiant le coût du changement d’une distribution donnée – l’état de l’AMM.

    La fonction en question est appelée bonding curve (courbe de liaison). Le prix d’équilibre résultant est égal au prix du marché sous certaines conditions. Cependant, avec les modèles basés sur une bonding curve, nous avons besoin de pouvoir changer la quantité d’un actif pour pouvoir mesurer son prix.

    Bancor : le premier AMM sur Ethereum

    Le protocole Bancor représente la première tentative de bâtir un AMM pour les échanges de jetons ERC-20 sur Ethereum. Ce mécanisme d’accès aux liquidités est basé sur le concept de smart tokens – jetons intelligents.

    Ces jetons verrouillent et conservent des réserves d’un ou plusieurs jetons ERC-20. Les utilisateurs les achètent ou les vendent afin d’accéder aux réserves de liquidité. Les prix sont déterminés par une formule spéciale.

    Eyal Hertzog, Guy Benartzi et Galia Benartzi proposèrent le concept le 30 mai 2017. Leur whitepaper s’intitule Continuous Liquidity and Asynchronous Price Discovery for Tokens. Ce modèle simple de market making pour l’échange d’ERC-20 introduisit le premier mécanisme de découverte de prix pour l’échange de jetons sur Ethereum.

    Le ratio de réserve constant

    La méthode de découverte des prix est basée sur un ratio de réserve constantConstant Reserve Ratio ou CRR. Ce ratio est défini par le créateur d’un smart token. La formule de Bancor l’utilise en combinant la quantité de smart tokens et le solde des réserves.

    Prix = Solde / (Quantité * CRR)

    Avec cette formule, le ratio entre les jetons en réserve et la capitalisation totale du smart token (quantité * prix) reste donc constant. Le prix du jeton en réserve est ainsi obtenu en divisant la market cap par la quantité (supply).

    • Lors de l’achat de smart tokens (avec la réserve d’ERC-20), la quantité correspondante d’ERC-20 est ajoutée à la réserve. Cela accroît donc son solde. Les nouveaux smart tokens sont donnés à l’acheteur selon le prix déterminé par la formule.
    • Lors de la vente de smart tokens, ces derniers sont brûlés. Le solde en ERC-20 correspondant au prix déterminé par la formule est transféré au liquidateur.

    Lorsque le CRR tombe au-dessous de 100 %, l’achat de smart tokens entraîne l’augmentation du prix du jeton en réserve. Inversement, la liquidation de smart tokens entraîne la baisse du prix de l’ERC-20 correspondant.

    Théoriquement, la formule permet de ne jamais vider la réserve de jetons, tout en gardant le CRR constant. Cependant, il y a toujours une différence entre un modèle théorique et son implémentation pratique.

    Ainsi, le prix courant des smart tokens est censé être constamment ajusté en fonction des volumes d’achat et de liquidation. Il s’agit d’un modèle de découverte des prix asynchrone : en effet, le prix est calculé après chaque exécution d’ordre.

    Ce faisant, le prix effectif est calculé comme fonction de la taille de la transaction.

    Prix par transaction

    Soient :

    • R : le solde du jeton en réserve ;
    • S : la quantité de smart tokens ;
    • F : le ratio de réserve constant (CRR).

    La quantité de smart tokens reçue en échange d’une quantité E de jetons ERC-20 en réserve est donc :

    De même, la quantité de jetons ERC-20 obtenue en échange d’une quantité T de smart tokens est :

    Bancor fut le premier AMM déployé sur Ethereum. Ce protocole peut ainsi être considéré comme le point de départ de la finance décentralisée. Cependant, il présente des limitations.

    Les limites du protocole Bancor

    La première version du protocole Bancor présentait de nombreux désavantages. Certains sont faciles à déceler :

    • Exposition à de multiples jetons : les fournisseurs de liquidité doivent apporter chaque jeton ERC-20 présent dans les pools ;
    • Slippage : puisque le ratio entre les réserves d’ERC-20 et la quantité de smart tokens est fixé, les gros trades vont impacter significativement la différence entre le prix courant du jeton et le prix effectif du trade ;
    • Pertes impermanentes (impermanent loss) : nous parlerons de ce concept plus en détails. Résumons-le ainsi : lorsque le prix d’un jeton déposé en réserve dévie de son prix lors du dépôt, le fournisseur de liquidité recevra un solde plus faible lorsqu’il voudra récupérer ses jetons.

    Il y avait également d’autres défauts de conception qui furent très vite exploités. Ce protocole définit un ancrage dynamique pour les jetons échangés via les réserves de jetons BNT (les smart tokens). Si les réserves sont faibles, les prix offerts par l’AMM pour les nouveaux jetons seront également très bas. Il est toujours possible d’acheter ou de vendre auprès du contrat, même s’il n’y aucun trader avec qui échanger. Les prix déterminés par l’AMM sont indépendants du marché global du jeton en question. Ainsi, l’AMM suit le marché, et ne le fait pas tendre vers l’équilibre. Plus grande est la différence entre le prix offert par Bancor et le prix au marché, plus il sera coûteux pour les réserves de l’AMM de s’aligner avec la vraie valeur de l’actif. En cas de panic sell (vente panique) sur le marché, l’AMM va épuiser ses réserves.

    Avec les versions 2 et 3 de Bancor, ces inconvénients furent mitigés par divers mécanismes. Toutes ces expériences (et leur lot d’erreurs) ont permis à l’écosystème de la finance décentralisée d’améliorer ses protocoles.

    En conclusion

    Vous connaissez désormais l’histoire des AMM dans le monde merveilleux des cryptomonnaies et de la DeFi. Dans la troisième partie de cette série, nous allons explorer en détails les spécifications d’un modèle d’AMM bien connu, qui a révolutionné la finance décentralisée : l’AMM à fonction constante, incarné par Uniswap.

    Bibliographie

    L’article Histoire des Automated Market Makers – Les AMM décodés est apparu en premier sur Journal du Coin.

    Affaire Genesis : GBTC, Digital Currency Group et relations incestueuses

    https://journalducoin.com/actualites/affaire-genesis-gbtc-digital-currency-group-three-arrows-capital-relations-incestueuses/

    Nous allons nous intéresser aujourd’hui à une affaire peu exposée dans les médias : la chute de Genesis. Rapidement éclipsée par le scandale FTX/Alameda, elle n’en est pas moins juteuse, et implique de nombreux acteurs de l’écosystème crypto. Les faits relatés ci-dessous font actuellement l’objet d’investigations de la part des autorités judiciaires new-yorkaises.

    Vous découvrirez comment un produit financier Bitcoin bien connu, le GBTC de Grayscale, a fait tourner la tête à d’importants fonds d’investissement de l’écosystème, précipité plusieurs sociétés vers la faillite, et ruiné de nombreux investisseurs particuliers.

    Barry Silbert, le Digital Currency Group, Grayscale et le GBTC

    Notre histoire commence en 2013, lorsque la société de gestion en actifs numériques Grayscale Investments fait son apparition. Basée à Stamford (Connecticut), il s’agit d’une filiale du Digital Currency Group. Le DCG est un conglomérat de sociétés crypto, comptant aujourd’hui plus de 300 compagnies, dont notamment CoinDesk et Luno.

    Tout comme le DCG, Grayscale fut créé par Barry Silbert, un ancien banquier de Houlihan Lokey. En 2004, Silbert avait fait ses armes en fondant SecondMarket, une plateforme permettant aux sociétés américaines et autres hedges funds de lever facilement du capital auprès d’investisseurs accrédités. Puis, en 2011, il fonde le Digital Currency Group.

    Barry Silbert

    Ce fut Grayscale Investments qui émit le premier titre financier permettant de s’exposer au cours du bitcoin, coté sur les marchés publics. Pour ce faire, Barry Silbert créa un trust, c’est-à-dire une fiducie : le Bitcoin Investment Trust. Il s’agit de confier la gestion d’un actif à un tiers qui en assure la garde.

    Les parts du trust sont cotées sous le ticker GBTC.

    Les gestionnaires d’actifs

    Un trust comme celui de Grayscale n’est donc rien d’autre qu’un accord fiduciaire, entre des personnes morales ou physiques, et un gestionnaire d’actifs, qui a l’autorité légale de les conserver et de les transférer. Les bénéficiaires n’ont donc pas la garde de leurs bitcoins : ils la délèguent à Grayscale.

    Créer un trust est extrêmement coûteux, et il faut suivre des règles juridiques bien précises. Le gestionnaire d’actifs va alors prélever des commissions (fees) pour payer ses différents experts, et dégager un bénéfice. On appelle trustees les individus ou les organisations qui ont la propriété temporaire des actifs du trust. Il sont alors tenus de les administrer dans l’intérêt des tierces parties. Ils doivent respecter les mandats édictés par le créateur du trust, le grantor.

    À partir d’une taille critique (en quantité d’actifs sous gestion ou AUM), opérer un trust devient très rentable. Les commissions prélevées compensent largement les coûts de gestion, et le gestionnaire peut alors baisser ses frais. Cela permet de rendre la vie difficile aux petits gestionnaires, qui ne peuvent pas être compétitifs. Les gestionnaires de trusts, opérateurs d’ETF, d’ETP ou d’ETN se livrent ainsi une guerre sans merci. Les nouveaux entrants n’ont aucune chance face aux mastodontes, comme Fidelity ou BlackRock. Ils se doivent de proposer des produits financiers absents chez la concurrence.

    La création du Grayscale Bitcoin Trust (GBTC)

    C’est dans ce contexte que le Bitcoin Investment Trust voit le jour. À l’époque, les géants des produits financiers voient les cryptomonnaies d’un mauvais œil. Il y a pourtant de la demande pour un produit financier adossé à Bitcoin. De nombreux investisseurs souhaitent s’exposer à cet actif nouveau ; cependant, ils ne souhaitent pas en assurer garde et gestion eux-mêmes. La technologie est complexe, la sécurité de leurs fonds passe par la cryptographie, les hardware wallets, les phrases mnémoniques… Ce sont des contraintes dont ces investisseurs traditionnels souhaitent se passer. Et, pour cela, ils sont prêts à payer des frais de gestion très élevés.

    Grayscale

    En 2013, les régulateurs de la Securities and Exchange Commission (SEC) ne voulaient pas entendre parler de contrats à terme ou d’ETF sur Bitcoin. Barry Silbert eut donc l’idée de créer le Grayscale Bitcoin Trust. Les investisseurs ont la possibilité de créer des parts, en apportant des dollars ou des bitcoins. Après une période de 6 mois, l’investisseur peut récupérer ses parts du trust, en tant que titre financier échangeable. Cependant, contrairement aux ETF, il n’y a pas de mécanisme de rédemption (redeem). Ainsi, il n’est pas possible pour l’investisseur de récupérer ses dollars ou ses BTC. Il lui est seulement possible d’échanger ses parts à leur prix de marché. Les GBTC sont achetables par n’importe quel investisseur américain possédant un compte de courtage.

    Des frais de gestions salés

    Au niveau des frais de gestion, le GBTC est extrêmement cher. En effet, les commissions annuelles sont de 2 %. À titre de comparaison, un ETF comme le SPDR S&P 500 coûte moins de 0,1 %. C’est donc une aubaine pour Grayscale, qui profite de l’absence d’ETF Bitcoin au comptant depuis la création du GBTC. Les investisseurs sont prêts à payer ces frais très élevés pour bénéficier d’une exposition à Bitcoin, dont le cours grimpe souvent en flèche.

    L’AUM du GBTC n’a depuis fait qu’augmenter – rappelons qu’il est impossible de racheter ses parts – et Grayscale a engendré des bénéfices considérables.

    Malgré des frais de gestion très élevés, le Grayscale bitcoin trust attire les investisseurs
    Le GBTC : nombre de parts et prix unitaire – Fintel.io

    Comme nous l’avons vu, il n’y a actuellement aucun mécanisme de rédemption mis en place pour les parts du GBTC. Les investisseurs ne peuvent pas récupérer leurs fonds – ni leurs BTC, ni leurs dollars. Pour sortir du trust, il faut revendre ses parts sur le marché public.

    La rédemption hypothétique du GBTC

    Bien évidemment, sil était possible de redeem, cela aurait des conséquences sur le marché au comptant du BTC :

    • En cas de discount – si le prix d’une part de GBTC en dollars est inférieur à celui de la quantité de bitcoins correspondante – les investisseurs vendraient les bitcoins, pour récupérer leurs dollars et éviter plus de pertes.
    • Dans le cas contraire, les holders de GBTC revendraient à coup sûr leurs bitcoins contre des dollars, pour profiter du premium – le prix d’une part de GBTC en dollars étant supérieur à celui de la quantité de bitcoins correspondants.

    Le GBTC est très rentable pour Grayscale, grâce aux frais de gestion. Cependant, il existe bien quelques possibilités de rédemption, mentionnées dans le prospectus.

    • Dissolution du trust : cette option nécessite l’approbation de 75 % des actionnaires. Un quorum difficile à recueillir, d’autant plus que toutes les parts du trust ne sont pas échangeables sur les marchés publics.
    • Dissolution sur décision du sponsor : Grayscale peut décider de dissoudre le GBTC, cependant, la firme n’a aucun intérêt à le faire. Avec un market cap de 6,24 milliards de dollars, le GBTC rapporte actuellement 124,8 millions de dollars par an en frais de gestion.
    • Exemption de la Régulation M : cette exemption, délivrée par la SEC, permettrait au trust de bénéficier du même mécanisme de création et de rédemption que les ETF. En d’autres termes, les détenteurs de parts du GBTC pourraient récupérer leurs actifs au prorata de la valeur nette du fonds.

    Maintenant que nous savons comment est structuré le GBTC, nous allons voir comment plusieurs sociétés en ont profité.

    L’entrée des artistes : Genesis, GEMINI, THREE Arrows CAPITAL ET BlockFi

    Le GBTC s’est donc transformé en une formidable machine à cash pour le groupe de Barry Silbert, mais aussi pour certains fonds d’investissement crypto. Grâce à un processus d’arbitrage entre le GBTC et son sous-jacent (le bitcoin), plusieurs sociétés ont pu amasser des fortunes durant des années.

    Genesis, le prêteur généreux

    Genesis Trading était une plateforme de services financiers (broker/dealer) crypto, connue pour avoir lancé le premier comptoir de gré-à-gré (OTC) pour les institutionnels. Elle était spécialisée dans le lending (le prêt) en cryptomonnaies. Ses clients pouvaient lui confier leurs BTC, qui étaient ensuite prêtés, et générer ainsi des intérêts.

    Genesis - Rapports trimestriels
    Les rapports trimestriels de Genesis de 2018 à 2022 : une activité en pleine croissance. Source DataFinnovation

    Genesis captait également des liquidités auprès des clients de plateformes tierces. C’était le cas avec Gemini, la société des frères Winklevoss. Elle propose un produit nommé Gemini Earn. Par ce biais, les utilisateurs de Gemini Earn peuvent prêter leurs dollars ou leurs BTC, et générer des intérêts. Entre autres, Gemini prêtait ces fonds à Genesis, à des taux plus élevés que ceux qui étaient versés à leurs clients. C’est ainsi que Genesis s’est retrouvé avec un capital considérable, bien que ce ne fut pas sa seule source de liquidités.

    Ajoutons à cela que Genesis était un des participants autorisés à créer des parts au sein du Grayscale Bitcoin Investment Trust.

    Genesis et la Création de parts du GBTC

    Genesis s’est mis à prêter ses bitcoins, à des sociétés d’investissement telles que Three Arrows Capital ou encore BlockFi. À leur tour, ces fonds utilisaient ces bitcoins pour demander à Genesis (participant autorisé) de les verrouiller chez Grayscale, afin de créer des parts de GBTC pour leur compte. Les sommes sont considérables : Three Arrows Capital fut un temps le plus gros détenteur de GBTC. Nous en sommes certains, car ces fonds ont l’obligation de déclarer ces actifs à la SEC, lorsqu’ils représentent plus de 5 % de leur capital.

    GBTC- Holdeurs
    Les plus gros détenteurs de GBTC en 2021/2022 (Bloomberg)

    De plus, il s’est avéré que 3AC utilisait également ces bitcoins comme collatéral pour contracter des prêts en dollars auprès de… Genesis. Cela parait absurde, mais nous y reviendrons.

    L’arbitrage sans efforts grâce au premium

    Quel était donc l’intérêt pour ces firmes d’obtenir autant de parts du GBTC de Grayscale ? Le premium ! En effet, le GBTC a toujours été coté avec un premium par rapport à Bitcoin. Cela provient, entre autres, du fait qu’il faut six mois pour créer des parts. En d’autres termes, lorsque la demande en GBTC augmente, ce qui est le cas en bull market, les seules parts disponibles sont celles qui ont été créées six mois auparavant. Lors des beaux jours, la demande en GBTC était donc supérieure à l’offre, et les acheteurs étaient donc prêts à payer un surplus, par rapport au prix au comptant de l’actif sous-jacent.

    La première partie du schéma est donc la suivante : tout d’abord, Three Arrows Capital emprunte du BTC à Genesis. Ensuite, elle confie de nouveau ces BTC à Genesis, qui, en tant que participant autorisé, verrouille ces BTC chez Grayscale, qui crée des parts de GBTC. Enfin, six mois plus tard, Three Arrows Capital reçoit les parts de GBTC, et les revend sur le marché, encaissant le premium. Le fait que Genesis prêtait les BTC de ses clients afin de créer du GBTC pour le compte de 3AC fut confirmé par le fondateur de 3AC, Su Zhu.

    Emprunts de dollars avec un collatéral en GBTC

    Genesis empruntait également des dollars auprès de Gemini. Il fallait donc trouver un moyen de générer du profit avec ce capital, notamment pour payer les intérêts à Gemini.

    C’est alors que Genesis se tournait vers les firmes comme 3AC, et leur prêtait ces dollars, en utilisant leurs parts de GBTC comme collatéral. Cela permettait alors, comme par magie, de leur donner des liquidités immédiates, pour un profit qui ne serait réalisé que six mois après l’opération.

    En termes de sommes, 3AC a emprunté jusqu’à 2 milliards de dollars en utilisant cette méthode circulaire. Genesis, quant à elle, a pu récupérer des intérêts substantiels sur ces prêts.

    Genesis - Prêts USD
    Les prêts de Genesis en USD et équivalent USD (en millions de dollars) DataFinnovation

    Genesis a également prêté les bitcoins de ses clients à Alameda Research et BlockFi. À cette époque, Genesis était directement contrôlé par Digital Currency Holdings. Sa filiale dédiée au lending n’a pas eu de bureau exécutif avant juin 2022. Et lorsque ce fut le cas, deux des trois membres du board provenaient directement de DCG.

    Il était donc très intéressant pour le DCG d’encourager Genesis à utiliser les prêts en BTC pour réaliser cet arbitrage sur le GBTC. En effet, ces BTC resteraient prisonniers des mains de Grayscale, en l’absence de mécanisme de rédemption sur le GBTC. Et les profits générés par les 2 % de frais de gestion remontent directement vers DCG, la société parente de Grayscale…

    Tout va bien en bull market

    Ce schéma est extrêmement juteux tant que le GBTC est échangé avec un premium par rapport à son sous-jacent, le bitcoin.

    Genesis - DCG - 3AC : le cercle du GBTC
    Illustration du schéma – DataFinnovation

    Ce fut le cas durant de nombreuses années, cependant, lors du cycle baissier de 2021… Le GBTC commença à présenter un discount. C’est à cette période que les ennuis commencent pour 3AC et BlockFi.

    Le bear market n’est pas la seule raison pour laquelle le premium du GBTC s’effaça progressivement. De nouveaux véhicules d’investissement permettant de bénéficier d’une exposition au bitcoin firent également leur entrée sur le marché de l’équité, par exemple :

    • Les contrats à terme sur BTC ;
    • Les ETF au comptant étrangers ;
    • Les actions Microstrategy.

    C’est le 23 février 2021 que le premium du GBTC devint un discount pour la première fois. Depuis cette date, le premium n’est jamais redevenu positif. Fin 2022, il atteint même – 49 %. Cela signifie que la valeur du fonds était à peine au dessus de la moitié de la NAV en bitcoins. Le début de l’année 2021 marque donc la fin de cette belle opportunité d’arbitrage, et de l’argent magique pour les firmes qui en profitaient.

    GBTC - Premium/Discount
    Tout se passe mal en février 2021

    Du côté de Three Arrows Capital, cet arbitrage était une des principales et plus profitables activités. C’est alors que la firme se tourna vers un trade encore plus risqué : le TerraUSD. C’est encore avec l’argent emprunté auprès de Genesis qu’elle réalisa cette opération.

    La chute de Three Arrows Capital

    Le 7 mai 2022, l’écosystème Terra Luna s’effondre. Les jetons LUNA et UST tombent à zéro en quelques jours à peine. 

    Three Arrows Capital (ainsi que BlockFi) utilisaient un important levier pour réaliser leurs opérations et profiter de l’UST. Ils se retrouvèrent insolvables.

    Vers mi-juin, Three Arrows Capital se retrouva en défaut de paiement pour ses emprunts en BTC. Après liquidation de son collatéral, Genesis se retrouva avec un trou de trésorerie de 1,2 milliard de dollars.

    Quant à leurs emprunts en dollars, contractés auprès de Genesis, le collatéral était constitué de GBTC. Le discount les obligeait à ajouter plus de collatéral, pour couvrir la baisse de sa valeur.

    Problème supplémentaire, les actifs tels que le LUNA de Terra, ou autres cryptos que possédaient ces firmes étaient aussi en train de perdre leur valeur. On comprend que le problème devint systémique pour le Digital Currency Group, qui possédait à la fois Grayscale et Genesis. En cas d’appel de marge, il lui serait impossible de récupérer les fonds prêtés à ces sociétés.

    Afin d’éviter l’appel de marge, il fallait trouver une solution. Il n’y en avait aucune. Three Arrows Capital fut donc sacrifié.

    La contagion chez Genesis

    Les prêteurs qui avaient généreusement fourni Genesis en bitcoin tentèrent alors de les retirer. Genesis était techniquement en banqueroute, et son CEO, Michael Moro, n’avait plus qu’à déclarer faillite. Mais ce ne fut pas le cas. Avec l’aide de Barry Silbert, il chercha à trouver un moyen d’améliorer la balance sheet de Genesis, de rassurer ses clients et de limiter les retraits.

    En échange de la plainte que Genesis allait déposer contre Three Arrows Capital, le DCG allait lui confier 1,1 milliard de dollars. On parlait d’une promissory note, c’est-à-dire une lettre de change, en droit. Cela ne valait pas beaucoup plus que le morceau papier. En effet, cette promesse n’engageait pas un capital réel, mais consistait à verser des intérêts durant une période dix ans.

    Silbert était probablement au courant que cela ne valait rien, puisque lorsque Genesis se retrouva plus tard en faillite, il l’évalua à une petite fraction de la somme que ce papier était censé représenter. Cependant, les cadres dirigeants de Genesis présentèrent ce billet à ordre comme des liquidités :

    Genesis - Bilan comptable truqué
    Extrait de la plainte déposée par le procureur général de New-York

    L’utilisation de cette promissory note dans le bilan comptable de Genesis est donc litigieuse : elle figure dans la catégorie « other assets ». Mais ce n’est pas l’unique moyen que le DCG a employé pour tenter de maintenir le navire à flots. Il faut comprendre qu’il fallait à tout prix éviter la faillite de Genesis : le DCG était l’un des plus gros emprunteurs auprès de Genesis. Le portfolio de sa société-fille faisait office de tirelire.

    Des emprunts litigieux

    Le Digital Currency Group avait ainsi contracté un emprunt massif de 18 697 BTC le 18 juin auprès de Genesis, alors que la compagnie était insolvable ! Si le DCG avait levé ce capital ailleurs, il aurait fallu donner plus d’explications, et payer des intérêts bien plus élevés sur ces emprunts. En réalité, le DCG réalisait aussi l’arbitrage du GBTC.

    Genesis - Prêt en BTC au DCG
    Le Digital Currency Group emprunte des bitcoins auprès de Genesis, alors insolvable.

    L’ultime tentative de sauvetage

    Le Digital Currency Group a alors essayé de maintenir le cours du GBTC. Pour cela, il a utilisé ses propres liquidités pour acheter des parts sur le marché, et créer une pression à l’achat. Cependant, ce ne fut pas suffisant. Le DCG s’est retrouvé à être le principal détenteur de GBTC, en tant qu’acheteur de la dernière chance. Entre mars 2021 et janvier 2022, le DCG a acheté 15 millions de parts. Entre février et mars 2022, il a acheté 3 millions de parts supplémentaires.

    DCG - GBTC
    Les différents achats de GBTC du Digital Currency Group en 2021-2022

    Cependant, cela n’a pas suffi à maintenir le prix du GBTC. Il faut ajouter que de nombreuses questions se posent sur l’utilisation des emprunts réalisés par le Digital Currency Group auprès de Genesis. On parle de centaines de millions de dollars, et les frais demandés par Genesis étaient cléments.

    L’effet domino

    Cette situation a donc eu pour conséquence d’endetter fortement Genesis, et donc le DCG. Les sociétés qui avaient profité de cet arbitrage durant des années, comme 3AC et BlockFi, avaient fait défaut sur leurs emprunts, et Genesis était donc insolvable. Enfin, avec la chute d’Alameda, qui était également débiteur de Genesis, plus rien n’allait.

    Pour comprendre comment la situation désastreuse de Genesis s’est propagée au Digital Currency Group, il faut lire Barry Silbert lui-même.

    Barry Silbert - Genesis situation
    Barry Silbert avoue à ses actionnaires que le Digital Currency Group avait bien emprunté auprès de Genesis “at arm’s lenght”.

    Le DCG avait eu la possibilité de racheter les dettes de 3AC (contractées auprès de Genesis) après sa banqueroute. Cependant, il était impossible d’assurer que la firme puisse rembourser, à terme, la totalité de ses créances. Ainsi, Genesis aurait pu au mieux vendre la dette de 3AC au DCG pour 10 ou 20 % de la valeur nominale des emprunts.

    Le problème est de savoir comment le DCG aurait-il pu payer ? Avec de l’argent lui-même emprunté à Genesis ? C’est une possibilité, mais dans les faits, cela ne fait que transférer de la mauvaise dette d’une entité à l’autre.

    Le sacrifice

    Barry Silbert prit donc la décision de laisser tomber 3AC et de tenter de renflouer Genesis. L’affaire FTX/Alameda faisait une bonne diversion. Le DCG avait également d’autres dettes, comme les 350 millions de facilité de crédit levés auprès d’Eldridge. De même, Genesis avait emprunté auprès de Gemini (les frères Winklevoss ont fini par perdre patience début 2023).

    Au total, la dette du DCG s’élevait à 2 milliards de dollars. Cela aurait pu paraître sans danger avec un BTC à 50 000 dollars, et un GBTC rapportant 400 millions de frais de gestion annuels, mais avec un BTC à 16 000 dollars, et des frais de gestions divisés par deux, cela devenait très périlleux.

    L’implosion finale de Genesis

    Le DCG se retrouva donc avec un énorme trou de trésorerie, dû à la chute du cours des cryptomonnaies, à l’insolvabilité de Genesis et à la chute de FTX/Alameda. Plus personne n’avait l’envie de fournir du capital à Genesis, et il était quasiment impossible pour le DCG de renflouer ses caisses.

    Si le DCG avait laissé Genesis faire faillite, il aurait été obligé de payer pour les énormes emprunts réalisés auprès de sa société-fille.

    Faire appel à du capital extérieur signifiait que l’argent magique provenant des frais de gestion du GBTC se réduirait. Vendre des GBTC pour renflouer Genesis aurait eu le même effet. Le DCG s’est donc retrouvé dans une situation où son seul produit financier valable et générateur de cash, le GBTC, était à risque.

    En novembre 2022, lorsque FTX explosa, les clients de Genesis, pris de panique, cherchèrent à récupérer leurs bitcoins. Genesis décida alors de gèler les retraits le 16 novembre.

    À ce moment-là, Genesis, comme le DCG, déclarèrent que ce gel des retraits était temporaire, et dû aux remous provoqués par l’affaire FTX sur les marchés. Ils prétendirent que le capital était disponible, mais pas immédiatement. Comme nous l’avons vu, dans la réalité, Genesis était insolvable depuis le mois de juin.

    Le DCG tenta régulièrement de renflouer les caisses de Genesis. Malheureusement, il n’y a plus d’argent magique en bear market… En décembre 2022, les dettes de Genesis étaient estimées à au moins 1,8 milliard de dollars. Le 19 janvier 2023, Genesis fut forcé de se déclarer en faillite. Ses clients réalisèrent que le DCG ne pourrait jamais reboucher le trou dans sa trésorerie. Le montant total des sommes dues à ses créanciers serait de 3,6 milliards de dollars.

    Les Conséquences juridiques de l’affaire Genesis

    Le 19 octobre 2023, le procureur général de New-York a déposé une plainte civile contre Genesis, le DCG, et leurs CEO respectifs Michael Moro et Barry Silbert. Il est possible que le cas aille devant un tribunal pénal. On parle d’une fraude massive ayant impacté des centaines de milliers d’investisseurs.

    Cette affaire, curieusement peu médiatisée en dépit des sommes concernées, présente des ressemblances troublantes avec le cas de FTX/Alameda.

    La justice américaine considère les derniers bilans de Genesis frauduleux. Elle soupçonne également les hauts cadres dirigeants de s’être entendus entre eux pour tromper leurs clients. La mauvaise foi des nombreuses déclarations publiques visant à rassurer les investisseurs interrogent. Tous risquent gros. Les médias financiers, comme ils l’ont fait avec FTX, ont été très indulgents. Ils n’ont pas posé de questions fâcheuses, et ont été très complaisants.
    Il y avait également des drapeaux rouges qui, a posteriori, pouvaient laisser penser que quelque chose de louche se tramait en coulisses. Moro quitta la direction de Genesis juste après la lettre de change apportée par le Digital Currency Group, tout comme Lawrence Summers, conseiller au DCG, qui quitta son poste immédiatement. 

    L’affaire est désormais entre les mains du procureur général de New York, et il dispose déjà d’un cadre dirigeant de Genesis comme témoin coopérant. Pour l’instant, le DCG n’a pas réfuté une seule des accusations portées.

    En conclusion, comme dans le cas FTX, de nombreuses personnes ont perdu des sommes considérables à cause des manigances de Genesis et du Digital Currency Group. Une affaire qui devrait inciter nos lecteurs à la prudence quand il s’agit d’utiliser des plateformes de prêt pour générer des intérêts “passifs” via leurs cryptomonnaies.

    Not your keys, not your coins.

    Sources :

    • La plainte déposée par le procureur général de l’État de New York contre Genesis, Gemini, le DCG et al.
    • Le prospectus du GBTC
    • Les dépôts du Grayscale Bitcoin Trust auprès de la SEC
    • L’enquête de DataFinnovation – ChainArgos – 4AC

    L’article Affaire Genesis : GBTC, Digital Currency Group et relations incestueuses est apparu en premier sur Journal du Coin.

    Il y a 13 ans, Satoshi Nakamoto publiait son dernier message public sur Bitcointalk

    https://journalducoin.com/bitcoin/12-decembre-2010-satoshi-nakamoto-dernier-message-public-bitcoin-forum/

    Le 12 décembre est une date anniversaire énigmatique pour Bitcoin ! En effet, en ce jour de l’année 2010, Satoshi Nakamoto publiait son 364ᵉ et dernier message sur le Bitcoin Forum. Il s’évapora ensuite, laissant sa formidable invention évoluer d’elle-même. Nul ne sait ce qu’il est advenu depuis du plus célèbre des anonymes…

    Le dernier message public de Satoshi

    À la lecture du message de Satoshi Nakamoto, daté du 12 décembre 2010, et publié comme à son habitude sur le Bitcoin Forum, rien ne laisse présager qu’il soit le dernier. Satoshi se contente de parler des derniers correctifs apportés au code source de Bitcoin, suite à un bug. Il y mentionne également la nécessité de protéger le réseau Bitcoin des attaques DoS (déni de service).

    Ce post concis spécifie et commente les changements apportés à son logiciel. On peut le traduire comme suit :

    « Il y a plus de travail à mener quant aux attaques de déni de service, mais je suis en train d’effectuer une mise à jour rapide pour ce que j’ai en tête en ce moment, dans le cas où ce serait nécessaire, avant de m’aventurer sur des idées plus complexes. La version pour cela est la 0.3.19.

    • Ajout de quelques contrôles DoS : comme Gavin (NDLR : Andresen) et moi l’avons dit précédemment, le logiciel n’est pas résistant du tout aux attaques de déni de service. C’est une amélioration, mais il y a encore plus d’attaques possibles que ce que je peux compter.

    J’arrête les discussions sur la partie -limitfreerelay pour l’instant, mais elles sont ici si vous en avec besoin.

    • Suppression des alertes “safe mode” : les alertes “safe mode” étaient une mesure temporaire après le bug d’overflow de la version 0.3.9. Nous pouvons dire tant que nous voulons que les utilisateurs peuvent simplement lancer le logiciel avec la commande “-disablesafemode”, mais c’est mieux de ne pas l’avoir pour sauver les apparences. Cela n’a jamais été conçu comme une fonctionnalité à long terme. Il est toujours possible d’activer le safe mode en observant une chaîne de blocs invalide mais plus longue (présentant plus de preuve de travail). »

    Il s’agit donc d’un message technique, et seules deux personnes y ont répondu, demandant plus de détails et donnant leur opinion sur ce fameux « safe mode ». Mais de quoi donc Satoshi Nakamoto parlait-il ?

    Les attaques de déni de service sur Bitcoin

    Une attaque de déni de service consiste à rendre inopérant un service ou un réseau informatique. On parle aujourd’hui plus souvent d’attaques de déni de service distribuées (DDoS) : en effet, ces attaques nécessitent désormais la coordination de nombreuses machines avant d’être efficaces.

    Chaque système a ses vecteurs d’attaque. Les plus répandues sont le flooding (inondation du système de requêtes) et la perturbation des connexions entre les utilisateurs du système et ses serveurs.

    Dans le cas de Bitcoin, et des blockchains plus généralement, le flooding s’effectue généralement en bombardant la blockchain de transactions. Aujourd’hui, le réseau Bitcoin est suffisamment décentralisé pour être résistant à ces attaques – et inonder le réseau de transactions inutiles coûte plus cher. Cependant, à l’époque où seuls quelques nœuds participaient à son consensus, il était plus vulnérable. Les nœuds visés étaient généralement des mineurs, des plateformes de change ou d’autres services financiers.

    Attaques DoS Bitcoin
    Attaques DoS sur Bitcoin réparties par type d’acteurs visés – source en fin d’article

    Une attaque classique consistait à tirer parti de la taille limite des blocs de Bitcoin, et de son faible débit de transactions, afin de saturer le réseau, et d’empêcher les utilisateurs de voir leurs transactions minées à temps. Pour les mitiger, l’option « limitfreerelay » était une des premières idées de Satoshi. Il s’agissait de limiter le nombre de transactions vides (“free”) pouvant être relayées par les nœuds. C’est une protection anti-spam, en quelque sorte.

    Les attaques DoS ont également le fâcheux effet d’augmenter considérablement les frais de transactions pour l’utilisateur « honnête ». Il fallut donc aussi optimiser la structure du memory pool, l’espace mémoire dédié aux transactions en attente.

    Le safe mode de Bitcoin

    Quant au « safe mode », il s’agissait d’un mode de fonctionnement permettant aux nœuds d’arrêter leurs opérations, lorsqu’une attaque ou un problème sérieux étaient repérés sur le réseau. Techniquement, toutes les commandes RPC visant à envoyer des BTC ou à obtenir des informations sur des BTC reçus renvoyaient une erreur. Comme Satoshi le précise dans son message, cette option fut abandonnée.

    Le safe mode était avant tout une réponse au bug de la version mentionné dans le message de Satoshi, un bug d’overflow. Ce bug, appelé en français dépassement d’entier (integer overflow) se produit lorsqu’une opération mathématique produit une valeur numérique supérieure à l’espace de stockage du système. Il fut exploité sur Bitcoin au bloc 74 638, lorsque quelqu’un réussit à soumettre une transaction négative au réseau !

    Fort heureusement, la communauté Bitcoin, alors très restreinte, réagit rapidement. La blockchain fut réorganisée et un correctif fut appliqué immédiatement.

    La disparition de Satoshi

    Après ce message, Satoshi Nakamoto disparut d’Internet pour de bon. Cependant, il continua d’échanger en privé avec quelques développeurs, comme Gavin Andresen et Mike Hearn. Il s’agissait, comme pour ce dernier post, de considérations techniques autour du protocole, et de l’amélioration du logiciel.

    Mike Hearn lui demanda, le 23 avril 2011, s’il y avait une chance qu’il revienne un jour dans la communauté Bitcoin. Satoshi répondit : « I moved on to other things ». Une réponse frustrante et énigmatique… Que pouvait-il y avoir de plus important que son invention ? C’est comme si Satoshi, après y avoir consacré autant de temps, considérait qu’elle devenait ennuyeuse, et que son destin était de passer à autre chose.

    Il ajouta : « It’s (Bitcoin) in good hands with Gavin and everyone ». Satoshi avait visiblement une grande confiance en les développeurs de Bitcoin Core de l’époque, et semblait savoir que son invention, non seulement lui survivrait, mais continuerait à prendre de l’ampleur et à évoluer.

    Une fois de plus, Satoshi Nakamoto avait vu juste. 13 ans après son dernier message public, Bitcoin reste la cryptomonnaie la plus utilisée au monde, et représente 820 milliards de dollars

    Pour en savoir plus sur les attaques DoS sur Bitcoin :

    Pour vous, c’est décidé vous dites “oui” aux cryptomonnaies ! Faites le plein de Bitcoin, d’Ether et autres tokens sur le plus grand exchange du monde. Créez votre compte Binance, LA référence absolue du secteur, et bénéficiez de 10 % de remise sur vos frais de trading

    Lien commercial

      L’article Il y a 13 ans, Satoshi Nakamoto publiait son dernier message public sur Bitcointalk est apparu en premier sur Journal du Coin.

      Les secrets de la Liquidité et du market making – Les AMM décodés

      https://journalducoin.com/?p=648103

      L’efficience et l’accès à la liquidité d’un marché sont deux composants essentiels d’une place d’échange performante.

      Les faiseurs de marchés (market makers) facilitent ce mécanisme en cotant un actif à l’achat comme à la vente, en s’assurant que les liquidités disponibles sont suffisantes pour les participants.

      Nous allons étudier la notion de liquidité au sein d’un marché de façon extensive. Nous verrons pourquoi chaque marché nécessite une liquidité abondante et efficiente, qui sont les acteurs assurant de ce rôle, et comment ils procèdent dans la finance traditionnelle.

      Qu’est-ce que la liquidité ?

      La notion de liquidité réfère à la facilité avec laquelle un actif peut être échangé (acheté ou vendu) sans affecter son prix de marché.

      Le cash est considéré comme étant l’actif le plus liquide, étant donné qu’il peut être échangé contre n’importe quel type d’autres actifs partout dans le monde. A contrario, l’immobilier est considéré comme une classe d’actifs illiquide. En effet, le délai de transaction est également un paramètre important lorsqu’on considère la liquidité d’un actif. Vendre un immeuble prendra des semaines ou des mois avant que le règlement de la transaction soit effectué.

      Étant donné que les théories économiques proposent différentes représentations, le concept de liquidité est complexe à définir.

      La liquidité monétaire renvoie à la quantité d’actifs liquides disponibles dans un même espace économique.

      La liquidité de marché est la mesure de la capacité des participants à un marché donné d’échanger un actif sans affecter son prix.

      Au-delà de la stabilité des prix, la liquidité d’un marché fournit également de la transparence. Ainsi, un marché liquide confère à ses participants une très haute probabilité d’obtenir un prix d’exécution proche du prix attendu lors du passage de l’ordre. Si le marché est illiquide, les ordres d’échange vont tirer le prix de l’actif vers le haut ou vers le bas, déviant le prix effectif du prix attendu.

      Évaluer la liquidité d’un marché

      Quantifier la liquidité d’un marché donné n’est pas une chose facile. Nous avons à notre disposition des indicateurs plus ou moins fiables. Par exemple, la Banque d’Angleterre a son propre indicateur composite, dérivé de mesures variées (bid-ask spread, return to volume ratio et liquidity premia).

      Généralement, la liquidité d’un marché est définie à travers trois facteurs :

      • L’étroitesse du marché (tightness) : il s’agit de la mesure du bid-ask spread. En d’autres termes, il s’agit de l’écart entre l’offre la plus basse et la demande la plus haute ;
      • La profondeur (depth) du marché : le volume d’échange pouvant avoir lieu sans affecter le prix de l’actif ;
      • La résilience du marché : la vitesse à laquelle les fluctuations du prix de l’actif (résultant des échanges) s’atténuent.

      Le volume d’échange (trading volume) sur un marché donné est aussi un indicateur populaire pour évaluer sa liquidité. La liquidité d’un marché dépend de sa structure intrinsèque, mais également de la nature de l’actif échangé. Sur les marchés financiers traditionnels, les actions seront, par exemple, considérées comme liquides. Les parts (equity) de grosses entreprises comme Microsoft ou Amazon sont très liquides : dans ce cas, la liquidité reflète aussi le degré de confiance des investisseurs.

      Pourquoi la liquidité est-elle importante ?

      La liquidité est bénéfique pour les participants au marché. Dans les faits, elle leur assure qu’ils pourront acheter ou vendre rapidement, et à un prix qui se rapproche le plus possible de sa valeur « correcte » (fair value).

      Dans un marché illiquide, les variations de prix représentent un risque de perte potentielle. Pour les traders, le risque de liquidité est la perte potentielle résultant des fluctuations du cours et des frais de la plateforme de change. Liquider une grosse position dans un marché illiquide est long et dangereux.

      Dans un marché liquide, les participants sont certains qu’ils pourront acheter ou vendre un actif à un bon prix, avec des frais faibles, et rapidement. C’est ainsi le cas pour les marchés des devises comme le Forex. C’est donc pour cela que le cash est considéré comme l’actif le plus liquide.

      Sur les marchés crypto, la liquidité d’une cryptomonnaie ou d’un jeton représente la facilité avec laquelle les participants peuvent l’échanger contre du cash (monnaie, fiat ou stablecoins), ou un autre cryptoactif. La nature numérique de ces actifs est un plus pour la liquidité de marché, car la finalisation des transactions est généralement rapide et sécurisée.

      Le carnet d’ordres

      Sur une plateforme d’échange centralisée classique, les ordres des participants au marché sont enregistrés dans un registre. Mis à jour en temps réel, il est appelé carnet d’ordres ou order book. Il fournit les informations suivantes :

      • Ordres d’achat (buy orders) : prix d’achat et quantité désirée ;
      • Ordres de vente (sell orders) : prix de vente et quantité offerte ;
      • Historique des ordres du marché : la liste de toutes les transactions précédemment effectuées.

      Dans une interface de trading classique, le volume des ordres est représenté graphiquement. Les ordres de vente sont généralement affichés en rouge, tandis que les ordres d’achats le sont en vert.

      • L’extrémité de la courbe verte représente l’enchère la plus haute (highest bid) ;
      • L’extrémité de la courbe rouge l’offre la plus basse (lowest ask).
      La représentation classique d’un carnet d’ordres sur un interface de trading.

      Attention cependant, le carnet d’ordres n’offre pas une transparence totale sur le marché. Certains participants peuvent avoir la possibilité de passer des ordres cachés. Ils sont appelés “dark orders” sur les marchés traditionnels. Les acteurs majeurs, qui ne souhaitent pas divulguer d’informations sur leurs transactions aux autres participants, sont souvent ceux qui vont utiliser ce type d’ordres. Le terme “dark pools” désigne ces liquidités cachées.

      Le bid/ask spread

      Le bid/ask spread est l’indicateur le plus classique pour évaluer la liquidité d’un marché.

      Il s’agit de l’écart entre :

      • Le prix le plus haut qu’un acheteur est prêt à payer pour un actif (bid price) ;
      • Le prix le plus bas qu’un vendeur est prêt à accepter (ask price).

      On dit que les bids (enchères) sont du côté de la demande (buy side). Quant aux asks, elles sont du côté de l’offre (sell side).

      Du point de vue d’un vendeur, vendre au prix du marché correspond donc à accepter la demande (bid) la plus haute. Du côté de l’acheteur, acheter au prix du marché équivaut à accepter l’offre (ask) la plus basse.

      En excluant les frais de plateforme, le spread est ainsi le coût principal d’une transaction.

      Le Bid Ask Spread, un indicateur souvent utilisé permettant d'analyser la liquidité du marché.

      La profondeur de marché influence le bid/ask spread. L’écart s’accroit d’un côté ou de l’autre (buy and sell sides). C’est donc ainsi que les trous de liquidité (liquidity holes) se creusent. Lorsqu’il y a peu d’ordres ouverts sur le marché, le spread sera exploité par certains acteurs. Cela leur permet ainsi de générer du profit : il s’agit des market makers.

      Pour calculer le spread d’un marché en tant que pourcentage, il faut soustraire l’enchère la plus haute de l’offre la plus basse (highest ask – lower bid). Si l’offre la plus basse pour BTC est de 20000 $ et que l’enchère la plus haute est de 19900 $, le spread est de 100 $ donc de 0,5 %.

      Nous savons désormais que la liquidité d’un marché dépend de différents facteurs, pouvant être évalués de plusieurs façons. Ainsi, afin de pallier les problèmes de liquidité, un acteur important assure la viabilité des places de marché : le faiseur de marché ou market maker.

      Qu’est-ce qu’un faiseur de marché (market maker) ?

      Dans la finance traditionnelle, un market maker est une entreprise ou un individu qui fournit de la liquidité pour un actif donné sur un marché.

      Rôle et utilité

      Un faiseur de marché ou market maker agit à la fois côté achat (buy side) et côté vente (sell side). Il permet ainsi aux participants au marché d’opérer dans un environnement liquide. Il a plusieurs rôles :

      • Apporter de la liquidité au marché ;
      • Limiter les fluctuations du prix ;
      • Maintenir un spread acceptable pour les investisseurs et les traders.

      Dans le monde financier, la plupart des market makers sont d’importantes entreprises de courtage (brokerage companies).

      Rémunération et garanties

      Les market makers tirent profit de leur activité grâce au spread du prix de l’actif. Par exemple, un faiseur de marché achète un actif à 1000 $ et le revend aux autres participants pour 1001 $.

      Sur la plupart des plateformes de change, les market makers sont en compétition les uns avec les autres. Ils tentent ainsi de fournir les meilleurs bids et asks sur le marché. Cependant, il y a des cas où un seul market maker peut avoir le monopole du marché. On lui donne alors le terme “spécialiste” : c’est le cas par exemple du célèbre New York Stock Echange.

      New York Stock Exchange
      La façade du New York Stock Exchange

      Les market makers encourent donc un risque, en conservant des actifs dont le prix pourrait chuter. Ils opèrent généralement comme sous-traitants pour une plateforme de change ou une maison de courtage. Leur mission est d’attirer les investisseurs, en fournissant des liquidités, ou même des services de trading, pour les autres participants.

      Les faiseurs de marché s’engagent à coter un actif continuellement sur le marché. Offre et demande (asks et bids) sont garantis en termes de quantité (volume). Lorsqu’un participant souhaite acheter une offre présente dans le carnet d’ordres, le market maker doit vendre l’actif immédiatement. Les faiseurs de marché doivent assurer vitesse et fluidité du marché pour les investisseurs. Cela permet ainsi d’améliorer la compétitivité de la place de marché ou de la maison de courtage pour laquelle ils opèrent.

      L'équilibre de l'offre et de la demande sur le marché des liquidités.

      Les faiseurs de marché doivent assurer leur rôle même lorsque le marché est volatil ou perturbé. Leur comportement doit être prévisible, discipliné et transparent.

      Stratégies de market making

      Les faiseurs de marché utilisent un large spectre de stratégies et de techniques. Généralement, ils tendent à générer de faibles, mais fréquents profits (une marge comprise entre 0,1 et 0,5 %).

      Market making delta neutre

      Pour les faiseurs de marché et les traders à haute fréquence, la stratégie delta neutral consiste à maximiser le volume et la quantité de transactions, afin de générer du profit grâce au spread du marché.

      Afin de jouer un rôle actif, ces entités doivent conserver une grande quantité d’actifs dans leur propre inventaire. Afin de réduire leur exposition, les market makers vont utiliser plusieurs méthodes. Avec une stratégie delta neutre, ils ont de nombreux ordres et positions ouverts. Ces positions ont des deltas positifs ou négatifs, et un delta total le plus proche de zéro possible.

      En d’autres termes, le prix de marché offert sur une plateforme de change correspond au prix à remplir sur une autre plateforme de change, plus un petit profit. Avec cette stratégie delta neutre, les faiseurs de marché vont générer de petits gains, de façon répétitive, et sans risque.

      Exemple

      Cela fonctionne particulièrement bien sur les exchanges à faible liquidité :

      1. Le market maker place des ordres à cours limité sur un exchange peu liquide.
      2. Lorsque ses ordres sont remplis, il envoie un ordre au marché (sur le côté opposé) sur un exchange plus liquide.
      3. La somme des deux positions opposées est (zéro + spread) : les pertes sur un exchange sont compensées par les profits générés sur l’autre.
      4. Les market makers répètent cette opération buy side et sell side.

      Sur les marchés peu liquides, les premiers faiseurs de marché qui y opèrent vont générer un profit conséquent, en imposant un spread élevé aux autres participants. Lorsque le marché devient liquide et se développe, le spread se réduit.

      Intérêt

      Les market makers qui utilisent cette stratégie recherchent des plateformes de change récentes, à la faible liquidité. Ils peuvent avoir des agréments avec les exchanges. Par exemple, ces plateformes peuvent leur permettre d’accéder à des ordres avancés, ou à de meilleures informations que les autres participants au marché.

      Plus les volumes d’échange sont importants, et plus les profits générés sont élevés. Les market makers essaient de maximiser la fréquence de leurs trades, et de minimiser la latence d’accès à l’information. Cela nous amène au trading à haute fréquence. Les market makers utilisent, en effet, des technologies de communication haut débit, afin de placer leurs ordres et d’obtenir l’information sur les prix avant leurs concurrents.

      Joining the spread

      Cette stratégie est la base du trading à haute fréquence. Elle fut présentée par Marco Avellaneda et Sasha Stoikov en 2006. C’est une stratégie symétrique, où les market makers placent continuellement des ordres sur les deux côtés du carnet d’ordres. La liquidité est distribuée selon une fonction mathématique donnée. Ils essaient d’offrir les meilleurs prix sur la plateforme, à l’achat comme à la vente, à la volée.

      Les ordres sont remplis à chaque fois qu’un autre participant place un ordre au prix du marché. Les market makers suivent l’action du prix, et profitent du débit de transactions élevé. Cette stratégie fonctionne bien lorsque les ordres sont équitablement distribués de chaque côté du marché. Elle devient perdante lors des moments où de très gros ordres sont exécutés d’un même côté.

      Les traders/market makers à haute fréquence peuvent aussi utiliser la tendance (trend) d’un marché pour maximiser leurs profits. Ils vont ainsi accumuler un actif dans leur inventaire en cas de marché haussier (bullish) et placer des ordres de vente plus élevés.

      Grid trading

      Cette stratégie consiste à placer des ordres à cours limité dans le carnet autour d’une moyenne mobile du prix de l’actif. La taille des ordres augmente lorsque leur prix d’exécution diverge de la moyenne mobile. Les ordres sont dispersés, donc ils sont remplis moins fréquemment, mais ils offrent un meilleur spread. Plus le prix diverge de sa moyenne et meilleurs sont les gains.

      La moyenne mobile du prix est ajustée régulièrement. Il est aussi possible d’utiliser des données externes – les prix sur d’autres plateformes.

      Il y a de nombreuses techniques d’optimisation, comme l’exécution de prises de profits en stop suiveur (trailing take profits), pour exploiter la tendance du marché. Par exemple, dans un marché haussier, le prix moyen de sortie de leurs positions sera plus élevé que s’ils les avaient fermées à leur cours limité. Les market makers vont utiliser de multiples plateformes de change, monitorer leurs ordres et les comparer sur leurs différents comptes.

      Les AMM – Automated Market Makers

      Avant le développement des nouvelles technologies et de l’informatique, les carnets d’ordres étaient remplis manuellement, afin d’augmenter la liquidité du marché. Cependant, il y avait beaucoup de slippage (glissement). Le prix attendu pour un trade était généralement différent du prix auquel le trade était effectivement exécuté. Le processus de découverte des prix était lent, tandis que le market making manquait de transparence.

      Avec les avancées des technologies de l’information, les premiers faiseurs de marché automatiques (AMM ou automated market makers) firent leur apparition durant les années 90. Ils étaient conçus pour éliminer l’être humain du processus de market making. Shearson Lehman Brothers et ATD les implémentèrent en premier.

      Des algorithmes pour éliminer l’erreur humaine

      Les AMM sont des algorithmes, qui permettent d’effectuer un market making fiable et de se débarrasser des erreurs humaines.

      À la fin des années 90 et au début des années 2000, leur adoption fut quasiment forcée. En effet, plusieurs scandales de corruption chez les market makers du New York Stock Exchange et du Nasdaq éclatèrent. Le public voulait des garanties.

      Le trading à haute fréquence

      Le trading à haute fréquence ou high-frequency trading (HFT) a fait son apparition juste après les premiers AMM. Cependant, contrairement au market maker, le HFT n’a pas l’obligation d’apporter de la liquidité au marché.

      Le HFT s’apparente à une stratégie de trading, tandis que le market making est différent. Au fur et à mesure que j’ai vu l’automatisation évoluer, je ne dirais pas que le HFT vient tout juste d’apparaître. L’automated market making est venu en premier. Ensuite, nous avons vu le HFT arriver en suivant, en tant que sous-produit. Je peux dire que sans les stratégies d’AMM ou de HFT, le marché ne pourrait pas exister. Le marché a tellement évolué, ainsi que les compétences requises, qu’il n’est tout simplement pas possible de revenir en arrière.

      Bryan Harkins, Directeur d’U.S. Equities et de Global FX – CBOE Holdings

      De nos jours, les market makers de la finance traditionnelle sont des entités centralisées : banques, maisons de courtage et institutions. Leurs algorithmes façonnent les carnets d’ordres des plateformes d’échange.

      Avec l’avènement de la finance décentralisée, les AMM se sont encore transformés. Désormais, il n’y a plus de carnets d’ordres, mais des réserves de liquidité (liquidity pools), qui peuvent être alimentés par n’importe quel utilisateur de ces protocoles.

      Les AMM dans la finance décentralisée

      Le but de la finance décentralisée (DeFi) est de remplacer les institutions financières traditionnelles par des contrats autonomes (smart contracts) dont l’exécution est décentralisée.

      Ces smart contracts définissent les protocoles d’échange décentralisés. Il est ainsi possible de créer des places de marché qui brisent les codes classiques entre acheteurs et vendeurs.

      Tout d’abord, ces protocoles héritent des propriétés intrinsèques des plateformes blockchain décentralisées : pair-à-pair (sans intermédiaire), sans permission et résistants à la censure.

      La finance décentralisée permet d’offrir le même type de services financiers que les institutions classiques, et même d’aller plus loin. Il s’agit d’un des cas d’usage principaux d’Ethereum.

      Les usages principaux de la DeFi aujourd’hui sont le prêt et l’emprunt décentralisés. Contracter un emprunt auprès d’une banque est un processus long et douloureux. Cela requiert une quantité significative de paperasse et temps. A contrario, en utilisant des protocoles DeFi, le prêt et l’emprunt sont accessibles en quelques clics. Il n’y a pas besoin de fournir des données personnelles. Un utilisateur de la DeFi a seulement besoin de fournir en garantie son collatéral.

      Bien qu’il soit possible de faire de la finance décentralisée en mettant en relation acheteurs et vendeurs via un carnet d’ordres, les AMMautomated market makers – nous permettent de faire mieux.

      Pourquoi avons-nous besoin d’AMM dans la DeFi ?

      Durant les prémices de la DeFi, de nombreux projets ont tenté de répliquer sur une blockchain le modèle des plateformes d’échanges centralisées. Nous avons ainsi pu assister à l’émergence de plateformes de trading basées sur des carnets d’ordres, comme le bon vieil EtherDelta.

      Cependant, à cause des limitations techniques des plateformes de smart contracts comme le faible débit, ces plateformes d’échange décentralisées (DEX) n’étaient pas viables.

      Il fallait trouver une solution pour intégrer des market makers efficients au sein de ces DEX. L’objectif était d’avoir un slippage faible, un spread réduit, et de la liquidité accessible facilement et rapidement, pour des frais minimes.

      Ainsi les AMM ne sont pas basés sur un carnet d’ordres, mais sur des réserves de liquiditéliquidity pools.

      Liquidity pools et liquidity providers

      Les liquidity pools sont des réserves d’actifs numériques (cryptomonnaies, jetons) verrouillées au sein d’un smart contract. Les utilisateurs du protocole d’AMM peuvent y accéder :

      • Les fournisseurs de liquidité (liquidity providers) sont des utilisateurs qui déposent de la liquidité (en cryptoactifs) à l’intérieur du coffre ;
      • Les autres utilisateurs peuvent alors accéder à ces pools de liquidité sous certaines conditions, fixées par le protocole.

      Les fournisseurs de liquidité sont incités économiquement à déposer leurs liquidités à l’intérieur des coffres numériques, tandis que les utilisateurs doivent payer des frais ou des taux d’intérêts pour utiliser cette liquidité.

      Les liquidity pools peuvent avoir différentes fonctions :

      • Permettre aux utilisateurs de la plateforme d’échanger facilement des cryptos entre elles (protocoles de swap) ;
      • Donner aux utilisateurs les moyens d’emprunter de la liquidité (protocoles de lending).

      Le rôle principal d’un pool de liquidité est donc toujours le même : assurer la présence de liquidités continuellement au sein du protocole. En utilisant un carnet d’ordres traditionnel, le market making serait impossible sur un DEX. Le processus classique de market making requiert de placer constamment une grande quantité d’ordres sur le marché. C’est intenable, en raison de la vitesse des blockchains actuelles, et des frais de transaction (gas fees).

      Avec les pools de liquidité, le market making peut être automatisé via des fonctions mathématiques.

      N’importe qui peut devenir fournisseur de liquidité pour un protocole d’AMM. Il y a des incitations économiques à devenir liquidity provider :

      • Les LP reçoivent des commissions sur les frais de transactions ;
      • Ils peuvent générer des intérêts sur les sommes apportées ;
      • Ils participent à la gouvernance du protocole ;
      • Les LP peuvent même recevoir des jetons utilitaires natifs du protocole.

      Mécanismes

      Avant d’entrer dans les détails, décrivons brièvement les mécanismes d’un protocole d’échange décentralisé basique, basé sur un AMM et un pool de liquidité.

      Paire d’actifs et liquidité

      Les fournisseurs de liquidité déposent une paire d’actifs. Prenons par exemple une cryptomonnaie et un stablecoin : la paire ETH/DAI. Le ratio de 1:1 est fixé par le protocole. ainsi, si un utilisateur dépose 1 ETH, il doit apporter la même valeur en DAI.

      Le protocole utilise alors une fonction mathématique pour calculer la quantité d’actif reçue lors d’un échange (swap). Cette fonction, dite fonction de prix, est basée sur le ratio entre les quantités présentes de chaque actif dans le pool. Ainsi, plus l’ordre exécuté est important par rapport à la taille du pool, et plus le prix obtenu (execution price) divergera du prix attendu (expected price). On peut donc dire que le slippage augmente lorsque le volume du swap augmente.

      Graphique qui représente le lien entre les quantités de chaque jeton dans le pool issu du livre blanc de Curve
      Corrélation entre les quantités de chaque jeton dans le pool (livre blanc de Curve).

      Les utilisateurs ont la garantie que leur swap sera exécuté. Plus la quantité d’un actif est ajouté d’un côté du pool, et plus cela « pousse » la quantité de l’autre actif le long de la courbe.

      Arbitrage du pool

      C’est grâce à l’arbitrage du pool que le ratio entre les deux actifs doit rester correct.

      Si le prix d’un actif, déterminé par l’AMM, est proche du prix de ce même actif sur d’autres plateformes (centralisées par exemple), tout va bien.

      En revanche, s’il y a une forte disparité entre les prix, les arbitrageurs vont pouvoir tirer avantage de la situation et rééquilibrer les prix.

      Par exemple, si dans le pool de l’AMM, l’ETH est coté à 1500 DAI, mais qu’il est coté à 1400 $ sur Coinbase, les arbitrageurs vont avoir intérêt à apporter de l’ETH dans le pool pour le vendre. Ils pourront ensuite acheter de l’ether moins cher sur Coinbase, tant que le prix de l’ETH dans le pool ne reflète pas son prix de marché sur d’autres plateformes. Les arbitrageurs jouent un rôle majeur dans le maintien du ratio correct des jetons au sein des pools de liquidité.

      Propriétés et avantages des AMM dans la DeFi

      Les AMMautomated market makers – de la finance décentralisée offrent de nombreux avantages et fonctionnalités qui ne sont pas accessibles avec la finance traditionnelle.

      • Décentralisation : les AMM de la DeFi ne sont pas opérés par une entité centrale, mais par une plateforme de smart contracts décentralisée. Ces protocoles sont anonymes et sans permission. Même leur gouvernance peut être décentralisée, grâce aux jetons utilitaires. Les DEX basés sur des AMM sont la propriété de leurs utilisateurs, au niveau de la liquidité et du protocole.
      • Propriété et contrôle des fonds pour les utilisateurs. Les utilisateurs, qu’ils soient traders ou fournisseurs de liquidité, possèdent leurs actifs. En effet, ils sont les seuls qui contrôlent les clefs privées de leur wallet lorsqu’ils interagissent avec le protocole.
      • Sécurité et confidentialité : bien que les smart contracts peuvent présenter des failles, s’ils sont codés correctement, ils limitent les vecteurs d’attaque. Les hackers peuvent seulement interagir avec les pools de liquidités du DEX, et non avec les wallets des utilisateurs de l’exchange. Les utilisateurs n’ont pas à divulguer d’informations sensibles et de données personnelles pour utiliser un AMM.
      • Résistance à la censure : les AMM permettent à quiconque de lister n’importe quel jeton crypto. Ils peuvent le faire sans permission et auront la garantie que ce marché existe sur la blockchain.

      Bien entendu, ces avantages correspondent à un monde idéal où les développeurs ne laissent pas de failles dans leurs smart contracts.

      Les limitations des AMM

      Malgré les avancées récentes dans le domaine, les AMM de la DeFi présentent régulièrement des failles. Ils ont aussi des inconvénients : les DEX sont généralement plus lents que leurs homologues centralisés. Les traders ont moins d’options et d’outils à leur disposition.

      Il y a aussi régulièrement des problèmes de liquidité. En effet, les AMM dépendent en permanence des contributions de leurs utilisateurs. Ils doivent leur donner une bonne raison de rester (incitation économique). De gros volumes de trading engendrent un slippage important. Et sur Ethereum, en cas de congestion du réseau, les frais peuvent être élevés.

      Comme nous le verrons, il existe de nombreux modèles d’automated market makers. Chacun présente ses avantages et ses inconvénients. Mais avant de présenter chacun d’entre eux, la seconde partie de cette série d’articles sur les AMM sera consacrée à un peu d’histoire !

      Pour aller plus loin

      Cette première partie de la série d’articles consacrée aux AMM (automated market makers ou faiseurs de marché automatisés) se termine. Vous avez désormais une meilleure idée de ce qu’est la liquidité d’un marché et des techniques des market makers pour en apporter. Si vous souhaitez aller plus loin, vous pouvez consulter les références suivantes.

      L’article Les secrets de la Liquidité et du market making – Les AMM décodés est apparu en premier sur Journal du Coin.

      Indicateurs on-chain pour Bitcoin : le NVT Ratio

      https://journalducoin.com/bitcoin/indicateurs-on-chain-pour-bitcoin-le-nvt-ratio/

      Il existe plusieurs indicateurs on-chain pour Bitcoin, dérivant des données recueillies en étudiant l’activité de sa blockchain. Dans cet article, nous étudierons le NVT (Network Value to Transactions) Ratio. Cet indicateur est basé sur la relation entre la capitalisation de marché du bitcoin et les volumes de transfert sur sa blockchain.

      Qu’est-ce que le NVT Ratio de Bitcoin ?

      Le Network Value to Transactions ou NVT Ratio est un indicateur pour Bitcoin développé par Willy Woo. Ce trader est bien connu de la cryptosphère pour baser ses stratégies sur l’analyse fondamentale et l’étude des données on-chain. Contrairement aux analystes techniques qui se basent sur l’étude des variations du prix du bitcoin, les analystes fondamentaux étudient la blockchain de Bitcoin en profondeur afin de détecter d’autres types d’informations.

      Le NVT Ratio met en relation la capitalisation du marché (market cap) de Bitcoin et le volume de transactions on-chain. Il est similaire au PE Ratio (Price-to-Earnings) des marchés financiers traditionnels.

      Le Price-to-Earnings Ratio (P/E) sur les marchés actions

      Le P/E est l’indicateur le plus utilisé par les investisseurs du stock market pour déterminer la valeur d’une action. Il est basé sur la comparaison entre la valeur de marché d’une action et les profits (earnings) de l’entreprise correspondante. Le P/E est calculé en divisant le prix d’une action par les derniers revenus qu’elle a produit – les dividendes que procurerait l’action si les revenus nets de l’entreprise étaient versés aux actionnaires.

      Sans entrer dans les détails, il permet de juger si une action est surévaluée ou sous-évaluée. Lorsque le P/E est haut, le prix de l’action est élevé par rapport aux profits que réalise l’entreprise. L’analyste considère donc que l’action est surévaluée. Lorsque le P/E est bas, son cours est faible par rapport à l’activité financière de la société. On considèrera donc que l’action est sous-évaluée.

      Le PE de Lagardère SA

      Bitcoin ne confère pas de dividendes à ses détenteurs, il faut donc utiliser une autre métrique pour trouver un indicateur équivalent.

      Idée générale et calcul du NVT Ratio

      Afin de trouver l’équivalence du P/E pour un actif tel que Bitcoin, Willy Woo se base sur 2 des propositions de valeur du réseau :

      • Le stockage de valeur : c’est la capitalisation du marché (market cap) qui sert de mesure. La market cap ou market value s’obtient en multipliant le prix courant d’un BTC par le nombre de BTC en circulation sur le marché.
      • Le transfert de valeur : Bitcoin est un réseau de paiement global et décentralisé. Son utilité peut être mesurée en prenant en compte le volume de transactions effectuées sur sa blockchain.

      Depuis la création de Bitcoin, sa capitalisation de marché croît logiquement avec son utilisation. Le NVT Ratio est alors utilisé pour détecter des changements de tendance au niveau du cours du BTC.

      Les deux mesures sont mises en relation pour obtenir un ratio qui définit un sentiment général du marché. Concrètement, le NVT Ratio est calculé ainsi :

      NVT Ratio = Capitalisation du marché / Volume de transactions (en dollars)

      Ce ratio mesure donc le rapport entre valeur et utilité du réseau. Il est ensuite interprété pour déterminer s’il y a équilibre ou pas entre les deux.

      NVT Ratio = Capitalisation du marché / Volume de transactions (en dollars)
      Le NVT Ratio de Bitcoin sur les 5 dernières années en hebdomadaire

      Interprétation générale

      Le NVT ratio est interprété selon les 3 cas de figure :

      • NVT Ratio élevé ou en tendance haussière : la capitalisation de marché outrepasse le volume de transactions. Cela signifie que les investisseurs surévaluent Bitcoin par rapport à son utilisation effective. C’est donc le signe d’un haut de marché imminent et d’un BTC en surachat.
      • NVT Ratio constant/latéralisant : market cap et volume de transactions sont équilibrés. C’est signe de bonne santé du marché. Généralement, c’est le cas lors du début d’un cycle, qu’il soit haussier ou baissier. Cela signifie que la direction prise est tenable. Le NVT ratio va ensuite s’orienter dans une direction une fois que le cycle bat de son plein.
      • NVT Ratio bas ou en tendance baissière : l’utilisation de Bitcoin est élevée par rapport à la valeur de son cours. Les investisseurs sous-évaluent Bitcoin par rapport à son utilisation. Cela indique donc un bas de marché proche, et un BTC en zone de survente.

      Bien entendu, le NVT ratio ne donne aucune réelle garantie. La valorisation du bitcoin et l’utilisation du réseau ont changé selon les époques. Bitcoin peut être utilisé pendant une certaine période comme un moyen de paiement, puis le narratif global change. Par exemple, lors de ses débuts, Bitcoin était utilisé largement sur les marchés noirs d’Internet (l’ère Silk Road). Quelques années plus tard, il fut présenté comme de l’or digital aux nouveaux investisseurs.

      Il est donc important de prendre en compte les valeurs du NVT Ratio pour des cycles de marchés similaires en termes d’adoption et de vision.

      Affiner la lecture du NVT Ratio

      Les analystes vont généralement utiliser une moyenne mobile du NVT Ratio afin d’avoir une vision plus globale. En effet, sa valeur peut fortement varier au sein d’une même journée. Des moyennes mobiles sur un mois ou plusieurs semaines sont privilégiées pour dégager une tendance plus claire.

      Comment utiliser le NVT Ratio ?

      Le NVT Ratio est un indicateur complexe à utiliser. Il faut donc prendre en compte d’autres outils d’analyse pour confirmer son interprétation.

      NVT Ratio élevé en tendance haussière

      De manière générale, lorsque le NVT Ratio est élevé et que le prix du BTC est haussier, le signal est baissier (bearish). Les investisseurs achètent bitcoin à un prix ne reflétant pas sa valeur en temps que système de paiement. On parle de premium ou de surévaluation : le prix est décorrélé de l’utilité globale du réseau. Si d’autres indicateurs tendent à penser que le cours est en surachat, il est peut-être temps de prendre des profits.

      Le NVT Ratio un indicateur on chain pour Bitcoin
      Le NVT durant le bull run de 2021. Le passage en rouge fin mars/début avril pouvait être interprété comme un signal avant-coureur du crash.

      Attention cependant, dans l’univers des cryptomonnaies, qui est en pleine expansion, les phases haussières peuvent être spectaculaires. Le NVT Ratio peut croître pendant de longues périodes. Le cours du bitcoin a connu de nombreux cycles où sa croissance fut exponentielle. On ne peut pas dire qu’un NVT Ratio élevé est synonyme de marché en bulle. En revanche, après un plus haut (top de marché), il permet de différencier une phase de correction et de consolidation d’un crash majeur.

      En effet, les phases d’euphorie amènent de nombreux utilisateurs du réseau à effectuer une quantité considérable de transactions. Lorsque l’euphorie retombe, le prix peut corriger, et entrer dans une phase de consolidation. Si le NVT ratio reste très élevé, cela signifie que le volume de transaction diminue fortement. C’est signe que l’utilité du réseau n’est plus corrélée au prix élevé de son unité de compte. Un NVT Ratio restant anormalement élevé lors d’une phase de consolidation en tendance haussière est donc un signal baissier. Cela laisse présager une correction substantielle ou un crash.

      NVT Ratio neutre

      En revanche, si le NVT Ratio reste dans une fourchette “normale”, cela signifie qu’une forte activité transactionnelle soutient la valorisation élevée du bitcoin. C’est le signal que le marché n’est pas encore en pleine bulle, et qu’il reste encore de la marge avant d’atteindre un haut de cycle.

      NVT Ratio faible en tendance baissière

      Le NVT Ratio est un bon indicateur pour détecter les bas de marché et les opportunités d’achat. Il faut également prendre en compte d’autres indicateurs pour affiner sa lecture.

      Lorsque le NVT Ratio est faible et que le prix est en tendance baissière claire (bear market), cela signifie que le cours du bitcoin ne reflète pas l’activité on-chain. De nouveaux utilisateurs apparaissent sur le réseau, mais le prix ne change pas de tendance. Cela peut signaler une sous-évaluation de Bitcoin et un mouvement haussier à venir.

      NVT Signal et NVT/HV

      Le NVT Signal (NVTS) est une version modifiée du NVT Ratio où le volume brut de transactions journalières est remplacé par sa moyenne mobile sur 90 jours. Il a été défini ainsi pour prédire plus facilement les hauts de marché. En effet, les pics et les creux seront beaucoup plus sensibles, signalant les hauts de marché avec plus de précision.

      Connaitre les points d'entrée sur le marché
      Le NVTS sur plusieurs années. Le signal en vert donne les meilleurs points d’entrée sur le marché.

      Cependant, la présence de nombreux bitcoins hors-chaîne diminue l’efficacité de cet indicateur. En général, ce n’est pas sa valeur absolue qui sera prise en compte, mais les changements de tendance. Les analyste vont ainsi tracer des lignes de support et de résistance, et attendre un cassure pour prendre le signal en compte.

      Le NVT Ratio peut aussi être couplé à d’autres indicateurs, comme la volatilité historique de Bitcoin. On obtient alors le NVT/HV. Une volatilité faible indique généralement un gros mouvement de marché à venir.

      Fiabilité de l’indicateur

      Comme tous les indicateurs, le NVT Ratio n’est pas à utiliser seul. C’est en additionnant les indications et les signaux que l’on peut affiner son analyse. Cependant, le NVT a historiquement donné des signaux précieuses lorsque le marché de Bitcoin était en surchauffe. De même, le NVT Signal était relativement précis lorsqu’il s’agissait d’identifier les bas de marché des cycles précédents.

      Prenons par exemple la période 2013-2014 où nous avons assisté à 3 bull markets successifs. Couplé aux lignes de support, le NVTS permettait d’identifier les hauts de marché.

      Il est communément admis que la zone des 150 est synonyme de surachat, et la zone des 45 de survente. En 2017, le NVTS a brisé sa ligne de résistance à chaque nouveau plus bas lors de ce bull run historique.

      Si les indicateurs on-chain vous intéressent, n’hésitez pas à jeter un coup d’œil aux articles suivants :

      Si vous vous sentez l’âme d’un analyste, n’hésitez pas à soutenir notre travail en utilisant notre lien d’affiliation pour Glassnode Studio, le meilleur outil d’analyse on-chain du marché !

      L’article Indicateurs on-chain pour Bitcoin : le NVT Ratio est apparu en premier sur Journal du Coin.

      Indicateurs on-chain pour Bitcoin : le NUPL (Net Unrealized Profit/Loss)

      https://journalducoin.com/bitcoin/indicateurs-on-chain-pour-bitcoin-le-nupl-net-unrealized-profit-loss/

      Les indicateurs on-chain pour Bitcoin sont des indicateurs qui dérivent des données recueillies en observant l’activité de sa blockchain. Ils peuvent être très utiles pour analyser le sentiment général du marché, à travers le comportement des détenteurs de bitcoins.

      Dans cet article, nous allons nous attarder sur le NUPL : le Net Unrealized Profit/Loss.

      Qu’est-ce que le NUPL sur Bitcoin ?

      Cet indicateur est dérivé de deux valeurs que nous devons tout d’abord expliciter : la Market Value et la Realized Value.

      Market Value et Realized Value

      La Market Value est l’équivalent du Market Cap (la capitalisation d’un marché), bien connue dans la finance traditionnelle. Pour obtenir la Market Value, il faut multiplier le prix courant d’un bitcoin par le nombre d’unités en circulation.

      Market Value = Prix d’un BTC * Nombre de BTC en circulation

      La Realized Value ne prend pas en compte le cours du BTC à l’instant t, mais le prix de chaque unité lorsqu’elles ont “bougé” pour la dernière fois. Le cours de chaque BTC, lors de son dernier transfert d’une adresse à une autre, est ainsi pris en compte. Ces prix sont additionnés afin d’obtenir une moyenne. Ensuite, cette moyenne est multipliée par le nombre de bitcoins en circulation. 

      Realized Value = Moyenne des prix de chaque BTC lors de leur dernier transfert * Nombre de BTC en circulation

      L’Unrealized Profit/Loss est alors calculé en soustrayant la Realized Value de la Market Value :

      UPL (Unrealized Profit/Loss) = Market Value – Realized Value

      Cette valeur nous donne une estimation des profits (ou des pertes) engrangés par les investisseurs. C’est évidemment une valeur théorique, d’où l’adjectif “unrealized” (non-réalisé).

      Calcul du NUPL

      Pour obtenir le NUPL (Net Unrealized Profit/Loss), il faut diviser l’Unrealized Profit/Loss par le Market Cap de Bitcoin. Cela permet de visualiser les variations des profits/pertes non-réalisés au cours du temps :

      NUPL (Net Unrealized Profit/Loss) = (Market Cap – Realized Cap) / Market Cap

      Cet indicateur peut aussi être appelé “Relative Unrealized Profit/Loss”. Il fut créé en février 2019 par Tuur Demester (analyste), Tamas Blummer (développeur Bitcoin) et Michiel Lescrauwaet (investisseur).

      Quelle est l’utilité du NUPL sur Bitcoin ?

      Le NUPL est un indicateur qui donne des informations sur le sentiment général du marché. Lorsqu’il est positif, cela signifie que les investisseurs sont globalement profitables. Lorsqu’il est négatif, ces derniers sont perdants. Plus sa valeur dérive de zéro, et plus le marché se rapproche théoriquement d’un plus haut (top) ou d’un plus bas (bottom).

      Par exemple, un NUPL de 0,5 signifie que la market cap est deux fois supérieure à la realized cap. Pour un NUPL de 0,75, la market cap représente 4 fois la realized cap. Plus sa valeur est élevée, et plus ce différentiel augmentera la pression baissière sur le marché. À l’inverse, un NUPL fortement négatif signifie que la valeur attendu on-chain est très inférieure à la valeur échangée sur le marché. Un tel différentiel est synonyme d’opportunité d’achat.

      C’est donc un indicateur qui permet d’aider à la décision de vendre (take profit), de ré-entrer sur le marché.

      Sa représentation graphique peut être agrémentée de couleurs, comme chez Glassnode Studio, pour une meilleure lecture.

      NUPL de 2010 à 2020 – Glassnode Studio

      Les différentes couleurs correspondent aux phases d’un cycle de marché.

      Les différentes phases d’un cycle de marché

      Ces phases concernent aussi bien les cycles haussiers que baissier, et leurs dénominations sont faciles à comprendre.

      • Capitulation (en rouge) : durant la phase de capitulation, rien ne va plus. Le marché panique, les investisseurs vendent en masse, et le cours du bitcoin s’effondre. Les phases de capitulation sont un très bon point d’entrée, car le cours est proche de son plus bas (bottom).
      • Espoir ou peur (orange) : la phase de peur précède la capitulation, tandis que la phase d’espoir lui succède. Le marché est en phase de peur lorsque le cours a déjà drastiquement chuté et poursuit sa descente. La phase d’espoir fait suite à une capitulation; le cours commence alors à remonter, donnant le sentiment d’une reprise haussière.
      • Optimisme ou anxiété (jaune) : l’optimisme survient lorsque le cours du bitcoin confirme sa reprise haussière. Les investisseurs sont confiants sur le fait que le marché redevient bullish. À l’inverse, lorsque les cours ont chuté de façon notable, survient l’anxiété. Les investisseurs commencent à se rendre compte que le cycle haussier est probablement en train de prendre fin.
      • Conviction ou déni (vert) : durant les dernières envolées d’un marché haussier, les investisseurs sont toujours convaincus que le prix ne va pas cesser d’atteindre de nouveaux sommets. Lors de la phase de déni, le marché a déjà réalisé son plus haut, mais les investisseurs sont persuadés que la correction n’est que temporaire.
      • Euphorie ou avarice : la phase d’euphorie est le dernier stade d’un cycle haussier. Les investisseurs sont persuadés que le cours continuera de grimper de façon exponentielle. Ils misent leurs derniers deniers, pensant maximiser leur profit. La phase d’avarice survient juste après un haut de marché : les investisseurs ne veulent pas prendre de profits, et restent sur le marché, en attendant un nouveau plus haut.

      Pertinence pour Bitcoin

      Le NUPL est un indicateur parmi tant d’autres, qui doit être utilisé en corrélation avec différents outils d’analyse. Il permet cependant de donner une idée de la phase dans laquelle le marché se trouve, durant un cycle haussier ou baissier. Les investisseurs chevronnés savent qu’il est impossible d’acheter précisément lors d’un bas de marché ou de vendre pile lors d’un haut de marché. Ils vont donc s’aider de ce type d’indicateurs pour échelonner leurs prises de profit, ou déterminer leurs points d’entrée.

      Les données historiques indiquent que lorsque le NUPL est supérieur à 0,7, le cours du bitcoin s’approche de son plus haut (top). À l’inverse, un NUPL inférieur à 0,2 est signe d’un bas de marché (bottom) imminent.

      Où trouver cet indicateur ?

      Il existe plusieurs sites, gratuits ou payants, permettant de visualiser le NUPL sur Bitcoin. Nous avons pris comme exemple Glassnode Studio dans cet article, mais le site Lookintobitcoin propose également un outil de visualisation gratuit.

      Net Unrealized Profit/Loss (NUPL) : indicateur Bitcoin on chain
      NUPL sur Bitcoin – Lookintobitcoin

      De nombreuses autres sources sont également disponibles. Le trader de bitcoin pourra ainsi utiliser cet indicateur on-chain pour affiner sa stratégie d’entrée et de sortie sur le marché.

      Pour aller plus, loin, n’hésitez pas à consulter les articles dédiés aux autres indicateurs on-chain utiles :

        L’article Indicateurs on-chain pour Bitcoin : le NUPL (Net Unrealized Profit/Loss) est apparu en premier sur Journal du Coin.

        22 novembre 2009 : Satoshi Nakamoto crée le « Bitcoin Forum »

        https://journalducoin.com/bitcoin/bitcoin-forum-satoshi-nakamoto-14-ans/

        Le 22 novembre 2009, il y a 14 ans jour pour jour, Satoshi Nakamoto créait le « Bitcoin Forum ». Cet espace de discussion consacré à son invention allait devenir BitcoinTalk, le repaire des bitcoineurs et autres amateurs de cryptomonnaies.

        Le Bitcoin Forum

        Satoshi Nakamoto avait introduit Bitcoin publiquement par un message posté sur le forum de la P2P Foundation le 11 février 2009 : « Bitcoin open source implementation of P2P currency ». Il y décrivait brièvement son système d’argent électronique pair-à-pair et décentralisé.

        Le premier message public de Satoshi Nakamoto annonçant Bitcoin.

        Le message était accompagné d’un lien vers le code source de Bitcoin, ainsi que vers son livre blanc. Il dénombre aujourd’hui plus de 771 500 vues, et, on peut s’apercevoir que les questions et les débats autour de la première des cryptomonnaies avaient fusé quelques heures seulement après son apparition !

        Le premier forum véritablement dédié à Bitcoin fut ensuite hébergé sur SourceForge. Quelques mois plus tard, Satoshi lançait le « Bitcoin Forum » via un simple message :

        Satoshi annonce la création du Bitcoin Forum

        L’ancêtre du Bitcoin Forum n’est aujourd’hui plus disponible. De même, certains des premiers messages de Satoshi sur le nouveau forum furent supprimés, peut-être parce qu’ils auraient pu permettre d’identifier leur auteur.

        20$ en BTC pour un Nano S, 30$ pour un Nano X et 50$ pour un bundle des deux

        Lien commercial

        BitcoinTalk

        Avec le succès de Bitcoin, le Bitcoin Forum devint BitcoinTalk et fut divisé en plusieurs sections. Aujourd’hui, on en dénombre 5 :

        • Bitcoin ;
        • Économie ;
        • Autres ;
        • Cryptomonnaies alternatives ;
        • Sections locales en langue étrangère.

        Chacune de ces sections comporte plusieurs espaces de discussion, où des millions de messages ont été échangés.

        BitcoinTalk - Tableau de bord
        Le tableau de bord de BitcoinTalk

        BitcoinTalk devint ensuite très rapidement le forum de référence. Chaque utilisateur de Bitcoin l’a déjà parcouru, pour y trouver des informations, ou obtenir une réponse à ses questions. C’est aussi un espace ayant vu naître de nombreuses cryptomonnaies alternatives à Bitcoin (altcoins). Durant les premières années d’existence du forum, chaque nouveau projet de cryptomonnaie faisait ainsi l’objet d’un post sur BitcoinTalk.

        Annonce de Litecoin sur BitcoinTalk
        Litecoin apparut sur BitcoinTalk, comme de nombreuses autres cryptomonnaies…

        Il en fut de même pour de nombreux jetons numériques émis via une Initial Coin Offering. Les levées de fonds en cryptomonnaies, à commencer par Mastercoin, étaient à l’époque organisées via un simple fil de discussion. La présentation du jeton était accompagnée d’une adresse Bitcoin, vers laquelle les investisseurs pouvaient envoyer leurs fonds.

        La première ICO de l’histoire fut un succès. Lancée en juillet 2013, les fondateurs de Mastercoin (renommé ensuite Omni) purent rassembler 4740 bitcoins pour développer leur projet… Et, tout ceci grâce à un simple message, envoyé sur BitcoinTalk !

        Les temps ont bien changé, mais BitcoinTalk reste l’espace de discussion numérique le plus important pour tout ce qui touche au roi des cryptomonnaies. Il compte désormais plus de 63 millions de messages, répartis dans 1 369 847 sujets de discussion, et 3 575 938 membres. Joyeux anniversaire, BitcoinTalk !

        Ledger est le leader mondial du hardware wallet. Une très large gamme de produits adaptés à tous les usages, du simple amateur au plus professionnel. En cliquant sur ce lien, bénéficiez d’un bonus de 20$ en BTC pour un Nano S, 30$ pour un Nano X et 50$ pour un bundle des deux

        Lien commercial

        L’article 22 novembre 2009 : Satoshi Nakamoto crée le « Bitcoin Forum » est apparu en premier sur Journal du Coin.

        Les indicateurs on-chain pour Bitcoin (2ᵉ partie)

        https://journalducoin.com/bitcoin/indicateurs-on-chain-bitcoin/

        Il existe de nombreux outils d’analyse pour étudier le prix du bitcoin et prévoir le comportement du cours. Les traders privilégient l’analyse technique, les investisseurs l’analyse fondamentale. Mais il en existe une troisième catégorie pour le cours du BTC : les indicateurs on-chain.

        En effet, la blockchain de Bitcoin – le registre des transactions effectuées sur le réseau – regorge d’informations. En l’étudiant, nous pouvons obtenir de nombreuses indications sur l’état du marché et ses dynamiques.

        Dans cet article, nous allons passer en revue différents indicateurs on-chain, des plus simples aux plus complexes. Nous présenterons la construction et décrirons l’utilisation de chacun d’entre eux, tout comme leurs limites respectives.

        Active Addresses – Adresses Actives

        On appelle adresses actives les adresses recevant ou transférant des bitcoins sur une période donnée, journalière ou hebdomadaire. Cette mesure est très facile à obtenir via la plupart des outils d’analyse on-chain.

        Le nombre d’adresses actives donne une bonne indication de l’adoption de Bitcoin à travers le monde. Il fournit aussi une idée de la croissance de la base d’utilisateurs de Bitcoin au cours du temps. Un nombre décroissant d’adresses actives indique un manque engagement, un intérêt faiblissant pour le réseau.

        Nombre d’adresses actives – Glassnode

        On peut également mettre en corrélation la dynamique des adresses actives avec le volume d’échange on-chain. Une augmentation de ces deux métriques est synonyme de forte volatilité à venir.

        Transaction Volume – Volume de transactions

        Le volume de transaction est le meilleur indicateur de l’usage réel du réseau Bitcoin. Il s’agit du nombre total de transactions effectuées on-chain durant une période donnée. S’il est témoin de l’activité du réseau, il fournit également des indications sur l’état de l’offre et de la demande actuelle.

        Bitcoin On-Chain Confirmed TXs
        Nombre de transactions confirmées par jour (moyenne hebdomadaire) – Blockchain.com

        Cette information est disponible sur tous les explorateurs de blockchain. Elle témoigne également de la volatilité du marché. En effet, durant les périodes de fort momentum, qu’il s’agisse d’un bull run féroce ou d’un panic sell généralisé, le volume de transaction atteint des sommets.

        Dormant Coins – Les bitcoins en sommeil

        Cette mesure est effectuée par les entreprises d’analyse de données on-chain Glassnode et Santiment. Il s’agit de surveiller le comportement des bitcoins qui ont été inactifs (non sujets à une transaction) pendant une période de temps définie.

        On calcule alors la quantité de coins, auparavant inutilisés, qui ont bougé pendant une période spécifique. Santiment nous indique le nombre total de bitcoins inutilisés qui ont été déplacés, tandis que Glassnode calcule la durée d’inactivité moyenne des coins, c’est-à-dire le nombre moyen de jours pendant lesquels chaque coin déplacé un jour donné est resté inactif avant de bouger.

        Un nombre élevé de dormant coins indique donc que de « vieux » bitcoins retournent sur les marchés. Une faible « dormance » indique que les bitcoins déplacés n’ont pas été conservés pendant une période de temps relativement courte.

        Cela nous fournit des informations utiles sur la quantité de bitcoins qui commencent à bouger. Lorsqu’il est élevé, c’est généralement le signe d’une prise de bénéfices à venir, ce qui conduit à l’augmentation de la pression à la vente. Au contraire, s’il y a une baisse importante du nombre d’anciens bitcoins déplacés, cela pourrait indiquer une accumulation continue, et une réticence des utilisateurs à se séparer de leurs précieux bitcoin.

        Dormant Coins - Glassnode
        Exemple : dormance moyenne entre 2016 et 2021 – Glassnode

        Cette métrique a bien entendu ses limites, car elle ne donne aucune information sur la raison pour laquelle les « vieux » bitcoins sont déplacés. Cela n’a peut-être rien à voir avec une vente : raisons de sécurité, mise en collatéral sur une plateforme de change…

        Unspent Transaction Outputs (UTXO) – Sorties non-dépensées

        Sur la blockchain, les bitcoins sont représentés comme des sorties non-dépensées. Il s’agit du fameux modèle UTXO : chaque bitcoin ou fraction de bitcoin présente sur une adresse provient de sorties en provenance d’autres adresses, qui n’ont pas encore été dépensées.

        Lors d’une transaction, ces sorties sont dépensées, entrent vers une autre adresse, pour former de nouvelles sorties non-dépensées. Cela signifie aussi que les unités (en BTC ou fraction de BTC) présentes sur une adresse peuvent être composées de plusieurs UTXO. 

        Par exemple, une adresse comportant 10 BTC peut être composée d’une UTXO de 5 BTC, d’une UTXO de 3,5 BTC et d’une troisième UTXO de 1,5 BTC.

        Ce modèle UTXO est important à comprendre lorsqu’on fait de l’analyse on-chain, car il sert à calculer de nombreuses métriques, nous y reviendrons.

        Supply Distribution – Distribution de l’offre

        La distribution de l’offre totale des bitcoins en circulation donne une idée de la décentralisation financière de Bitcoin. Les bitcoins sont-ils concentrés aux mains des baleines, où se dispersent-ils aux mains des petits détenteurs ?

        On analyse la supply distribution : en regroupant la quantité de bitcoins stockés sur les portefeuilles par ordre de grandeur. Combien de portefeuilles détiennent-ils plus de 1 BTC ? 10 BTC ? 10000 BTC ?

        Bitcoin Supply Distribution
        Exemple de visualisation de la distribution des bitcoins – Glassnode Insights

        Cette donnée n’est pas très utile à des fins d’analyse du prix. Elle est surtout utilisée pour estimer la concentration de bitcoins par certaines entités. Elle est également biaisée, car les gros portefeuilles peuvent être des comptes tiers sous gestion.

        Exchange flows – flux entrant et sortant des plateformes de change

        La grande majorité des plateformes de change centralisées ont rendu leurs adresses Bitcoin publiques. L’observation des flux passant par ces adresses peut donc fournir certaines indications. On appelle exchange flows la quantité de coins envoyés vers ou depuis les adresses des CEX.

        Un flux positif indique que plus de coins entrent dans les portefeuilles des exchanges qu’il n’en sort. Un flux négatif indique l’inverse : les utilisateurs retirent leurs fonds.

        L’exchange flow est donc un indicateur de la pression à l’achat ou à la vente sur les bitcoins. Lorsqu’une grande quantité de bitcoins entre sur les exchanges, c’est signe de pression à la vente. Les gros portefeuilles déplacent leurs coins pour les vendre contre de la monnaie fiat.

        À l’inverse, lorsqu’une grande quantité de coins quitte les plateformes de change, c’est synonyme de raréfaction de l’offre, donc de hausse à venir du cours.

        Bitcoin On-Chain Exchange Netflow
        Exemple : Bitcoin Exchange Netflow par CryptoQuant. Le Netflow = Inflow (BTC entrants) – Outflow (BTC sortants). Lorsque la valeur est positive (en vert), plus de BTC entrent sur les exchanges qu’il n’en sort.

        Cet indicateur est cependant à prendre avec des pincettes. L’interprétation ci-dessus a ses limites. Ces flux ne donnent pas d’indication sur les intentions des dépositaires. Par exemple, une grosse baleine peut tout simplement déposer ses coins pour s’en servir de collatéral, et acheter encore plus de coins en profitant de l’effet de levier offert par la plateforme.

        Ceci dit, historiquement, il est possible d’établir une corrélation assez nette entre les flux entrants sur les plateformes de change et les épisodes de vente massive (selloffs). De même, les flux sortant des échanges préfigurent les périodes haussières, où les détenteurs de bitcoins « HODL » jalousement leurs fonds.

        Market Value to Realized Value (MVRV)

        La Market Value to Realized Value (MVRV) est considérée comme un bon indicateur des hauts et des bas de marché. On parle ici de top et de bottoms locaux, durant un cycle haussier ou baissier. D’après les données historiques, ces cycles durent plusieurs mois sur Bitcoin. La MVRV est calculée ainsi :

        Capitalisation du marché du bitcoin / Capitalisation réalisée

        Il existe des variantes, mais nous allons tout d’abord expliciter les deux premiers termes.

        Capitalisation du marché – Market Capitalization

        Le fameux « marketcap » est tout simplement la métrique la plus populaire pour évaluer la valeur globale du marché du bitcoin. La formule est très simple :

        Nombre de bitcoins en circulation * valeur d’un bitcoin à l’instant t

        Cette mesure provient de la finance traditionnelle, où l’on juge ainsi la valeur de la quantité totale d’une entreprise. La marketcap d’Apple est ainsi égale au nombre d’actions Apple multiplié par leur prix unitaire.

        Elle a aussi ses limites, à cause de la liquidité du marché. Par exemple, si Elon Musk se met à vendre toutes ses actions Tesla au prix du marché, la valeur unitaire de celles-ci diminue progressivement. On ne peut donc pas affirmer que le marketcap est réellement représentatif de la réelle valeur totale des bitcoins en circulation. Ceci dit, il s’agit d’une mesure faisant référence, et dans la finance traditionnelle, elle permet d’avoir une bonne idée de la valeur d’une entreprise, ou d’un stock de commodités.

        Appliquée à Bitcoin, elle est aussi souvent utilisée pour la comparer à la capitalisation globale d’une autre cryptomonnaie. Cette donnée est la plus facile à obtenir : elle se trouve en première page de tous les sites fournissant des données sur les cryptomonnaies.

        Realized Capitalisation – Capitalisation réalisée

        Cette mesure fut introduite en 2018. Il s’agit de donner une estimation de la valeur du marché du bitcoin sur un plus long terme, de façon lissée. Le calcul suit le même principe, mais la valeur des bitcoins est prise lors de la dernière transaction on-chain effectuée pour chaque unité.

        L’idée, c’est que si chaque transaction Bitcoin était un trade, alors la realized capitalization donne une idée du « vrai » prix d’acquisition ou de vente de chaque bitcoin en dollars. Il s’agit donc, en quelque sorte, de la valeur des bitcoins « stockés ».

        Bien entendu, cela n’est pas vraiment le cas. Toutes les transactions ne sont pas des trades. Cependant, la RV donne une approximation du coût agrégé de la base monétaire de Bitcoin, et donc du sentiment de ses détenteurs (holders) au long terme.

        Bitcoin - Indicateurs on-chain - Realized Cap vs Market Cap
        Bitcoin : Realized Cap et Market Cap – Chain Exposed

        Free Float Market Capitalization – Capitalisation de marché flottante

        Cette mesure se veut encore plus précise pour évaluer la capitalisation de marché. Elle provient du fait que :

        • De nombreux bitcoins ont été perdus ;
        • D’autres ne sont pas en circulation depuis des années (comme par exemple les bitcoins de Satoshi Nakamoto).

        On peut donc les considérer illiquides, et les ôter du calcul de la capitalisation totale du marché. C’est CoinMetrics qui a eu l’idée d’introduire la FFMC pour exclure les bitcoins perdus. Les coins enlevés du calcul sont ceux dont il est prouvé qu’ils sont brûlés, ainsi que tous les bitcoins présents sur des adresses inactives depuis plus de 5 ans.

        La formule devient alors :

        Free Float Market Capitalization =

        (nombre de bitcoins émis – nombre de bitcoins perdus et inactifs) * prix d’un bitcoin

        Interprétation de la Market Value to Realized Value (MVRV)

        On peut donc considérer deux types de MVRV, selon qu’elle soit basée sur le marketcap ou sur la FFMV. La MVRV calculée à partir de la capitalisation flottante est plus précise, et sera privilégiée.

        On observe empiriquement deux choses :

        • Si le ratio de la MVRV est élevé, on s’approche du haut de marché (market top) ;
        • Si le ratio de la MVRV est bas, on s’approche du bas de marché.

        Quand on parle de haut ou de bas de marché, il faut comprendre « maximum local » et « minimum local » sur l’échelle de temps considérée. On parle ainsi de cycle de marché, pour des échelles allant de plusieurs mois à quelques années.

        Bitcoin - Indicateurs on-chain - MVRV Ratio
        Ratio MVRV et prix du BTC – CryptoQuant

        Historiquement, c’est un indicateur qui a donné de très bons résultats. Acheter lorsque la MVRV est basse a toujours été une bonne décision. Plus elle augmente, plus le momentum du marché s’essouffle, et plus on s’approche du top.

        Spent Output Profit Ratio (SOPR)

        Le SOPR nous vient de Renato Shirakashi, qui a créé cet indicateur on-chain en 2019. Il est très simple, et prend en considération les sorties dépensées. Il s’agit de la valeur réalisée des bitcoins (en dollars) divisée par la valeur à la création de l’output (chaque adresse étant une sortie non dépensée par le modèle UTXO). Pour le dire plus grossièrement, on peut exprimer le SOPR ainsi :

        SOPR = prix des bitcoins vendus / prix des mêmes bitcoins à l’achat

        Interprétation du SOPR

        Il y a donc deux cas de figure :

        • SOPR > 1 : les propriétaires des sorties dépensées sont en profit ;
        • SOPR < 1 : les propriétaires des sorties dépensées sont en perte.

        Le graphe du SOPR est obtenu en combinant toutes les sorties dépensées pour chaque jour où elles ont été dépensées (en prenant en compte l’horodatage de la blockchain).

        Pour plus de praticité, on peut visualiser le SOPR sous forme d’une moyenne mobile sur quelques jours (une semaine ou dix jours par exemple). Cela permet de lisser la courbe, et d’éliminer les fluctuations dues à la volatilité.

        Bitcoin - Indicateurs on-chain - SOPR
        SOPR et prix du BTC depuis 2017 – BGeometrics

        On peut observer les phénomènes suivants : 

        • Le SOPR oscille autour de 1 ;
        • En marché haussier, le SOPR tend à être supérieur à 1 ;
        • En marché baissier, le SOPR tend à être inférieur à 1.

        Le SOPR se comporte donc comme un oscillateur. Il permet de juger si les holders se séparent de leurs bitcoins en profit ou en perte. Il fournit des indices quant à la proximité avec un haut de marché ou un bas de marché.

        Le SOPR pendant la période 2014-2019

        Utilisation du SOPR

        L’indicateur semble pertinent si l’on ôte les zones en rouge, où il est instable. Cela provient du fait que les détenteurs de bitcoins préfèrent majoritairement s’en séparer lorsqu’ils sont profitables. Lorsqu’ils sont en perte, ils préfèrent les garder !

        utilisation du SOPR : un indicateur parfois pertinent

        En bull market, si le SOPR est inférieur à 1, les holders vendraient à perte. Ils tendent donc à conserver leurs bitcoins, ce qui raréfie l’offre, et pousse mécaniquement le prix du BTC à la hausse.

        En bear market, l’inverse se produit. Tout le monde veut vendre avant d’être en perte, ou au prix d’achat. Cela augmente l’offre, faisant chuter le cours du BTC.

        Le SOPR donne aussi une idée de l’intensité d’un selloff en bear market. Durant les phases de panic sell, il chute brutalement. Il peut surtout être utilisé pour prédire le début d’un cycle haussier (bull run). En effet, grâce aux variables utilisées pour le calculer, c’est un indicateur présentant une très faible latence. En d’autres termes, contrairement à de nombreux indicateurs d’analyse technique, ce n’est pas un lagging indicator. On peut ainsi le classer dans la catégorie des indicateurs on-chain prédictifs.

        Limites du SOPR

        Le SOPR est donc le ratio entre le prix des BTC lorsqu’ils quittent une adresse, divisé par leur prix lorsqu’ils y sont entrés. On peut le calculer pour des UTXO individuelles, ou pour un groupe d’UTXO.

        Comme pour le MVRV, il s’agit d’une approximation. En effet, toutes les transactions ne sont pas des trades, des échanges, des achats ou des dépenses. 

        Relative Unrealized Profit – Profit non réalisé relatif

        Cet indicateur prend également en compte les sorties non-dépensées (UTXO). Il donne une idée des profits qui n’ont pas été réalisés par les détenteurs de bitcoin, comparativement à la valeur globale des bitcoins en circulation.

        Il est calculé de la façon suivante :

        profit non réalisé en dollars pour les UTXO / capitalisation de marché globale des bitcoins en circulation

        Gross Unrealized UTXO Profit – Profit global non réalisé

        Il s’agit du profit total que pourraient faire les holders s’ils vendaient tous leurs bitcoins simultanément. Par exemple, si tous ces détenteurs avaient acheté du BTC à 20K $, et qu’ils les vendaient à 30 000 dollars, le GUUP serait de :

        (30 – 20) * 18 millions de BTC = 180 millions de dollars

        Puisque tous les bitcoins n’ont pas été achetés au même moment, on calcule le profit non réalisé pour toutes les UTXO. Encore une fois, c’est une approximation, pour les mêmes raisons citées précédemment quant au SOPR et au MVRV.

        Le calcul du Gross Unrealized UTXO Profit comporte plusieurs étapes :

        • Tout d’abord, on établit la valeur de chaque UTXO, en prenant en compte le prix du bitcoin lors de leur création ;
        • Ensuite, pour chaque UTXO, on calcule sa valeur à l’instant t, en prenant en compte le prix de marché du bitcoin ;
        • Puis, on soustrait à cette valeur celle de l’UTXO lors de sa création ;
        • Toutes les UTXO à la valeur positive (en profit) sont alors agrégées ;
        • Enfin, le résultat est divisé par la capitalisation globale de Bitcoin.

        Le calcul du GUUP donne donc le pourcentage de la capitalisation globale de bitcoin qui représente un profit potentiel pour les détenteurs. Il faut bien noter que le calcul exclut les UTXO en perte, le GUUP est donc toujours positif.

        Bitcoin - Indicateurs on-chain - Relative Unrealized Profit
        Bitcoin Relative Unrealized Profit – ChainExposed

        Interprétation

        Historiquement, un relative unrealized profit élevé signale une correction du marché imminente, et un bas de marché à venir (local bottom). À l’inverse, un RUP bas signale que le bottom est très proche ou déjà atteint. Lorsqu’il est inférieur à 40 %, cet indicateur a toujours signalé les meilleurs moments pour acheter du bitcoin.

        Il se rapproche ainsi du Fear and Greed Index. Lorsqu’il est élevé, de nombreux investisseurs en profit attendent de cliquer sur le bouton « sell » pour prendre leurs bénéfices. Le marché est surévalué, autrement dit, en situation de surachat. Lorsqu’il est bas, les investisseurs vendent en panique, et le bitcoin est sous-évalué, donc en survente.

        Market Cap To Thermocap

        Cet indicateur intéressant prend en compte le revenu du minage. On appelle le thermocap la totalité des revenus générés par les mineurs de bitcoins (all-time miner revenue) en dollars. 

        Le Market Cap To Thermocap est calculé ainsi :

        Capitalisation de marché globale de Bitcoin / Revenus totaux des mineurs

        Bitcoin - Indicateurs on-chain - Market Cap to Thermo Cap
        Market Cap to Thermo Cap – BGeomterics.com

        Revenu des mineurs

        Le revenu des mineurs s’obtient en additionnant les récompenses de bloc et les frais de transaction. Pour calculer le thermocap, il suffit d’additionner ces revenus journaliers depuis la genèse de Bitcoin.

        Les mineurs sont des industriels, qui ont du matériel à maintenir, et des factures d’électricité à payer. Ils vont donc régulièrement vendre des bitcoins pour couvrir leurs frais et générer leur profit.

        Le thermocap représente ainsi, en quelque sorte, la quantité d’énergie – exprimée en dollars – consacrée à la sécurisation du réseau. C’est évidemment une estimation haute. Le Market Cap to Thermocap représente donc le ratio entre la valeur totale du réseau et la quantité totale d’énergie dépensée pour sécuriser celui-ci.

        Interprétation

        Lorsque le ratio est élevé, cela signifie que la valeur totale du réseau excède fortement le coût de l’énergie nécessaire pour le sécuriser. Bitcoin est potentiellement surévalué, une correction risque de survenir ! Plus il augmente, et plus on s’approche du haut du cycle de marché. Inversement, si le Market Cap to Thermocap est bas, le marché est sous-évalué, et ce pourrait être une belle opportunité d’achat.

        Les Hodl Waves

        Le nom originel des HODL Waves est : « Bitcoin Age Distribution Bands». Elles ont été introduites par Unchained Capital en 2018. Les HODL Waves représentent la distribution de l’offre totale en bitcoins, regroupés en fonction du dernier moment où ces derniers ont été déplacés on-chain.

        Elles donnent une idée de la façon dont la supply des bitcoins a changé au cours du temps, à grande échelle. Les HODL Waves peuvent être utilisées comme indicateur sur les cycles de marché. Nous allons voir comment elles sont construites.

        Active Supply – Offre active

        Il s’agit de classifier chaque bitcoin en fonction du dernier moment où il a été actif, c’est-à-dire transféré on-chain. On le fait par périodes. Par exemple, disons que plusieurs bitcoins ont été transférés durant les 7 derniers jours, tandis que les autres sont restés dormants durant les 5 dernières années.

        Pour construire les bandes, on va considérer l’offre totale, et la séparer en fonction de la dernière activité on-chain des bitcoins. On va prendre les bitcoins qui ont été actifs durant la dernière semaine, puis le dernier mois, et les derniers trois mois, etc.

        Cette classification est alors représentée sur un graphique et donne les HODL Waves. En divisant la quantité de bitcoins pour chaque bande par l’offre actuelle de bitcoins, nous obtenons le pourcentage de l’offre qui a été déplacée pour la période considérée.

        L’opération est alors répétée pour l’offre totale de bitcoins. On obtient ainsi un aperçu des tendances des mouvements de l’offre globale. En d’autres termes, les HODL Waves montrent le pourcentage de l’offre de bitcoins qui a été détenue (c’est-à-dire HODLée) pendant différentes périodes temporelles.

        Connaitre le pourcentage de l'offre déplacée : les HODL Waves
        Les HODL Waves pour différentes périodes – Look Into Bitcoin

        Interprétation

        En partant du bas du graphique :

        • Les bandes rouges montrent la proportion de l’offre totale en bitcoins qui a été récemment active. Les périodes commencent à 1 jour et vont jusqu’à 6 mois ;
        • La bande «1 à 7 jours» représente les bitcoins qui ont été actifs au moins un jour mais moins de 7 jours ;
        • La bande «7 à 30 jours» représente la quantité de bitcoins qui ont été actifs au moins durant la dernière semaine, mais moins d’un mois ;
        • Et ainsi de suite.

        Les HODL Waves vont alors servir à déceler l’approche d’un haut de marché. Historiquement, les mouvements à court terme connaissent un pic lors des hauts de cycles. Si on prend l’exemple de la fin du bull run de 2017, 32 % des bitcoins en circulation ont été déplacés on-chain durant les 90 jours précédant le crash. Bitcoin était alors autour des 20 000 dollars, son all-time high à l’époque.

        Si on lit le graphe en partant du haut, on peut visualiser la quantité de bitcoins n’ayant pas bougé durant une longue période. Ces bandes tendent à s’élargir lorsqu’on est en bas de marché, et à se rétracter en fin de cycle.

        La bande en vert foncé représente tous les bitcoins qui n’ont jamais été déplacés depuis leur création, soit 12 % de l’offre totale.

        Au cours des bull runs de 2013 et 2017, le pourcentage des bitcoins détenus à court terme (conservés pendant 3 mois au plus) a atteint environ 50 %. Cela a coïncidé avec les hauts du marché. Les périodes où la quantité de bitcoins HODLés à long terme a dépassé 60 % ont généralement été d’excellents moments pour acheter, des points d’entrée idéaux.

        Conclusion

        Tous ces indicateurs d’analyse on-chain permettent de fournir de précieuses informations, qui peuvent aider les investisseurs à prendre des décisions avisées. En complément de l’analyse technique, l’analyse on-chain permet de confirmer ses prises de position, grâce au sentiment des utilisateurs et à aux dynamiques internes du réseau.

        Afin d’obtenir ces métriques, ces indicateurs et de les analyser, nous vous présentons différents outils logiciels. Ils sont tous disponibles en ligne. Cependant, leurs fonctionnalités ne sont pas toutes gratuites !

        Outils d’analyse on-chain et ressources

        Il existe de nombreux outils d’analyse on-chain pour Bitcoin et autres cryptomonnaies. La plupart proposent une version gratuite, mais les fonctionnalités intéressantes peuvent s’avérer payantes. La liste ci-dessous regroupe nos outils d’analyse favoris.

        IntoTheBlock

        IntoTheBlock est une société américaine, basée à Miami, qui fournit une plateforme complète d’analyse on-chain. Les prix sont raisonnables et l’étendue de ses fonctionnalités est impressionnante. Elle est très facile à utiliser, et un débutant comme un expert y trouvera vite ses marques.

        La société existe depuis 2018, et base ses outils sur l’intelligence artificielle. Plus précisément, son équipe utilise le machine learning pour extraire les informations les plus pertinentes de la blockchain.

        Fonctionnalités

        • Prédictions de prix basées sur l’intelligence artificielle ;
        • Plus de 900 cryptoactifs disponibles ;
        • Analyse des données de la finance décentralisée pour plusieurs protocoles ;
        • Données sur les marchés traditionnels (indices, actions, commodités, ETF, produits dérivés) ;
        • Outils d’analyse pour le marché des NFT.

        Prix

        IntoTheBlock propose un essai gratuit de 7 jours. Au-delà, il faut prendre un abonnement, les premières formules commençant à 10 dollars par mois.

        Grâce à notre lien d’affiliation, vous pouvez économiser 10 % sur votre abonnement.

        Glassnode

        Glassnode est une plateforme qui a également fait son apparition en 2018. Elle propose une grande diversité d’indicateurs on-chain. Elle est dédiée aux traders qui souhaitent utiliser l’analyse on-chain pour mieux appréhender les marchés et améliorer leurs décisions. L’interface est très intuitive, et fournit également des données en temps réel. Glassnode fournit en complément d’excellents rapports sur les données on-chain et l’interprétation de nombreux indicateurs.

        Fonctionnalités

        • Grande diversité d’indicateurs on-chain pour plusieurs cryptomonnaies ;
        • Plus de 200 métriques différentes ;
        • Tableaux de bord personnalisables ;
        • Plus de 10 ans de données historiques sur Bitcoin ;
        • Outils d’analyse comparative ;
        • Intégration à TradingView.

        Prix

        Glassnode propose 3 types d’abonnements : gratuit, avancé et professionnel. Le plan avancé est de 29$ par mois pour une souscription annuelle, ou de 39$ par mois pour une souscription mensuelle. L’abonnement professionnel est de 799$ par mois, à payer annuellement.

        En passant par notre lien d’affiliation, vous économiserez 10 % sur le prix de votre abonnement.

        Dune

        Dune est la plateforme d’analyse on-chain d’excellence pour Ethereum. Elle permet d’effectuer des requêtes SQL au sein de ses bases de données, construites à la demande. Il est possible d’extraire n’importe quel type de données, sans passer par des scripts compliqués. Ses outils de requête sont faciles à utiliser.

        Fonctionnalités

        • Collecte et visualisation simples de données complexes ;
        • Accès à de nombreuses métriques pour l’analyse des données on-chain ;
        • Extraction des données vers des bases SQL pouvant être interrogées.

        Prix

        Dune propose un plan gratuit (tableaux de bord personnalisés, partage de graphiques) limité à trois requêtes. L’abonnement professionnel coûte 390 $ par utilisateur et par mois (accès instantané aux requêtes et six options de requête).

        Santiment

        Santiment est une plateforme d’analyse de marché regroupant de nombreux outils. Elle diffuse des flux de données, des signaux, permet de mettre en place des alertes à faible latence, et des graphiques personnalisés.

        Santiment propose plusieurs outils d’analyse on-chain, comme Sandbase. Elle fournit également à ses utilisateurs une newsletter et des rapports de marché réguliers. Elle prend en charge la quasi-totalité des cryptomonnaies.

        Fonctionnalités

        • Métriques on-chain, sociales, état de la recherche et du développement ;
        • Signaux basés sur l’activité sociale ;
        • Alertes personnalisées et outils de surveillance ;
        • Suivi des tendances crypto sur les réseaux sociaux ;
        • Listes de surveillances personnalisées ;
        • Rapports réguliers fournis par les analystes de la société.

        Prix

        Santiment propose un forfait gratuit et des forfaits payants (pro et pro+). Le package pro coûte 44 $ par mois, pour un abonnement annuel. Le plan pro+ offre encore plus de fonctionnalités, et coûte 225 $ par mois, pour un paiement annuel.

        Messari

        Messari est une société très connue, qui fournit une grande diversité de services. Entre autres, sa plateforme propose des outils graphiques gratuits, des rapports de marché hebdomadaires très complets, des fichiers de données CSV téléchargeables…

        Elle couvre également l’actualité au quotidien pour différents secteurs : cryptomonnaies, DeFi, NFT, Metavers, Web3…

        Fonctionnalités

        • Outils d’analyse graphique ;
        • Listes de surveillance ;
        • Rapports de marché complets et réguliers ;
        • Accès à de nombreuses métriques, de marché et on-chain.

        Prix

        Messari propose un abonnement à 24,99 dollars par mois pour une souscription annuelle.

        Références

         

        Sur PrimeXBT, vous pourrez trade les cryptos, mais aussi le forex, les devises, les matières premières, et sans KYC ! Pour chaque création de compte, PrimeXBT offre en bonus de bienvenue 20% de votre premier dépôt, n’hésitez plus !

        lien commercial

        L’article Les indicateurs on-chain pour Bitcoin (2ᵉ partie) est apparu en premier sur Journal du Coin.

        Monero – La confidentialité des transactions au centre du code

        https://journalducoin.com/actualites/monero-confidentialite-transactions-anonymes/

        Monero, qui signifie « monnaie » en Esperanto, est l’une des plus anciennes cryptomonnaies. Pourtant, sa substance reste peu connue du public. Son protocole résout un des plus gros défis auquel les développeurs de cryptomonnaies sont confrontés : réaliser des transactions confidentielles.

        Monero s’appuie sur le protocole CryptoNote. Il utilise différents outils afin de garantir un haut niveau de confidentialité des transactions : les signatures de cercle et les adresses furtives.

        Créé par un développeur sous pseudonyme, comme Bitcoin, Monero est aujourd’hui développé conjointement par une équipe composée d’experts en cryptographie. Plus de 200 personnes ont collaboré à ce projet.

        Les créateurs de Monero souhaitent pallier certaines faiblesses que comportent de nombreuses blockchains ouvertes. Elles ont une fâcheuse tendance à nuire à la vie privée de leurs utilisateurs.

        Le problème de la fongibilité

        La notion de fongibilité qualifie le caractère interchangeable d’un actif. Dans le cas de la monnaie, cela signifie que toutes les unités de compte doivent être égales. Ainsi, un billet de cent euros vaut toujours la même valeur qu’un autre billet de cent euros ou que deux billets de cinquante.

        Sur le réseau Bitcoin, la fongibilité signifie que tous les bitcoins doivent avoir la même valeur indépendamment de leur historique, ou de l’entité qui les possède.

        Cette propriété n’est pas garantie dans le cas des cryptomonnaies décentralisées. Sur Bitcoin, la traçabilité des transactions inscrites dans la blockchain pose des problèmes de fongibilité. Certains coins sont jugés « sales », lorsque l’historique des transactions associées comporte des opérations illégales (bitcoins volés, ou ayant servi à acheter des produits illicites). Par exemple, Coinbase refuse automatiquement les coins qui sont passés par certains dark markets, ou ayant servi à jouer en ligne.

        Cela pose un gros problème quant au bon fonctionnement du réseau décentralisé, car tous les coins ne sont pas égaux. Certains utilisateurs sont même prêts à payer des frais supplémentaires pour « blanchir » leurs coins en utilisant des services de mixage.

        La confidentialité des transactions

        La confidentialité des transactions est donc nécessaire pour assurer la fongibilité d’une monnaie décentralisée. Elle l’est également pour permettre à des entreprises d’utiliser ce nouveau type de monnaie sans divulguer des données sensibles. Certaines entreprises n’ont aucune envie de communiquer le détail de leurs opérations financières à leurs concurrents. De même, le particulier ne ressent pas forcément le besoin de communiquer au monde entier la nature et le montant des achats qu’il effectue.

        Les chercheurs du réseau Bitcoin proposent régulièrement de nouvelles solutions. Monero fut créé dès le départ dans le but d’assurer un haut niveau de confidentialité des transactions, via différents procédés. Le succès de cette cryptomonnaie est dû à cette propriété essentielle.

        L’objectif de Monero ? Réaliser des transactions confidentielles

        Le protocole CryptoNote

        Il s’agit du préalable cryptographique à la genèse de Monero.

        CryptoNote est un protocole open-source permettant d’assurer l’anonymat des contreparties et la confidentialité des transactions. Il a servi de base à plusieurs cryptomonnaies. Contrairement au réseau Bitcoin, une blockchain administrée via CryptoNote ne révèle pas l’origine ou la destination des unités de compte.

        • Anonymat de l’émetteur : il est assuré en utilisant plusieurs clefs publiques pour signer une transaction (signatures de cercle). Les nœuds du réseau peuvent prouver que la transaction a bien été signée par l’émetteur ; mais sans être en mesure d’identifier la clef utilisée.
        • Anonymat du récepteur : le protocole permet de générer une paire de clefs à usage unique pour chaque transaction (adresses furtives). Il est alors impossible pour une tierce partie de déterminer si certaines transactions sont envoyées au même récepteur.
        • Protection contre les doubles dépenses : l’ancêtre des signatures de cercle s’appelle les signatures de groupe. Il faut s’appuyer sur une tierce partie pour protéger le système contre les double dépenses. Désormais, chaque adresse furtive laisse une empreinte dans la blockchain. Le protocole rejette alors toute transaction impliquant une adresse furtive qui a déjà été utilisée.
        • Preuve de travail « égalitaire » : le système souhaite assurer la linéarité entre l’investissement financier et la puissance de hachage correspondante, quel que soit le matériel utilisé pour miner, qu’il s’agisse des GPUs/FPGA/ASICs ou des CPUs.

        CryptoNote fut le premier protocole à implémenter les signatures de cercle et les adresses furtives. Plusieurs hard forks de Monero permirent d’implémenter des améliorations, inspirées notamment par le développeur de Bitcoin Core Gregory Maxwell.

        Le livre blanc de CryptoNote est disponible sur WebArchive.

        Les signatures de cercle (ring signatures)

        Il existe plusieurs versions de ce tour de passe-passe cryptographique, mais le but est toujours le même. Il faut cacher la clef publique associée à la clef privée ayant servi à signer une transaction, tout en étant en mesure de prouver que la signature est bien authentique. Dans le cas de Monero, le protocole s’appuie sur les travaux d’Eiichiro Fujisaki et de Koutarou Suzuki. Pour avoir plus de détails sur les transactions confidentielles basées sur les signatures de cercle (Ring CT), lire ce papier de Shen Noether.

        Une signature de cercle permet de signer un message au nom d’un ensemble de clefs publiques. Il est alors impossible d’identifier l’auteur de la signature parmi l’ensemble des signataires (il y a équiprobabilité des émetteurs de la transaction parmi les signataires). Les nœuds du réseau peuvent juste s’assurer que la signature est correcte : il faut obligatoirement posséder une clef privée associée à l’une des clefs publiques utilisées pour que la signature soit correcte, mais il est impossible de lier une signature à l’adresse publique de l’émetteur de la transaction.

        Chaque émetteur d’un paiement doit obligatoirement prouver qu’il dépense des sorties non dépensées (UTXOs) comme dans le cas de Bitcoin, mais ces UTXOs n’ont pas à être connues pour effectuer la vérification. Dans la pratique, cela signifie que lorsqu’un utilisateur souhaite effectuer une transaction de 50 XMR, il utilisera, par exemple, (22 XMR + 10 XMR + 3.8 XMR + 6.7 XMR + 6.5 XMR) provenant de différentes adresses inconnues.

        Les adresses furtives (stealth adresses)

        Chaque compte Monero possède :

        • Une adresse publique ;
        • Une clef de dépense privée (spend key) : cette clef privée permet d’émettre le paiement,
        • Une clef d’observation (view key) qui permet de visualiser les transactions entrantes vers le compte. Privée par défaut, elle peut être partagée afin de divulguer le solde d’un compte Monero.

        Le système des adresses furtives permet à l’émetteur d’une transaction de créer des adresses à usage unique, aléatoires, pour le compte du récepteur. La clef privée de ces adresses est également liée au compte du récepteur, mais il est impossible d’identifier son adresse publique associée pour une tierce partie sans connaître sa clef d’observation. Par ce procédé cryptographique, seules les contreparties impliquées peuvent avoir connaissance de la transaction.

        Monero dans la pratique

        Il est évident que la confidentialité des transactions effectuées sur le réseau Monero n’attire pas que des entités menant des activités légales. Monero est de plus en plus utilisé sur les dark markets. Cependant, un haut niveau de confidentialité offre aussi de nombreux avantages à ceux qui respectent la loi, mais souhaitent protéger des informations sensibles. Par exemple, un commerçant ne souhaite pas forcément divulguer l’identité de ses clients, ou le montant des transactions effectuées.

        Le minage de Monero

        La preuve de travail utilisée sur Monero reposa longtemps sur l’algorithme CryptoNight. Depuis novembre 2019, il s’agit de RandomX. Il est optimisé pour le minage par CPU et emploie différentes techniques rendant le minage par ASIC (puces spécialisées) moins efficace. L’idée est de garder le minage décentralisé, ainsi que d’avoir une distribution plus égalitaire des récompenses de bloc.

        Émission et réception d’une transaction

        Plusieurs wallets multi-devises gèrent Monero. Cependant, afin de bénéficier de l’ensemble des fonctionnalités offertes par le protocole, il est nécessaire d’installer le logiciel client complet sur son ordinateur. Les sources sont disponibles ici, et de nombreuses langues sont supportées, dont le français.

        Après installation du logiciel client, il faudra télécharger l’intégralité de la blockchain sur son disque dur. Sa taille est d’environ 64 Go. Afin de lancer la synchronisation avec le réseau, il faut lancer l’exécutable “monerod.exe” présent à la racine du dossier. Il est possible de modifier le chemin d’accès à la blockchain, qui se trouve par défaut dans le répertoire C:ProgramDatabitmonerolmdb :

        • Soit en passant par l’invite de commande :
        {cmd.exe, touche Windows + R} et en ajoutant "--data-dir N:nouveauchemind'accès"
        • Soit en modifiant le champ “Daemon startup flags” (“Options de démarrage” en français) de l’onglet “Settings” (“Réglages”) dans l’interface graphique utilisateur.

        La création d’un nouveau portefeuille est tout à fait classique. La graine (phrase mnémonique, seed) peut comporter jusqu’à 25 mots.

        La réception d’un paiement (via une adresse publique) est également triviale : son format est “humain-compatible” et le QR code associé s’affiche en grand format.

        L’émission d’une transaction, en revanche, doit être configurée en fonction du niveau de confidentialité souhaité, c’est-à-dire qu’il est possible d’augmenter la taille du cercle de signataires à sa guise. Bien évidemment, cela augmente les frais.

        Je suis un citoyen honnête. Pourquoi aurais-je besoin de transactions anonymes ?

        La confidentialité des transactions est indispensable à cause de l’asymétrie de l’information. Elle se produit lorsque certains participants à un échange disposent d’informations pertinentes que d’autres n’ont pas :

        • Certaines entités accaparent une quantité très largement supérieure d’informations aux dépens des autres, notamment les données financières des simples citoyens.
        • Les marchés ne seront jamais libres si les conditions de concurrence pure et parfaite ne seront jamais remplies.
        • Les corporations ont un énorme avantage face au consommateur lambda. En effet, elles possèdent beaucoup plus d’informations que lui. Cela l’empêche de faire ses choix en connaissance de cause ou de proposer un business compétitif. La divulgation des données financières des consommateurs accroît grandement ces inégalités.
        • Les entreprises peuvent utiliser les données financières de leurs utilisateurs afin de manipuler les marchés. Elle peuvent aussi vendre ces données à des tierces parties ou se les faire subtiliser.
        • Les entreprises ayant accès au Big Data peuvent influencer les consommateurs ou ajuster leurs tarifs à leur guise.
        • Au-delà de la simple perte ou vol de données, cela peut créer des problèmes de sécurité physique. C’est le cas dans le contexte des objets connectés (exemple : voitures autonomes).
        • L’histoire est remplie d’exemples montrant que les gouvernements ont une fâcheuse tendance à utiliser les données financières de leurs citoyens pour justifier, à discrétion, des restrictions de libertés individuelles élémentaires.

        Monero n’est pas une solution parfaite, et certains lui préfèreront les cryptomonnaies basées sur les preuves à divulgation nulle de connaissance. Cependant, Monero peut compter sur une équipe de développement solide et une base d’utilisateurs étendue.

        Pour fêter l’arrivée de son MEX, SwissBorg lance une grande opération avec 100 000$ de cadeaux à distribuer. Une quête à accomplir pour obtenir l’un des 1600 prix en partenariat avec Stepn, Asset Dash ou encore Degens Factory, dont de précieux NFT aux pouvoirs exceptionnels. Téléchargez l’appli SwissBorg et créez votre compte pour suivre les étapes qui y seront indiquées et participez à la Méga Raffle !!

        Lien commercial

        L’article Monero – La confidentialité des transactions au centre du code est apparu en premier sur Journal du Coin.

        Bitcoin : quelques indicateurs on chain utiles – Introduction

        https://journalducoin.com/bitcoin/bitcoin-quelques-indicateurs-on-chain-utiles-introduction/

        Sur le marché de Bitcoin, investisseurs et traders utilisent de nombreux indicateurs pour construire leur stratégie. Certains sont basés sur les variations du cours du bitcoin, d’autres sur les données de sa blockchain. On parle alors d’indicateurs on chain. Dans cet article, nous vous présentons les plus utiles. De l’activité des mineurs à des modèles statistiques, voici notre sélection.

        L’activité des mineurs

        Les mineurs de bitcoins sont d’une importance capitale pour le réseau. Il est donc intéressant d’étudier leurs activités afin d’obtenir des indications sur l’évolution du prix. En effet, ces derniers sont rémunérés grâce aux bitcoins récoltés pour chaque bloc et aux frais de transaction. La revente de leurs BTC a donc une influence sur le cours. Voici quelques indicateurs on-chain à surveiller.

        Inflow/Outflow Volume

        Les volumes entrant et sortant des adresses des mineurs sont des métriques intéressantes à observer. Plus précisément, on étudiera les transactions des mineurs vers les plateformes de change (Miners Flow 2 Exchanges) :

        • Lorsque les flux sont élevés, les mineurs s’apprêtent à vendre : indicateur baissier ;
        • Lorsque les flux sont faibles, les mineurs conservent leurs coins : indicateur haussier.

        Bien entendu, toutes les adresses des mineurs ne sont pas référencées par les sites d’analyses on-chain. Cependant, ces métriques donnent une idée globale du sentiment des mineurs.

        Difficulty Ribbon

        Le Difficulty Ribbon ou Ruban de Difficulté s’obtient en calculant plusieurs moyennes mobiles de la difficulté de minage. La périodicité des moyennes mobiles simples utilisées sont : 200 jours, 128 j, 90 j, 60 j, 40 j, 25 j, 14j. Cet indicateur fut proposé par l’analyste Willy Woo. Historiquement, lorsque le ruban de difficulté se resserre, il s’agit d’un bon point d’achat sur Bitcoin.

        Difficulty Ribbon sur Bitcoin (2017-2022) – Glassnode Studio

        La difficulté du minage de Bitcoin permet d’évaluer l’impact du minage sur le prix du BTC. En effet, les mineurs doivent vendre les bitcoins créés pour financer leurs activités. Plus les mineurs sont économiquement fragiles, et plus ils vont vendre une partie importante de leurs coins. Les plus petits mineurs sont parfois obligés de capituler totalement : cela réduit la puissance de hachage et donc la difficulté du réseau. Durant ces périodes, le ruban se compresse. Seuls restent les mineurs les plus puissants, qui vendent moins, ce qui laisse alors de la marge pour une action haussière du cours.

        Les périodes de compression du difficulty ribbon sont généralement observées lors de la fin d’un cycle baissier. La pression vendeuse des mineurs diminue, et le prix du BTC se stabilise. Cette période d’accumulation laisse alors place à une nouvelle phase haussière. On observe également ce phénomène lors des halvings (réduction de la récompense par bloc).

        Hash Ribbon

        Il s’agit d’un autre indicateur basé sur l’activité de minage, créé par Charles Edwards (trader). Plus précisément, le Hash Ribbon s’obtient en calculant plusieurs moyennes mobiles de la difficulté de hachage du réseau. Ce ruban permet d’identifier les périodes de capitulation des mineurs.

        La difficulté du réseau Bitcoin est ajustée tous les 2016 blocs (environ deux semaines) tandis que le taux de hachage est calculé tous les jours, en fonction du nombre de blocs produits. On pourrait penser que la périodicité de l’ajustement de la difficulté rend l’indicateur précédent “traînard” à cause des deux semaines de lag. Cependant, les périodes de capitulation des mineurs sont généralement longues (plusieurs semaines).

        Le Hash Ribbon est composé des moyennes mobiles simples à 1 et 2 mois du taux de hachage du réseau. Les meilleurs points d’entrée sur le marché du BTC se situent généralement en plein milieu des périodes de capitulation des mineurs. Grâce au croisement des moyennes mobiles, le Hash Ribbon aide à repérer ces périodes, et donc à identifier les bas de marché.

        Bitcoin indicateurs on chain - Hash Ribbon
        Hash Ribbon (2017-2022) – Glassnode

        Lorsque la moyenne mobile 30 jours croise la moyenne mobile 60 jours par le haut, la capitulation est généralement terminée. Le marché commence à se ressaisir, et c’est une excellente occasion de rentrer.

        Historiquement, le Hash Ribbon donne des résultats impressionnants, comme le démontre l’inventeur de l’indicateur :

        Buy PointMax Downdraw (%)Max Gain to Peak(%)Peak Used
        Jan-19-7%283%Jun-19
        Aug-16-3%3188%Dec-18
        May-15-16%8068%Dec-18
        Apr-15-15%8097%Dec-18
        Jan-15-15%8436%Dec-18
        Feb-13-3%5715%Nov-13
        Jun-12-7%4165%Apr-13
        May-12-5%5213%Apr-13
        Dec-11-6%6519%Apr-13
        Ave-9%5520%
        Retour sur investissement en utilisant le Hash Ribbon pour entrer sur le marché

        Comme on peut l’observer, les retours sur investissement sont très élevés, tandis que les drawdowns maximum sont faibles (16 % max). Les drawdowns sont les retracements du prix observés lors de l’achat sur les périodes considérées. Le Hash Ribbon est donc un des indicateurs on chain les plus utiles pour les investisseurs à moyen terme sur Bitcoin.

        Remarques finales sur les indicateurs on chain

        Les indicateurs on chain présentés ci-dessus (basés sur l’activité des mineurs) ne sont pas des formules magiques. Les performances passées ne garantissent en rien les futures. Cependant, ce sont des outils très utiles, à utiliser en corrélation avec d’autres indicateurs techniques. Ils sont très intéressants pour affiner sa stratégie d’investissement et ses prises de décision.

        Pour fêter l’arrivée de son MEX, SwissBorg lance une grande opération avec 100 000$ de cadeaux à distribuer. Une quête à accomplir pour obtenir l’un des 1600 prix en partenariat avec Stepn, Asset Dash ou encore Degens Factory, dont de précieux NFT aux pouvoirs exceptionnels. Téléchargez l’appli SwissBorg et créez votre compte pour suivre les étapes qui y seront indiquées et participez à la Méga Raffle !!

        Lien commercial

        L’article Bitcoin : quelques indicateurs on chain utiles – Introduction est apparu en premier sur Journal du Coin.

        Bitcoin, rétrospective : la journée mémorable du 10 novembre 2021

        https://journalducoin.com/?p=646497

        Il y a deux ans jour pour jour, le 10 novembre 2021, le prix du bitcoin imprimait son record historique (all-time high) à 68 991 dollars. Le marché crypto était alors en pleine ébullition ! Les prédictions des analystes et des commentateurs financiers étaient plus folles les unes que les autres…

        Retour sur une journée mémorable dans l’histoire de Bitcoin, et sur les déceptions qui s’ensuivirent.

        Bitcoin réalise son all-time high

        Après un avoir réalisé un premier sommet à 64 787 dollars le mercredi 14 avril 2021, le prix du bitcoin corrigea de plus de 50 % dans les mois qui suivirent. Durant le début de l’été, son cours taquina à maintes reprises le support des 30 000 dollars.

        Cette zone est aussi surnommée « zone Elon Musk» car elle correspond aux annonces de l’entrepreneur milliardaire en ce qui concerne notre cryptomonnaie favorite.

        Il s’agit en effet d’un niveau de prix très important, qui se comporta alors comme un support solide. En effet, le 21 juillet 2021, le prix du BTC rebondit enfin pour amorcer son ascension vers son nouvel all-time high.

        Bitcoin double top en 2021
        Le double top de Bitcoin en 2021 : deux ATH en quelques mois !

        Les autres cryptomonnaies n’étaient pas en reste, et de nombreux altcoins virent leur capitalisation propulsée vers de nouveaux sommets. Les memecoins les plus improbables, comme le Shiba Inu, accompagnèrent Bitcoin dans sa lancée.

        Shiba Inu le memecoin sous stéroïdes
        La folle performance du Shiba Inu, signe de l’irrationnalité du marché.

        Ainsi, le 10 novembre 2021, la capitalisation totale du marché des cryptoactifs s’élevait à plus de 3 trillions de dollars… L’équivalent de la capitalisation boursière de l’entreprise Apple.

        Le 10 novembre 2021 chez le Journal du Coin

        Au sein de l’équipe du JdC, le 10 novembre fut une journée excitante. Certains étaient à Lisbonne à l’occasion du premier Solana Breakpoint, en train de regarder les cours s’affoler sous le soleil portugais. La rédaction devait trouver ce qu’il était intéressant de publier, à travers la multitude d’annonces plus enthousiastes les unes que les autres.

        Bitcoin et l'actualité crypto le 10 novembre 2021
        Le Journal du Coin le dernier jour du bull market…

        Entre la hype du métavers, les annonces de partenariats divers entre le monde « normal » et l’industrie crypto, l’arrivée des infrastructures cross-chain… Difficile de faire un choix ! Ceux qui avaient une âme de trader discutaient fébrilement de cet ATH, et de l’éventualité de take profit… Il faut dire que voir le Dogecoin à 30 centimes était quelque peu inquiétant !

        Dogecoin
        Dogecoin, un indicateur de top de marché ?

        Les médias financiers traditionnels, n’en croyant pas leurs yeux, tentaient d’y trouver une explication logique. Les détracteurs de Bitcoin grinçaient des dents et, tels des oiseaux de malheur, piaillaient quant à l’explosion de la bulle.

        Bitcoin et son ATH furtif, une correction prévisible ?

        Avec le recul, cet all-time high était-il annonciateur d’une correction sévère, comme cela a toujours été le cas dans l’histoire de Bitcoin ? Y avait-il des signes avant-coureurs d’un cycle baissier à venir ? Probablement.

        Les analystes techniques qui tentaient de raison garder avaient certainement remarqué cette énorme divergence baissière sur le RSI en hebdomadaire :

        Le RSI montrait des signes avant coureur de la chute de Bitcoin
        La divergence baissière sur le RSI en hebdomadaire durait depuis plusieurs mois.

        Cependant, les émotions noient souvent le plus aguerri des traders sur ce marché volatil et cruel ! Dès le 11 novembre, le prix du bitcoin commença à flancher.

        Après l'ATH le 10 novembre, dur retour à la réalité pour le BTC
        Dès le 11 novembre, les couvertures du bulletin BTC passèrent au rouge !

        S’ensuivirent alors des mois de plongée lente et douloureuse vers les abysses… Avant de marquer un bottom à 15 700 dollars environ.

        Le 10 novembre 2021 est donc une date qui restera gravée dans les mémoires. Elle marque la fin d’un cycle, mais aussi un beau souvenir pour ceux qui ont vécu l’effervescence folle des deux années post-covid. La planche à billets aura alimenté le marché des cryptomonnaies et des actions technologiques. Les entreprises de l’industrie blockchain recrutaient à tout-va. De nombreux projets pouvaient attirer des millions de dollars, avec une simple page web joliment décorée.

        Certains, tels Icare, se sont brûlés les ailes, bien avant d’atteindre la Lune. C’est le prix à payer pour qu’un marché libre mature, et pour trier le bon grain de l’ivraie !

        Pour fêter l’arrivée de son MEX, SwissBorg lance une grande opération avec 100 000$ de cadeaux à distribuer. Une quête à accomplir pour obtenir l’un des 1600 prix en partenariat avec Stepn, Asset Dash ou encore Degens Factory, dont de précieux NFT aux pouvoirs exceptionnels. Téléchargez l’appli SwissBorg et créez votre compte pour suivre les étapes qui y seront indiquées et participez à la Méga Raffle !!

        Lien commercial

        L’article Bitcoin, rétrospective : la journée mémorable du 10 novembre 2021 est apparu en premier sur Journal du Coin.

        ETF Bitcoin de BlackRock : une analyse à contre-tendance

        https://journalducoin.com/bitcoin/etf-bitcoin-blackrock-analyse/

        Aujourd’hui, nous allons nous intéresser de près aux ETF (Exchange Traded Funds) sur Bitcoin, et aux récits qui les entourent. Plus particulièrement, nous allons nous attarder sur l’ETF Bitcoin spot de BlackRock, qui déchaîne les passions.

        L’emballement médiatique autour de l’approbation possible de ce titre financier aux États-Unis est-il justifié ? Peut-on vraiment établir une corrélation entre le prix du bitcoin, ces annonces, ou l’apparition de ces ETF ?

        Les produits financiers dérivés

        Les produits financiers dérivés permettent de s’exposer à un ou plusieurs actifs, comme des commodités, des devises, des actions, sans pour autant devoir les posséder. Dans la finance traditionnelle, les produits dérivés représentent des sommes considérables.

        Il en existe une telle variété, et leur composition est si complexe, qu’il n’y a aucune estimation précise de la capitalisation qu’ils représentent.

        Certains analystes estiment la valeur notionnelle de la capitalisation totale du marché à environ 550 trillions (mille milliards soit un billion) de dollars. D’autres prétendent que les dérivés représentent plus d’un quadrillion (mille billions ou un billiard) de dollars. Leur valeur marchande brute (gross market value) en revanche, n’est « que » de 20,7 trillions de dollars selon la BRI.

        Des chiffres délirants

        Ce sont des chiffres qui peuvent vite donner la migraine. Les produits financiers dérivés représentent ainsi le plus gros marché financier au monde. À titre de comparaison, la capitalisation du marché des actions est estimée à 89 500 trillions de dollars. La dette mondiale globale (gouvernements, corporations et ménages) représente 253 trillions de dollars, soit 322 % du produit mondial brut.

        World’s money – Estimation 2020 par Visual Capitalist

        Parmi les différents dérivés, on retrouve les futures ou contrats à terme. Ils permettent de parier sur le cours d’un actif, à la hausse ou à la baisse, généralement avec du levier.

        Il y a deux types de règlements d’un produit financier dérivé :

        • Premièrement, le règlement physique. Dans ce cas, au terme du contrat, le sous-jacent est délivré en contrepartie.
        • Deuxièmement, le règlement financier. Il s’agit de créditer ou de débiter la contrepartie en cash, selon la valeur du contrat à sa clôture.

        Le règlement financier est privilégié dans la majorité des cas, pour une raison de praticité. En effet, un trader vendant ses contrats à terme sur le thallium n’a aucune envie de recevoir un métal extrêmement toxique dans sa boîte aux lettres. De même, celui qui trade des dérivés sur le pétrole ne souhaite pas forcément s’encombrer de barils de Brent dans son jardin.

        Les contrats à terme sur Bitcoin (futures)

        Il existe ainsi plusieurs produits financiers dérivés sur Bitcoin, comme les CFD ou les futures – les contrats à terme sur le cours du bitcoin. Ainsi, dès 2018, les futures sur BTC ont fait leur apparition au CBOE (Chicago Board Options Exchange). Ils représentent des sommes relativement faibles (en dollars) par rapport au marché au comptant de Bitcoin (spot market).

        Volume et open interest sur les contrats à terme Bitcoin du CME Group

        Ainsi, après 5 ans d’existence, les contrats à terme du CME Group représentent un volume journalier dépassant rarement les 20 000 futures, soit environ 700 millions de dollars. À titre de comparaison, le volume quotidien de bitcoins échangés au comptant sur Binance est d’environ 10 milliards de dollars, tandis que le volume des dérivés, toujours sur Binance, représente 50 milliards de dollars.

        >> Vous préférez garder vos bitcoins à l’abri ? Choisissez un portefeuille Ledger (lien commercial) <<

        Qu’est-ce qu’un ETF ?

        Un ETF (Exchange Traded Fund, fonds négocié en bourse) est un titre financier adossé à un ou plusieurs actifs. Il peut s’agir d’actions, de commodités, de matières premières, etc. Ils sont négociés sur une plateforme de change, et peuvent être structurés de façons très diverses. Les ETF ne sont pas à proprement parler des dérivés. Ils ressemblent plutôt à des fonds communs de placement : les opérateurs de l’ETF investissent directement dans le sous-jacent. Un ETF peut ainsi suivre le cours d’un indice, d’une commodité unique, ou représenter une stratégie d’investissement sur un secteur industriel précis.

        Ils présentent des avantages indéniables. Tout d’abord, ils sont facilement échangeables. Leur prix fluctue lors des heures d’ouverture des marchés, en fonction de l’offre et de la demande. Ils sont un bon choix pour l’investisseur qui souhaite se diversifier, car ils peuvent regrouper de nombreux actifs en un seul titre. De plus, leurs frais très intéressants pour l’investisseur, dans le cas où l’ETF comporte plusieurs actifs.

        On distingue grossièrement deux types d’ETF : gestion passive ou active. Dans le premier cas, ils se contentent de reproduire le comportement de leur sous-jacent. Dans le cas d’une gestion active, les opérateurs du titre vont régulièrement ajuster le portfolio, en modifiant sa composition, en achetant et en vendant les actifs sous-jacents, ou modifiant leurs proportions. Ce type de gestion peut offrir de meilleures performances, mais génère plus de frais.

        Les ETF Bitcoin, la nouvelle lubie des cols blancs

        Mécanismes de création et de rédemption d’un ETF

        Un ETF est émis, géré et mis sur le marché par une organisation financière, communément appelée sponsor (par exemple, BlackRock). Les parts de l’ETF sont créées et rachetées par des investisseurs appelés participants autorisés (authorized participants). Ce sont donc eux qui apportent principalement la liquidité sur le marché de l’ETF (généralement, il s’agit de banques).

        S’il y a une pénurie de parts d’ETF sur le marché, les participants autorisés en créent davantage. Par exemple, si le prix d’une part d’un ETF indexé sur un panier d’actions vaut 100 dollars sur le marché, mais que le prix de la quantité d’actions sous-jacentes vaut 99 dollars, on dit que l’ETF s’échange avec un premium. Le participant autorisé a donc un intérêt à ramener la valeur de l’ETF à un prix d’équilibre. Il va alors acheter le sous-jacent et le revendre au sponsor, pour récupérer des parts de l’ETF. La quantité de parts de l’ETF va donc augmenter, faisant baisser leur prix.

        Dans le cas contraire, les participants autorisés réduisent la quantité de parts d’ETF en circulation, lorsque le prix est inférieur au prix du sous-jacent. Par exemple, si le prix d’une part de l’ETF est de 99 dollars, mais que celui de la quantité de sous-jacent correspondant est de 100 dollars, il y a discount. Le participant autorisé va donc acheter des parts de l’ETF, et les vendre au sponsor. Il reçoit en échange la quantité correspondante d’actif(s) sous-jacent(s). Le nombre de parts de l’ETF diminue et leur prix est ramené à l’équilibre.

        La création et la rédemption sont donc fonction de la demande du marché, et du prix de l’ETF par rapport au sous-jacent (discount ou premium).

        Les ETF dans le monde

        La demande pour les ETF s’est grandement accrue ces dernières années. Ces titres représentent environ 10 trillions de dollars d’investissements.

        ETF - Actifs sous gestion en dollars US (Monde)

        Plus de la moitié de ces ETF sont négociés aux États-Unis (6,44 trillions en 2022). Les ETF sont régulés par le gendarme financier américain, la SEC (Securities and Exchange Commission).

        Les ETF Bitcoin

        Il existe de nombreux ETF sur Bitcoin, principalement en Europe. Le premier ETF Bitcoin spot à avoir été autorisé sur le vieux continent est celui de Jacobi Asset Management, listé sur Euronext Amsterdam. Le Jacobi FT Wilshire Bitcoin ETF a la particularité de bénéficier d’un beau greenwashing. En effet, il s’agit du premier fonds d’actifs numériques décarboné, conforme à l’article 8 du SFDR. En d’autres termes, il respecte les désormais inénarrables critères ESG.

        Jacobi a ainsi mis en œuvre une solution intégrée de certificat d’énergie renouvelable (REC) vérifiable, qui permet aux investisseurs institutionnels de s’exposer au bitcoin tout en répondant aux objectifs ESG.

        L’ETF, réglementé par la Guernsey Financial Services Commission (GFSC), se négocie sous le symbole BCOIN. Les services de garde sont fournis par Fidelity Digital Assets, avec Flow Traders opérant en tant que teneurs de marché et Jane Street et DRW comme participants autorisés. L’indice de référence du fonds, le FT Wilshire Bitcoin Blended Price Index, est fourni par Wilshire Indexes avec la solution REC créée en collaboration avec la plateforme d’actifs numériques Zumo.

        On ne peut pas dire que l’engouement pour cet ETF Bitcoin soit à la hauteur de la folie médiatique autour de celui de BlackRock :

        L'ETF Bitcoin de Jacobi n'a pas beaucoup de succès
        Source : Yahoo Finance

        Au niveau du volume journalier, ce n’est vraiment pas la folie, avec une moyenne de 353 pour un prix actuel d’environ 23 euros

        Voici un petit aperçu des différents fonds et titres financiers spot sur Bitcoin :

        ETF Bitcoin et produits financiers assimilés

        Comme nous pouvons le voir, seuls les fonds du top 6 présentent une taille supérieure à 10 millions d’euros.

        >> La sécurité, c’est la base ! Pour conserver vos cryptos près de vous, faites confiance à Ledger (lien commercial) <<

        Le cas de l’ETF Bitcoin spot de BlackRock

        S’il y a bien un ETF Bitcoin qui a fait beaucoup parler de lui, c’est celui de BlackRock

        BlackRock est une firme multinationale américaine spécialisée dans la gestion d’actifs. Il s’agit du plus important gestionnaire d’actifs au monde, avec près de 10 000 milliards de dollars d’actifs en juin 2023.

        Comme d’autres sociétés d’investissement, elle a fait de multiples demandes d’approbation auprès de la SEC pour pouvoir créer un ETF Bitcoin. La particularité de cet ETF est qu’il sera spot (au comptant). Cela signifie que BlackRock devra détenir le sous-jacent, donc des bitcoins. L’ETF répliquera alors précisément le cours du bitcoin, contrairement aux produits financiers actuels, dont le prix diverge régulièrement. Par exemple, le Grayscale Bitcoin Trust (GBTC) se négocie actuellement à un discount de 14 % par rapport au prix spot du BTC.

        BlackRock veut devenir. lemaître des ETF Bitcoin Spot

        ETF Bitcoin, entre espoir et spéculation

        Selon de nombreux commentateurs, l’approbation de l’ETF de BlackRock serait une excellente nouvelle, car cela donnerait plus de légitimité à Bitcoin. Cela favoriserait son adoption. Beaucoup d’analystes prétendent également que ces effets d’annonces sur la réponse future de la SEC auraient une influence positive sur le prix du bitcoin. Comme nous allons le voir, rien n’est moins sûr.

        On ne sait pas si BlackRock possède déjà les BTC nécessaires pour émettre son fonds. Certains analystes blockchain soupçonnent BlackRock d’être la troisième entité à posséder le plus de bitcoins au monde, d’autres considèrent que le mastodonte financier s’est contenté d’investir dans des sociétés de minage.

        Une adresse dont le propriétaire est inconnu possède, en effet, plus de 118 300 BTC. Les BTC proviennent de Gemini, qui est l’un des principaux négociants du marché OTC (over the counter) dédié aux institutionnels.

        Quoiqu’il en soit, dans la réalité, il est probable que BlackRock ait déjà profité du bear market pour accumuler des bitcoins. Smart money buys low. Mais revenons-en au récit médiatique entourant cet ETF.

        Les annonces relatives aux ETF Bitcoin et le cours du BTC

        Il est généralement peu avisé de corréler les fluctuations du cours d’un actif à des annonces médiatiques mainstream. Cependant, avec Bitcoin, c’est régulièrement le cas. Buy the rumor, sell the news ?

        Beaucoup prétendent que l’approbation éventuelle d’un ETF spot Bitcoin par la SEC aurait une influence sur son cours. On entend également que les rumeurs d’approbation, ou la simple soumission des demandes, provoqueraient des hausses soudaines du prix.

        Regardons donc la réalité du terrain sur les dernières années. Les annonces d’ETF spot sur BTC sont régulières, et il y a déjà eu plusieurs approbations.

        Nous pouvons jeter un œil à Google Trends pour la requête “Bitcoin ETF”. Cela nous donnera une idée de la popularité du sujet dans les médias et auprès d’un public d’investisseurs éventuels.

        Voici l’évolution de la recherche dans le monde :

        ETF Bitcoin - Google Trends - Monde

        La courbe est globalement la même en prenant seulement en compte les États-Unis :

        ETF Bitcoin - Google Trends - États-Unis

        Ensuite, comparons l’évolution du prix du bitcoin avec l’évolution de la requête et des annonces médiatiques dans les journaux financiers.

        Cours du bitcoin (BTC) - 2017 - 2023

        Nous pouvons prendre en considération six points de données entre 2017 et aujourd’hui. Ils correspondent aux pics de requêtes.

        Mars 2017

        À cette époque, Bitcoin était en pleine phase haussière. Son prix allait dépasser l’all-time high précédent. Bitcoin était au centre de l’attention médiatique, et les médias étaient focalisés sur tous les produits financiers pouvant être créés sur Bitcoin, en particulier les contrats à terme. Dans ce premier cas, il semblerait que cet emballement médiatique corresponde effectivement à une hausse soudaine du prix du BTC.

        Décembre 2017

        Bien que certains produits financiers relatifs au bitcoin aient été approuvés et mis sur le marché, et que le sujet des ETF soit de nouveau brûlant, nous assistions en revanche à un crash monumental du prix. Les holders prirent leurs bénéfices et la folie spéculative retomba.

        Août 2018

        À cette époque, Bitcoin était déjà dans une phase baissière amorcée depuis plusieurs mois. Le support des 6000 dollars, régulièrement attaqué, se préparait à craquer. Nous étions à peine au-dessus de ce niveau lorsque les recherches au sujet des ETF Bitcoin explosèrent de nouveau. C’était peut-être du à l’apparition de nombreux futures sur BTC… Cependant, Bitcoin réalisa une death cross en unité de temps 3 jours, et son prix chuta de plus de 50 %.

        Février 2021

        Ce pic d’intérêt correspond au renouveau de la hype des ETF Bitcoin. De nombreuses firmes financières envoyaient leurs soumissions à la SEC, et tout le monde parlait d’une autorisation imminente. Ce ne fut finalement pas le cas, et cet engouement autour des ETF coïncida également avec le haut du cycle de marché

        Octobre 2021

        ll s’agit là du summum de la hype autour de ces titres financiers. Les chauffeurs de taxi nous parlaient de leur récent achat de BTC, juste avant second top de marché. En effet, ils avaient lu et entendu partout qu’un ETF Bitcoin allait faire son apparition aux States !

        Novembre 2021

        Ce fut la fin du cycle haussier, et le cours du bitcoin commença une longue descente aux enfers. Le prix du BTC passa de plus de 60 000 dollars à moins de 20 000 en quelques mois.

        Ces observations ont ainsi plus de choses à nous apprendre sur la psychologie des marchés, que sur l’impact d’un ETF Bitcoin sur le cours de ce dernier…

        ETF Bitcoin approuvé : la bourde de CoinTelegraph

        Le lundi 16 octobre, nos confrères de CoinTelegraph publièrent sur X une breaking news : l’ETF Bitcoin spot de BlackRock aurait été accepté ! Tout le monde repris la nouvelle frénétiquement, et les réseaux sociaux s’enflammèrent.

        La rédaction du JdC s’est contentée d’être prudente. Il suffisait de vérifier s’il y avait du nouveau dans la base de données de la SEC relative aux documents de dépôt. En l’absence de confirmation, cela semblait être une annonce à la véracité douteuse.

        Le cours du BTC bondit en 20 minutes, passant de 28 000 à 30 000 dollars. Lorsque BlackRock démentit la rumeur, il revint à sa valeur initiale. À l’heure d’écriture de cet article, il se situe aux alentours des 34 500 dollars.

        Certains traders ont accusé CoinTelegraph d’avoir “manipulé le marché”. Nombreux sont ceux qui se sont plaint d’avoir perdu de l’argent à cause d’une “fake news”. C’est assez cocasse. Cliquer frénétiquement sur les boutons « acheter » ou « vendre » en lisant un tweet relève-il de la responsabilité de celui qui l’a posté sur les réseaux sociaux ?

        La fake news de CoinTelegraph. a-t-elle influencé le marché crypto ?

        Dans la réalité, il est plus probable que le prix, propulsé par un volume d’achat soudain et important, se soit heurté à une cascade d’ordres de vente déjà bien en place. La résistance des 30 000 $ était solide, et dans les jours qui suivirent, il a fallu plusieurs essais pour la percer. De même, ce mouvement d’environ 7 % n’est pas représentatif de la quantité de news traders sur le marché. Encore une fois, dans un marché peu liquide, il n’y a pas besoin de gros volumes pour propulser le prix du BTC de quelques % en quelques minutes. Nous avons régulièrement eu la preuve par le passé.

        Prise du recul sur l’impact des ETF Bitcoin

        La corrélation entre le cours du bitcoin et les différentes actualités qui paraissent dans les médias ou sur les réseaux sociaux est loin d’être prouvée. Bitcoin est un actif peu liquide, donc son prix est volatil. Le marché est globalement irrationnel. Les traders sont parfois peu expérimentés, et agissent en fonction de leurs émotions. Les analyses rationnelles, qu’elles soient fondamentales ou techniques, sont souvent délaissées au profit de conclusions hâtives. Certains événements sont interprétés sans aucune logique.

        Est-ce le cas de ces bruits de couloir à propos d’une approbation imminente d’un ETF Bitcoin spot, émis par le plus gros fonds d’investissement de la planète ? Essayons de garder la tête froide, et d’imaginer quel effet un tel ETF pourrait avoir sur le marché spot.

        Le marché au comptant du bitcoin

        Tout d’abord, ce marché est peu liquide et peu capitalisé, par comparaison avec les marchés traditionnels, comme les métaux précieux ou les actions. Les plateformes de change sont soumises à des régulations variant fortement selon les espaces juridiques. Certaines ne sont même pas régulées du tout. C’est d’ailleurs cette régulation diffuse qui motive (entre autres) la SEC pour refuser systématiquement les demandes d’approbation d’ETF Bitcoin spot. En revanche, pour de nombreux produits dérivés, cela ne lui pose aucun problème.

        Ensuite, précisons que dans le cas où un ETF de ce type est approuvé aux États-Unis, son sponsor et ses participants autorisés n’achèteraient jamais leurs bitcoins sur le marché spot. Il n’y aurait pas assez de liquidités pour absorber leur demande. Les carnets d’ordre et les market makers d’une plateforme comme Coinbase seraient sens dessus dessous.

        Ainsi, les mastodontes financiers n’achètent pas leurs bitcoins sur Binance en cliquant sur des boutons, mais Over The Counter (OTC), c’est-à-dire de gré à gré, directement auprès d’une entité qui possède les quantités suffisantes, prête à les céder à un prix convenu. De telles transactions n’ont donc aucune influence sur le cours du marché spot.

        ETF Bitcoin, adoption et légitimité

        Un autre argument est de dire que l’arrivée d’un tel titre financier aux États-Unis rendrait Bitcoin plus légitime auprès du grand public. Les bons pères de famille se mettraient donc enfin à acheter du bitcoin, faisant grimper son cours !

        Ici encore, on peut émettre des doutes. Le grand public sait-il ce qu’est un ETF ? Le redneck américain qui décide d’investir une partie de son capital dans du bitcoin créera-t-il un compte Binance ? Il est plus probable que les investisseurs « traditionnels » s’en tiennent à acheter des ETF sur une bourse régulée. Ce type de produit financier peut les intéresser, pour diversifier leur portfolio, sans avoir à se soucier de comprendre le fonctionnement de Bitcoin. De même, cela leur évite les ennuis relatifs à la garde sécurisée de leurs cryptos. Nul besoin d’acheter un Ledger wallet ou de conserver une phrase mnémonique. Moyennant plus de frais qu’en passant par une plateforme de change classique, ils ont la garantie de posséder un titre financier qui les expose au cours du bitcoin sans prise de tête.

        En conclusion, il faut donc être très prudent quant à cet engouement médiatique autour des ETF Bitcoin spot. Les différents produits financiers dérivés sur Bitcoin en existence représentent un volume dérisoire par rapport au marché spot. Le news trading (acheter ou vendre en fonction des nouvelles lues dans les journaux financiers) est une activité périlleuse.

        En guise de conclusion

        L’arrivée sur le marché d’un ETF Bitcoin spot ne changera rien à la valeur intrinsèque de Bitcoin. Cela ne changera pas non plus les dynamiques qui sous-tendent l’action de son cours sur les plateformes de change.

        Le marché crypto reste immature et peu liquide. C’est une excellente opportunité pour les traders, car la volatilité est leur amie. Il reste une marge de croissance phénoménale, et nous n’avons pas fini de voir le prix du BTC jouer aux montagnes russes.

        Vos bitcoins ont une grande valeur et méritent une protection maximale ! Pour dormir l’esprit tranquille, équipez-vous d’un wallet hardware sécurisé Ledger, il y en a pour toutes les bourses. Votre sécurité n’a pas de prix (lien commercial).

        L’article ETF Bitcoin de BlackRock : une analyse à contre-tendance est apparu en premier sur Journal du Coin.

        BOSS, le projet d’infrastructure crypto qui réinvente Bitcoin

        https://journalducoin.com/bitcoin/bitcoin-operational-standard-system-boss/

        Le Bitcoin Operational Standard System (BOSS) est un projet d’infrastructure logicielle pour le réseau Bitcoin visant à étendre grandement ses capacités. Entre autres, elle permettra de créer des smart contracts avancés, des transactions complexes, et chaque utilisateur pourra effectuer des calculs grâce à son instance (son serveur personnel).

        BOSS combine les fonctionnalités avancées de Bitcoin (comme Taproot) aux instructions ordinales, et se comporte comme un ordinateur partagé. L’équipe de développement de BOSS s’appelle TheOrb : composée de développeurs anonymes, elle est connue pour avoir développé les Ordinals sur le réseau Bitcoin.

        En préambule de cet article, nous rappellerons tout d’abord ce que sont les inscriptions ordinales sur le réseau Bitcoin. Nous explorerons aussi la notion de « God Protocol », explicitée par le célèbre cryptographe Nick Szabo. Elle sert de fondement à la conception de BOSS.

        L’histoire de TheOrd et des Ordinals

        L’équipe de TheOrd comporte pour l’instant 7 personnes. Les membres sont tous des crypto-explorateurs confirmés. Ces derniers ont fait leurs armes aussi bien sur Bitcoin, Litecoin, ou Ethereum que dans l’univers des NFT.

        L’idée de créer une Bitcoin Virtual Machine (un environnement d’exécution se comportant comme un ordinateur partagé pour le réseau Bitcoin) n’a pas reçu d’engouement de la part du public. L’équipe cherchait initialement à créer des applications simples en surcouche de Bitcoin, comme un stablecoin, par exemple.

        Elle s’est alors fortement intéressée aux inscriptions ordinales (Ordinals). Le 14 décembre 2022, le premier ordinal vit le jour sur le réseau Bitcoin : un crâne pixelisé, vendu pour 1,22 $. Comme nous allons le voir, les Ordinals diffèrent des NFT traditionnels.

        Les inscriptions ordinales sur le réseau Bitcoin

        Les inscriptions ordinales permettent aux utilisateurs du réseau Bitcoin de créer des artefacts numériques sur sa blockchain, pouvant être stockés et échangés. Ce système d’inscriptions ordinales diffère des jetons non-fongibles (NFT).

        L’idée est de lier un nombre ordinal à chaque satoshi émis sur le réseau Bitcoin. L’inscription ordinale est alors l’ensemble des métadonnées liées à un satoshi possédant un nombre ordinal.

        Il s’agit d’un outil très intéressant. Les Ordinals permettent, en effet, de donner une « identité » individuelle à chaque satoshi :

        • Sans avoir recours à une sidechain ou à un jeton externe ;
        • Et sans changement dans le code source de Bitcoin ;
        • Les satoshis peuvent ainsi avoir une valeur numismatique, et être collectionnés puis échangés, à l’instar des NFT.

        Principes techniques

        Le projet Ordinals est open source et le code est disponible sur GitHub. Les nombres ordinaux permettent de garder la trace de chaque satoshi miné sur la blockchain. Les satoshis sont numérotés en suivant l’ordre dans lequel ils sont minés, puis transférés depuis une transaction entrante vers une transition sortante.

        L’ordonnancement respecte la règle du first in/first out. La numérotation, comme le transfert des satoshis, sont ainsi basés sur un schéma d’ordonnancement, dont les spécifications techniques sont disponibles dans le BIP correspondant.

        Les nombres ordinaux peuvent avoir différentes représentations :

        • Notation entière : 2099994106992659 The ordinal number, assigned according to the order in which the satoshi was mined.
        • Notation décimale : 3891094.16797 The first number is the block height in which the satoshi was mined, the second the offset of the satoshi within the block.
        • Notation en degrés : 3°111094′214″16797‴. We’ll get to that in a moment.
        • Notation en pourcentage : 99.99971949060254% . The satoshi’s position in Bitcoin’s supply, expressed as a percentage.
        • Nom : satoshi. An encoding of the ordinal number using the characters a through z.

        Il est donc possible de lier tout type d’actif (comme un NFT, un compte ou un stablecoin) à un satoshi en utilisant les ordinaux. Dans la pratique, le projet Ordinals développé par TheOrd consiste en :

        • Un Bitcoin Improvment Proposal (BIP) décrivant le schéma d’ordonnancement ;
        • Un index communicant avec un nœud complet Bitcoin pour localiser tous les satoshis ;
        • Un portefeuille logiciel dédié permettant de créer des transactions supportant les ordinaux ;
        • Un explorateur de blocs ;
        • Un outil permettant d’associer des satoshis avec un artefact numérique.

        Différences entre les NFT et les Bitcoin Ordinals

        La différence entre les NFT d’Ethereum (standard ERC-721) et les Bitcoin Ordinals réside dans la manière dont les données sont stockées. Sur Ethereum, un jeton non-fongible représente une preuve, un certificat cryptographique liant les métadonnées inscrites sur la blockchain à une œuvre d’art, par exemple. Le JPEG correspondant est stocké hors-chaîne.

        Sur Bitcoin, un ordinal est un satoshi dont les métadonnées sont l’œuvre d’art elle-même. Par exemple, le premier ordinal sur Bitcoin représente une tête de mort :

        Cette tête de mort est le premier Ordinal sur Bitcoin
        Le premier Ordinal sur Bitcoin

        Les Ordinals de Bitcoin présentent donc une plus grande immutabilité et un plus haut degré de sécurité que les NFT “classiques”.

        Terminologie utilisée sur BOSS

        BOSS est à la fois une infrastructure logicielle et un environnement d’exécution, qui s’articule autour de différents composants. De même, les acteurs de ce réseau en surcouche de Bitcoin ont des rôles différents. Nous allons passer brièvement en revue les différents termes utilisés par TheOrb pour décrire l’architecture de BOSS.

        Les Odes

        Une ODE est une entité décentralisée opérationnelle (operational decentralized entity). Il s’agit de la couche de base pour les applications créées sur la blockchain de Bitcoin. Ces entités permettent de garder les organisations évolutives, grâce au code fourni par les participants.

        Bitcoin Observer (BOB)

        La machine virtuelle du BOSS est appelée Bitcoin Observer (Bob). Elle est conçue pour exécuter les instructions spéciales (les inscriptions ordinales) sur la blockchain de Bitcoin.

        L’OPScheme

        Un OPScheme fournit la structure des inscriptions ordinales, c’est-à-dire l’organisation et la séquence des messages, qui peuvent alors être détectées et interprétées par la machine virtuelle, Bob.

        Les standards

        L’OPStandard représente un ensemble de règles évolutives, et non statiques, relatives à la blockchain. Elles sont mises à jour par la communauté des Odes. L’OPStandard est donc conçu pour s’adapter à l’évolution de la technologie. Il permet de maintenir la robustesse et la flexibilité du Bitcoin Operational Standard System.

        Les commandes OSS

        Les commandes OSS sont les commandes spécifiques envoyées à Bob, la machine virtuelle. Une commande OSS est conçue en accord avec l’OPScheme, et écrite dans le langage OPStandard. L’utilisateur peut donc utiliser ces commandes pour interagir avec la machine virtuelle (Bob) et utiliser pleinement les capacités de BOSS.

        Operational Commit for Voting (OCV)

        Le standard OCV est similaire au standard ERC sur Ethereum (Ethereum Request for Comment). Il s’agit d’un cadre régissant des opérations spécifiques sur le réseau Bitcoin. Il fonctionne en parallèle des protocoles de bas niveau comme les Odes, et est la clé de voûte pour interagir avec la machine virtuelle, Bob. Le standard OCV transforme les commandes de l’utilisateur en un langage interprétable par la machine virtuelle, et assure la bonne communication avec la blockchain de Bitcoin.

        La Godchain

        Il s’agit du nom donné à l’ensemble formé par le BOSS, l’OPStandard et l’OCV. La Godchain symbolise le système décentralisé idéal bâti sur la blockchain de Bitcoin. Il permet d’observer de près chaque action effectuée sur le réseau.

        Le Bitcoin Operational Standard System repose donc sur la machine virtuelle JavaScript Bob, et permet aux utilisateurs du réseau Bitcoin d’exploiter de nouvelles fonctionnalités. Les messages sont structurés selon un standard particulier, et écrits dans un langage spécifique. Cette infrastructure pave la voie à un réseau Bitcoin plus flexible et plus innovant. Le BOSS transforme la façon dont les utilisateurs interagissent avec le réseau Bitcoin, grâce à un système entièrement décentralisé où le besoin de confiance est minime (trust-minimized ecosystem).

        Fonctionnement de BOSS

        L’idée initiale derrière la création du projet était d’amener la finance décentralisée (DeFi) sur le réseau Bitcoin en utilisant les Inscriptions Ordinales. Les fonctionnalités avancées de Bitcoin, comme Taproot, offrent de nouvelles possibilités.

        L’équipe TheOrb a donc cherché à libérer le plein potentiel de Bitcoin en explorant les synergies potentielles entre son serveur d’horodatage (c’est-à-dire la blockchain) et les inscriptions ordinales. C’est en combinant les deux que naquit BOSS, désormais appelé la Godchain. Ce système permettra de dépasser les attentes initiales de l’équipe.

        Si l’idée de base était de fournir des applications et des services dans le domaine de la finance décentralisée, il s’agit désormais de construire un tout nouvel écosystème. La Godchain est vouée à former un système complet, décentralisé et minimisant la confiance.

        Cette architecture est conçue pour dépasser les limitations du standard BRC-20 pour Bitcoin.

        BOSS - Bitcoin Operational Standard System- BOB - Machine virtuelle - Extension du modèle OSI
        La machine virtuelle Bob étend et solidifie le modèle OSI (les différentes couches du réseau) pour Bitcoin.

        Bob : une machine virtuelle pour Bitcoin

        L’idée du “God Protocol” est une abstraction, un concept utopique, le but ultime du développeur d’un système distribué. Il s’agit d’un système où le besoin de confiance en une entité centrale, qui agit comme une autorité, n’est plus nécessaire. Ce concept nous provient de Nick Szabo, décrit dans un papier publié initialement en 1997.

        Les protocoles de Dieu

        Pour éliminer ce besoin de confiance en une autorité centrale, le système s’appuie sur les preuves cryptographiques et le code informatique. Dans cet environnement, les transactions sont transparentes, vérifiables et irréversibles.

        La machine virtuelle Bitcoin Observer – Bob – représente le premier pas vers cet idéal. C’est une machine virtuelle JavaScript qui améliore la programmabilité de Bitcoin. Elle facilite aussi la communication et les interactions avec la blockchain de Bitcoin de façon totalement nouvelle. Bob a la capacité d’observer la blockchain, de reconnaître puis d’interpréter les commandes JS des utilisateurs, appelées des inscriptions OSS.

        Bob est donc une surcouche du réseau, ajoutant des fonctionnalités dynamiques au-dessus du protocole Bitcoin, bénéficiant de sa robustesse et de son haut degré de sécurité.

        Fonctionnement de Bob, la machine virtuelle de BOSS

        Trois éléments sont au cœur de la machine virtuelle Bob : les inscriptions OSS, les OPSchemes, et les OPStandards.

        Tout d’abord, l’utilisateur crée une commande JavaScript (une inscription OSS) formatée dans le langage spécifique à l’OPStandard, en suivant une structure particulière, l’OPScheme.

        Puis, il entame le processus de l’exécution d’une commande, en créant son inscription OSS. Lorsqu’elle est prête, il utilise le réseau Bitcoin afin de l’envoyer à Bob. Le rôle principal de Bob est donc d’observer continuellement chaque bloc produit sur la blockchain, afin de détecter d’éventuelles inscriptions OSS.

        Ensuite, une fois qu’une inscription OSS est détectée, Bob va décoder et interpréter la commande. L’état interne de la machine virtuelle est alors mis à jour. Enfin, l’utilisateur reçoit le résultat de sa requête.

        Un système flexible

        Notons que Bob n’est pas un système rigide. En effet, si la commande qu’un utilisateur souhaite exécuter n’est pas définie dans l’OPStandard, n’importe qui peut proposer de l’y ajouter. Ce procédé est appelé Trusted Document Type Definition (TDTD). Cette fonctionnalité rend Bob très flexible et encourage les utilisateurs à faire évoluer le système.

        La machine virtuelle Bob travaille également en synergie avec d’autres éléments du Bitcoin Operational Standard System :

        • Bob interagit avec les Odes (les entités opérationnelles décentralisées). Il s’agit d’un élément fondamental de l’écosystème BOSS. Ces entités sont gérées par leurs participants respectifs et peuvent proposer des mises à jour du code à leurs Odes. Ils peuvent ajouter des microservices, qui sont postés comme du code observable par Bob sur la blockchain de Bitcoin. Les fonctionnalités des Odes sont donc évolutives.
        • De plus, Bob utilise le standard OCV (Operational Commit for Voting) qui est analogue au système ERC (Ethereum Request for Comment) sur Ethereum. C’est cette standardisation qui facilite alors la gouvernance des Odes. Il est ainsi facile de proposer et de voter sur des mises à jour du code et des améliorations du système. Bob est donc aussi une plateforme de gouvernance décentralisée.

        Le système Bob opère donc tel une entité individuelle, mais grâce à l’interopérabilité avec les autres composants du système, il ouvre la voie à un écosystème Bitcoin plus décentralisé et programmable. Au-delà de l’apport d’une machine virtuelle JavaScript pour Bitcoin, il s’agit d’une plateforme flexible, adaptative et extensive se rapprochant de l’utopie du God Protocol.

        Fonctionnement du client JS de BOSS

        L’exemple du compteur (Counter Protocol)

        Cet exemple donné par l’équipe illustre le potentiel des fonctionnalités de Bob. Il s’agit d’un cas d’usage très simple, mais utile : un compteur incrémentiel.

        Ce protocole crée une variable (un entier) mutable et publique, appelée le compteur, dont la valeur initiale par défaut est zéro. Il inclut une opération, appelée « inc », qui incrémente la valeur du compteur.

        À travers ce petit exemple, nous pouvons comprendre comment utiliser Bob pour effectuer des calculs et mettre à jour ses variables d’état.

        L’OPScheme du compteur

        Le schéma ci-dessous décrit la commande OSS nécessaire pour déployer le compteur :

        BOSS - Bitcoin Operational Standard System- BOB - Compteur
        Alice envoie la commande “inc” pour incrémenter le compteur.

        La commande OSS est écrite dans le langage OPStandard et structurée en fonction de l’OPScheme. Elle permet de déployer le compteur public :

        module.exports = { p: "op", op: "deploy", protocol: { p: "counter", description: "a simple public counter", events: { inc: { fn: function({state}) { const counter = state("counter"); counter += 1; return counter.save(); } }, state: { counter: { public: true, type: "integer", default: 0 } } } }

        L’état du protocole est défini par le compteur, un entier public, établi initialement à zéro par défaut. Un événement (« inc ») est spécifié par une fonction incrémentant le compteur (+1) à chaque fois qu’il est exécuté.

        Effectuer des calculs avec Bob

        Une fois que ce protocole est déployé, les utilisateurs peuvent envoyer des instructions OSS à Bob qui appellent l’événement “inc”, incrémentant alors la valeur du compteur. Ce processus démontre la façon dont les utilisateurs du réseau peuvent effectuer des calculs grâce à Bob. Cela ouvre de nouvelles possibilités : créer et interagir avec des protocoles décentralisés sur la blockchain de Bitcoin.

        L’exemple du protocole de comptage montre la possibilité d’exécuter des calculs complexes grâce à la machine virtuelle de Bob. De la même façon que pour ce simple compteur, les utilisateurs peuvent développer des protocoles pour interagir avec d’autres variables, et effectuer des calculs plus complexes.

        BOSS et la standardisation

        Le Bitcoin Operational Standard System souligne également l’importance de la standardisation. Afin de disposer d’une meilleure interopérabilité, d’un système de gouvernance et de plus de flexibilité, les standards tels que l’OCV fonctionnent conjointement avec les protocoles de la couche de base comme les entités opérationnelles décentralisées (ODE).

        Ainsi, l’ODE d’Oshi, bien que déployée au départ avec peu de paramètres, permet aux détenteurs d’OSHI de proposer des mises à jour du code de l’ODE. Cela permet entre autres d’ajouter des “microservices”, qui sont postés en tant que code observable par Bob sur la blockchain de Bitcoin.

        La cohérence des ODE est alors assurée par leur mécanisme de gouvernance. Les propositions sont soumises on-chain et sont automatiques. Il est aussi possible de mettre à jour les cadres de gouvernance eux-mêmes.

        En pratique, Bob et BOSS permettront d’établir un ensemble de fonctionnalités et d’applications que l’on peut trouver sur les plateformes de smart contracts comme Ethereum. Il pourra s’agir d’applications décentralisées, de services financiers (lending, staking, vesting), de places de marché, de faiseurs de marché automatisés (AMM).

        Bitcoin Operational Standard System - BOSS - Diagramme opératif

        On s’approche de la notion de « God Protocol » grâce à un environnement robuste, scalable et sécurisé, bénéficiant des qualités de Bitcoin.

        Un standard pour la prise de décision décentralisée sur BOSS

        L’équipe de BOSS met en exergue le besoin d’établir des standards pour le fonctionnement efficace et fluide d’un système complexe. C’est dans cette optique qu’a été créé l’OCV : établir les règles et les procédures nécessaires à son bon fonctionnement, et s’assurer que les différents composants du système peuvent interagir et travailler ensemble efficacement.

        L’Operational Commit for Voting (OCV)

        L’Operational Commit for Voting est donc un standard-clé pour BOSS. Il joue le rôle central pour assurer des prises de décision décentralisées et efficaces au sein de l’écosystème. L’OCV facilite les validations d’opérations, qui s’apparentent à des mises à jour de code dans le développement de logiciels. Dans le cas classique, il s’agit d’une autorité centrale (le CTO ou l’équipe des développeurs par exemple) qui prend les décisions. Dans le cas de BOSS, il s’agit d’un processus de vote démocratique et décentralisé.

        L’OCV est conçu pour être adaptable et universel. Le processus est itératif et évolutif : les propositions peuvent inclure de nouvelles fonctionnalités, la résolution de bugs, ou encore l’amélioration de certaines fonctionnalités existantes. Les participants soumettent leur propositions, qui seront ensuite soumises au vote du réseau de façon collective.

        Protocole de bas niveau : les Odes de BOSS

        Les Entités Opérationnelles Décentralisées (ODE) sont les fondations de l’écosystème de BOSS. Ce sont elles qui établissent les bases pour développer des applications au-dessus du réseau Bitcoin.

        Les ODE sont des entités résilientes, maintenant leur cohésion dans le temps grâce à un cadre de gouvernance on-chain qui permet d’automatiser le traitement des propositions. Ce cadre de gouvernance peut lui aussi être modifié via le mécanisme de gouvernance automatique initial d’une ODE. Le système est ainsi entièrement adaptatif et évolutif.

        À titre d’exemple, l’ODE d’OSHI fut déployée initialement avec un ensemble réduit de paramètres. Cependant, les détenteurs d’OSHI peuvent proposer des mises à jour majeures (core updates) pour leur ODE, qui sont postées comme du code observable par le BOB sur le réseau Bitcoin. L’idée principale du mécanisme est de donner du pouvoir à tous les participants, grâce à un processus de développement architecturalement décentralisé, mais politiquement centré sur les intérêts de la communauté.

        Les deux standards que sont l’OCV et les ODE reprennent donc les meilleurs éléments des systèmes blockchain, pour amener des fonctionnalités intéressantes sur Bitcoin. On pense aux applications décentralisées (dApps), aux services financiers de toutes sortes, aux AMM et à de nouvelles formes de jetons de valeur numérique. Cependant, cela ne s’arrête pas là : BOSS vise vraiment à se rapprocher du God Protocol décrit par Nick Szabo.

        Les entités opérationnelles décentralisées, la fondation de l’écosystème BOSS

        Les Odes sont décrites comme des entités Bitcoin résilientes. Nous allons nous attarder un peu plus longuement sur ce concept. Elles représentent une nouvelle étape dans le développement des systèmes blockchain. Bâtie sur le Bitcoin Operational Standard System, elles tirent parti de la résilience du réseau Bitcoin pour étendre ses possibilités, sans pour autant renier les principes de décentralisation.

        Une entité opérationnelle est un groupement d’intérêts collectifs, dont la mission est de gérer l’évolution d’un protocole et de ses standards. L’écosystème BOSS est ainsi basé sur un protocole de gouvernance on-chain de bas niveau et sans permission, fourni par Oshi et l’équipe TheOrd.

        La couche de base pour le développement d’applications sur Bitcoin

        Les Odes sont le substrat sur lequel développer des applications complexes directement au-dessus du réseau Bitcoin. Flexibles, sécurisées et décentralisées, elles permettent de créer une variété d’applications allant de finance décentralisée aux réseaux sociaux.

        Les ODE sont conçues pour être versatiles. Elles ont la capacité d’évoluer, et de s’adapter aux cas d’usages imaginés par les développeurs.

        Évolution du code d’une ODE à travers l’exemple d’OSHI

        Oshi.Finance est l’exemple-type d’une Entité Opérationnelle Décentralisée dynamique. Reposant initialement sur quelques paramètres, elle peut évoluer avec le temps. Ce sont les détenteurs d’OSHI qui peuvent proposer des mises à jour du code vers leur ODE. De telles propositions peuvent comporter un « microservice » : un morceau de code que Bob peut observer et exécuter sur le réseau Bitcoin.

        Il s’agit donc d’un processus de prise de décision collective, décentralisée et démocratique pour les participants.

        Gouvernance des ODE et Standard OCV

        Les Odes comportent un mécanisme de gouvernance intégré permettant le déploiement de mises à jour automatiques. Ce système lui-même est également modifiable de façon automatisée, au fur et à mesure que les besoins de la communauté et de ses participants évoluent.

        C’est le Standard OCV qui joue un rôle majeur dans ce processus de gouvernance. Il assure que les modifications de code proposées (code commits) suivent un protocole standardisé. De même, leur mise en forme permet à l’ODE d’évoluer de façon structurée.

        La combinaison des ODE et du Standard OCV crée donc un écosystème où les questions de gouvernance incitent à la participation de tous les détenteurs. Tout changement donne lieu ainsi à des délibérations minutieuses, avant qu’il ne soit accepté. Ce mécanisme a pour but de favoriser les intérêts de la communauté de BOSS au sens large sur le long terme.

        La standardisation sur BOSS

        Ethereum, une source d’inspiration

        BOSS est pensé pour être un écosystème adaptatif. Il incorpore les points forts des plateformes blockchain existantes, tout en conservant les qualités uniques inhérentes au réseau Bitcoin. Ses développeurs se sont donc fortement inspirés d’Ethereum et de ses applications décentralisées dans des domaines très variés.

        Ethereum est la plateforme pionnière dans le déploiement de smart contracts et d’applications décentralisées. Désormais, une multitude de services sont accessibles sur le réseau, allant du domaine financier aux jetons non-fongibles (NFT). Naturellement, BOSS a donc l’ambition de proposer un environnement de développement similaire sur la blockchain de Bitcoin, possédant la même flexibilité et la même capacité d’innovation quant aux applications.

        Les interactions au sein du BOSS

        Le potentiel de croissance de l’écosystème BOSS

        Les promesses de BOSS sont alléchantes, allant ainsi de la DeFi sur Bitcoin (lending, AMM, staking, places de marché) à de nouveaux modèles de jetons. BOSS est donc conçu pour être un écosystème en perpétuelle croissance, évoluant rapidement au gré des découvertes et des innovations technologiques. Il doit pouvoir s’adapter aux évolutions de l’industrie.

        C’est cette flexibilité et cette évolution continuellement qui nous rapproche du concept de “Godchain”. Il repose sur l’idée d’une blockchain unique et globale, où peuvent être exécutés tous types d’opérations et de calculs. 

        Le potentiel au long terme de BOSS n’est donc limité que par l’imagination des membres de sa communauté. Les contributions extérieures et les innovations sont encouragées par sa nature ouverte. Les idées nouvelles et les suggestions d’amélioration sont donc bienvenues. Il s’agit de garder le réseau Bitcoin comme ossature solide et sécurisée tout en étendant continuellement ses possibilités.

        Conclusion

        Le Bitcoin Operational Standard System promet ainsi de paver la voie à des implémentations blockchain plus flexibles, plus interactives et plus scalables. La machine virtuelle JavaScript Bitcoin Observer (Bob) est la clef de voûte de l’écosystème. C’est une boîte à outils permettant de créer des applications décentralisées robustes, des entités résilientes et des standards dynamiques pour l’évolution du code.

        Au-delà du réseau Bitcoin, l’écosystème devra rester ouvert, évolutif et participatif. Il participe donc à étendre le champ des possibles pour l’industrie blockchain dans son ensemble. Le BOSS est aligné avec les principes d’innovation continuelle et de prise de décision démocratique.

        Ressources

        L’article BOSS, le projet d’infrastructure crypto qui réinvente Bitcoin est apparu en premier sur Journal du Coin.

        Milk Sad : autopsie d’un vol de bitcoins et mauvaise cryptographie

        https://journalducoin.com/?p=635495

        Une équipe de chercheurs, réunie sous le nom de code Milk Sad, a récemment découvert une vulnérabilité affectant l’un des outils open source pour Bitcoin les plus vieux en existence. Cette librairie, créée en 2011, et régulièrement mise à jour, est utilisée pour générer des phrases mnémoniques. Autrement dit, de nombreux portefeuilles logiciels s’appuient sur cet outil pour générer les clefs privées de leurs utilisateurs.

        Un problème de cryptographie, et plus précisément d’entropie, c’est-à-dire concernant la génération de nombres aléatoires, a pu être exploité par des pirates afin de subtiliser les précieux bitcoins de plusieurs utilisateurs.

        Dans cet article technique, nous étudierons cette faille et la méthode utilisée par les pirates. Nous allons le voir, les utilisateurs concernés avaient pourtant très bien fait les choses en matière de sécurité, lors de la création de leur portefeuille.

        Cet article est largement inspiré et écrit grâce aux travaux conjoints d’une équipe de chercheurs réunie sous le nom de Milk Sad – le papier original se trouve ici : https://milksad.info/.

        Un vol de bitcoins inexplicable

        L’équipe de chercheurs qui nous relate cette affaire a dû enquêter plusieurs semaines. Tout commence le 23 juillet 2023. Ce jour-là, un utilisateur du réseau Bitcoin eut la très désagréable surprise de s’apercevoir que ses bitcoins avaient disparu de son wallet. Il s’est très vite rendu compte qu’il s’agissait d’un vol, et non pas d’un bug. En effet, une transaction sortante fut effectuée le 12 juillet vers une adresse inconnue. Il n’avait pourtant pas utilisé son hardware wallet durant une longue période.

        Il était de plus extrêmement bien sécurisé. En utilisateur averti, il l’avait créé de la façon suivante :

        • Premièrement, génération de la phrase mnémonique (BIP39, 24 mots) sur un ordinateur portable isolé d’Internet et de tout réseau ;
        • Le PC tournait sous Linux, et les clefs privées furent générées à l’aide d’un logiciel que Bob avait compilé lui-même ;
        • Ensuite, Bob avait entré la phrase mnémonique sur des hardwares wallets Ledger et Trezor ;
        • Enfin, les deux hardwares wallets étaient physiquement sécurisés et comportaient un PIN.

        Toutes les conditions étaient donc réunies pour que ses bitcoins soient parfaitement sécurisés.

        L’enquête commence

        Tout d’abord, Bob a contacté plusieurs de ses amis qui avaient également utilisé la même méthode pour stocker leurs bitcoins. Il fut avéré que l’une d’entre elles, Alice, avait été également spoliée. En effet, en consultant son adresse, une transaction sortante (l’intégralité du solde) fut effectuée le même jour, à la minute près.

        Il devenait clair que Bob et Alice avaient été victimes d’une sorte de hack. Et malheureusement, ils s’aperçurent ensuite que toutes leurs cryptomonnaies, également sécurisées via les mêmes hardwares wallets, avaient également disparu (des ethers).

        S’il s’agissait d’une forme d’hameçonnage visant à convaincre les victimes d’autoriser les portefeuilles à effectuer un transfert, les conséquences eurent été limitées. Il en aurait été de même si le pirate avait eu accès aux clés privées individuelles d’un ou plusieurs sous-comptes. Il s’agissait donc d’un hack élaboré, où la clé privée maître de leurs wallets avait été exposée.

        Les doutes s’installent

        Bob et Alice ont vite compris qu’un vol de ce type, effectué simultanément, était hautement improbable. En outre, tous deux avaient pris des précautions drastiques pour stocker leurs clés privées. Un peu plus tard, ils apprirent qu’ils n’étaient pas les seules victimes. En observant les transactions sur la blockchain, il apparut que plusieurs centaines de wallets avaient été drainés.

        La panique commença à s’installer : l’attaquant aurait-il repéré une faille au sein des hardwares wallets ? Les primitives cryptographiques correspondant à la génération des clés privées seraient-elles en cause ? Quelqu’un aurait-il utilisé un ordinateur quantique ?

        Bitcoin

        Les premiers indices

        En planchant sur le problème, Bob et Alice comprirent que la configuration utilisée pour générer leurs wallets respectifs était la même. Un PC Linux complètement isolé d’Internet. L’outil utilisé pour générer les phrases mnémoniques était le même : Libbitcoin Explorer, version 3.x.

        Il s’agit d’un outil open source très connu. Son fichier binaire (bx) permet de générer un wallet hors-ligne via les commandes suivantes :

        # generate 256 bits of entropy, turn it into BIP39 mnemonics bx seed -b 256 | bx mnemonic-new 

        Il s’agit de la commande Linux permettant de générer une phrase mnémonique BIP29 de 24 mots. C’est donc la clé de voûte de n’importe quel wallet, en termes de sécurité.

        Cette commande pourrait alors être à l’origine du problème. Par exemple, le générateur de nombre aléatoire des ordinateurs Linux pourrait ne pas avoir l’entropie nécessaire…

        C’est ainsi qu’Alice et Bob demandèrent l’aide d’experts en sécurité de l’information pour tenter d’y voir plus clair.

        >> Euro > Crypto au meilleur prix en 1 clic ! (lien commercial) <<

        Revue du code source

        L’équipe commença à passer en revue le code source de la commande bx seed, contenue dans le fichier binaire.

        Cette commande fait appel à une première fonction – new_seed(size_t bit_length) – dans libbitcoin-explorer src/utility.cpp. Cette dernière fait elle-même appel à une autre fonction – pseudo_random_fill(data_chunk& out) – au sein de la librairie libbitcoin-system.

        console_result seed::invoke(std::ostream& output, std::ostream& error) { const auto bit_length = get_bit_length_option(); // These are soft requirements for security and rationality. // We use bit vs. byte length input as the more familiar convention. if (bit_length < minimum_seed_size * byte_bits || bit_length % byte_bits != 0) { error << BX_SEED_BIT_LENGTH_UNSUPPORTED << std::endl; return console_result::failure; } const auto seed = new_seed(bit_length); ... }
        data_chunk new_seed(size_t bit_length) { size_t fill_seed_size = bit_length / byte_bits; data_chunk seed(fill_seed_size); pseudo_random_fill(seed); return seed; }

        Le terme « pseudo-random » peut semer le doute. Cependant, un générateur de nombres pseudo-aléatoire (PRNG) n’est pas un danger en soi, si tant est qu’il soit un CSPRNG, c’est-à-dire un Générateur de nombres pseudo-aléatoire cryptographiquement sécurisé.

        Mersenne Twister

        Les chercheurs ont alors suivi les appels successifs de la fonction.

        pseudo_random::fill(data_chunk& out) -> pseudo_random::next() -> pseudo_random::next(uint8_t begin, uint8_t end) -> std::mt19937& pseudo_random::get_twister()

        Ce sont ces entrées, mt19937 et twister, qui mirent la puce à l’oreille de nos experts. En effet, le PRNG utilisé est Mersenne Twister. Il ne s’agit pas d’un CSPRNG ! Il ne devrait donc jamais être utilisé pour générer des informations sensibles, tels des secrets cryptographiques.

        De plus, l’état interne de Mersenne Twister peut-être inversé par un attaquant qui connaît quelques centaines de sorties. En conséquence, cela met en danger les sorties (inconnues de l’attaquant) provenant du même flux.

        Cependant, si le générateur de nombres pseudo aléatoire est réinitialisé lors de chaque création de wallet, comment cette faille pourrait-elle être exploitée pour commettre un vol à distance ?

        Horloge système

        Les chercheurs continuèrent d’explorer le code du fichier pseudo_random.cpp et n’eurent pas à aller bien loin pour découvrir le réel problème.

        // Use the clock for seeding. const auto get_clock_seed = []() NOEXCEPT { const auto now = high_resolution_clock::now(); return static_cast(now.time_since_epoch().count()); }; // This is thread safe because the instance is thread static. if (twister.get() == nullptr) { // Seed with high resolution clock. twister.reset(new std::mt19937(get_clock_seed())); }

        Vous l’aurez compris, la seed de l’algorithme du PRNG est basée sur 32 bits du temps système. Effrayant, d’un point de vue de la sûreté cryptographique… Les chercheurs, n’en croyant pas leurs yeux, vérifièrent si bx utilisait bien ceci pour générer les clés privées.

        Pour ce faire, ils se livrèrent à une expérience sur les variables d’environnement :

        • Utilisation de bx version 3.2 avec une librairie libfaketime ;
        • Exécutions séparées sous des horloges système strictement identiques.
        $ wget https://github.com/libbitcoin/libbitcoin-explorer/releases/download/v3.2.0/bx-linux-x64-qrcode -O ~/.local/bin/bx $ chmod +x ~/.local/bin/bx $ sudo apt install libfaketime $ export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/faketime/libfaketime.so.1 FAKETIME_FMT=%s FAKETIME=0 $ bx seed -b 256 | bx mnemonic-new milk sad wage cup reward umbrella raven visa give list decorate bulb gold raise twenty fly manual stand float super gentle climb fold park $ bx seed -b 256 | bx mnemonic-new milk sad wage cup reward umbrella raven visa give list decorate bulb gold raise twenty fly manual stand float super gentle climb fold park

        Ils s’aperçurent alors avec horreur que les phrases mnémoniques des wallets étaient exactement les mêmes avec des horloges identiques !

        Il s’agit bien de la première preuve que générateur de nombres n’est ni aléatoire ni pseudo-aléatoire.

        Autres découvertes

        En fouillant un peu plus, l’équipe fut assurée que le code utilisait le standard MT19937 du PRNG Mersenne Twister. Contrairement au standard MT19937-64, il emploie une seed de 32 bits en entrée. Cela signifie que le PRNG présente un plafond de 2^32 positions de départ, et ce, qu’il soit basé sur /dev/random ou sur l’horloge système.

        Ainsi, en exécutant bx seed -b 256 pour obtenir 256 bits d’entropie, le résultat correspond à 32 bits d’une horloge de haute précision, qui sont passés dans un « twister », puis étendus à 256 bits, sans ajouter de nouvelles informations.

        S’il s’agissait d’entropie réelle, le nombre de variations grandirait exponentiellement avec la taille de la seed. La différence entre le résultat attendu (256 bits) et le résultat réel (32 bits) est donc astronomique.

        Dans ce cas, un attaquant peut recalculer la seed originelle par cassage brut après un maximum de 4,29 milliards d’essais. Cela ne prend que quelques jours de calculs sur un PC de gaming standard.

        C’est donc une faille catastrophique. L’équipe se retrouva alors le 21 juillet en présence d’informations extrêmement sensibles. Avant de procéder à la divulgation totale de leurs travaux, seul le FBI fut alerté, tout d’abord pour éviter aux victimes de payer des taxes quant à leurs fonds volés. De plus, les victimes étant américaines, cela pourrait permettre de limiter le mouvement des fonds vers des plateformes de change le cas échéant.

        >> Euro > Crypto au meilleur prix en 1 clic ! (lien commercial) <<

        Impact de la découverte

        L’équipe décida d’utiliser le nom de code “Milk Sad“. Il s’agit des deux premiers mots de la phrase mnémonique générée par bx pour le temps 0.

        Affaire Cake Wallet

        La découverte rappela rapidement à l’équipe une faille du même type au sein de Cake Wallet. En effet, en mai 2021, les développeurs de Cake Wallet annoncèrent une vulnérabilité découlant aussi d’une faible entropie. Les utilisateurs furent incités à changer leurs phrases mnémoniques.

        Cake Wallet - Vulnérabilité

        La faille provenait également de l’algorithme utilisé pour générer les seeds, appelé Dart.

        Uint8List randomBytes(int length, {bool secure = false}) { assert(length > 0); final random = secure ? Random.secure() : Random(); final ret = Uint8List(length); for (var i = 0; i < length; i++) { ret[i] = random.nextInt(256); } return ret; }

        La fonction Random() peut en effet revenir à 0 ou au temps système.

        Random::Random() { uint64_t seed = FLAG_random_seed; if (seed == 0) { Dart_EntropySource callback = Dart::entropy_source_callback(); if (callback != nullptr) { if (!callback(reinterpret_cast(&seed), sizeof(seed))) { // Callback failed. Reset the seed to 0. seed = 0; } } } if (seed == 0) { // We did not get a seed so far. As a fallback we do use the current time. seed = OS::GetCurrentTimeMicros(); } Initialize(seed); }

        Affaire Trust Wallet

        Nous avions informé nos lecteurs le 24 avril 2023 d’une vulnérabilité majeure chez Trust Wallet, qui causa environ 170 000 dollars de pertes chez ses utilisateurs. Ledger Donjon avait alors produit une analyse complète de la faille : elle est étonnamment proche de ce que l’équipe Milk Sad a pu observer avec le fichier bx.

        Les premières attaques remontent à décembre 2022 ; cependant, il aura fallu attendre plusieurs mois pour que les fonds disparaissent des wallets générés via bx.

        La faille présente dans la version concernée de Trust Wallet et celle de bx partagent les mêmes fondamentaux. Il s’agit de la mauvaise entropie de Mersenne Twister MT19937. La seule différence est que bx utilise l’horloge système pour utiliser MT19937, mais cela n’a pas de conséquence quant aux attaques par force brute à distance. La faille réside principalement dans les 32 bits servant d’espace à la génération des clés.

        Les détails des vulnérabilités

        Dans le cas de Trust Wallet, les phrases mnémoniques sont d’une longueur de 12 mots. Elles nécessitent ainsi 128 bits d’entropie. Dans le cas de bx, plus flexible, les sorties générées peuvent être de 128, 192 ou 256 bits.

        Le PRNG n’est cependant pas utilisé de la même façon. Même si Trust Wallet et bx utilisent tous deux l’algorithme MT19937 Mersenne Twister, les sorties sont traitées différemment.

        Avec Trust Wallet, le procédé est le suivant :

        • En sortie, 32 bits issus de MT19937 ;
        • Trust Wallet prend les derniers 8 bits pour remplir le tableau d’entropie ;
        • Les 24 bits restants sont éliminés via & 0x000000ff bitwise-and dans wasm/src/Random.cpp.
        // Copyright © 2017-2022 Trust Wallet. // [...] void random_buffer(uint8_t* buf, size_t len) { std::mt19937 rng(std::random_device{}()); std::generate_n(buf, len, [&rng]() -> uint8_t { return rng() & 0x000000ff; }); return; }

        Avec bx, le code en C++ utilisé dans libbitcoin-system pour la fonction pseudo_random::fill() effectue la même troncature, mais à l’inverse, c’est-à-dire en prenant les 8 bits les plus significatifs issus du PRNG. Ainsi, les sorties générées par bx seed sont dans un espace totalement différent des sorties générées avec le code de Trust Wallet. Les phrases mnémoniques BIP39 résultantes sont donc aussi différentes.

        L’équipe de Milk Sad a pu en avoir confirmation grâce à ce code fournit par Ledger Donjon à titre d’exemple :

        [...] RNG seed: 0x8ec170a8 Mnemonic: sorry slush already pass garden decade grid drip machine cradle call put [...]

        En recalculant la seed issue du RNG (0x8ec170a8) avec le code de bx pour une phrase de 12 mots, le résultat est alors le suivant :

        local chef load churn future essence type leave program weird ancient owner

        On voit tout de suite que le procédé est différent. L’équipe Milk Sad not la phrase prémonitoire écrite par Ledger Donjon :

        During our investigations, we also noticed that a few addresses were vulnerable while they had been generated a long time before the Trust Wallet release. That probably means this vulnerability exists in some other wallet implementations which is concerning…

        Ledger Donjon

        Ledger Donjon n’a probablement pas poussé ses recherches en incluant les wallets générés par les versions 3.x de bx. Cependant, il y a probablement d’autres wallets affectés, utilisant MT19937 pour générer des phrases mnémoniques de 12 mots. L’équipe de Milk Sad ne s’est pas penchée sur le sujet.

        Le plan de divulgation de Milk Sad

        La procédure de divulgation entre les deux affaires est sensiblement différente. En effet, dans le cas de Trust Wallet, il s’agit d’une entité unique, commerciale, bien établie et financée. L’équipe de développement était en contact direct avec les victimes, et pouvait donc les informer individuellement d’un problème avec leur portefeuille. De plus, elles n’étaient vulnérables que pour une période temporelle limitée, et la faille fut découverte rapidement.

        En conséquence, Trust Wallet a décidé d’inciter financièrement ses utilisateurs à déplacer leurs fonds en lieu sûr. L’équipe a également remboursé les utilisateurs lésés et offert un bug bounty de 100 000 dollars à Ledger Donjon.

        Dans le cas de Milk Sad, tout est plus délicat. La librairie Libbitcoin est open source, développée dans un but non-commercial, et les codeurs n’ont pas de canaux de communication directs avec leurs utilisateurs. Les portefeuilles affectés ont été créés sur plusieurs années, les clés privées concernées ont probablement été importées et exportées de nombreuses fois, tout comme les phrases mnémoniques BIP39. Cela rendait la tâche beaucoup plus difficile pour les chercheurs en cybersécurité.

        La présence des écrits de Ledger Donjon et de Trust Wallet avaient probablement mis la puce à l’oreille de plusieurs pirates. Ces derniers devaient déjà être en train de scanner activement la blockchain pour trouver des portefeuilles bx à exploiter. Toutes les clés privées générées avec bx seed étaient compromises.

        L’équipe Milk Sad a donc jugé qu’une divulgation rapide était nécessaire. En effet, le temps joue dans ce cas en faveur des attaquants. Ainsi, au lieu du standard de 90 jours, l’équipe s’est fixé un objectif de 7 jours pour la divulgation.

        Bilan des vols on-chain

        L’équipe s’est focalisée sur la blockchain de Bitcoin, par manque de temps. Toutefois, toutes cryptomonnaies conservées sur un wallet généré via bx seed sont potentiellement concernées. Le bilan fourni par l’équipe est donc malheureusement une estimation basse de la quantité de fonds ayant pu être dérobés.

        Le vol du 23 juillet 2023

        Il est attribué à un attaquant unique et bien préparé. Au total, le butin représente 29,65 BTC pour une valeur de 850 000 dollars au moment des faits.

        Milk Sad - Vols du 23 juillet 2023

        Autres mouvements de fonds suspects

        L’équipe a également identifié des mouvements de fonds suspects qu’elle attribue à des pirates exploitant la même faille.

        Ces mouvements débutent le 3 mai 2023 et consistent en de multiples balayages de wallets pour de petites sommes, jusqu’à 0,33 BTC. Ils se sont poursuivis jusqu’au 15 juillet. Les fonds ont ensuite été transférés vers d’autres adresses. Il peut cependant s’agir d’une activité légitime, étant donné qu’il n’y a eu aucun rapport de vol de la part des propriétaires des adresses concernées. Cela pourrait être un utilisateur souhaitant réunir ses fonds en provenance de multiples wallets vers un nouveau.

        Adresses potentielles de l’attaquant :

        La liste des cryptomonnaies dérobées via cette faille est variée. Elle est confirmée par les victimes :

        • Bitcoin (BTC)
        • Ethereum (ETH)
        • Ripple (XRP)
        • Dogecoin (DOGE)
        • Solana (SOL)
        • Litecoin (LTC)
        • Bitcoin Cash (BCH)
        • Zcash (ZEC)

        Il y a probablement de nombreux autres types de cryptomonnaies concernées à cause de la flexibilité de bx seed. Le coût de l’attaque est celui des investigations (identifier des wallets à cibler) et des frais de transaction pour effectuer le vol.

        L’équipe de chercheurs évalue la borne basse des fonds dérobés via cette méthode à 900 000 dollars.

        Motivations et limites de l’équipe Milk Sad

        L’équipe de chercheurs a tenu à effectuer ces investigations pour deux principales raisons :

        • Évaluer les dommages causés par la vulnérabilité en termes financiers ;
        • Prouver que cette faille est bien réelle et constitue l’unique explication à la disparition des fonds des victimes.

        L’équipe avait également l’espoir qu’en menant ses recherches, et dans le cas où des sommes substantielles pouvaient être à risque, elle pourrait en informer les propriétaires afin de les prévenir. Ce n’aurait pas été une tâche facile : elle disposait de plusieurs options :

        • Relayer un message d’alerte via une plateforme de change centralisée que le propriétaire aurait utilisé pour effectuer des dépôts directs ;
        • Trouver des adresses dont le propriétaire est publiquement identifié ;
        • Utiliser d’autres canaux de communication potentiels.

        Fort heureusement, l’équipe n’a pas identifié de fonds à risque, en se fixant un plancher de 5000 dollars. L’analyse concernait tous les wallets générés avec les versions 3.x de bx. Elle n’est bien entendu pas complète : des wallets avec des chemins de dérivation un peu différents pourraient être concernés. De même, certains portefeuilles utilisant des phrases BIP39 additionnelles pourraient rendre l’identification plus difficile.

        La team Milk Sad tient également à formuler trois points très importants :

        • Les deux victimes originelles ont pu récupérer une petite portion de leurs fonds, qui n’avaient pas encore été volés, en utilisant leur configuration pré-vol.
        • L’équipe n’a pas déplacé de fonds depuis les wallets des victimes inconnues, et ce pour toutes les cryptomonnaies concernées.
        • L’équipe n’a aucun rapport de près ou de loin avec l’attaquant.

        L’identité du pirate est donc à ce jour inconnue.

        Prévenir un mal inguérissable ?

        L’équipe tient à insister sur un point important : bien que ses membres soient tous bien intentionnés, déplacer des fonds ne leur appartenant pas afin de prévenir un vol est un cauchemar du point de vue légal. Et ce, même dans des circonstances « idéales » : une victime unique, une preuve claire de la propriété des fonds, des identités bien établies de chaque côté, une juridiction unique, et des moyens de communication privée bien établis. Une telle décision comporte des risques.

        Ainsi, dans sa situation, et avec des circonstances bien moins favorables, l’équipe Milk Sad opta pour le statu quo. À titre d’illustration, elle donne le scénario suivant aux chevaliers blancs potentiels. Étant donné qu’un attaquant peut recalculer les clés privées du propriétaire d’un wallet affecté, cela annule la validité de toute signature effectuée avec ces dernières. Dans le cas où l’on décide de déplacer les fonds vers un wallet que l’on contrôle, comment alors s’assurer qu’une personne prétendant être le propriétaire du portefeuille original est la bonne ? C’est particulièrement vrai lorsqu’il n’y a aucune entité centralisée (telle une plateforme de change) pour appuyer ses dires et fournir des preuves circonstancielles. De plus, ce problème n’inclut pas la mise en conformité avec les lois anti-blanchiment (AML) ou fiscales.

        L’équipe Milk Sad s’est donc contenté de fournir des explications et des outils permettant de vérifier si son wallet est concerné : lookup service.

        Implémentation de l’outil de recherche

        L’équipe s’est focalisée sur les formats d’adresses et chemins de dérivation aux standards BIP44, BIP49 et BIP84. Il s’agit de trouver les portefeuilles Bitcoin générés par bx seed | bx mnemonic-new via les versions 3.x de bx, avec les longueurs de phrases mnémoniques et configurations BIP39 classiques.

        Cela couvre donc :

        • 128 bits = 12 mots, bx seed -b 128
        • 192 bits = 18 mots, bx seed -b 192 (par défaut)
        • 256 bits = 24 mots, bx seed -b 256

        Elle a utilisé une liste publique d’adresses historiquement observées par le réseau Bitcoin. Puis elle a utilisé un filtre de Bloom, avec un taux de faux positifs très bas sur l’ensemble de données. Cela lui a permis d’éliminer rapidement de nombreux portefeuilles candidats inutilisés, et évité d’effectuer des recherches coûteuses via un nœud complet Bitcoin.

        Seuls les portefeuilles où la première adresse a été utilisée furent pris en considération. De même, seuls les portefeuilles utilisant les chemins de dérivation standard BIP44, BIP49, et BIP84 sont pris en compte.

        Les résultats

        Au total, elle a découvert 2600 portefeuilles distincts et actifs basés sur la mauvaise entropie de bx seed.

        La majorité de ces wallets (2550) présentent un usage similaire : de petits dépôts effectués autour de la même date en 2018. Bien qu’elle n’en soit pas sûre, la team Milk Sad pense qu’il s’agit du résultat de l’utilisation automatique de bx, et ces portefeuilles pourraient appartenir au même propriétaire. Ils sont tous dans l’ensemble de sortie de 256 bits et les adresses sont de type BIP49 (avec le préfixe3“) ce qui leur donne un signe distinctif.

        En excluant cet ensemble, l’équipe a trouvé moins de 50 portefeuilles où l’utilisation ressemble fortement à l’activité d’un propriétaire humain. Cela reste incomplet.

        Dans cet ensemble de portefeuilles, elle a pu découvrir et identifier les deux portefeuilles des victimes initiales, ce qui a conforté les chercheurs dans l’idée que leur explication pour le vol était correcte.

        Bien qu’une grande partie de ces wallets ne comportaient pas de fonds avant 2023, et ne pouvaient donc pas être volés, elle les considère tout de même affectés :

        • N’importe quel dépôt court le risque immédiat d’être subtilisé via une méthode automatisée ;
        • L’accès aux clés privées sous-jacentes permet de reconstruire toutes les adresses dérivées et ce pour toutes les cryptomonnaies compatibles. Cela les relie donc à toutes les actions effectuées précédemment par le propriétaire.

        Autres victimes

        L’équipe a pu identifier d’autres victimes, comme l’utilisateur u/0n0t0le sur Reddit. Ce dernier a pu toutefois déplacer 1,05 BTC que les attaquants n’avaient pas trouvé.

        Les phrases mnémoniques BIP39 ne fournissent pas d’indication claire quant au logiciel utilisé pour les générer. Comme ce format est conçu pour être importable et exportable sur d’autres logiciels, il est possible que les utilisateurs ne se rappellent tout simplement pas quand un portefeuille donné à été créé, ce qui rend la recherche plus difficile.

        Chronologie de la divulgation

        DateEvent
        2022-11-17Ledger Donjon divulgue la vulnérabilité de Trust Wallet à Binance
        2022-11-21Trust Wallet code un patch sur GitHub qui supprime l’utilisation de Mersenne Twister
        2022-11-21+Trust Wallet notifie les utilisateurs affectés par la vulnérabilité
        2022-12-?Exploitation on-chain des wallets Trust Wallet (selon leur équipe)
        2023-03-?Deuxième exploitation on-chain (selon l’équipe)
        2023-04-22Trust Wallet divulgue publiquement la faille
        2023-04-25Ledger Donjon publie leur papier sur la vulnérabilité de Trust Wallet
        2023-05-03Première exploitation potentielle des wallets bx 3.x
        2023-07-12Principale exploitation des walletbx
        2023-07-21Découverte de la vulnérabilité bx durant l’analyse de l’incident
        2023-07-22Envoi de l’email initial pour établir la communication avec l’équipe Libbitcoin
        2023-07-25Première réponse, indiquant qu’ils sont trop occupés pour prendre contact
        2023-07-25Envoi du contexte sans le détails de la vulnérabilité à la team Libbitcoin, demande de suivi
        2023-08-03Envoi des détails techniques de la vulnérabilité et du contexte de la divulgation à la Libbitcoin team
        2023-08-03Réponse de la Libbitcoin team, indiquant qu’ils ne considèrent pas cela un bug
        2023-08-04Demande de CVE pour la vulnérabilité bx seed dans les versions 3.x depuis MITRE
        2023-08-05Réponse de la Libbitcoin team, détaillant pourquoi ils ne considèrent toujours pas cela comme un bug
        2023-08-07MITRE assigne le CVE pour le problème de bx 3.x
        2023-08-08Publication de l’article

        La réponse des développeurs de Libbitcoin

        L’équipe Libbitcoin a tout d’abord contesté la véracité de la divulgation. Puis elle a considéré que la commande bx seed n’avait jamais dû être utilisée par un utilisateur de bx, car son manque de sûreté serait suffisamment documenté.

        L’équipe Milk Sad est en désaccord avec cette affirmation et fournit la chronologie et les ressources suivantes :

        DateInformation
        21/07/2013Ajout d’une commande newseed pour la génération d’entropie sur le prédécesseur de Libbitcoin Explorer
        16/10/2014Première page de documentation sur le wiki de Libbitcoin Explorer pour bx seed
        14/12/2014Première release de Libbitcoin Explorer (bx) version 2.0.0
        21/12/2015Libbitcoin Explorer (bx) release 2.2.0
        10/02/2017Libbitcoin Explorer (bx) release 2.3.0
        19/01/2015Un membre de l’équipe Libbitcoin ajoute et met à jour les suggestions d’utilisation de bx seed dans “Mastering Bitcoin”
        21/10/2016L’équipe Libbitcoin change la génération de seed vers Mersenne Twister via PR#559commit
        08/03/2017Libbitcoin Explorer (bx) 3.0.0, inclut PR#559
        29/08/2019Libbitcoin Explorer (bx) 3.6.0, dernière release officielle
        02/05/2021La commande bx seed est renommée bx entropy sur GitHub, toujours basée sur Mersenne Twister, PR#62812

        L’équipe Milk Sad n’a relevé qu’un seul avertissement au sujet de bx seed sur le wiki :

        WARNING: Pseudorandom seeding can introduce cryptographic weakness into your keys. This command is provided as a convenience.

        Documentation Libbitcoin Explorer

        Elle insiste sur la faiblesse de l’expression « peut introduire » qui ne reflète pas la réalité de la faille.

        Dans l’appendice de Mastering Bitcoin (A. Antonopoulos), la description de la commande écrite par les membres de Libbitcoin est la suivante :

        Generate a random “seed” value using the seed command, which uses the operating system’s random number generator. Pass the seed to the ec-new command […] $ bx seed | bx ec-new > private_key[...]

        De même, au chapitre 4 du même ouvrage, on trouve :

        You can also use the Bitcoin Explorer command-line tool (see [appdx_bx]) to generate and display private keys with the commands seed, ec-new, and ec-to-wif: $ bx seed | bx ec-new | bx ec-to-wif[...]

        Les auteurs de l’ouvrage en sont informé et feront les modifications nécessaires.

        De plus, la documentation de Libbitcoin suivante inclut bx seed :

        PageCommandeDernière modification
        wiki landing pagebx seed | bx ec-new | bx ec-to-public | bx ec-to-address07/2018
        bx mnemonic-new documentationbx seed -b 128 | bx mnemonic-new04/2017
        bx hd-new documentationbx seed | bx hd-new04/2022
        Random Numbersbx seed -b 25607/2018

        Aucun de ces exemples ne comprend d’avertissement quant à l’insécurité des wallets générés ainsi.

        Quelles leçons tirer de l’affaire Milk Sad ?

        Grâce à l’excellent travail de l’équipe de chercheurs, on peut tirer 3 points essentiels :

        • Utiliser des passphrases BIP39 pour ses wallets, idéalement complexes, et basées sur l’entropie d’une source différente ;
        • Ne faire confiance qu’à des logiciels longuement et minutieusement audités lors de la création de ses wallets ;
        • Documenter précisément toutes les étapes de la génération de ses wallets pour le futur, cela pourrait s’avérer important.

        L’équipe Milk Sad a pu découvrir une faille d’ampleur dans la librairie bx, ayant causé au moins 900 000 dollars de dégâts. Elle compte désormais effectuer des recherches sur le comportement des versions 2.x de bx. La page web dédiée sera mise à jour en fonction. Les chercheurs n’ont reçu aucune récompense pour leurs travaux et ne le souhaitent pas.

        Ils se contentent d’appeler à utiliser les services commerciaux des différents membres :

        • Distrust, LLC
          • Infosec firm focusing on high risk clients
          • Pentesting, threat modeling, hands-on security engineering
          • Full stack security evaluations and advisory retainer contracts
          • Covers: Shane Engelman, Anton Livaja, Ryan Heywood, and Lance Vick
        • Christian Reitter
          • Freelance InfoSec Consultant
          • Pentesting, Code Audits, Security Research, Fuzzing
        • Heiko Schaefer
          • Focus on OpenPGP: OpenPGP CA, Sequoia PGP, OpenPGP on HSM devices (OpenPGP card, PKCS #11, PIV)

        L’équipe Milk Sad

        L’article Milk Sad : autopsie d’un vol de bitcoins et mauvaise cryptographie est apparu en premier sur Journal du Coin.

        Bitcoin et le consensus de Nakamoto : consistance, vivacité, synchronie et sécurité

        https://journalducoin.com/bitcoin/bitcoin-consensus-nakamoto-synchronie-securite-consistance-vivacite/

        Le mécanisme de consensus de Bitcoin, communément appelé consensus de Nakamoto, permet de sécuriser sa blockchain, le registre des transactions effectuées sur le réseau.

        Il appartient à la grande famille des protocoles de consensus distribués. Cependant, le classifier plus finement relève du challenge. En effet, il comporte de nombreuses briques techniques et mathématiques qui en font un système complexe et, pour certains, révolutionnaire.

        Dans cet article, nous allons explorer un peu plus en profondeur les notions de consistance, de vivacité, de synchronie et de sécurité. Cela nous permettra de comprendre la sécurité du réseau Bitcoin, la notion de finalisation d’une transaction et le caractère immuable de la blockchain.

        >> Vous préférez garder vos cryptos à l’abri ? Choisissez un portefeuille Ledger (lien commercial) <<

        Bitcoin : un système synchrone ?

        Tout d’abord, nous allons nous pencher sur la question suivante. Bitcoin est-il un système synchrone ou asynchrone ? Il est bien difficile d’affirmer l’un ou l’autre avec certitude. Ce que l’on sait déjà, c’est que Bitcoin est un réseau pair-à-pair et sans permission. Le terme “permissionless” renvoie au fait que le réseau est ouvert, et que de nouveaux nœuds peuvent librement le rejoindre à tout instant.

        La synchronie d’un réseau distribué

        Comment peut-on définir le caractère synchrone d’un système distribué ? On peut affirmer qu’un réseau distribué est synchrone lorsque :

        • Tous ses éléments (ses nœuds dans le cas de Bitcoin) sont coordonnés par une horloge globale ;
        • Il existe un plafond connu quant au délai des messages qui sont transmis entre les différents nœuds du système. Il s’agit pour Bitcoin des transactions diffusées sur le réseau.
        • Les canaux de communication entre les différents nœuds délivrent les messages de façon ordonnancée, selon la règle du FIFO (first in, first out). On peut identifier de façon précise le moment où un message a été transmis.
        • Les processus du système sont exécutés de manière séquentielle.

        Dans un système distribué synchrone, il est toujours possible de connaître l’ordre des opérations effectuées en son sein. 

        À l’inverse, au sein d’un système asynchrone :

        • Les horloges des nœuds ne sont pas toutes coordonnées ou précises ;
        • L’état du système est défini par les événements s’y déroulant. Ils ne suivent pas forcément une séquence ou un ordre précis. Par exemple, ils peuvent aussi survenir en parallèle.
        • Les événements peuvent survenir sur décision arbitraire, et indépendamment du programme gérant les nœuds ;
        • Le délai entre les messages transitant au sein du réseau est variable.

        Ainsi, dans un système asynchrone, les nœuds n’ont pas toujours de retour sur le statut des informations transitant sur le reste du réseau. Ils peuvent donc avoir une vue différente de l’état du système.

        Le cas litigieux de Bitcoin

        Il est donc plus difficile qu’il n’y paraît de qualifier d’emblée le réseau Bitcoin de système « synchrone » ou « asynchrone » :

        • L’horloge système des nœuds est censée être identique ;
        • Le délai des messages est plafonné par la bande passante des nœuds, leur connectivité et la méthode de propagation des messages ;
        • Les canaux de communication entre les nœuds légers délivrent les messages de façon aléatoire, c’est-à-dire lorsqu’une transaction est soumise à l’un deux ;
        • Les blocs sont émis de façon asynchrone : chaque mineur fournit un bloc dès qu’il a trouvé un hash supposé valide. Ces blocs sont ensuite soumis aux autres nœuds pour vérification.
        • Une fois les blocs validés par l’ensemble du réseau, les nœuds complets délivrent des messages ordonnancés, afin que chacun puisse avoir le même registre (la blockchain) et qu’il n’y ait pas de conflit entre les transactions. C’est le processus de finalisation des blocs, leur inscription dans la blockchain.

        Ces observations sont donc contradictoires. Tentons de prendre un point de vue plus global, et considérons le fonctionnement de Bitcoin à travers la finalisation de ses blocs.

        La blockchain : un serveur d’horodatage

        Dans son livre blanc, Satoshi Nakamoto ne parlait pas de blockchain, mais de timestamp serverserveur d’horodatage. En effet, chaque bloc est tout d’abord horodaté, puis un hash de cet horodatage est publié à l’ensemble du réseau. Cela permet de prouver que les informations contenues dans le bloc (les transactions) ont existé dans le temps. Chaque horodatage inclut également l’horodatage précédent dans son hash, ce qui forme une chaîne. L’ordonnancement des événements est ainsi renforcé dans le temps.

        En ce sens, du point de vue global, le réseau Bitcoin paraît synchrone, car chaque nœud complet doit avoir la même version du registre distribué à intervalles réguliers (toutes les dix minutes). De plus, les transactions sont traitées de manières séquentielles, et l’ordre des blocs est défini par une stricte relation mathématique.

        En pratique cependant, ce n’est pas toujours le cas. Par exemple, si deux nœuds mineurs valides trouvent un bloc en même temps, le réseau va se retrouver partitionné. Il en va de même pour la blockchain : on parle de fork. La probabilité que cela se produise sur plusieurs blocs est faible, mais non-nulle.

        Les nœuds doivent alors trouver une méthode pour choisir la branche du registre sur laquelle s’accorder et se synchroniser à nouveau. Le protocole Bitcoin définit la règle suivante : en cas de fork, c’est la branche possédant la preuve de travail cumulée la plus importante qui est considérée comme valide. Les autres branches sont abandonnées, et les blocs correspondants deviennent orphelins.

        >> Mettez vos cryptomonnaies au vert. Choisissez un portefeuille Ledger (lien commercial) <<

        La sécurité de la blockchain

        On s’aperçoit donc que la sécurité du réseau Bitcoin repose fortement sur son caractère synchrone. C’est de là que vient le délai de finalisation des blocs, estimé à 6. En effet, à ce stade, la probabilité d’avoir deux chaînes concurrentes devient quasi-nulle. Il est mathématiquement raisonnable de considérer qu’après ce délai, le réseau est synchrone et qu’il est impossible d’effectuer une double dépense.

        En pratique, Bitcoin peut donc devenir asynchrone, dans plusieurs cas :

        • Fork de la blockchain ;
        • Mauvaise connectivité entre les nœuds ;
        • Propagation des blocs non-uniforme.

        On pourrait donc finalement affirmer sans se mouiller que Bitcoin est un système distribué semi-synchrone (ou partiellement synchrone) fonctionnant sans permission (n’importe qui peut rejoindre le réseau à tout moment). Synchrone dans un cadre idéal, asynchrone de temps à autre en pratique.

        Cette propension à devenir asynchrone rend possible une variété d’attaques. La question devient donc de savoir ce qu’il en est au niveau de la sécurité du réseau le cas échéant.

        Formulé autrement : le protocole de consensus de Nakamoto reste-t-il cohérent lorsqu’il est exécuté de manière asynchrone, avec des délais de transmission des messages bornés par ∆ ?

        C’est une question qui aura taraudé tant les chercheurs en mathématiques et en informatique que les pirates, qui donneraient cher pour profiter d’un éventuel manque de cohérence. Des attaquants pourraient souhaiter forger de fausses transactions, ou effectuer des doubles dépenses.

        Bloc Bitcoin en construction

        Consistance du système

        Malheureusement pour eux, et heureusement pour les utilisateurs, le protocole de Nakamoto reste cohérent même en conditions asynchrones. C’est notamment prouvé par l’étude « Analysis of the Blockchain Protocol in Asynchronous Networks » (Rafael Pass, Lior Seeman, Abhi Shelat) publiée le 13 septembre 2016.

        Elle fournit une abstraction d’un protocole blockchain, permettant d’identifier les propriétés de sécurité désirables pour de tels protocoles.  Dans ce modèle formel, les attaquants peuvent être des nœuds corrompus ou de nouveaux nœuds.

        L’étude prouve que le protocole Bitcoin satisfait de manière forte les propriétés de consistance et de vivacité au sein d’un réseau asynchrone, avec des délais bornés, en présence d’attaquants.

        Si cela vous intéresse, elle est disponible ici.

        Pour conclure, à la question « le réseau Bitcoin est-il synchrone ? », on peut répondre : « on s’en fiche, tant qu’il reste sécurisé et que mes bitcoins ne sont pas volés ! »

        C’est la consistance du protocole de consensus de Satoshi Nakamoto qui permet d’affirmer avec certitude mathématique qu’au-delà d’un certain délai, en blocs, la blockchain est immuable. La relation mathématique qui relie les blocs, grâce à l’algorithme de hachage, rend impossible sa modification a posteriori.

        Ce n’est théoriquement pas tout à fait le cas, car il existe la fameuse attaque goldfinger, l’attaque des 51 %. Un mineur possédant plus de la moitié de la puissance de hachage du réseau pourrait former une chaîne concurrente, qui serait acceptée par le réseau si elle présente plus de preuve de travail que la chaîne de référence.

        Nous discuterons de cette attaque, et de son impossibilité, dans un article à part entière.

        Vires in numeris !

        En crypto, ne faites pas l’économie de la prudence ! Ainsi, pour conserver vos avoirs cryptographiques à l’abri, la meilleure solution est encore un wallet hardware personnel. Chez Ledger, il y en a pour tous les profils et toutes les cryptos. N’attendez pas pour mettre vos capitaux en sécurité (lien commercial) !

        L’article Bitcoin et le consensus de Nakamoto : consistance, vivacité, synchronie et sécurité est apparu en premier sur Journal du Coin.

        Mantle Network : la seconde couche modulaire pour Ethereum

        https://journalducoin.com/ethereum/mantle-network-ethereum-couche-secondaire-optimistic-rollups-modulaire/

        Mantle Network est une couche secondaire pour Ethereum (Layer 2 ou L2) : un réseau qui permet de traiter des transactions et d’exécuter des smart contracts rapidement, pour un faible coût. Comme plusieurs solutions de scalabilité pour Ethereum, Mantle Network est basé sur les rollups.

        Mantle Network a la particularité d’être modulaire : les couches gérant les calculs et l’accessibilité aux données sont indépendantes. Ethereum gère le consensus, tandis que la disponibilité des données est assurée par une infrastructure nommée EigenLayer.

        Les L2 visent à rendre Ethereum scalable, facile et peu coûteux à utiliser, sans sacrifier sa sécurité. Chaque solution est basée sur un compromis – le fameux trilemme des blockchains – entre scalabilité, sécurité et décentralisation. Mantle Network a une approche unique, que nous présentons dans cet article.

         >> Not your keys not your coins ! Optez pour un wallet hardware à toute épreuve, choisissez Ledger (lien commercial) <<

        Les concepts-clés pour comprendre Mantle 

        Nous allons tout d’abord définir quelques concepts importants pour comprendre Mantle Network, et plus largement les layers 2 d’Ethereum. Ces réseaux secondaires permettent d’augmenter son débit, en traitant un grand nombre de transactions. Ils déchargent la chaîne principale (layer 1), car seul l’état résultant de l’ensemble des opérations y est finalisé.

        Il existe différents types de L2. Ils peuvent ainsi être basés sur des sidechains, des chaînes Plasma, ou des rollups. Parmis toutes ces techniques, les sidechains/Plasma chains assurent le traitement des données et les calculs. Ce n’est pas le cas des solutions basées sur les rollups.

        Les rollups sur Ethereum

        Il existe deux types de rollups pour créer une infrastructure de couche secondaire pour Ethereum. Les Optimistic Rollups ont été privilégiés au départ, car les zkRollups n’étaient pas EVM-compatibles. Cela a récemment changé, notamment avec l’arrivée de Kakarot et de Scroll.

        Dans les deux cas, les rollups servent à traiter de grandes quantités de transactions sur le L2 (batches). Les opérations restant à traiter sur le L1 (Ethereum) sont :

        • Les dépôts et les retraits des fonds des utilisateurs sur L2 ;
        • La vérification de la validité des opérations effectuées sur le L2.

        Tout se déroule donc au sein d’un smart contract sur le L1. Les rollups sont donc accompagnés d’une preuve à divulgation nulle de connaissance (ZKP) permettant de valider ce qui se déroule sur le L2. C’est ici que réside la différence entre optimistic et ZK rollups.

        À titre d’exemple, voici un tableau résumant les différences entre les deux types de rollups en termes de coûts, de période de verrouillage et de complexité.

        Comparaison entre les Optimistic Rollups et les ZK Rollups – Mantle Network

        Ce tableau est donné à titre indicatif, car les techniques progressent, et les solutions de scalabilité basées sur les rollups sont améliorées fréquemment. Pour comprendre et approfondir le sujet des zk-Rollups, veuillez vous référer à l’article de présentation de Scroll et de sa zkEVM.

        Qu’est-ce qu’un optimistic rollup ?

        Un Optimistic Rollup est un rollup ne nécessitant pas de preuve de validité pour être pris en compte par le Layer 1. En effet, les transactions sont validées hors-chaîne.

        En revanche, un réseau de vérificateurs génère des preuves de fraude (fraud proofs) dans le cas où une transaction est invalide. L’adjectif “optimiste” provient donc du fait que le Layer 1 assume la validité du rollup.

        Les Optimistic Rollups sont apparus sur Ethereum avec Optimism. Leur fonctionnement est le suivant :

        • Tout d’abord, un module appelé le Séquenceur collecte les transactions des utilisateurs et va les traiter sur le Layer 2  ;
        • Les données de transactions et la racine d’état du L2 sont ensuite envoyées au L1 ;
        • Tous les nœuds du Layer 2 exécutent ces transactions et mettent alors à jour leur chaîne ;
        • Enfin, les nœuds vérificateurs comparent leur propre racine d’état à celle qui est envoyée par le séquenceur au Layer 1.

        Dans le cas où les racines d’état sont différentes, les nœuds vérificateurs génèrent une preuve de fraude. Ils exécutent les transactions sur le L2 mais pas sur le L1 : ainsi, la racine d’état résultante ne peut être falsifiée.

        Si un Vérificateur challenge la validité d’un rollup, les transactions seront soumises au L1 pour confirmer leur invalidité. Le Séquenceur responsable est alors pénalisé : une partie de son enjeu (stake) est brûlé (slashed). Il devra ensuite recalculer les racines d’état correctement.

        Optimistic Rollup - Diagramme des flux
        Diagramme des flux d’un optimistic rollup – Optimism (blog)

        La disponibilité des données

        La notion de disponibilité des données décrit, dans notre cas, la capacité des nœuds du L2 à accéder à l’historique des données de transaction. C’est nécessaire pour vérifier la validité de la transition d’état. Il existe plusieurs manières de stocker cet historique, on chain (sur le L1) et off chain (sur le L2).

        La notion de confiance

        Assurer la disponibilité des données de manière “trustless”, c’est-à-dire sans devoir faire confiance à une tierce partie, est un défi technique. Sur une blockchain classique, il faut posséder un nœud complet, qui stocke l’intégralité de l’historique des transactions du réseau. De cette façon, n’importe quel utilisateur peut vérifier qu’un participant suit bien les règles du protocole.

        Les nœuds d’un L2 doivent aussi accéder aux données de bloc pour vérifier la validité des rollups, et générer d’éventuelles preuves de fraude. Sur Mantle, le Séquenceur publie sur le L1 (Ethereum) les données de transaction complètes, accompagnées d’une preuve cryptographique de la transition d’état (la racine de son arbre de Merkle). Chacun peut alors vérifier que ladite transition d’état du L1 est correcte, et challenger le séquenceur dans le cas contraire.

        De manière générale, la disponibilité des données de blocs est primordiale pour assurer la scalabilité d’une blockchain. Dans le cas d’un L2, elle a également des implications en termes de sécurité et de résistance à la censure.

        L’idée centrale de l’architecture de Mantle Network est d’utiliser une couche dédiée à la disponibilité des données de bloc. Elle s’appelle EigenLayer, un protocole de restaking. Nous reparlerons plus bas de cette infrastructure majeure.

        Les bridges : relier Mantle Network à Ethereum

        Les Bridges (ou ponts) permettent de déplacer des actifs entre Ethereum et un Layer 2. Il y a deux catégories de bridges : trusted ou trustless. Les trusted bridges sont opérés par une entité centrale : l’utilisateur lui confie ses actifs et opère sur le L2. Les trustless bridges sont des smart contracts, donc leur sécurité dépend de celle du L1.

        Dans le cas de Mantle Network, un utilisateur possédant des ETH sur le L1 devra utiliser le Bridge pour les verrouiller sur le L2, et effectuer ses transactions.

        Fonctionnement de Mantle Network

        Dans le cas des Optimistic Rollups traditionnels, disponibilité des données et calculs sont tous deux gérées par Ethereum. Le L1 assure la disponibilité des données, sert de couche de règlement, et permet de vérifier les transactions du L2 afin de générer des preuves de fraude.

        Les Optimistic Rollups bénéficient donc du même degré de sécurité qu’Ethereum. Bien qu’ils améliorent sa scalabilité, ils présentent des inconvénients. Tout d’abord, les frais seront importants, car les données de transaction sont envoyées sur Ethereum. Ensuite, les nœuds du L2 sont limités en termes de débit par les capacités d’Ethereum. Enfin, la finalisation des transactions sur le L1 est assez longue. Les utilisateurs doivent attendre une période de sûreté avant de pouvoir déverrouiller leurs fonds sur le L2.

        Rollups modulaires

        Mantle Network est un L2 modulaire. Ainsi, différentes couches de son infrastructure assurent exécution des transactions, consensus, règlement et disponibilité des données. En conséquence, confier chacune de ces tâches à un module spécialisé diminue les coûts globaux du rollup, et améliore ses performances.

        La séparation des couches gérant le consensus et la disponibilité des données est une approche privilégiée pour résoudre le fameux trilemme des blockchains. En effet, cela améliore grandement le compromis entre décentralisation, scalabilité et sécurité. C’est le cas, par exemple, de Celestia.

        Ce principe, appliqué aux rollups, est donc au cœur de l’architecture de Mantle Network :

        • La séparation des ressources, couplée à la spécialisation de chaque couche de l’infrastructure, améliore grandement les performances du réseau ;
        • Tous les utilisateurs du L2 bénéficient du même degré de sécurité que les nœuds complets du L1 ;
        • Les nœuds réalisant le calcul des preuves déchargent les autres participants de la tâche de réexécution des transactions.

        Sur Mantle, la couche qui gère la disponibilité des données est basée sur un protocole spécifique.

        La disponibilité des données avec EigenLayer

        EigenLayer est un protocole de restaking. Les stakers d’Ethereum sont les utilisateurs ayant mis en jeu des ETH pour participer à sa sécurisation. Avec Eigen, il peuvent “restaker” leurs ETH, et devenir ainsi validateurs pour n’importe quel service logiciel bâti sur Ethereum. Cela inclut tous les modules de l’écosystème : protocoles de consensus, machines virtuelles, oracles, environnements d’exécution sécurisés, multisigs, et donc… disponibilité des données (data availability ou DA).

        Les validateurs d’Ethereum ont ainsi la possibilité de fournir des services de disponibilité des données, pour tous les L2 basés sur des rollups. Leurs ethers “stakés une deuxième fois” servent alors de collatéral; il est même possible d’ajouter des conditions de performance pour récompenser les validateurs. Les mécanismes d’incitation économique d’EigenLayer leur donnent droit à des intérêts.

        EigenLayer - Comparaison avec les autres modèles de L2
        Comparaison entre EigenLayer et les modèles de L2 traditionnels en termes de disponibilité des données

        La solution de disponibilité des données d’EigenLayer s’appelle EigenDA. Mantle Network utilise cette implémentation, qui permet aux nœuds de fournir leurs services. Les nœuds assurant la disponibilité des données de Mantle participent également à son modèle économique, grâce au staking du jeton MNT que nous présenterons plus bas dans cet article. EigenDA présente trois caractéristiques :

        • La séparation des couches de consensus et de disponibilité des données ;
        • Les échanges de données entre les participants du réseau passent par un canal monodiffusion, améliorant grandement la transmission et le stockage des données ;
        • Avec un taux d’effacement (erasure rate) fixé, les acteurs du réseau peuvent utiliser des données de bloc incomplètes du L1 et du L2 pour reconstruire les données de bloc complètes.

        EigenDA est donc la solution sur laquelle s’appuie Mantle Network pour fournir un haut débit à ses utilisateurs.

        Le séquenceur décentralisé de Mantle Network

        Le Séquenceur est le module qui produit les optimistic rollups. Les L2 traditionnels utilisent un séquenceur centralisé, généralement maintenu par l’équipe de développement. C’est pratique du point du vue de l’utilisateur, car ce dernier reçoit instantanément une pré-confirmation de sa transaction (soft confirmation). S’il fait confiance au séquenceur, il sait que sa transaction sera incluse dans un batch, puis finalisée sur le L1.

        Cependant, le modèle du séquenceur unique pose un problème de sécurité. Le séquenceur détient en effet un accès privilégié en écriture sur la chaîne L2, et lui seul peut transmettre les batches de transactions au L1. Il s’agit donc un point unique de défaillance, si seule la core team gérant le L2 peut l’opérer.

        Architecture

        Le séquenceur de Mantle Network sera décentralisé. N’importe quel utilisateur pourra donc devenir producteur de blocs pour le L2. Les nœuds séquenceurs seront récompensés en jeton MNT. Ils bénéficieront également des récompenses MEV (maximum extractable value).

        Un mécanisme d’élection sur le L1 détermine le nœud leader qui produit les blocs pour une période donnée (sur l’ensemble des nœuds séquenceurs). En d’autres termes, c’est le leader qui crée le rollup des transactions du L2, et diffuse le nouveau bloc au réseau des séquenceurs.

        Plusieurs autres séquenceurs succèdent au leader (Sequencer Followers). Ils reçoivent le nouveau bloc de la part du leader pour la période courante, et exécutent les transactions qu’il contient.

        Il existe aussi un autre rôle pour les nœuds du L2 : le Planificateur. Un seul nœud assure ce rôle à un moment donné. C’est le planificateur qui élit un leader parmi l’ensemble des séquenceurs, d’après les règles fixées. Il est également validateur des blocs produits par les séquenceurs, et détermine leur finalité. Si le leader ne soumet pas de bloc au planificateur dans le délai imparti, ce dernier en choisit un nouveau parmi les followers.

        Les preuves de fraude (Fraud Proofs) de Mantle Network

        Dans le cas des zkRollups, les blocs du L2 sont accompagnés d’une preuve de validité, qui permet d’assurer la correcte exécution du code et des transactions du rollup.

        À l’inverse, les Optimistic Rollups utilisent des preuves de fraude. Elles permettent de signaler des séquences de calcul ou des transactions invalides. Les blocs du L2 sont donc considérés valides par le L1, jusqu’à preuve du contraire ! Dans ce modèle, l’implémentation de ces preuves est critique.

        Preuves de fraude “classiques”

        Avec le modèle basique, le smart contract qui règle les litiges (On-chain Verifier) va exécuter toutes les instructions du rollup pour vérifier leur validité. Cependant, il ne peut le faire qu’en utilisant un langage de bas niveau (MIPS ou WASM). Il faut donc que le client EVM recompile les preuves de fraudes dans ce langage, afin que vérificateur on-chain les interprète. On parle de “low-level transpilation” – transpilation de bas niveau.

        Cela pose un problème de confiance. En effet, le vérificateur n’a aucune garantie que les preuves de fraude proviennent d’un client EVM conforme : il doit les accepter “à l’aveugle”.

        Les preuves de fraude améliorées de Mantle

        L’idée est d’évaluer les preuves de fraude en utilisant directement les instructions de l’EVM. C’est le modèle utilisé par Mantle Network, à l’instar de Specular. Les preuves sont compilées et vérifiées via des instructions conformes à l’EVM. Cela confère deux avantages :

        • Tous les logiciels client Ethereum peuvent interagir sans permission avec un système de preuve commun ;
        • De fait, cela minimise la confiance nécessaire entre les vérificateurs, les logiciels clients et les compilateurs.

        Mantle Network est ainsi un “trust-minimized optimistic rollup” :

        Comparaison entre les deux approches (bas niveau et EVM) pour la génération des preuves de fraude des Optimistic Rollups – Specular Blog

        La conception des rollups de façon “EVM-native” est supérieure en termes de sécurité et de confiance. L’exécution des instructions d’un rollup, et la résolution des litiges, s’opèrent sur le même niveau d’abstraction. Le vérificateur on-chain est agnostique en termes de logiciel client Ethereum. Cela renforce donc aussi l’auditabilité des optimistic rollups.

        Les différentes étapes d’une transaction sur Mantle Network

        Nous allons dans ce chapitre illustrer le fonctionnement de Mantle Network en détaillant le cycle de vie d’une transaction.

        Initiation

        Au départ, un utilisateur connecté au L2 de Mantle Network via son wallet initie une transaction (ou une tâche quelconque). Il utilise à cette fin une application décentralisée, intégrée à Mantle Network (via le SDK – kit de développement). Une requête de transaction basique contiendra donc l’adresse de réception des fonds et le montant transféré.

        Une fois les frais de l’opération pris en compte, la requête est signée à l’aide de la clé privée de l’utilisateur. Elle est alors envoyée vers un Séquenceur du Mantle Network.

        Prise en charge

        Premièrement, la machine virtuelle d’Ethereum (EVM) déployée sur ces nœuds vérifie la validité de la requête. Il s’agit de s’assurer que les fonds sont disponibles, les frais corrects, et les instructions valides. L’état local du L2 est mis à jour en y incluant la transaction avant qu’elle ne soit traitée. Jusqu’ici, ce processus est très rapide. La confirmation est donc instantanée, en termes d’expérience utilisateur.

        Deuxièmement, les blocs du L2 sont regroupés en batches, qui sont envoyés sur Ethereum pour y être finalisés.

        Troisièmement, un autre type de nœud vérifie que les données de bloc sont correctes : les nœuds MPC. MPC signifie “Multi-Party Computation” ou calcul multipartite. Nous détaillerons le rôle de ces nœuds dans le chapitre décrivant l’architecture de Mantle Network : ils vérifient les racines d’état des blocs du L2 transmises par le Séquenceur, puis signent les données de bloc.

        Stockage

        Le Séquenceur transmet ensuite les données de bloc, une fois signées, sur Ethereum. Sur le L2, les vérificateurs vont rendre ces données accessibles aux autres utilisateurs et aux dApps. Sur le L1, les données sont enregistrées on-chain, une fois approuvées par le mécanisme de consensus d’Ethereum.

        Les nœuds responsables de leur disponibilité (DA Nodes) vont alors les synchroniser, et garantir leur accessibilité à tout instant. En échange, ils sont récompensés via le jeton MNT.

        >> Mettez vos cryptomonnaies au vert. Choisissez un portefeuille Ledger (lien commercial) <<

        Architecture de Mantle Network

        Le réseau Mantle est composé de différents modules, dont le maintien est assuré par 4 acteurs. Ils ont chacun un rôle précis. Ces nœuds sont incités économiquement à assurer le bon fonctionnement et la sécurité du système.

        Les différents acteurs de Mantle Network

        Il s’agit des Séquenceurs, des Nœuds MPC, des Vérificateurs de rollups (Rollup Verifiers) et des Nœuds DA (Data Availability Nodes).

        Les Séquenceurs

        Les Séquenceurs reçoivent les transactions des utilisateurs et les enregistrent en temps réel. Ils vont également produire les blocs du L2 lorsqu’ils sont désignés leader. Ils agrègent les transactions dans un rollup, qu’ils accompagnent de sa racine d’état.

        Les Séquenceurs reçoivent également les blocs signés de la part des nœuds MPC. Ils diffusent ensuite les données correspondantes à travers le L2 et le L1.

        Il est à noter qu’au lancement du Mainnet de Mantle Network, l’équipe opérera son propre séquenceur. Les Séquenceur sera décentralisé au fur et à mesure de l’avancement de la feuille de route.

        Les nœuds MPC (calcul multipartite)

        L’implémentation de ces nœud découle de la volonté de minimiser les risques de confiance sur le L2. En effet, les Optimistic Rollups “classiques” nécessitent une longue période de sûreté avant qu’un utilisateur ne puisse déverrouiller ses fonds. Les nœuds MPC permettent de régler ce problème.

        Les schémas de signature à seuil

        Le calcul multipartite (Multi-Party Computation ou MPC) est une branche de la cryptographie où des calculs (et leur évaluation) sont fragmentés entre plusieurs parties, sans que ces dernières n’aient à révéler leurs données privées.

        Dans le cas de Mantle Network, cela permet d’utiliser un schéma de signature distribué afin de vérifier les données de bloc.