Partie 3 : Fonctionnement de la blockchain
II.10 Introduction
Le but de cette étude est d'analyser la
sécurisation de la blockchain. Pour la première fois, la
technologie blockchain a été utilisée dans le secteur
financier, où elle a servi de base à la création de la
devise critique Bitcoin. Récemment, de plus en plus d'applications sont
apparues qui étendent la fonction clé de cette technologie - le
stockage décentralisé des données de transaction. Les
transactions de ce type supposent que chaque membre du réseau peut
effectuer une transaction directement avec tout autre membre du réseau
sans impliquer un intermédiaire tiers. Les transactions ne sont plus
stockées dans une base de données centralisée, mais
transmises aux ordinateurs (appelés aussi les ressources informatiques)
de tous les participants au réseau qui stockent les données
localement suite à une phase d'enrôlement. Ces ressources sont
couramment appelées des noeuds du fait qu'elles sont
mises en réseau au travers d'internet.
Il existe deux types de noeuds [80]
:
§ Les noeuds réguliers : la
plupart de ces noeuds fournit une capacité informatique ordinaires,
à partir de laquelle les personnes peuvent émettre des demandes
de transactions ;
§ Les noeuds « miners » ou
mineurs : Ce noeud est doté de grosse capacité
de traitement, ces transactions sont regroupées dans un bloc qui va
être validé par les mineurs du réseau en résolvant
un problème mathématique complexe.
II.11 La phase d'enrôlement dans la
blockchain
Pour participer aux blockchain une personne doit
enrôler un de ses équipements informatiques comme un noeud de la
blockchain. Au cours de cette opération, il faut investir
Chapitre II Fonctionnement de la blockchain
[52]
dans du matériel et des programmes de minage
spécialisés. Ces programmes de minage (logiciels) ne sont pas
directement liés à Blockchain Core et sont exécutés
en parallèle pour essayer de miner des blocs. Ce logiciel est
personnalisé avec un numéro de compte blockchain. Il est
impératif que le noeud à une propriété de conserver
le logiciel téléchargée et le mot de passe qui lui
permettre de déverrouiller la clé privée, sinon il perd
l'accès à son compte blockchain et ne pourra plus faire des
transactions sur ce compte [80][81].
II.12 La phase de transaction
Dans le chapitre précédent, nous avions une
introduction rapide à la technologie blockchain. Dans cette partie du
chapitre, nous allons voir ce qui se passe derrière une transaction
bitcoin.
Remarque : C'est une idée fausse courante que la
blockchain et les bitcoins sont une seule et même chose. Cependant, les
bitcoins ne sont qu'une implémentation de la technologie blockchain. Il
en va de même pour les autres monnaies numériques.
Prenons un Exemple simple : Kawter et ses
amies sont allées au restaurant où les paiements en bitcoins sont
acceptés. Après toute la soirée à manger, rigoler
et à s'amuser, il est temps de payer la facture !
Le serveur sort un smartphone et montre le code QR à
Kawter pour le paiement de la facture. Kawter sort également son
smartphone, ouvre son application bitcoin, scanne le code QR, vérifie si
les détails du paiement sont corrects et appuie sur le bouton PAYER.
Le QR code est une sorte de code barre mais
plus complexe, il contient plusieurs types d'informations, comme :
§ Le portefeuille électronique du
récepteur (dans notre cas restaurant)
§ Montant du bitcoin à
transférer
§ Informations générales
(comme le nom du destinataire)
Figure II- 12: Code QR
Lorsque Kawter appuie sur le bouton PAYER ;
§ Elle crée une nouvelle transaction qui contient
les détails du portefeuille électronique de l'expéditrice
(Kawter) et du portefeuille électronique du destinataire (le
restaurant).
Ce qui se passe derrière la scène
?
En bref, la blockchain est comme un grand livre
numérique qui est distribué sur de nombreux ordinateurs et ajoute
continuellement des enregistrements comme dans une file
Chapitre II Fonctionnement de la blockchain
[53]
d'attente. Son réseau est similaire à BitTorrent
(P2P), dans lequel le transfert se fait entre les utilisateurs plutôt
qu'un serveur central puissant [82].
Figure II- 13: Blockchain
distributée
La figure suivante illustre le fonctionnement de la
blockchain lorsqu'on a effectué une transaction :
Figure II- 14: Fonctionnements de la blockchain
La transaction se propage dans le réseau bitcoin comme
suite :
La phase 1 du schéma II-14 ; le
serveur de restaurant peut voir le paiement de Kawter sur son
téléphone presque instantanément, le statut n'est
cependant PAS CONFIRMÉ.
§ Qui décide si une transaction est valide ou
non ?
Chapitre II Fonctionnement de la blockchain
[54]
La transaction est considérée comme valide
lorsque des noeuds spéciaux du réseau (appelés Miner)
ajouteront cette transaction dans un bloc de la blockchain.
Ce processus est appelé Mining (phase 2
du graphique) et il a les objectifs suivants :
o Pour valider la transaction (en se
référant au protocole de consensus) ou pour rejeter une
transaction invalide.
o Pour créer de nouveaux bitcoins.
Les mineurs qui agglomérant sous forma d'un bloc les
transactions valides est tentent de valider le bloc par la résolution
d'un problème mathématique complexe appelé Proof of Work
(PoW). Ce travail de résolution de problème s'appelle «
minage ». Le mineur qui a terminé le minage en premier diffuse sa
solution à tous les noeuds qui vérifient la preuve PoW
associée. En cas de validité, chaque noeud ajoute le bloc dans la
blockchain et les mineurs commencent à miner le bloc suivant
(phase 3 de la figure II-14).
Le fait d'inscrire massivement un bloc dans la blockchain
signifie qu'un consensus a été atteint parmi les
noeuds [82].
Enfin, le serveur de restaurant voit dans son portefeuille
électronique que le paiement a été confirmé. Tout
ce processus dure environ 10 minutes.
|