Comment fonctionne concrètement la blockchain ?

J’en parle souvent et on me demande souvent comment elle fonctionne. Or, c’est quelque chose d’extrêmement important, parce que la blockchain servira à absolument tout et n’importe quoi dans l’avenir, pas seulement au Bitcoin dont elle est issue. 

TOUT sera concerné par la Blockchain. Elle va mettre fin par exemple à la pyramide de crédit qui fait que « les banques créent l’argent à partir de rien ». Elle va certifier les dates de péremption sur les paquets de bouffe ou les labels de production agricole. Elle servira d’unités de compte pour les produits d’épargne ou d’investissement ou encore l’assurance-vie. Bien sûr, il existe pléthore de liens pour expliquer son fonctionnement, mais qui ont le tort d’expliquer par le menu le fonctionnement de la chaîne, ce qui rend le principe abscons pour le commun des mortels. Alors, nous allons faire TRES simple. 

 Ce qui arrive est phénoménal et là vous en saisirez l’intérêt et vous pourrez éventuellement vous informer plus avant si le sujet devait vous intéresser. 

Une protection d’une donnée quelconque
Une croyance laisse à penser qu’un fichier à protéger est diffusé partout sur des serveurs, ce qui n’est pas tout-à-fait vrai. Bien que la Blockchain ne soit pas limitée à une technique, mais juste un principe de chaîne de serveurs en réseau, c’est ce principe que je vais décrypter (sans jeu de mot) ici. Partant, ce n’est pas tant le fichier lui-même qui est protégé, mais plutôt les données qu’il représente. En fait, ce ne sont pas les données qui sont à plusieurs endroits, mais leur certification, une clé qui les valide.
 
Au lieu de diffuser un document en le multipliant de manière à pouvoir le comparer, ce qui implique de devoir le récupérer et alors que chacun pourrait avoir des micro-modifications mettant en doute sa plausibilité, le document est crypté, ce qui donne une « chaîne » unique. Sur un document, on peut modifier un mot, son apparence, ajouter un terme invisible à l’oeil nu, un mot en blanc dans la marge sur fond blanc ce qui le rend invisible, etc.. Ce qui est invisible à l’oeil ne l’est pas pour l’ordinateur qui lit le document.
 
Concrètement, on apporte une modification invisible à un document, on l’ouvre dans un logiciel de comparaison, le logiciel, lui, va voir la différence. Même si le fichier fait exactement le même poids. Il va lire n’importe quelle instruction inaccessible à l’Homme.
Démonstration
 
Exemple concret très simple, basique sur internet, avec le MD5, qui offre l’avantage d’être grand public et gratuit (du coup pas sécurisé du tout et donc pas forcément utilisé pour le blockchain) qui sert à valider les données téléchargées. Bien sûr, une banque ou une assurance utilisera son propre système de cryptage propriétaire utilisant sa technologie propre développée pour cela et selon un cahier des charges bien plus conséquent. 
 
Quand on télécharge un logiciel, il peut se produire des micro-coupures, des bugs, qui font que le logiciel va fonctionner quand même, mais avec des bugs, parce qu’un seul petit signe aura été erroné dans un paquet parmi des millions ou des milliards (un fichier de 100Mo, c’est 100 millions de signes composés de 0 et de 1. il suffit qu’un 0 ou un 1 manque, soit ajouté ou soit inversé pour que le signe soit corrompu et donc le logiciel qui en découle aussi).
 
Alors on passe le fichier au travers d’un système de cryptage qui va donner une clé.
 
Le fichier confidentiel à protéger
Pour l’exemple, je vais crypter une poésie de ma composition (oui, j’ai compensé ma beauté perdue par de la sensibilité) :
 
Mon petit oiseau
A voulu se baigner
Mon petit oiseau
A voulu se baigner
Se baigner
A la Villette
Se baigner
A la villette
Je l’ai baigné
 
Il s’est contaminé
Sur un poisson crevé
Il s’est contaminé
Sur un poisson crevé
Sur un p
A la Villette
Sur un P
A la villette
Sur un poisson crevé
 
