Comment fonctionnent les transactions en bitcoins ?

Comment fonctionne réellement le processus des transactions de bitcoins ? Dans cet article, nous vous expliquons de manière détaillée le processus et les différents termes tels que les récompenses des mineurs, les nonces et les UTXO.

Feb 08, 2024
|

How Btc Transactions Work Kv

Principaux enseignements :

Une transaction en bitcoins comporte plusieurs étapes qui se déroulent de manière invisible une fois que l’utilisateur a confirmé l’envoi de la transaction :

  • Création d’une nouvelle adresse Bitcoin unique.
  • Envoi du paiement.
  • Vérification de la transaction.
  • Encodage des informations dans un nouveau bloc.
  • Validation des paiements en utilisant uniquement les sorties de transactions non dépensée (UTXO) comme entrées.

Pour en savoir plus sur le réseau Bitcoin, lisez l’article Qu’est-ce que Bitcoin ? Un guide complet pour les débutants en cryptomonnaie..

Quelles sont les étapes du processus des transactions en bitcoins ?

Voici un scénario pour présenter les procédures des transactions sur le réseau Bitcoin :

Bob, un commerçant en ligne, décide d’accepter les paiements en bitcoins.

Alice, une cliente, possède des bitcoins et souhaite acheter des marchandises à Bob.

Les portefeuilles sont des fichiers qui permettent d’accéder à plusieurs adresses Bitcoin. Une adresse est une chaîne de lettres et de chiffres, telle que : 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN. Chaque adresse possède son propre solde de bitcoins et les utilisateurs peuvent créer autant d’adresses qu’ils le souhaitent. Les adresses sont en quelque sorte des comptes bancaires qui fonctionnent de manière légèrement différente.

Création d’une nouvelle adresse

Le logiciel client Bitcoin génère des adresses Bitcoin pour les utilisateurs. Lorsque Bob crée une nouvelle adresse, il génère en réalité une « paire de clés cryptographiques », composée d’une clé privée (que seul l’utilisateur connaît) et d’une clé publique (visible par tous).

Lorsqu’un utilisateur signe un message à l’aide d’une clé privée, il peut vérifier la validité de ce message en utilisant la clé publique correspondante. La nouvelle adresse Bitcoin de Bob possède une clé publique unique, et la clé privée correspondante est stockée dans son portefeuille. La clé publique permet à quiconque de vérifier qu’un message signé avec la clé privée est valide.

Envoi d’un paiement

Le portefeuille d’Alice contient les clés privées de chacune de ses adresses. Elle indique à son client Bitcoin qu’elle souhaite transférer des bitcoins vers l’adresse de Bob. Le client Bitcoin signe alors la demande de transaction d’Alice avec la clé privée de l’adresse à partir de laquelle elle transfère des bitcoins. N’importe qui sur le réseau peut maintenant utiliser la clé publique d’Alice pour vérifier que la demande de transaction provient bien du propriétaire légitime du compte.

En d’autres termes :

La clé publique est utilisée pour recevoir des bitcoins.

La clé privée est utilisée pour signer les transactions permettant de dépenser ces bitcoins.

Lorsqu’une personne dépense ses bitcoins, elle présente sa clé publique et sa signature numérique pour effectuer une transaction en bitcoins. La transaction est signée numériquement au moyen d’une clé privée, qui confirme l’autorisation de dépenser les fonds concernés par la transaction.

Grâce à la clé publique et à la signature numérique, tous les membres du réseau Bitcoin peuvent vérifier et reconnaître la validité de la transaction, confirmant ainsi que la personne qui transfère les bitcoins en était propriétaire au moment du transfert.

Les récompenses pour la vérification des transactions : le gagne-pain des mineurs

Prenons l’exemple de Gary, Glenn et George, qui sont des mineurs de bitcoins. Leurs ordinateurs regroupent les transactions des 10 dernières minutes dans un nouveau bloc de transactions. Chaque bloc comprend une transaction « coinbase » qui distribue des bitcoins au mineur gagnant, en l’occurrence Gary. Une nouvelle adresse est créée dans le portefeuille de Gary avec le solde des bitcoins fraîchement émis.

