Les mathématiques du Bitcoin – La blockchain – La startup
2.1 – Transactions
Avant de pouvoir effectuer une transaction, nous devons d’abord générer notre Clé publique, Clé privée, et adresse publique. Ce processus sera démontré dans la partie 3. Ceux-ci nous permettent de recevoir, envoyer et valider les transactions Bitcoin en utilisant cryptographique fonctions de hachage et le ECDSA (Algorithme de signature numérique à courbe elliptique).
Une transaction consiste en un transfert de Bitcoin d’une ou plusieurs entrées vers une ou plusieurs sorties. L’image ci-dessus nous montre le processus d’une transaction, chaque boîte plus grande représentant une transaction distincte. Pour créer une nouvelle transaction, nous utilisons le clé publique du bénéficiaire (Propriétaire 2) et le entrées de transaction précédentes (transactions dans lesquelles l’utilisateur a reçu son Bitcoin) pour créer un hachage. Pour vérifier que cette transaction provient d’eux, l’expéditeur (propriétaire 1) utilise leur clé privée à signer; approuver la transaction. Le bénéficiaire peut également vérifier que l’expéditeur a le droit de dépenser la valeur de la transaction en utilisant le expéditeurs clé publique à valider la signature (surlignée en vert).
Comme toutes les transactions sont rendues publiques, nous pouvons trouver les détails des transactions publiquement en ligne comme indiqué ci-dessous. Comme nous pouvons le voir en haut, les transactions reçoivent une valeur de transaction unique en tant que Hachage 256 bits qui est utilisé pour identifier et valider la transaction de manière unique. Ce hachage est calculé en exécutant le code de transaction via le Algorithme SHA-256 (partie 4).
La transaction contient les données suivantes:
- Taille: La taille de la transaction en octets
- Tarif: Le montant facturé pour la transaction par Ko (payé au mineur)
- Temps reçu / temps miné: Heure de confirmation de la transaction
- Inclus dans le bloc: Le hachage du bloc dans lequel la transaction est incluse
Dans la section «Détails», nous pouvons voir les entrées et sorties de la transaction. À gauche, les entrées indiquent les transactions envoyées à l’adresse de l’expéditeur qui ont le droits de dépenser. Le côté droit montre l’adresse à laquelle l’expéditeur a envoyé des fonds. Dans ce cas, l’expéditeur a envoyé 2.484822 BTC à une seule adresse (S = dépensé). La totalité de l’entrée est envoyée et le montant restant après déduction des frais est remboursé à l’expéditeur, comme le montre la 2e sortie de 4,835 BTC (U = non dépensé).
La transaction est ensuite diffusée sur le réseau et ajoutée à un ‘bassin’ de transactions, prêt à être ajouté à un bloquer. Cette transaction ayant déjà été ajoutée à un bloc, nous pouvons voir «2 confirmations» qui est le nombre de nœuds qui ont confirmé la validité du bloc de transactions. Cette valeur est faible car ce bloc est nouveau et n’a pas encore été reçu par de nombreux nœuds.