Comment fonctionnent les transactions en Bitcoins ?

Comment expliquer le fonctionnement des transactions Bitcoins ?

Si je veux vous envoyer une partie de mon bitcoin, je publie mon intention et les noeuds balaient tout le réseau bitcoin pour valider que 1) j’ai le bitcoin que je veux envoyer, et 2) je ne l’ai pas déjà envoyé à quelqu’un d’autre. Une fois ces informations confirmées, ma transaction est incluse dans un « bloc » qui est attaché au bloc précédent – d’où le terme « blockchain ». Les transactions ne peuvent pas être annulées ou trafiquées, car cela reviendrait à refaire tous les blocs qui suivent.

Qu’en est-il de la version plus compliquée ?

Mon portefeuille bitcoin ne contient pas mon bitcoin. Ce qu’il fait est contenir mon adresse bitcoin, qui tient un registre de toutes mes transactions, et donc mon solde. Cette adresse – une longue chaîne de 34 lettres et chiffres – est aussi connue sous le nom de « clé publique ». Cela ne me dérange pas que le monde entier puisse voir cette séquence. Chaque adresse / clé publique a une « clé privée » correspondante de 64 lettres et chiffres. C’est privé, et il est crucial que je le garde secret et en sécurité. Les deux clés sont liées, mais il n’y a aucun moyen de comprendre ma clé privée à partir de ma clé publique.

C’est important car toute transaction que j’effectue à partir de mon adresse bitcoin doit être « signée » avec ma clé privée. Pour ce faire, j’ai mis ma clé privée et les détails de la transaction (combien de bitcoins je veux envoyer, et à qui) dans le logiciel bitcoin sur mon ordinateur ou mon smartphone.

Avec cette information, le programme crache une signature numérique, qui est envoyée au réseau pour validation.

Cette transaction peut être validée – c’est-à-dire qu’il peut être confirmé que je possède le bitcoin que je vous transfère et que je ne l’ai pas déjà envoyé à quelqu’un d’autre – en branchant la signature et ma clé publique) dans le programme bitcoin. C’est l’une des grandes parties de bitcoin : si la signature a été faite avec la clé privée qui correspond à cette clé publique, le programme validera la transaction, sans connaître la clé privée. Très intelligent.

Le réseau confirme alors que je n’ai pas encore passé le bitcoin en parcourant mon historique d’adresses, ce qu’il peut faire parce qu’il connaît mon adresse (= ma clé publique), et parce que toutes les transactions sont publiques sur le registre bitcoin.

Et si on va encore plus loin ?

Une fois que ma transaction a été validée, elle est incluse dans un « bloc », avec un tas d’autres transactions.

Un petit détour pour discuter de ce qu’est un « hash », parce qu’il est important pour le paragraphe suivant : un hash est produit par une « fonction hash », une équation mathématique complexe qui réduit toute quantité de texte ou de données à une chaîne de 64 caractères. Ce n’est pas aléatoire – chaque fois que vous placez ce jeu de données dans la fonction de hachage, vous obtenez la même chaîne de 64 caractères. Mais si vous changez autant qu’une virgule, vous obtiendrez une chaîne de 64 caractères complètement différente. Cet article entier pourrait être réduit à un hachage, et à moins que je change, supprime ou ajoute quelque chose au texte, le même hachage peut être produit encore et encore. C’est un moyen très efficace de savoir si quelque chose a changé et comment la chaîne de blocage peut confirmer qu’une transaction n’a pas été trafiquée.

Retour à nos blocs : chaque bloc inclut, dans ses données, un hachage du bloc précédent. Cela fait partie d’une chaîne, d’où le terme « blockchain ». Ainsi, si une petite partie du bloc précédent a été falsifiée, le hachage du bloc courant devrait changer (rappelez-vous qu’un petit changement dans l’entrée de la fonction hachage change la sortie). Donc, si vous voulez changer quelque chose dans le bloc précédent, vous devez aussi changer quelque chose (= hachage) dans le bloc courant, parce que celui qui est actuellement inclus n’est plus correct. C’est très difficile à faire, d’autant plus qu’à mi-chemin, il y a probablement un autre bloc en plus du bloc actuel. Vous devrez changer celui-là aussi. Etc.

Cela rend Bitcoin pratiquement inviolable. Je dis pratiquement parce que ce n’est pas impossible, mais très, très, très, très, très, très, très, très difficile et donc improbable.

Amusement

Et si vous voulez vous livrer à une certaine fascination, vous pouvez vous asseoir à votre bureau et regarder les transactions de bitcoin. Blockchain.info est bon pour cela, mais si vous voulez une version hypnotique, essayez BitBonkers.