En outre, les mineurs sont rémunérés grâce aux frais payés par les utilisateurs qui effectuent des transactions. Ces frais encouragent le mineur à enregistrer la transaction dans son bloc.

Qu’est-ce que le halving Bitcoin et comment affecte-t-il les récompenses des mineurs ? Consultez cet article.

Déroulement d’une transaction

  • La transaction est transmise au réseau Bitcoin, où chaque participant la valide et la diffuse jusqu’à ce qu’elle atteigne la quasi-totalité des nœuds du réseau.
  • La transaction est vérifiée par un nœud minier et intégrée dans un bloc de transactions enregistré dans la blockchain.
  • Une fois enregistrée sur la blockchain et confirmée par un nombre suffisant de blocs ultérieurs, la transaction est intégrée de manière permanente dans le registre distribué public de Bitcoin et est reconnue comme valide par tous les participants.
  • Le nouveau propriétaire peut alors dépenser les bitcoins qu’il a reçus lors de la transaction.

Encodage de l’information dans un bloc : le hachage cryptographique

C’est l’encodage cryptographique qui rend la blockchain si sûre. Les fonctions de hachage cryptographique transforment un ensemble de données en une chaîne alphanumérique de longueur fixe, appelée valeur de hachage.

Même des changements minimes dans les données d’origine modifieront radicalement la valeur de hachage obtenue. Il est pratiquement impossible de prédire quel ensemble de données initiales créera une valeur de hachage spécifique.

Voici un exemple :

Cryptographic hashes

Les nonces

Pour créer différentes valeurs de hachage à partir des mêmes données, Bitcoin utilise des nonces. La modification du nonce entraîne une valeur de hachage très différente.

Cryptographic Hashes Noncesjun29

Les ordinateurs de minage calculent de nouvelles valeurs de hachage en combinant la valeur de hachage précédente, le nouveau bloc de transaction et un nonce. La création de hachages est une opération triviale sur le plan informatique, mais le système Bitcoin exige que la nouvelle valeur de hachage ait une forme particulière. Elle doit notamment commencer par un certain nombre de zéros.

Les mineurs n’ont aucun moyen de prédire quel nonce produira une valeur de hachage avec le nombre requis de zéros initiaux. Ils sont donc obligés de générer de nombreux hachages avec différents nonces jusqu’à ce qu’ils trouvent celui qui convient.

Mais qu’en est-il de la transaction d’Alice dans le nonce ?

Pendant ce temps, le transfert d’Alice à Bob est enfoui parmi d’autres transactions plus récentes. Pour modifier les informations, il faudrait refaire le travail que Gary a déjà effectué (car toute modification nécessite un nonce gagnant complètement différent), puis refaire le travail de tous les mineurs suivants, ce qui est pratiquement impossible.

Sortie de transaction non dépensée (UTXO)

Avant de parler des sorties de transactions non dépensées (UTXO), il est nécessaire de connaître l’entrée et la sortie des transactions en bitcoins.

Entrée

Une entrée est une référence à une sortie d’une transaction précédente. Toutes les valeurs d’entrée de la nouvelle transaction (la valeur totale crypto des sorties précédentes référencées par les entrées de la nouvelle transaction) sont additionnées et le total (moins les frais de transaction) est entièrement utilisé par les sorties de la nouvelle transaction.

Une transaction comprend souvent plusieurs entrées.

Sortie

Une sortie contient des instructions pour envoyer des bitcoins. Une sortie de transaction inclut la valeur de cette sortie lorsqu’elle est réclamée.

Sortie de transaction non dépensée (UTXO)

Étant donné que chaque sortie d’une transaction ne peut être dépensée qu’une seule fois, les sorties de toutes les transactions incluses dans la blockchain peuvent être considérées comme des sorties de transaction non dépensées (UTXO) ou des sorties de transaction dépensées. Pour qu’une transaction soit valide, elle ne doit utiliser que des UTXO comme entrées.

Unspent Transaction Outputjun29

Le schéma ci-dessus montre les principaux éléments d’une transaction en bitcoins. Chaque transaction comporte au moins une entrée et une sortie, et chaque entrée dépense les satoshis payés à une sortie précédente. Chaque sortie est ensuite mise en attente en tant qu’UTXO jusqu’à ce qu’une entrée ultérieure la dépense. Lorsque le portefeuille Bitcoin d’un utilisateur indique un solde de 10 000 satoshis, cela signifie en fait qu’il a 10 000 satoshis en attente dans un ou plusieurs UTXO.

