Chaumian eCash est une famille de systèmes d’argent liquide numérique issue des travaux de David Chaum. Un portefeuille, une application pour conserver et utiliser les pièces numériques, reçoit des pièces numériques signées à l’aveugle par un émetteur, souvent appelé mint. Le masquage mathématique sépare l’émission d’une pièce précise de son utilisation ultérieure. L’émetteur continue d’assurer leur acceptation ou leur remboursement et, dans les systèmes courants en ligne, empêche la double dépense.
Quand Anna voit un solde dans une application de paiement ordinaire, elle consulte généralement un compte tenu par l’opérateur. Avec eCash, elle peut détenir directement des justificatifs numériques de valeur, appelés pièces ou jetons. Ils contiennent des données et une attestation calculée par un logiciel à partir des données secrètes de l’émetteur ; ce ne sont ni des pièces métalliques ni automatiquement une nouvelle cryptomonnaie. Le but est de rapprocher le paiement des espèces, où chaque petite dépense ne doit pas nécessairement laisser une trace facilement reliée au payeur. David Chaum a développé cette idée bien avant Bitcoin, et son entreprise DigiCash l’a mise en pratique. [1] [3]
On appelle souvent l’émetteur un mint, autrement dit un atelier monétaire. Ici, c’est un service, pas une machine frappant du métal. Anna peut lui envoyer des fonds et recevoir en échange des pièces numériques dans son portefeuille. Dans les systèmes fondés sur Bitcoin, les montants peuvent être exprimés en sats, ou satoshis, les plus petites unités de Bitcoin. La question décisive est de savoir qui détient les fonds réels contre lesquels les pièces ont été émises. Si le mint les détient, Anna possède une créance sur lui, et non du bitcoin contrôlé exclusivement par ses propres clés, les données secrètes qui permettent de signer les transferts de Bitcoin. Un même solde affiché en sats peut cacher des modes de garde très différents. [8] [6] [7]
Le portefeuille prépare des données secrètes aléatoires pour une nouvelle pièce, puis les masque mathématiquement avant la signature. L’émetteur voit la valeur demandée et vérifie l’autorisation d’émission, mais pas les données originales cachées. Après la signature, le portefeuille retire le masque sans invalider l’attestation. C’est une blind signature, ou signature aveugle. Imaginez un cachet vérifiable sur une feuille dans une enveloppe opaque ; en réalité, les mathématiques font le travail. Une signature correctement réalisée ne révèle pas à elle seule à l’émetteur quel retrait antérieur correspond à la pièce présentée plus tard. Les méthodes précises de signature et de vérification varient selon les systèmes. [1] [3] [8]
Anna envoie un jeton à Pierre, par exemple dans un message. Pierre possède désormais les données nécessaires, mais Anna a pu les copier. Avec Cashu, le portefeuille du destinataire demande donc au mint de remplacer les pièces reçues par de nouvelles pièces préparées par le destinataire. Le mint invalide les anciennes et émet les nouvelles. Ce n’est qu’après la réussite de cette opération que l’expéditeur ne peut plus dépenser sa copie des pièces d’origine. Le procédé permet aussi de dissocier les nouvelles pièces de celles rendues. Une image de code QR ou un accusé de réception du message ne prouve donc pas que le destinataire contrôle déjà la valeur en toute sécurité. [8] [9]
Un double spend est une tentative de dépenser plusieurs fois la même valeur. Un mint en ligne enregistre les données des pièces utilisées et refuse leur réutilisation. Il empêche ainsi un utilisateur de simplement copier de l’argent. Mais cette base ne prouve pas que l’émetteur possède assez de réserves ni qu’il n’émet pas des pièces supplémentaires sans couverture. Il faut distinguer la protection contre un utilisateur malhonnête de la confiance dans l’opérateur. Même une attestation cryptographique valable n’est pas un relevé de ses réserves. Si l’émetteur cesse de coopérer, on peut détenir un jeton valide sans pouvoir récupérer les fonds correspondants. [2] [6] [8]
Transmettre des données entre deux téléphones déconnectés est une chose ; établir avec certitude que personne ne vient de les dépenser ailleurs en est une autre. Certaines méthodes permettent de vérifier hors ligne l’authenticité d’une signature, mais cela ne renseigne pas à lui seul sur l’état actuel de la pièce. Les recherches historiques de Chaum, Amos Fiat et Moni Naor décrivaient aussi de l’argent liquide hors ligne où une dépense répétée pouvait révéler son auteur après coup. Cela ne signifie pas que tous les portefeuilles actuels utilisent ce mécanisme. Il faut donc distinguer transmission, authenticité et protection contre la double dépense lorsqu’on parle de paiement hors ligne. [2] [10]
Le portefeuille n’a pas besoin d’une pièce particulière pour chaque montant imaginable. Il peut combiner des pièces de valeurs différentes et les échanger si nécessaire. Imaginez un solde de 500 sats et un paiement de 300 sats. Sans compter les frais, Anna veut préparer des pièces totalisant 300 sats à envoyer et conserver 200 sats. Si elle n’a pas la bonne combinaison, Cashu permet un échange auprès du mint, qui remplace les anciennes pièces par de nouvelles. Ce n’est ni une conversion de devises ni un gain obtenu en faisant de la monnaie. Les frais réels et les coupures acceptées dépendent des règles du système concerné. [8] [9]
Les signatures aveugles limitent les liens entre l’émission d’une pièce et sa dépense. Elles n’effacent pas une adresse de livraison, une connexion à une application, les traces réseau ou une combinaison reconnaissable d’heure et de montant. Un jeton ordinaire sans verrou supplémentaire peut être dépensé par celui qui obtient ses données secrètes. Le publier n’équivaut donc pas à publier une adresse de réception. Une sauvegarde ne résout pas non plus automatiquement tous les problèmes. Par exemple, la restauration dans Cashu peut nécessiter les mots de sauvegarde et la coopération du mint. Elle ne récupère pas une valeur déjà dépensée par quelqu’un d’autre et ne remplace pas les réserves manquantes de l’émetteur. [3] [11] [12]
GNU Taler utilise les signatures aveugles pour protéger le client, tout en prévoyant des revenus commerciaux traçables. Il ne vise donc pas à cacher tous les participants à tous les autres. Cashu propose un protocole d’argent liquide électronique fondé sur Bitcoin et utilisant des mints. Fedimint répartit l’administration entre une fédération, un groupe de responsables, afin qu’une seule personne ne contrôle pas les fonds. Une part suffisamment importante de ces responsables peut néanmoins compromettre la garde ou émettre des pièces sans couverture. La fédération répartit la confiance autrement, elle ne la supprime pas. Une idée cryptographique apparentée ne rend pas ces projets interchangeables. [4] [5] [6] [13]
Bitcoin vérifie les transferts dans un réseau selon des règles communes, sans émetteur central, mais possède un historique public des transactions. eCash peut déplacer certains paiements vers un environnement plus confidentiel géré par un émetteur et se relier à Bitcoin, par exemple via Lightning Network, un réseau de canaux permettant des paiements rapides. Les participants d’un canal actualisent la répartition des bitcoins engagés au préalable, sans inscrire chaque paiement dans l’historique public de Bitcoin. Déposer ou retirer par Lightning ne transforme pourtant pas automatiquement le jeton d’un mint en bitcoin détenu en garde personnelle. Pour commencer, posez trois questions : qui détient l’argent sous-jacent, qui peut refuser le remboursement et qui voit quelles informations de paiement ? Ensemble, ces réponses donnent une image honnête de ce qu’offre chaque système eCash. [6] [7] [13] [14]
Pour une vision complète, lisez aussi David Chaum, Blind Signature, DigiCash, Cashu, Fedimint, Double dépense. Cette entrée est également citée par DigiCash, Reusable Proofs of Work, The Crypto Anarchist Manifesto, Blind Signature.