Ca s’est infecté
Le petit oiseau est tombé
Ca s’est infecté
Le petit oiseau est tombé
L’oiseau est
A la Villette
L’oiseau est
A la villette
Le petit oiseau est tombé
 
Mon petit oiseau
Où as-tu coulé ?
Mon petit oiseau
Où as-tu coulé ?
Où as-tu ?
A la Villette
Où as-tu ?
A la Villette
Où as-tu coulé ?
 
J’ai aussi perdu une couille
Et tordu l’autre
J’ai aussi perdu une couille
Et tordu l’autre
Et perdu
A la Villette
Et perdu
A la Villette
Et perdu mes couilles
 
Mon petit oiseau
J’ai besoin de bander
Mon petit oiseau
J’ai besoin de bander
Pour que je puisse baiser
J’ai besoin de
A la villette
J’ai besoin de
A la Villette
J’ai besoin de baiser
 
Baiser bien vite
Dans l’eau empoisonnée
Baiser bien vite
Dans l’eau empoisonnée
Dans l’eau
A la Villette
Dans l’eau
A la Villette
Dans l’eau empoisonnée… 
 
La clé de cryptage est : 7325a89c7da90758609609f9859daf00
Le fichier a été modifié par un vilain
 
Maintenant, pour imager, je vais apporter une micro-modification au texte (cherchez pas, vous ne la trouverez pas, je vous l’indiquerai si vous me le demandez gentiment par la suite) :
 
Mon petit oiseau
A voulu se baigner
Mon petit oiseau
A voulu se baigner
Se baigner
A la Villette
Se baigner
A la villette
Je l’ai baigné
 
Il s’est contaminé
Sur un poisson crevé
Il s’est contaminé
Sur un poisson crevé
Sur un p
A la Villette
Sur un P
A la villette
Sur un poisson crevé
 
Ca s’est infecté
Le petit oiseau est tombé
Ca s’est infecté
Le petit oiseau est tombé
L’oiseau est
A la Villette
L’oiseau est
A la villette
Le petit oiseau est tombé
 
Mon petit oiseau
Où as-tu coulé ?
Mon petit oiseau
Où as-tu coulé ?
Où as-tu ?
A la Villette
Où as-tu ?
A la Villette
Où as-tu coulé ?
 
J’ai aussi perdu une couille
Et tordu l’autre
J’ai aussi perdu une couille
Et tordu l’autre
Et perdu
A la Villette
Et perdu
A la Villette
Et perdu mes couilles
 
Mon petit oiseau
J’ai besoin de bander
Mon petit oiseau
J’ai besoin de bander
Pour que je puisse baiser
J’ai besoin de
A la villette
J’ai besoin de
A la Villette
J’ai besoin de baiser
 
Baiser bien vite
Dans l’eau empoisonnée
Baiser bien vite
Dans l’eau empoisonnée
Dans l’eau
A la Villette
Dans l’eau
A la Villette
Dans l’eau empoisonnée…
 
La nouvelle clé de cryptage est : 9281e20ff8069b5523ec0412855600f5
Vous voyez qu’elle est TRES différente. Pourtant, si vous saisissez le texte du haut et que vous le cryptez en MD5 avec le lien que je vous ai donné, vous verrez que vous aurez la même clé que la première et pareil avec le second texte et la seconde clé (et si ce n’est pas le cas, c’est que vous aurez mal copié-collé, pas que ça ne marche pas).
 
Ainsi, il est donc IMPOSSIBLE de modifier quoi que ce soit dans le fichier sans que les clés ne correspondent plus.
 
Voilà pour la première étape…

Seconde étape, la sécurisation du fichier par la Blockchain… 

Maintenant, vous avez donc la clé d’origine de votre fichier. Le fichier en lui-même, pour le protéger, vous vous débrouillez, vous le mettez sur le cloud, sur votre disque dur, dans un coffre-fort numérique,; etc… de sorte que vous pourrez le retrouver si l’une ou l’autre version se perd.

