
Un UTXO (« Unspent Transaction Output ») désigne une sortie de transaction non dépensée, concept fondamental dans les systèmes de cryptomonnaie.
Dans les réseaux de cryptomonnaie, les sorties de transaction demeurent « non dépensées » tant qu'elles ne sont pas utilisées comme entrées dans de nouvelles transactions. Les UTXO constituent un pilier de l'écosystème crypto, permettant le suivi de la propriété des fonds sur différentes blockchains, Bitcoin étant le cas emblématique.
Les sorties non dépensées agissent comme l'équivalent numérique de la « monnaie rendue » dans une transaction classique.
Par exemple, si vous détenez 1 BTC et souhaitez acheter un bien à 0,1 BTC, vous transférez 0,1 BTC au marchand, et les 0,9 BTC restants forment votre UTXO. Ce montant non dépensé pourra ensuite être utilisé pour d'autres achats ou transferts ultérieurs.
La blockchain conserve l'intégralité des UTXO, accessibles publiquement. Chaque UTXO possède un identifiant unique composé du hash de la transaction précédente et de l'index de sortie dans cette transaction. Cette structure cryptographique garantit la traçabilité et l'intégrité de chaque sortie.
Pour initier une transaction, les utilisateurs sélectionnent un ou plusieurs UTXO comme entrées. Une fois qu'un UTXO est consommé par une transaction, il ne peut plus être réutilisé, ce qui empêche la double dépense et maintient la sécurité du réseau.
Chaque UTXO est rattaché à une adresse unique. Lors de la réception d'un UTXO à l'issue d'une transaction, deux adresses sont généralement visibles : l'une pour le destinataire, l'autre pour la monnaie rendue (« change address »), qui reçoit le solde restant après la transaction principale.
Sur les blockchains utilisant le modèle UTXO, chaque transaction génère de nouveaux UTXO via un processus systématique. Ces UTXO proviennent de transactions antérieures et servent ensuite d'entrées pour les transactions suivantes, formant une chaîne continue de transferts de valeur.
Pour qu'un UTXO existe, il faut d'abord une entrée dans le système, qui référence un UTXO existant pouvant être utilisé dans une transaction. Cette entrée est consommée, et de nouveaux UTXO sont créés en remplacement. Les sorties représentent alors la distribution de la valeur vers différentes adresses.
La création repose sur une vérification cryptographique : seul le propriétaire légitime peut dépenser un UTXO. Ce mécanisme utilise des signatures numériques et la cryptographie à clé publique, l'expéditeur devant fournir une signature valide associée à l'adresse du UTXO. Une fois vérifié, l'ancien UTXO est marqué comme dépensé et de nouveaux UTXO sont générés, assurant la continuité des transactions sur la blockchain.
De nombreux réseaux blockchain utilisent le modèle UTXO pour suivre la propriété des jetons et garantir la précision des contrôles sur les coins. Lorsqu'un utilisateur transfère des Bitcoin, il transmet un ou plusieurs UTXO à la clé publique du destinataire, qui devient alors propriétaire de ces sorties.
Les UTXO sont hébergés sur la blockchain et sont comparables à des pièces physiques dans un système monétaire traditionnel. Une fois un UTXO utilisé dans une transaction, il disparaît du portefeuille, intégrant l'historique de la blockchain de façon immuable. Tout solde restant devient un nouveau UTXO, utilisable lors de futures transactions.
Le fonctionnement des UTXO s'articule en plusieurs étapes : d'abord, le logiciel du portefeuille scanne la blockchain pour inventorier tous les UTXO liés à vos adresses et en cumuler la valeur. Ensuite, lors de la création d'une transaction, le portefeuille sélectionne les UTXO nécessaires pour couvrir le montant et les frais. Enfin, la transaction crée de nouvelles sorties : une pour le destinataire, une potentielle pour la monnaie rendue vers votre adresse. Ce processus garantit transparence, sécurité et précision comptable sur le réseau.
Illustrons l'utilisation des UTXO : un utilisateur souhaite envoyer 3 BTC. Son portefeuille affiche 2 BTC issus d'une transaction antérieure et 1,5 BTC d'une autre transaction. Pour envoyer 3 BTC, il utilise ces deux UTXO comme entrées dans la nouvelle transaction.
À l'issue de la transaction, deux sorties sont créées : le destinataire reçoit 3 BTC, et la différence (3,5 BTC - 3 BTC = 0,5 BTC) revient à l'expéditeur sous forme de nouveau UTXO, jouant le rôle de « monnaie rendue ».
Cet exemple illustre : la possibilité de combiner plusieurs UTXO pour répondre à une transaction, la gestion automatique du rendu, et la création de nouveaux UTXO à chaque opération, tout en consommant les anciens. Ce processus transparent permet à tout utilisateur de vérifier la transaction sur la blockchain, en identifiant précisément les UTXO utilisés et générés.
La consolidation des UTXO consiste à regrouper plusieurs sorties non dépensées en une seule afin de réduire les frais de transaction ou d'améliorer la confidentialité.
Le nombre de UTXO détenus influence directement le coût des transactions : plus il y a de UTXO, plus d'entrées sont requises, ce qui augmente la taille des transactions et donc les frais. La consolidation réduit le nombre d'entrées nécessaires lors des opérations futures, optimisant ainsi les frais et l'efficacité des transactions.
Deux méthodes principales : consolidation manuelle et consolidation automatique.
La consolidation manuelle consiste à créer une nouvelle transaction en rassemblant les UTXO souhaités comme entrées et à vous transférer l'intégralité du montant en une seule sortie. Cette méthode offre un contrôle total sur le choix des UTXO et le moment de la consolidation, permettant de profiter de périodes de faibles frais.
La consolidation automatique s'appuie sur des logiciels de portefeuille qui regroupent régulièrement plusieurs sorties non dépensées en une seule transaction. Ce processus automatisé garantit une gestion efficace du set de UTXO, idéal pour les adresses recevant de nombreux petits paiements.
La consolidation est particulièrement utile pour ceux qui reçoivent beaucoup de petits paiements, car la multiplication de petits UTXO peut rendre les transactions futures coûteuses. Le choix du moment est essentiel : consolider en période de congestion réseau peut entraîner des frais élevés. Une consolidation stratégique lors de périodes de faibles frais permet de réduire les coûts à long terme.
Contrats intelligents indépendants du langage : Les smart contracts basés sur UTXO sont indépendants du langage, offrant aux développeurs une flexibilité pour implémenter des logiques complexes sans contrainte de langage, favorisant ainsi l'innovation sur diverses blockchains.
Prévention de la double dépense : Chaque UTXO ne peut être dépensé qu'une seule fois, assurant la sécurité fondamentale contre la double dépense et protégeant l'intégrité du réseau.
Soutien aux atomic swaps et aux échanges décentralisés : Les UTXO permettent les atomic swaps, facilitant les échanges pair-à-pair entre blockchains sans intermédiaire de confiance, atout clé pour les plateformes d'échange décentralisées.
Avantage en scalabilité : Chaque transaction est indépendante, ce qui permet le traitement en parallèle et améliore le débit réseau. Les systèmes UTXO sont donc potentiellement plus scalables que les modèles de compte.
Confidentialité et sécurité : Le modèle UTXO génère une nouvelle adresse à chaque transaction, compliquant le suivi des flux et renforçant la confidentialité par rapport aux modèles de compte.
Flexibilité : Les UTXO peuvent être divisés en montants arbitraires, permettant aux utilisateurs de gérer et transférer leurs actifs crypto avec précision, pour tous types de cas d'usage, des micropaiements aux transferts importants.
Scalabilité accrue : Le nombre de transactions par seconde dépend surtout de la vitesse réseau, non de la puissance de calcul. La validation parallèle des UTXO autorise la vérification simultanée de multiples transactions, optimisant le débit global.
Confidentialité améliorée : À chaque transaction, une nouvelle adresse est créée, ce qui rend le suivi des activités et le rapprochement des transactions plus difficile pour des observateurs extérieurs.
Authentification simplifiée : Chaque UTXO est traçable jusqu'à son origine, assurant une chaîne de propriété claire et vérifiable, facilitant l'audit tout en préservant la sécurité du réseau.
Transactions hors chaîne : Les UTXO permettent des transactions sécurisées hors chaîne, qui pourront être réglées ultérieurement sur la blockchain, indispensable pour les solutions layer 2 et les canaux de paiement.
Contrats intelligents indépendants du langage : Le modèle UTXO permet la création de smart contracts sans dépendance à un langage spécifique, favorisant l'innovation et l'ouverture aux développeurs.
Frais de transaction potentiellement plus élevés : Chaque UTXO nécessite une signature individuelle, et les transactions comportant de nombreux UTXO sont plus volumineuses et donc plus coûteuses. Les utilisateurs avec de nombreux petits UTXO peuvent faire face à des frais importants lors de la consolidation ou de la dépense.
Accumulation de « poussière » : De petites quantités de cryptomonnaie trop faibles pour être dépensées peuvent s'accumuler (« dust »), occupant de l'espace sans utilité réelle dans le set UTXO.
Inefficacité du stockage : Chaque UTXO doit être conservé dans le set, ce qui augmente les besoins de stockage à mesure que le nombre de transactions et d'utilisateurs croît sur les nœuds complets.
Le modèle UTXO diffère fondamentalement du modèle basé sur les comptes utilisé par les banques et certaines blockchains. Dans le modèle de compte, toutes les transactions se répercutent sur le solde du compte, chaque compte conservant un total mis à jour à chaque opération.
Contrairement à la finance classique, le modèle UTXO considère la monnaie comme des objets distincts et non comme des unités abstraites. Chaque objet possède son propre historique de transaction et peut être dépensé selon les besoins, ce qui favorise la confidentialité, la parallélisation et une vérification claire des transactions.
Le modèle de compte, utilisé par Ethereum notamment, maintient un état global des soldes. Lors d'une transaction, les soldes de l'expéditeur et du destinataire sont mis à jour. Cette approche intuitive et proche de la banque traditionnelle peut toutefois limiter la scalabilité et la confidentialité.
En traitant chaque sortie comme une entité indépendante, le modèle UTXO permet une validation parallèle des transactions : plusieurs opérations sont vérifiables simultanément tant qu'elles ne tentent pas de dépenser le même UTXO. Cette organisation rend les systèmes UTXO plus scalables et efficaces pour les transferts simples.
Les UTXO occupent une place centrale dans le fonctionnement de Bitcoin et d'autres cryptomonnaies, constituant l'ossature du système transactionnel. Lors d'une transaction Bitcoin, les sorties non dépensées signalent au réseau la quantité exacte de monnaie numérique transférée, créant un registre immuable du flux de valeur.
D'autres blockchains, comme Cardano, ont étendu ce principe avec le modèle eUTXO (« Extended UTXO »), ajoutant la prise en charge de données arbitraires et de logiques de smart contracts avancées. Cette évolution conserve les avantages du modèle UTXO tout en rendant possibles des applications décentralisées sophistiquées.
L'utilité des UTXO va au-delà du simple transfert : ils permettent des fonctionnalités telles que les canaux de paiement, les atomic swaps et les schémas multi-signatures complexes. Leur transparence et leur vérifiabilité en font une option idéale pour des cas nécessitant des audits clairs et une propriété prouvée. Le modèle UTXO reste ainsi un élément clé pour des systèmes crypto sécurisés, scalables et respectueux de la confidentialité, même à mesure que la technologie blockchain évolue.
Le développement continu des systèmes UTXO confirme leur pertinence dans l'écosystème crypto. De la version originale de Bitcoin au modèle étendu de Cardano, les UTXO constituent une base robuste et flexible pour bâtir des systèmes financiers décentralisés axés sur la sécurité, la transparence et le contrôle des utilisateurs.
Un UTXO est une unité de valeur indépendante sur la blockchain Bitcoin, qui ne peut être dépensée qu'une seule fois. Chaque transaction consomme des UTXO existants comme entrées et génère de nouveaux UTXO en sortie. Ce mécanisme assure que chaque bitcoin n'est dépensé qu'une fois, empêchant la double dépense et garantissant l'intégrité des transactions.
Le modèle UTXO suit les sorties non dépensées, offrant plus de confidentialité et de traitement parallèle, mais avec davantage de complexité. Le modèle de compte simplifie la gestion via le suivi des soldes, facilite le développement, mais réduit la confidentialité.
Lorsqu'un UTXO est dépensé, il est totalement consommé dans la transaction : il ne peut pas être dépensé partiellement. Le montant total est réparti entre le destinataire et les frais, et tout solde est envoyé à une adresse de rendu sous forme de nouveau UTXO.
Bitcoin privilégie le modèle UTXO car il gère plus efficacement la concurrence sur les données : chaque transaction traite des UTXO indépendants et non un solde unique, ce qui optimise le traitement parallèle et la sécurité.
Le nombre d'entrées UTXO influe directement sur la taille et le coût des transactions. Pour optimiser, il est conseillé de consolider les petits UTXO en sorties plus importantes afin de réduire les frais globaux.
Les portefeuilles utilisent des logiciels spécialisés pour surveiller les sorties non dépensées. La fragmentation UTXO survient lorsque de nombreuses petites transactions génèrent des sorties fragmentées, ce qui augmente les frais et diminue l'efficacité du portefeuille.
Bitcoin, Litecoin et Zcash fonctionnent selon le modèle UTXO. Ethereum, Ripple et Solana adoptent le modèle de compte. UTXO suit les sorties non dépensées ; le modèle de compte gère directement les soldes.











