J’avais compris que si on envoie quelque chose à une adresse de réception l’adresse d’émission se vide entièrement (avec un éventuel crédit vers une autre adresse appartenant au wallet du payeur, pour « rendre la monnaie »)
Ah… oui ! c'est vrai que l'adresse émettrice peut être réapprovisionnée… C’est vrai ! Pheu… ça devient difficile à suivre du coup…
Ouais, c'est pas simple à appréhender mais une fois que t'auras des connaissances solides, tu pourra les utiliser pour extrapoler davantage de fonctionnements.
Alors .... Le point technique concret que tu abordes, c'est la création de transactions Bitcoin.
En fait, une transaction Bitcoin, ça contient une liste d'
inputs et d'
outputs.
Tu va mettre en input une des transactions que tu as reçu par le passé.
Comment référencer un input particulier ? C'est la combinaison de l'identifiant de transaction (txid) avec l'index.
Si je reprend ton précédant exemple avec la transaction
2b703c53226aeee0d3fcc65fe434996f5e1b1f1d603400de9781aea8991fda34 :
(Tu peux utiliser
https://chainquery.com/bitcoin-cli/getrawtransaction pour voir la transaction brute)
Voici les 2 inputs "consommés" par la transaction :
Et ici on a les 2 nouveaux outputs crées :
Plus tard, le propriétaire de bc1qaa7qye5l7m8au40n8s2ym47s8um2639aquj6kl peut créer une transaction où il met en input :
txid : 2b703c53226aeee0d3fcc65fe434996f5e1b1f1d603400de9781aea8991fda34,
vout : 1,
(Le parametre "n" dans la liste des vout, c'est l'index.)
Après tu signes ta transaction, et si les mineurs arrivent à vérifier que la signature de la transaction correspond bien, tu es le propriétaire des adresses dont les inputs sont consommés, bah ta transaction est valide.