Blog Noisseva
Série: Fonctionnement

Double dépense : le problème que Bitcoin devait résoudre

La double dépense est le risque de réutiliser le même morceau numérique dans deux paiements. Bitcoin le limite avec UTXO, blocs, preuve de travail et confirmations.

13 minDébutantMis à jour le 29/07/2026

Article pédagogique uniquement. Il ne constitue pas un conseil financier, fiscal, juridique ou un conseil en investissement.

L’essentiel

  • La double dépense est le risque de dépenser deux fois la même unité numérique, comme si la même noisette était promise à deux personnes.
  • Dans Bitcoin, une transaction dépense des sorties non dépensées, les UTXO. Une même sortie ne peut être acceptée qu’une seule fois dans la chaîne.
  • Avant confirmation, deux transactions conflictuelles peuvent circuler. Le réseau ne retient durablement que celle inscrite dans la chaîne valide suivie par les nœuds.
  • La preuve de travail rend coûteuse la réécriture de l’historique. Chaque confirmation ajoute une couche de sécurité pratique.
  • Le risque n’est pas magique ni impossible dans tous les contextes. Il se gère avec des confirmations adaptées au montant et au risque.
Illustration Noisette Academy montrant deux chemins de noisettes qui tentent de dépenser la même noisette, puis un registre forestier qui ne valide qu’un seul chemin, sans texte visible.

Définition simple: la double dépense, c’est vouloir utiliser deux fois la même pièce numérique

La double dépense est un problème propre aux objets numériques: une information peut être copiée beaucoup plus facilement qu’une pièce physique. Si tu envoies une photo à deux amis, chacun reçoit une copie. Si tu fais la même chose avec une monnaie numérique, le système doit empêcher que la même unité serve à payer deux personnes.

Le glossaire du Bitcoin Developer Guide définit une double dépense comme une transaction qui utilise la même entrée qu’une transaction déjà diffusée. Dit simplement: deux messages essaient de dépenser le même morceau de bitcoins.

Le livre blanc Bitcoin: A Peer-to-Peer Electronic Cash System présente ce problème dès le résumé. Les signatures numériques prouvent qui peut transférer une pièce électronique, mais elles ne suffisent pas si personne ne vérifie qu’une ancienne propriétaire n’a pas signé deux dépenses concurrentes.

Pourquoi le numérique complique la monnaie

Avec une pièce métallique, Noisette ne peut pas donner exactement la même noisette à Pistache et à Nestor en même temps. Une fois la noisette dans la patte de Pistache, elle n’est plus dans sa réserve. Le monde physique impose une rareté visible.

Avec un fichier, c’est différent. Copier ne coûte presque rien. Si une monnaie numérique naïve était seulement un fichier signé, un fraudeur pourrait essayer d’envoyer une version à un vendeur, puis une autre version à quelqu’un d’autre. Les deux copies auraient l’air crédibles si on ne regarde pas l’historique commun des dépenses.

Le livre blanc de Satoshi explique que la solution classique consiste à utiliser une autorité centrale, souvent appelée mint dans le document, qui voit toutes les transactions et décide laquelle est arrivée en premier. Bitcoin cherche une autre voie: rendre les transactions publiques pour le réseau et créer un mécanisme de consensus.

Le rôle des UTXO: Bitcoin ne dépense pas un solde abstrait

Pour comprendre la double dépense, il faut éviter l’image du compte bancaire. Le Bitcoin Developer Guide, section Transactions, explique qu’une transaction possède des entrées et des sorties. Chaque entrée dépense des satoshis reçus dans une sortie précédente. Une sortie attend ensuite d’être dépensée plus tard comme UTXO.

Une UTXO est donc un morceau disponible. Si ton portefeuille affiche un solde, il additionne plusieurs morceaux. Quand il envoie un paiement, il choisit certains morceaux comme entrées, crée une sortie pour le destinataire, et parfois une sortie de rendu pour toi.

Le Bitcoin Developer Guide, section Block Chain, précise qu’une sortie d’une transaction particulière ne peut être utilisée comme entrée qu’une seule fois dans la chaîne. Toute référence suivante à la même sortie est une double dépense interdite.

ÉlémentImage simpleRègle Bitcoin
UTXOUn sachet de noisettes encore ferméPeut être utilisé comme entrée d’une transaction
Transaction valideUn sachet ouvert une seule foisDépense des UTXO disponibles et crée de nouvelles sorties
Double dépenseDeux personnes essaient d’ouvrir le même sachetDeux transactions utilisent la même entrée
Chaîne confirméeLe carnet officiel de la forêtNe garde qu’une histoire cohérente des sorties dépensées

Ce qui se passe quand deux transactions se contredisent

