Adresse furtive vs signature de cercle dans Monero
Adresse furtive vs signature de cercle dans Monero
Environ 1,2 million de transactions Monero ont été confirmées sur le réseau en avril 2026, et aucune d'entre elles n'a publiquement révélé un expéditeur, un destinataire ou un montant exact sur le registre public. Cette propriété ne découle pas d'une seule astuce cryptographique. Elle repose sur au moins trois couches qui se chevauchent, dont deux sèment régulièrement la confusion chez les débutants comme chez les bitcoineurs expérimentés : l'adresse furtive (stealth address) et la signature de cercle (ring signature). Elles portent des noms voisins, sont citées dans le même paragraphe de chaque article de vulgarisation sur Monero, et sont toutes deux décrites avec désinvolture comme « ce qui rend Monero anonyme ». Pourtant, elles protègent des faces différentes d'une même transaction, et les confondre rend impossible tout raisonnement clair sur ce qu'un observateur de la chaîne peut ou ne peut pas voir.
Chez MoneroSwapper, nous recevons cette question presque quotidiennement — généralement de la part de personnes qui viennent d'utiliser notre interface de swap, ont constaté qu'aucun KYC n'était demandé, et veulent comprendre la raison cryptographique réelle de cette absence. Cet article décortique les deux primitives, montre où elles se chevauchent, où elles divergent, et ce que chacune laisserait fuiter si elle disparaissait du protocole demain. À la fin, vous saurez précisément quel problème chaque construction résout et pourquoi le retrait de l'une ou l'autre ferait s'effondrer les garanties de confidentialité de Monero.
Pourquoi confondre les deux nuit à votre modèle mental
Les personnes qui pensent la confidentialité de Monero en regroupant tout dans un seul tiroir nommé « les trucs d'anonymat » commettent trois erreurs prévisibles. Elles croient que partager une clé de visualisation est sans conséquence parce que « les signatures de cercle protègent tout le reste », elles supposent qu'augmenter la taille du cercle renforce aussi la confidentialité du destinataire, et elles imaginent que le destinataire d'un paiement est masqué par la même construction qui masque le choix d'entrée de l'expéditeur. Aucune de ces idées n'est exacte, et toutes trois mènent à des erreurs opérationnelles bien réelles.
La séparation entre confidentialité côté expéditeur et côté destinataire est la distinction la plus utile à intérioriser. Le protocole Monero applique une cryptographie différente à chaque côté parce que les deux problèmes sont distincts. Cacher qui vous paie revient à rendre les sorties non corrélables à votre adresse publiée. Cacher quelle sortie antérieure vous dépensez revient à rendre votre entrée indiscernable d'un groupe de leurres. Ces deux problèmes ne sont pas symétriques.
- Confidentialité du destinataire : assurée par les adresses furtives (clés de sortie à usage unique dérivées de l'adresse publiée du destinataire).
- Confidentialité de l'expéditeur : assurée par les signatures de cercle (concrètement CLSAG depuis le hardfork d'octobre 2020).
- Confidentialité des montants : assurée par RingCT couplé aux preuves d'intervalle Bulletproofs+ — une troisième couche, indépendante.
Quand quelqu'un demande « Monero est-il traçable ? », la réponse honnête dépend de laquelle de ces trois couches la personne a en tête. Une fuite de clé de visualisation ne compromet que la première. Un mauvais choix de cercle ne compromet que la seconde. Et une faille future dans Bulletproofs+ ne compromettrait que la troisième. Elles tombent indépendamment, ce qui explique pourquoi il faut les comprendre indépendamment.
Ce qu'est réellement une adresse furtive
Une adresse furtive est une clé publique à usage unique générée par l'expéditeur au moment où il vous paie. Chaque fois que quelqu'un règle la même adresse Monero publiée, une clé de destination fraîche, mathématiquement décorrélée, apparaît sur la chaîne. Deux paiements ne partagent jamais la même destination, même s'ils visent le même portefeuille, dans la même minute, depuis le même expéditeur.
La construction s'appuie sur l'échange de Diffie-Hellman sur courbe elliptique. Votre adresse publiée encode deux points publics : l'un lié à votre clé de dépense, l'autre à votre clé de visualisation. Quand Alice vous paie, son portefeuille génère un scalaire éphémère aléatoire, le multiplie par le point de votre clé de visualisation pour dériver un secret partagé, hache ce secret, puis ajoute le haché au point de votre clé de dépense. Le résultat est la clé de destination à usage unique inscrite dans la sortie de la transaction. Alice ne publie que son point public éphémère — le secret utilisé pour dériver la destination est irrécupérable depuis ce qui figure sur la chaîne.
Comment votre portefeuille retrouve les paiements qui vous sont destinés
Votre portefeuille utilise votre clé de visualisation pour effectuer la même opération de Diffie-Hellman en sens inverse contre chaque sortie qu'il voit. Quand le calcul tombe juste, le portefeuille sait que la sortie vous appartient. Sinon, la sortie est silencieusement ignorée. C'est pour cela qu'exécuter un portefeuille Monero exige de scanner la chaîne plutôt que de chercher une adresse dans un index : il n'y a aucune adresse sur la chaîne à chercher.
Point essentiel : seule votre clé de dépense peut effectivement dépenser la sortie. La clé de visualisation révèle quelles sorties vous appartiennent mais ne permet pas de les déplacer. C'est la raison structurelle pour laquelle Monero prend en charge les portefeuilles en lecture seule — comptables, commissaires aux comptes ou services de surveillance peuvent confirmer des revenus sans acquérir la capacité de vider les fonds. Cette distinction prend tout son sens dans le contexte français, où un cabinet d'expertise comptable peut auditer les flux Monero d'un client soumis à la DGFiP sans jamais détenir un pouvoir de signature sur les avoirs.
Les sous-adresses prolongent la même idée
La plupart des utilisateurs ne partagent jamais leur adresse principale. À la place, ils distribuent des sous-adresses — des adresses publiques distinctes dérivées de la paire de clés principale via un index fixe. Chaque sous-adresse est non corrélable avec l'adresse principale et avec toutes les autres sous-adresses, même pour quelqu'un qui les détiendrait toutes. C'est ce qui alimente la génération d'adresse par client dans les outils marchands, les pages de dons et notre propre flux de dépôt MoneroSwapper : chaque commande reçoit une sous-adresse fraîche, de sorte qu'aucun observateur de la chaîne ne peut les agréger sous un même portefeuille.
L'erreur de confidentialité la plus fréquente chez les nouveaux utilisateurs consiste à réutiliser une seule adresse principale partout. Le protocole vous offre un nombre illimité de sous-adresses gratuitement — servez-vous-en.
Ce qu'est réellement une signature de cercle
Une signature de cercle est une signature numérique produite au nom d'un groupe, où n'importe quel vérificateur peut confirmer qu'« un membre de ce groupe a signé ce message » sans pouvoir dire lequel. Monero utilise les signatures de cercle pour masquer quelle sortie passée est dépensée en entrée d'une nouvelle transaction.
Quand vous dépensez, votre portefeuille sélectionne quinze autres sorties on-chain qui ne vous appartiennent pas et les groupe avec votre entrée réelle dans un cercle de seize. La signature est valide si et seulement si l'un des seize membres détient la clé de dépense correspondante — mais le vérificateur (et la chaîne publique) ne peut dire lequel. Votre sortie et quinze leurres sans rapport deviennent tous des candidats également plausibles comme entrée réellement dépensée.
CLSAG et l'état de l'art actuel
La construction spécifique à Monero s'appelle CLSAG (Concise Linkable Spontaneous Anonymous Group signatures), qui a remplacé MLSAG lors du hardfork d'octobre 2020. CLSAG a produit des transactions environ 25 % plus petites et une vérification environ 20 % plus rapide à sécurité équivalente. La taille du cercle est une valeur fixée à l'échelle du protocole depuis 2019 — d'abord 11, puis 16 depuis le hardfork d'août 2022. Une taille uniforme importe car des tailles variables laisseraient elles-mêmes fuiter des informations sur le logiciel de portefeuille, le type de transaction ou le comportement de l'utilisateur.
Les images de clé empêchent la double dépense
Comme personne ne peut voir quelle entrée est réelle, le protocole a besoin d'un mécanisme distinct pour empêcher la double dépense. Ce mécanisme, c'est l'image de clé : une valeur déterministe dérivée de la clé de dépense et de la clé de sortie à usage unique. Chaque sortie produit exactement une image de clé possible, et le réseau rejette toute transaction dont l'image de clé est déjà apparue. L'image ne révèle rien sur l'identité de la sortie mais garantit l'unicité de la dépense.
Côte à côte : ce que chaque construction cache
Le tableau ci-dessous rend explicite la répartition des tâches. Remarquez qu'aucune primitive seule ne cache à la fois l'expéditeur, le destinataire et le montant. Monero a besoin de la pile complète pour offrir la propriété de confidentialité que la plupart des utilisateurs ont en tête.
| Propriété | Adresse furtive | Signature de cercle (CLSAG) |
|---|---|---|
| Ce qu'elle cache | Le lien entre une adresse publiée et les destinations de sorties on-chain | Le lien entre une sortie on-chain et la transaction qui la dépense |
| Côté de la transaction | Côté destinataire (sortie) | Côté expéditeur (entrée) |
| Primitive sous-jacente | Diffie-Hellman sur courbe elliptique + hachage | Signature de groupe anonyme spontanée corrélable |
| Paramètre ajustable | Aucun — la dérivation est unique par sortie | Taille du cercle (actuellement fixée à 16) |
| Ce qui la casse | Divulgation de la clé de visualisation à une partie hostile | Attaques par sortie empoisonnée, heuristiques EAE, ensembles d'anonymat très petits |
| Ce qu'elle NE cache PAS | Le montant de la transaction, l'entrée de l'expéditeur | La destination, le montant, l'horodatage |
| Coût par transaction | Minime — une multiplication scalaire supplémentaire | Important — croît avec la taille du cercle, domine actuellement la taille de tx |
Une observation mérite qu'on s'y arrête : une adresse furtive n'est pas une estimation probabiliste. C'est une garantie cryptographique stricte que la destination de sortie ne peut être reliée à l'adresse du destinataire sans la clé de visualisation. Une signature de cercle, à l'inverse, est statistique — la confiance de l'observateur est d'environ une sur seize par défaut, et ce chiffre peut se dégrader face à un attaquant qui contrôle le processus de sélection des leurres ou qui possède plusieurs membres du cercle.
Comment elles se combinent dans une vraie transaction Monero
Pour comprendre pourquoi ni l'une ni l'autre ne suffit seule, déroulons un paiement unique. Alice veut envoyer 2 XMR à Bob, dont elle a récupéré l'adresse Monero sur une page de dons publique.
- Le portefeuille d'Alice calcule la sortie furtive. Il génère un scalaire éphémère, exécute le Diffie-Hellman avec le point de clé de visualisation de Bob et dérive une clé publique de destination à usage unique. Cette clé entre dans la liste des sorties de la transaction. Personne, en observant la chaîne, ne peut relier cette sortie à l'adresse publiée de Bob.
- Le portefeuille d'Alice sélectionne le cercle. Pour financer le paiement, Alice doit dépenser l'une de ses sorties antérieures. Son portefeuille choisit cette sortie réelle et quinze leurres dans l'ensemble des sorties récentes et historiques de la chaîne. La sélection des leurres suit une distribution gamma publiée qui imite les schémas de dépense des utilisateurs réels.
- Le portefeuille d'Alice signe avec CLSAG. La signature prouve que l'un des seize membres du cercle a consenti à la dépense. Le vérificateur n'apprend rien sur lequel. L'image de clé jointe à la signature garantit que la sortie réelle ne pourra plus être redépensée.
- Le portefeuille d'Alice masque les montants avec RingCT. Entrées et sorties sont encodées sous forme d'engagements de Pedersen. Les preuves d'intervalle Bulletproofs+ convainquent le réseau qu'aucune sortie ne dépasse le total des entrées, sans jamais révéler les chiffres.
- Le portefeuille de Bob scanne le nouveau bloc. Avec sa clé de visualisation, Bob exécute Diffie-Hellman contre chaque sortie. Quand le calcul correspond au paiement d'Alice, la sortie se révèle. Bob sait alors qu'il a reçu 2 XMR, mais la chaîne elle-même n'affiche qu'un bloc de données opaque.
Retirez l'adresse furtive, et le portefeuille de Bob trouverait toujours le paiement — mais chaque cabinet d'analyse de chaîne aussi : tous les paiements à l'adresse de Bob atterriraient à la même destination, et tout son historique entrant deviendrait public. Retirez la signature de cercle, et la dépense d'Alice pointerait précisément vers une sortie antérieure, exposant le graphe de transactions de son portefeuille. Retirez RingCT, et les montants fuiteraient, rendant les deux autres couches bien plus faciles à désanonymiser par corrélation de valeurs. Chaque couche protège contre un adversaire différent.
Un exemple concret : un swap MoneroSwapper
Prenons un utilisateur qui dépose 0,05 BTC chez MoneroSwapper et reçoit du XMR sur une sous-adresse fraîchement générée dans son portefeuille Feather. Deux registres consignent des parties de cette opération, et ce que chaque observateur voit est instructif.
Côté Bitcoin, l'adresse de dépôt est parfaitement visible. Les outils d'analyse de chaîne — Chainalysis, Elliptic, TRM Labs — l'étiquetteront comme appartenant à un service de swap non custodial si leurs heuristiques connaissent notre schéma de dépôt. Le montant, l'horodatage et les UTXO d'origine sont publics. C'est la norme pour Bitcoin et c'est l'une des raisons pour lesquelles les utilisateurs cherchent Monero en premier lieu. Le moteur de swap envoie le BTC vers un pool de liquidité, et la piste sur la chaîne BTC s'arrête de fait à ce pool. En France, cette transparence présente d'ailleurs une conséquence souvent méconnue : un détenteur de BTC peut se retrouver à devoir documenter chaque mouvement auprès de son centre des impôts au moment de la déclaration annuelle, alors qu'un détenteur de XMR n'a, sur le plan technique, aucun historique exposé à reconstituer.
Côté Monero, le tableau est fondamentalement différent. Notre transaction de paiement crée une sortie furtive associée à la sous-adresse de l'utilisateur. Pour un observateur de la chaîne, la sortie est une clé publique fraîche sans connexion apparente ni avec MoneroSwapper ni avec l'utilisateur. La transaction dépense un cercle de seize, comprenant l'une de nos sorties et quinze leurres, si bien que même notre propre dépense n'est pas identifiable de manière transparente à partir du seul état de la chaîne. RingCT masque le montant exact du paiement. Résultat : même un observateur sachant qu'un swap a eu lieu ne peut prouver quelle transaction Monero précise du bloc concerné était le paiement, ni quelle sous-adresse l'a reçu.
Cette asymétrie — BTC transparent en entrée, XMR opaque en sortie — est tout l'intérêt d'utiliser Monero comme couche de confidentialité plutôt que comme monnaie de paiement de bout en bout pour chaque transaction. L'adresse furtive garantit que la sortie du swap ne peut être reliée à l'adresse de l'utilisateur ; la signature de cercle garantit que notre paiement ne peut être remonté via l'historique de notre hot wallet.
FAQ
Les adresses furtives peuvent-elles être désanonymisées ?
Uniquement par quelqu'un détenant la clé de visualisation de l'adresse destinataire. La clé de visualisation révèle quelles sorties appartiennent à quel portefeuille, mais ne permet pas de les dépenser. Si vous partagez une clé de visualisation avec un tiers — par exemple pour prouver votre solvabilité à un auditeur ou à votre banque dans le cadre d'une déclaration d'actifs numériques — cette partie pourra voir tous vos paiements entrants pour toujours, y compris les paiements passés. Traitez la clé de visualisation comme une donnée sensible, et non comme un « mot de passe en lecture seule » qu'on peut publier sans risque.
Pourquoi Monero a-t-il porté la taille du cercle à 16 ?
Le hardfork Fluorine Fermi d'août 2022 a relevé la taille du cercle de 11 à 16 afin d'élargir l'ensemble d'anonymat par dépense. Seize est à peu près le point d'équilibre où des leurres supplémentaires apportent des gains de confidentialité décroissants pour un coût croissant en taille de transaction. La prochaine génération, FCMP++ (preuves d'appartenance sur la chaîne complète), devrait remplacer les cercles de taille fixe par des preuves portant sur l'intégralité de l'ensemble des sorties, faisant en pratique de l'ensemble d'anonymat la totalité de la chaîne.
Les signatures de cercle vont-elles disparaître avec FCMP++ ?
Oui, à terme. FCMP++ est le successeur prévu de CLSAG pour la confidentialité côté expéditeur et est en développement actif en 2026. Il utilisera une construction cryptographique différente — Curve Trees couplé à une preuve SAL — pour prouver l'appartenance de l'entrée à l'ensemble UTXO complet plutôt qu'à un cercle de 16 membres. Les adresses furtives ne sont pas affectées et resteront en usage. Les deux couches ont toujours été indépendantes, ce qui est précisément la raison pour laquelle on peut mettre à niveau l'une sans toucher à l'autre.
L'une est-elle plus importante que l'autre pour la confidentialité au quotidien ?
Pour recevoir des paiements, l'adresse furtive fait presque tout le travail — sans elle, toute adresse partagée publiquement exposerait chaque paiement jamais reçu. Pour dépenser, la signature de cercle est ce qui empêche le graphe de transactions de votre portefeuille de devenir un registre public. Les deux comptent, mais dans des scénarios différents. Un commerçant français qui accepte Monero s'appuie davantage sur les adresses furtives. Un expéditeur soucieux de confidentialité s'appuie davantage sur les signatures de cercle.
Un service de swap comme MoneroSwapper a-t-il besoin de l'une de mes clés ?
Non. L'utilisateur ne fournit que l'adresse Monero (ou sous-adresse) de destination. Le moteur de swap dérive la sortie furtive de la même manière que n'importe quel expéditeur, sans aucun accès à la clé de dépense ni à la clé de visualisation de l'utilisateur. C'est la raison structurelle pour laquelle les swaps Monero sans KYC sont possibles : rien dans la cryptographie n'exige que le service identifie l'utilisateur, et rien dans la confidentialité de l'utilisateur ne dépend de la capacité du service à garder des secrets.
Conclusion
Les adresses furtives et les signatures de cercle ne sont pas deux noms pour la même chose. Elles résolvent des moitiés opposées du problème de confidentialité — l'une cache où va l'argent, l'autre cache d'où il vient — et elles cèdent face à des modèles de menace différents. Comprendre cette séparation, c'est ce qui sépare le fait de considérer Monero comme une boîte magique du fait de pouvoir réellement raisonner sur sa propre posture de confidentialité. Si vous voulez mettre l'une ou l'autre couche à profit sans vous plonger dans les détails d'implémentation, c'est exactement ce pour quoi MoneroSwapper a été conçu : des swaps anonymes, sans KYC, qui vous livrent à chaque fois une sortie furtive fraîche protégée par un cercle de seize membres.