Fedimint : Bitcoin et les banques chaumiennes fédérées
Deux problèmes majeurs se posent avec Bitcoin : le passage à l’échelle (occasionnant des frais) et la facilité d’utilisation. Ces problèmes sont généralement résolus par des tiers de confiance, comme les plateformes d’échange et les dépositaires, qui se chargent de gérer les fonds de leurs clients. Toutefois, cette solution retire entièrement aux personnes le contrôle sur leurs fonds et sur leur confidentialité. Face à cette situation, les banques chaumiennes fédérées représenteraient un compromis.
Un compromis entre gestion et délégation
Bitcoin permet, comme on le dit, « d’être sa propre banque », c’est-à-dire d’assurer soi-même la gestion de ses fonds, soit leur conservation et leur transfert. Toutefois, cette gestion peut se révéler compliquée pour l’utilisateur inexpérimenté. Il doit faire attention à ne pas perdre ses fonds, à ne pas se les faire voler, à ne pas faire de mauvaise manipulation lors d’une transaction et à gérer ses adresses ainsi que ses UTXO dans le but de protéger sa vie privée.
Le niveau technique de la plupart des gens n’est pas forcément élevé. De ce fait, ces personnes préfèrent souvent recourir à un tiers de confiance qui se charge de gérer leurs fonds, comme on peut le voir avec le succès des plateformes d’échange, comme Kraken et Coinbase, ainsi que des applications dépositaires, comme Wallet of Satoshi. Le problème est que le tiers détient alors le contrôle sur leurs bitcoins et il peut connaître toutes leurs opérations financières, ce qui va à l’encontre de la proposition de valeur de Bitcoin.
Face à cette situation, on peut réagir de plusieurs manières. Premièrement, on peut ignorer la chose en pensant que ce n’est pas un mal – ni au niveau individuel ni au niveau systémique – que les gens passent par des tiers de confiance. Deuxièmement, on peut faire preuve de purisme et insister pour que les gens conservent, individuellement, le contrôle total sur leurs fonds et veillent à leur confidentialité, notamment en mélangeant leurs bitcoins et en faisant fonctionner un nœud complet. Troisièmement, on peut chercher des solutions intermédiaires, qui fourniraient aux utilisateurs une plus grande facilité à utiliser Bitcoin, tout en leur garantissant un contrôle partiel sur leurs fonds et leur confidentialité.
La vérification de paiement simplifiée (SPV) représente déjà un tel compromis. Elle permet aux portefeuilles légers (comme Electrum ou BlueWallet) de ne pas avoir à télécharger l’intégralité de la chaîne de blocs, mais uniquement les entêtes de ces blocs, et de pouvoir quand même vérifier la validité des transactions de l’utilisateur. Toutefois, ce type de vérification a des défauts certains en ce qui concerne la confidentialité et la sécurité. En outre, si votre portefeuille est connecté à un nœud du réseau qui n’est pas le vôtre, vous dépendez de ce dernier vis-à-vis de la vérification des règles de consensus (pas votre nœud, pas vos règles). Mais dans l’ensemble, les portefeuilles légers se sont révélés être un atout majeur pour Bitcoin, en donnant la possibilité à de nombreux utilisateurs d’interagir directement avec le réseau et de profiter de ses avantages.
La même chose pourrait être dite des approches dites « communautaires » qui ont pour but de favoriser l’adoption de Bitcoin sans compromettre totalement ses propriétés. Celles-ci consistent à répartir la confiance au sein d’une communauté locale, plutôt qu’à la placer directement en un tiers unique, soumis aux différentes réglementations internationales.
Cette approche a été illustrée par l’expérience de Bitcoin Beach, un projet de développement économique durable autour de la plage d’El Zonte au Salvador. Une banque communautaire a ainsi vu le jour en 2020 et permet depuis lors, par le biais du Bitcoin Beach Wallet développé par Galoy, aux locaux d’échanger des bitcoins de façon sûre et fiable. C’est cette expérience qui a inspiré l’adoption du cours légal à l’échelle nationale en septembre 2021.
Cependant, dans ce cas, la banque communautaire peut observer l’intégralité des transactions de ses utilisateurs. C’est pourquoi il a été proposé d’utiliser le concept de banque chaumienne fédérée pour remédier à ce problème.
Les banques chaumiennes
L’idée de banque chaumienne (« Chaumian bank ») ou de monnaierie chaumienne (« Chaumian mint ») repose sur le concept de signature aveugle, introduit par David Chaum en 1982 dans son article intitulé « Blind signatures for untraceable payments ». Il s’agit d’avoir un serveur central, appelé la banque ou la monnaierie, qui émet des billets numériques pouvant être échangés de pair à pair. Cette technique a été notamment mise en œuvre par Digicash dans les années 1990 sous le nom d’eCash.
Le fonctionnement de la signature aveugle peut être expliqué par une analogie, qui recouvre précisément ce qui se passe au niveau mathématique : celle de la création d’un billet physique en papier carbone représentant une quantité précise de monnaie (dénomination).
Voici comment a lieu cette construction :
- Alice crée un billet en papier carbone (en générant aléatoirement un très grand nombre
x
) ; - Alice place le billet dans une enveloppe fermée (en utilisant une fonction de commutation
c
qu’elle seule connaît) ; - Alice envoie l’enveloppe contenant son billet à la banque et communique la dénomination souhaitée ;
- La banque signe l’enveloppe en indiquant le nombre de satoshis le billet représente (elle a une clé privée pour chaque dénomination), ce qui a pour effet de signer le billet en papier carbone à l’intérieur ;
- La banque renvoie l’enveloppe à Alice ;
- Alice ouvre l’enveloppe pour récupérer son billet signé (en utilisant la fonction d’inversion
c'
). - Alice vérifie que la signature de la banque est valide (c’est-à-dire qu’elle correspond à la clé publique liée à la dénomination demandée).
Alice peut conserver le billet autant qu’elle le désire.
La transaction se fait en donnant le billet signé à quelqu’un d’autre. Par exemple, Alice va payer Bob pour un service rendu en lui transmettant le billet. Puis, Bob va vérifier qu’il a bien été signé par la banque. Ensuite, Bob va envoyer immédiatement le billet réceptionné à la banque afin qu’elle vérifie que le billet est encore valide en s’assurant qu’il n’est pas déjà sur la liste des billets utilisés (pas de double dépense). Enfin, Bob pourra recevoir un nouveau billet de la même dénomination ou choisir de retirer les fonds que représentent le billet (rédemption).
Ce système a pour avantage de faire en sorte que la banque n’ait pas besoin de connaître l’identité d’Alice ni celle de Bob pour fonctionner. Seuls les fonds qu’ils déposeront pour les convertir en certificats seront associés aux différents billets. Le système est donc respectueux de la vie privée, conformément aux valeurs de Chaum.
C’est pourquoi il a été imaginé d’utiliser un tel système en surcouche de Bitcoin pour améliorer la scalabilité et la confidentialité. Et l’idée n’est pas nouvelle : elle a été proposée et implémentée pour la première fois, le 17 août 2010, par un individu intervenant sous le pseudonyme fellowtraveller sur le forum de Bitcoin au travers de son projet Open Transactions. Le projet ne s’est jamais imposé, car le besoin ne se faisait pas ressentir et le système était probablement trop complexe. Cependant, l’idée est revenue timidement sur les devants de la scène au cours du débat sur la scalabilité avec la proposition des « certificats aveugles au porteur » de Theymos (administrateur du subreddit r/Bitcoin et du forum Bitcointalk) en décembre 2016. Elle a également été reprise en 2019 par Frank Braun et Jonathan Logan (co-animateurs du podcast Cypherpunk Bitstream) au travers de SCRIT, un projet de système chaumien fédéré dont le nom est l’acronyme de « Secure, Confidential, Reliable, Instant Transactions ».
Mais c’est en 2021 que l’idée semble s’être démocratisée avec l’apparition de Fedimint.
Fedimint
Fedimint est un protocole permettant de conserver et d’échanger des bitcoins de manière communautaire et confidentielle. Il a été conçu et implémenté par le cypherpunk Eric Sirion au cours de l’année 2021. Le nom du protocole est une abréviation approximative de Federated Chaumian Mint (ou « monnaierie chaumienne fédérée » en français).
Selon Obi Nwosu, Fedimint représenterait le troisième pilier de l’écosystème libre de Bitcoin – les deux autres étant la chaîne de blocs (réserve de valeur) et Lightning (paiements) – et aurait pour rôle de décentraliser et de rendre résistante à la censure la garde de bitcoins.
Fedimint est un protocole composé de trois composantes technologiques. Il s’agit d’une banque chaumienne, gérée par une fédération, dont l’accès est facilité par un système d’échanges Lightning. L’idée derrière Fedimint est de choisir de faire confiance à des personnes proches de soi, plutôt qu’à un tiers de confiance lointain.
La première composante, la banque chaumienne, fonctionne comme on l’a décrit plus haut. Les billets sont des certificats adossés à une certaine quantité de satoshis. Cette composante assure la confidentialité financière des participants.
La deuxième composante est la fédération sur laquelle Fedimint se base, de manière semblable aux chaînes latérales fédérées comme Liquid ou RSK. Les membres de cette fédération sont appelés des gardiens et sont les personnes techniques de la communauté qui sont responsables de la mise en place de l’infrastructure et de la gestion les fonds des utilisateurs pour assurer le bon fonctionnement de la banque chaumienne. Ces gardiens se coordonnent en utilisant un algorithme de consensus classique appelé HBBFT (Honey Badger Byzantine Fault Tolerant) qui, comme tous les algorithmes de ce type, demande un minimum de 66 % d’acteurs honnêtes pour fonctionner. Cette composante assure la garde communautaire des fonds.
La troisième composante est le système d’échanges (atomiques) avec le réseau Lightning. Chaque échange a lieu entre la fédération et un utilisateur par un HTLC. Cela permet la mise en place de passerelles Lightning, qui s’assurent du transfert des fonds depuis ou vers Lightning ou d’autres communautés fédérées pour une aisance d’utilisation optimale. Cette composante assure l’interopérabilité à l’échelle globale entre les communautés.
Fedimint requiert un certain degré de confiance au niveau de la fédération de gardiens et des passerelles Lightning. Il s’agit d’un compromis technique qui apporte des avantages majeurs, mais qui engendre des risques. Au niveau de la fédération, les risques sont les suivants :
- Le risque de garde : la fédération peut voler ou perdre les fonds des utilisateurs ;
- Le risque de dévaluation : la fédération peut émettre plus de certificats qu’elle n’a de bitcoins ;
- Le risque de censure : la fédération peut refuser à une transaction de se faire, bien qu’il soit théoriquement difficile d’identifier les différentes parties ;
- Le risque de réglementation : même si elle est non lucrative et locale, et échappe ainsi à la plupart des réglementations financières, la fédération peut être amenée à fermer suite à la contrainte des autorités.
Les passerelles Lightning présentent également des risques, qui sont cependant moins susceptibles d’impacter le système.
La première transaction d’une fédération Fedimint a eu lieu le 28 septembre 2022 durant le Hackers Congress de Paralelni Polis, et le protocole devrait se développer dans les années à venir.
Fedimint représente ainsi un compromis intéressant entre l’adoption généralisée et l’exigence qu’impose Bitcoin, en permettant de construire des systèmes confidentiels, scalables et simples d’utilisation, qui ne reposent pas entièrement sur des tiers de confiance centralisés. L’approche communautaire a fait ses preuves à Bitcoin Beach et nous laisse imaginer que le modèle pourra trouver sa place à différents endroits du monde.
Profitez des opportunités d’achat de cryptos à bas coût que nous offre le marché ! Pour ne pas rater l’opportunité d’une vie, inscrivez-vous vite sur la plateforme Binance, LA référence absolue du secteur, et économisez 10% sur vos frais de trading en suivant ce lien (lien commercial).