Supposons que Bogue possède une UTXO de 20 000 sats. Il prépare une transaction qui envoie ces 20 000 sats à Pistache. Puis il prépare une autre transaction qui essaie d’utiliser la même UTXO pour payer Amande. Les deux messages ne peuvent pas être vrais ensemble.

Au niveau local, un nœud qui voit déjà une dépense peut refuser de relayer une transaction conflictuelle selon ses règles de mempool. Mais la mempool n’est pas un tribunal mondial unique. Le Bitcoin Design Guide rappelle qu’une transaction diffusée entre dans la memory pool et reste à zéro confirmation tant qu’elle n’est pas minée.

C’est pour cela que zéro confirmation ne veut pas dire règlement final. Un commerçant qui accepte un paiement non confirmé accepte un risque. Pour un petit café, ce risque peut être jugé faible. Pour une voiture, attendre plusieurs confirmations devient beaucoup plus raisonnable.

La solution de Bitcoin: un ordre public des transactions

Le livre blanc résume la solution: les transactions doivent être publiquement annoncées, et les participants doivent s’accorder sur une seule histoire de l’ordre dans lequel elles ont été reçues. Bitcoin ne demande pas à un serveur central de tenir cet ordre. Il utilise un réseau pair-à-pair, des blocs et de la preuve de travail.

Dans la pratique, les nœuds vérifient les règles. Les mineurs rassemblent des transactions valides dans des blocs candidats. Lorsqu’un bloc valide est trouvé et accepté, les transactions qu’il contient obtiennent une première confirmation. Une transaction conflictuelle qui essaie de dépenser les mêmes entrées ne peut pas coexister dans la même chaîne valide.

Mastering Bitcoin décrit le point clé: dans le protocole Bitcoin, une transaction est valide seulement si elle dépense des sorties antérieures et si aucune transaction précédente dans la même chaîne n’a déjà dépensé ces mêmes sorties. L’ordre topologique des transactions élimine deux dépenses valides du même morceau dans une chaîne donnée.

Pourquoi la preuve de travail change le coût de la triche

La preuve de travail ne sert pas seulement à créer de nouveaux bitcoins. Elle sert à rendre l’historique coûteux à modifier. Le guide Block Chain explique que changer une transaction déjà incluse impose de modifier le bloc qui la contient et tous les blocs suivants.

Dans le livre blanc, les nœuds acceptent la chaîne avec la plus grande preuve de travail comme preuve de ce qui s’est passé. Si une personne veut remplacer une transaction confirmée par une double dépense, elle doit refaire assez de travail pour rattraper puis dépasser la chaîne honnête. Plus il y a de confirmations, plus le coût attendu augmente.

Cela ne veut pas dire que Bitcoin efface toute notion de risque. Le document de Satoshi parle d’une sécurité tant que la majorité de la puissance de calcul est contrôlée par des nœuds honnêtes. Une attaque dite 51 pour cent reste un scénario théorique important à comprendre: elle pourrait réorganiser l’historique récent, mais elle coûte cher et ne permet pas de voler des pièces sans clés privées.

Confirmations: attendre que l’histoire se solidifie

Une confirmation signifie que la transaction est incluse dans un bloc. Deux confirmations signifient qu’un autre bloc a été ajouté au-dessus. Le Bitcoin Design Guide indique qu’une transaction avec une confirmation peut revenir à zéro en cas de réorganisation courte, et que plusieurs confirmations réduisent ce risque pratique.

L’image Noisette: une noisette posée sur une étagère peut encore tomber. Une noisette enfermée dans une boîte, puis dans cinq autres boîtes empilées, devient beaucoup plus difficile à récupérer sans refaire tout l’empilement. Les confirmations sont des couches d’effort ajoutées au-dessus de la transaction.

Il n’existe pas une règle universelle valable pour tous les paiements. Un service peut accepter moins de confirmations pour un petit montant, et en demander plus pour un montant élevé. Le bon réflexe débutant consiste à distinguer visibilité, inclusion dans un bloc et sécurité pratique.

ÉtatCe que cela signifieRéflexe prudent
Diffusée, 0 confirmationDes nœuds l’ont vue, mais elle n’est pas dans un blocNe pas la traiter comme finale pour un montant important
1 confirmationElle est incluse dans un bloc valideDéjà plus robuste, mais une réorganisation courte reste possible
Plusieurs confirmationsDes blocs supplémentaires s’ajoutent au-dessusLe coût d’une réécriture augmente fortement
Conflit détectéDeux transactions dépensent la même entréeAttendre la chaîne confirmée, ne pas se fier à la première vue

Ce que la double dépense n’est pas

La double dépense ne signifie pas que quelqu’un peut cloner tous les bitcoins. Elle concerne une tentative de faire accepter deux dépenses concurrentes des mêmes entrées. Les règles de validation et la chaîne confirmée empêchent que les deux deviennent valides ensemble dans l’historique suivi par les nœuds.