La clé, par contre, vous imaginez un réseau de millions d’ordinateurs tous interconnectés avec un même logiciel consistant à lorsque vous introduisez une clé dedans, elle est diffusée dans la totalité des ordinateurs qui vont la crypter pour la stocker. Ainsi, votre chaîne est stockée sur des millions d’ordinateurs. Si quelqu’un voulait modifier le fichier protégé par la Blockchain, il faudrait qu’il aille remplacer la clé sur chacun des millions d’ordinateurs qui la protègent.

MAIS, en plus, chaque ordinateur dispose de sa propre clé de cryptage et donc votre clé est cryptée sur l’ordinateur, ce qui fait qu’elle est différente sur chacun des ordinateurs jusqu’à ce que VOUS demandiez à tous les ordinateurs de la décrypter et de vous la renvoyer pour vérifier que les millions de clés sont bien les mêmes. Ainsi, un hacker n’aurait aucun moyen de différencier la vôtre des milliers d’autres clés protégeant des milliers d’autres fichiers et aucun ordinateur ne ressemble à un autre. Si il y a 10 millions de fichiers protégés, il y a 10 millions de clés sur chacun des millions d’ordinateurs du réseau (si tous étaient en ligne à ce moment-là) mais chacune de ces 10 millions de clés sur chacun des millions d’ordinateurs du réseau est différente de tous les autres. Il n’y a que la clé strictement privée du détenteur de chaque ordinateur qui permet de décrypter chaque clé.

Une modification impossible

Ainsi, si un hacker voulait modifier un fichier, après avoir modifié le fichier, il devrait hacker chaque ordinateur du réseau, pour trouver sa clé privée, de manière à pouvoir décrypter toutes les clés qui figurent dessus, pour retrouver toutes les clés correspondantes à la version originale du fichier qu’il veut modifier, pour la remplacer par celle qu’il a lui-même créée à partir de la version modifiée du fichier et recrypter toutes les clés de chacun des millions d’ordinateurs du réseau, ce qui est virtuellement impossible. D’autant que déjà il faut connaître la liste des ordinateurs du réseau et ensuite il n’y a aucun moyen de savoir combien ont reçu la clé (si certains n’étaient pas en ligne, panne d’électricité, maintenance du serveur, panne d’internet, ils ne l’ont pas reçue).

Vous avez donc récupéré votre clé sur les millions d’ordinateurs qui la stockaient, vous avez des millions de fois la même clé, vous prenez le fichier que vous avez protégé et vous le recryptez, si la nouvelle clé est la même que celle qui avait été diffusée, c’est que le fichier est parfaitement conforme à ce qu’il était au moment qu’il a été crypté et que la clé a été diffusée sur le réseau Blockchain.

Votre fichier est valide… et inviolable !

4 Comments

Thierry Curty

Bonjour,

Merci de votre commentaire. Non, c’est fait exprès, ce n’est pas à vous que c’est destiné. Rien que votre commentaire très court, s’il est lu par un de mes amis je vais en avoir pour deux heures à lui expliquer.

C’est le fonctionnement qu’il faut expliquer, pas apprendre les termes techniques alors même que 95% des utilisateurs quand vous leur demandez quel navigateur ils utilisent ils vous répondent : « ben, Google »…

Pour illustrer, c’est comme si je parlais de cadenas de vélo et que j’expliquais pourquoi il sécurise le vélo et que vous veniez me dire que non, en réalité il faut comprendre que le taux de Vanadium dans la boucle…

Mais je vous remercie de votre intervention, ne vous y trompez pas, en espérant que si jamais quelqu’un intervient vous vous donniez la peine d’aller jusqu’au bout : « c’est quoi un hash » ? Hahahahah

Reply
Isabelle Capon

S’il te plaît, Thierry, peux tu nous révéler ce que tu as modifié dans ton texte pour que la deuxième clé soit différente de la première ? Merci d’avance ! 😊

Reply
Thierry Curty

Mais oui, je peux…en douterais-tu ? Mdr.. J’ai ajouté un espace vide après le dernier petit point dans la première que j’ai enlevé dans la seconde (ou vice-versa, faut vérifier)

LA preuve...

Reply

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *