La BlockChain
Le principe
Dans notre monde économique actuel, si vous faites une transaction depuis votre compte, la banque vérifie que vous avez les fonds et transfère l'argent vers le compte du bénéficiaire. Vous-même ainsi que la bénéficiaire font confiance à votre banque respective pour gérer votre argent à votre place. Tout cela est géré par la banque, ces transactions sont stockées dans un registre géré de manière informatique. Ce système vous oblige à faire confiance à une tier personne pour effectuer un transfert entre deux acteurs (pair à pair (P2P)).
C'est là qu'intervient la blockchain, dans ce système, il n'y a plus de tiers entre les deux personnes et le registre est géré et accessible par tout le monde. Plus de banques ou d'acteurs de confiance pour effectuer des transactions. Ceci fait économiser de l'argent pour les deux parties. Tout le monde connaît l'argent des autres de manière anonyme, de ce fait si une transaction dépasse le montant que possède la personne, tout le monde le verra et refusera la transaction. C'est pour cela que l'on dit de la blockchain qu'elle est décentralisée, tout le monde en a une copie qu'il peut consulter et vérifier.
Veuillez noter que la blockchain est spécifique à son sujet. Le bitcoin à une blockchain qui est différente de la blockchain d'une autre cryptomonnaie ou d'un autre domaine. Il n'existe pas une blockchain, mais de la blockchain qui ont toutes leur spécificité et leur utilité.
Qu'est-ce qu'un block ?
Un block est une transaction entre deux personnes, toutes les transactions font partie d'un ensemble qui forme la blockchain.
Un block est une unique transaction effectuée par deux utilisateurs.
Ce block est public et contient certaines informations comme la date de création, les parties concernées, quel était le sujet de la transaction et les montants échangés. Le seul identifiant visible est l'adresse de votre portefeuille.
Un block ne peut pas être modifié après sa création, effectivement, les "mineurs" vont faire du hashage. Pour faire simple, c'est un algorithme qui prend un nombre en entrée et qui renvoie un nombre en sortie. Ce nombre en sortie dépend du nombre en entrée. Si le block est modifié le nombre en entrée n'est plus le même est donc le nombre de sorties ne le sera pas non plus. Il est très difficile de connaître le nombre d'entrées avec le nombre de sorties, mais la vérification, elle, est très facile. On peut comme cela vérifier l'intégrité du block.
Chaque block est relié l'un à l'autre, car ils contiennent tous le hash du block précédent, ce qui évite d'ajouter un block entre deux ou de les altérer.
Ces utilisateurs sont représentés par une adresse attribuée lors de la création de leur portefeuille cryptographique qui contient les cryptomonnaies que possède l'utilisateur. L'adresse permet d'identifier de manière unique l'utilisateur sans que son nom soit rendu publique.
Toutes les transactions sont archivées ce qui rend impossibles les fraudes et la création d'argent. Des erreurs sont cependant possibles parce que certains block peuvent passer sans avoir les fonds nécessaires. Ce qui n'est pas pour l'intérêt des mineurs qui changeront de branche. On utilise la puissance de calcul pour vérifier l'intégrité du block. Les mineurs n'ont pas intérêt à miner un faux-block.
Le minage
Un mineur est une personne utilisant ces ressources de calcul (délivrer par des processeurs, notamment les cartes graphiques) et qui les utilisent pour vérifier si le block est valide et générer une clé qui va permettre de seller ce block pour empêcher sa modification a posteriori. Le minage étant un processus difficile et long, plusieurs mineurs mine le même block. Le plus rapide d'entre eux se verra obtenir une récompense dans la cryptomonnaie en question. Les autres mineurs en gagneront aussi, mais en moindre quantité. Cela permet de ne pas les décourager de chercher et ainsi de permettre à la blockchain d'exister. Les mineurs vont donc essayer de résoudre une équation de hashage compliqué pour obtenir une clé qui va permettre de valider le block. On parle de "Puzzle Cryptographique". Une fois le block miné, le résultat est envoyé à tous les utilisateurs sur la blockchain et les autres vont le vérifier (Proof of Work), si la vérification est un succès alors le block est ajouté à la blockchain.
Les différents Proof
Un proof ou en français : Preuve. Permet de vérifier que le block est correct et que tout le monde soit d'accord avec cette authenticité. Si la majorité est en accord, le block est alors validé et ajouter à la blockchain. Dans le cas contraire, le block est refusé et la transaction annuler. Une personne ne doit pas avoir plus de la majorité, car sinon il serait facile de faire passer le block comme étant valide alors qu'il ne l'ait pas en vérité. C'est pour cela que de la sécurité comme le proof of work est nécessaire.
Il existe plusieurs types de Proof. Chacun ont leurs particularités. Voici une liste non exhaustive :
- Le Proof Of Work : Le plus connu et utilisé, mais aussi le plus gourmand en énergie, cependant le plus sécuriser et fiable
- Le Proof Of Stake : Écologique, il ne se base pas sur la puissance de calcul, mais sur le nombre d'argents que vous avez mis dans la blockchain (de côté). Vous ne pouvez miner que si vous avez plus que d'autres, cependant s'il fraude il perdra plus d'argent que ce qu'il gagnera donc on reste sur une relation de confiance.
- Le Proof Of Authority : Dériver du Proof Of Stake, on se base ici sur la réputation.
La blockchain que pour les cryptomonnaies ?
La blockchain n'est pas spécifiquement faite pour les cryptomonnaies. Effectivement, une blockchain peut servir dans beaucoup de domaines où les transactions entre deux parties sont de mises, nous avons vu cela dans le domaine de l'économie, mais ce même principe est applicable pour beaucoup de sujets. Chacun peut créer sa blockchain dans le but qu'il désire.