Cette deuxième histoire du coin va parler du principe de fonctionnement d’une crypto-monnaie, car c’est bien de vouloir une monnaie indépendante des banques, ce n’est pas pour autant que l’on sait comment cela fonctionne…
Nous l’avons vu dans l’histoire précédente, « Origine des cryptomonnaies« , l’origine des crypto-monnaies vient de la première crypto par excellence, le Bitcoin, et de la publication d’un fichier .pdf de simplement 8 pages mais très techniques dans lequel un schéma à attiré l’attention de tout le monde:
C’est magique, mais on y comprend rien! Voici en gros le principe de fonctionnement: toutes les transactions sont écrites dans un fichier comparable à un cahier comptable. Tous les échanges d’une adresse à une autre sont inscrites les unes à la suite des autres. Il n’y a nulle part, une inscription disant « telle adresse possède tant de coins », même s’il est possible de le savoir: il suffit de compiler l’ensemble de toutes les transactions d’une adresse pour en connaître son solde, toutes les transactions en amont étant vérifiées et certifiées par le réseau et inscrites dans un Block.
« Un Block? Késako? »
Reprenons l’exemple du cahier comptable: ce dernier possède un nombre de pages fini, tout comme le fichier dans lequel sont inscrites les transactions, et lorsqu’il est intégralement rempli, on le range à la suite du précédent, puis on en entame un nouveau. Ici le principe est identique, les transactions sont renseignées dans un fichier que l’on appelle « Block », et lorsqu’un block est terminé, le réseau va le verrouiller (le block aura été « trouvé ») et l’enregistrer à la suite du block précédent, formant ainsi une « chaine de blocs » ou « Blockchain », tout simplement. Enfin, pas si simplement que ça, car comment vérifier l’intégrité des blocks précédents? Comment savoir que la transaction écrite dans le bloc X est véritable? Que personne ne l’a modifiée entre-temps?
C’est justement un des principes de la blockchain: lorsqu’un block est trouvé, il en sera fait son résumé, et ce dernier sera inscrit au tout début du block suivant, et ainsi de suite. Vous aurez donc le résumé du block 57 au tout début du block 58, etc… Mais, comment « résumer » le block?
Grâce à la magie du hash! Le hash, c’est génial! Enfin, surtout dans un sens, où si l’on a toutes les clés, sinon, ça peut être long, très long de résoudre un hash. Mais c’est quoi un hash, c’est pour couper du bois? Non pas du tout. (d’ailleurs, on dit une hache)
Un hash est un ensemble de fonctions mathématiques qui transforment n’importe quel élément (un fichier, un dossier, une vidéo, un mail, …) en une série de lettres et de chiffres (appellé nombre) en langage héxadécimal (langage informatique). Par exemple, « Blockchain? » sera traduit en un nombre héxadécimal unique, alors que « Blockchain! » sera traduit en un nombre hexadécimal complètement différent! Il n’y aura pas une ou deux modification par rapport à « Blockchain? », il sera complètement différent! En revanche, le hash ne marche que dans un sens, car si vous preniez le nombre héxadécimal produit par « Blockchain! » par exemple, vous ne pourriez jamais retrouver « Blockchain! ». Le nombre est une représentation du terme « Blockchain! », mais n’est pas le terme lui-même. Ainsi, pour certifier que c’est bien « Blockchain! » qui est inscrit dans le block, il suffit de passer « Blockchain! » dans la fonction de hashage, et de retrouver le même nombre héxadécimal. Si le nombre diffère, l’information à forcément été modifiée!
Voila comment résumer le block 57 en un tout petit nombre héxadécimal pour l’inscrire dans le block 58.
Mais, qui enregistre les blocks? Qui les trouve? Pourquoi fait-il ça? Vous saurez tout en lisant notre prochain article: Histoire de Mineurs!