Elle ne signifie pas non plus que Bitcoin serait “piraté” dès qu’une transaction non confirmée disparaît. Une transaction peut être remplacée, abandonnée, ou ne jamais être minée si les frais sont insuffisants. Le sujet de la double dépense concerne surtout le conflit entre deux dépenses incompatibles.

Enfin, elle ne donne pas accès à la clé privée du destinataire. Même un attaquant très puissant ne peut pas signer à la place d’un autre utilisateur sans sa clé. Une attaque d’historique vise l’ordre des transactions, pas la cryptographie de base du portefeuille.

  • Confondre une transaction vue en mempool avec une transaction confirmée.
  • Croire que deux explorateurs voient toujours exactement la même mempool.
  • Penser que les confirmations sont utiles seulement aux plateformes, alors qu’elles protègent toute réception sensible.
  • Imaginer qu’une attaque 51 pour cent permet de créer des bitcoins illimités, ce qui reste interdit par les règles validées par les nœuds.
  • Accepter de gros montants sans politique d’attente adaptée.

Conclusion: Bitcoin transforme un problème de copie en problème de consensus

La double dépense est le défi central de la monnaie numérique: empêcher que le même morceau soit utilisé deux fois sans confier tout le système à un arbitre central. Bitcoin répond avec des transactions publiques, des UTXO, des nœuds qui vérifient les règles, des mineurs qui ordonnent les transactions en blocs et une preuve de travail qui rend l’historique coûteux à réécrire.

Pour un débutant, la phrase à retenir est simple: une même UTXO ne peut être dépensée qu’une fois dans la chaîne valide suivie par les nœuds. Avant confirmation, il peut exister des messages concurrents. Après inclusion dans un bloc puis plusieurs confirmations, l’histoire devient de plus en plus robuste.

C’est ce qui rend Bitcoin différent d’un simple fichier que l’on copierait. La rareté numérique ne vient pas d’un fichier impossible à copier. Elle vient d’un réseau qui accepte une seule histoire cohérente des dépenses.

Questions fréquentes

Questions fréquentes sur la double dépense Bitcoin

La double dépense est-elle encore possible avec Bitcoin ?

Une tentative peut exister, surtout avant confirmation. Le point important est que deux transactions conflictuelles ne peuvent pas rester valides ensemble dans la chaîne confirmée suivie par les nœuds.

Pourquoi attendre des confirmations ?

Parce qu’une transaction à zéro confirmation n’est pas encore ancrée dans un bloc. Chaque confirmation ajoute du travail au-dessus de la transaction et rend une réorganisation plus coûteuse.

Une attaque 51 pour cent permet-elle de voler les bitcoins des autres ?

Non, elle ne donne pas les clés privées des autres utilisateurs. Elle peut viser une réorganisation de transactions récentes ou empêcher certaines confirmations, ce qui est différent d’une signature frauduleuse.

La mempool est-elle le registre officiel ?

Non. La mempool est l’ensemble local des transactions non confirmées vues par un nœud. Le registre robuste est la chaîne de blocs validée.

Quel lien avec les UTXO ?

Une double dépense essaie de réutiliser une même sortie non dépensée comme entrée dans deux transactions incompatibles. Le modèle UTXO rend ce conflit vérifiable.

Testez votre compréhension

Mini quiz: double dépense

Sélectionne une réponse par question. Le résultat s'affiche après chaque réponse.

0/3 répondues · 0 noisettes

Question 1

Quel est le cœur du problème de double dépense ?

Question 2

Dans Bitcoin, quel objet ne doit être dépensé qu’une seule fois ?

Question 3

Pourquoi les confirmations réduisent-elles le risque pratique ?

Continuer avec Noisette Academy

Articles liés recommandés

Sources et repères

  1. 1. Bitcoin: A Peer-to-Peer Electronic Cash System

    Formulation originale du problème de double dépense et solution par réseau pair-à-pair, horodatage et preuve de travail.

  2. 2. Bitcoin Developer Guide, Block Chain

    Registre public, UTXO, interdiction de réutiliser une sortie, preuve de travail, forks et chaîne la plus difficile à recréer.

  3. 3. Bitcoin Developer Guide, Transactions

    Entrées, sorties, UTXO, txid, signature et propagation de transactions.

  4. 4. Bitcoin Developer Glossary, Double spend

    Définition concise de la double dépense comme transaction utilisant la même entrée qu’une transaction déjà diffusée.

  5. 5. Mastering Bitcoin, Mining and Consensus

    Mining comme mécanisme de consensus et ordre topologique empêchant deux dépenses valides de la même sortie.

  6. 6. Bitcoin Design Guide, Transactions

    Cycle utilisateur: création, signature, diffusion, mempool, validation et confirmations.

  7. 7. Bitcoin.com, What is the double-spend problem

    Signal SERP francophone: besoin de définition simple pour débutants.