UTXO pendant les transactions

Imaginons que quelqu’un ait utilisé l’adresse 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN pour recevoir des bitcoins deux fois auparavant. La transaction du 5 février 2019 contient 4 000 satoshis, et la transaction du 9 mars 2019 contient 6 000 satoshis. La blockchain Bitcoin ne va pas les additionner le solde de manière à ce qu’il existe un enregistrement contenant 10 000 satoshis sur l’adresse 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN. Au lieu de cela, chaque fois qu’un utilisateur souhaite dépenser ses bitcoins, il doit déverrouiller une à une les transactions qui lui appartiennent (avec des bitcoins envoyés à sa clé publique).

Par exemple, pour envoyer 3 000 satoshis, il suffit de déverrouiller soit la transaction datée du 5 février 2019, soit celle datée du 9 mars 2019, car elles contiennent toutes deux plus de 3 000 satoshis.

Mais pour envoyer 8 000 satoshis, il faut débloquer les deux transactions pour dépenser tous les bitcoins dans une nouvelle transaction, car les dépenses partielles ne sont pas autorisées. L’utilisateur doit utiliser tous les bitcoins qu’il a débloqués. S’il avait l’intention d’envoyer seulement 8 000 satoshis, il doit encore dépenser 10 000 satoshis dans la nouvelle transaction, puis renvoyer 2 000 satoshis à une adresse qui lui appartient.

Cet article est une introduction au trading de bitcoins.

Conclusion : payer avec des bitcoins

Bien que les transactions en bitcoins fonctionnent de manière transparente, les paiements en bitcoins effectués pour les transactions quotidiennes sont toujours freinés par la lenteur des transactions. Pourtant, effectuer des paiements avec des bitcoins est l’une des principales fonctionnalités du BTC envisagée par Satoshi Nakamoto dans le livre blanc de Bitcoin. La couche 2 de Bitcoin, appelée Lightning Network, apporte actuellement une solution à ce problème de scalabilité.

En savoir plus sur les paiements quasi-instantanés en bitcoins grâce au Lightning Network.

Faites preuve de vigilance et effectuez vos propres recherches

Tous les exemples mentionnés dans cet article sont donnés à titre d’information uniquement. Vous ne devez pas interpréter ces informations ou d’autres documents comme des conseils juridiques, fiscaux, d’investissement, financiers, de cybersécurité ou autres. Aucun élément contenu dans cet article ne constitue une sollicitation, une recommandation, une approbation ou une offre par Crypto.com d’investir, d’acheter ou de vendre des devises, des tokens ou d’autres actifs cryptographiques. Les revenus provenant de l’achat et de la vente d’actifs cryptographiques peuvent être assujettis à l’impôt, y compris l’impôt sur les gains en capital, dans votre juridiction. Toute description des produits ou des fonctionnalités de Crypto.com n’est faite qu’à titre d’illustration et ne constitue pas une approbation, une invitation ou une sollicitation.

Les performances antérieures ne constituent pas une garantie ou un indicateur des performances futures. La valeur des cryptoactifs peut augmenter ou diminuer, et vous pourriez perdre la totalité ou une grande partie de vos achats. Lorsque vous analysez un actif crypto, il est essentiel que vous effectuiez vos recherches et que vous fassiez preuve de diligence afin de prendre la meilleure décision possible, car tout achat relève de votre seule responsabilité.

Tags

bitcoin

crypto

cryptocurrencies

hashes

nonces

payments

transactions

UTXO

Partager avec des amis

Prêt à commencer votre aventure crypto ?

Obtenez votre guide étape par étape pour ouvrir un compte sur Crypto.com

En cliquant sur le bouton "Commencer", vous reconnaissez avoir lu l'Avis de confidentialité de Crypto.com dans lequel nous expliquons comment nous utilisons et protégeons vos données personnelles.
Mobile phone screen displaying total balance with Crypto.com App

Common Keywords: 

Ethereum / Dogecoin / Dapp / Tokens