I.3.3 Grand livre
La couche du grand livre est responsable du stockage. Tous
les participants au réseau ont accès au grand livre
distribué et à son enregistrement immuable des transactions. Avec
ce grand livre partagé, les transactions ne sont enregistrées
qu'une seule fois.
La couche de registre incorpore la signature de hachage du
bloc précédent dans le bloc suivant pour former une structure de
données de chaine de blocs.
La couche du grand livre a deux méthodes
d'enregistrement des données basée sur les actifs et basée
sur les comptes. Dans un modèle basé sur l'actif, l'actif est
modélisé en premier, puis la propriété de l'actif
est enregistrée, c'est-à-dire que la propriété est
un
3 MySQL : est un
système de gestion de base de données relationnelle open source.
SQL fait référence au Structured Query Language, le langage de
requête utilisé
4 LevelDB : est une
bibliothèque de stockage de valeurs-clés rapide écrite par
Google qui fournit un mappage ordonné des clés de chaîne
aux valeurs de chaîne.
Chapitre I Généralités et
présentation de l'ouvrage
[7]
champ de l'actif. Dans le modèle basé sur un
compte, un compte est établi en tant qu'objet d'actifs et de
transactions, et les actifs sont un champ sous le compte.
Le grand livre possède les avantages suivants :
§ Modèle de données basé sur le
compte : Il est facile à enregistrer et à interroger les
informations liées.
§ Modèle de données basé sur les
actifs : Ce modèle possède une haute simultanéité
afin d'obtenir des performances de traitement simultanées
élevées et d'interroger les informations liées au compte
dans le temps. Plusieurs plateformes de blockchain migrent vers deux
modèles de données ce qui conduit au développement d'un
modèle mixte.
I.3.4 Consensus
La couche consensus est chargée de coordonner et
d'assurer la cohérence des enregistrements de données de chaque
noeud dans l'ensemble du réseau c'est-à-dire tous les noeuds sont
en compétition pour ajouter le prochain bloc à la blockchain mais
un seul d'entre eux sera sélectionné pour le faire (et lui seul
sera rémunéré). Cette sélection étant
aléatoire pour chaque nouveau bloc. Ce caractère aléatoire
est très important pour la sécurité de la blockchain ;
puisque personne ne sait quel mineur sera choisi. Il existe différentes
façons de réaliser cette sélection aléatoire de
mineurs : ce sont les mécanismes de consensus.
Le premier type de mécanisme de consensus est la
preuve de travail (POW) utilisée habituellement dans les blockchains
publiques de sort que plus la puissance de calcul d'un mineur est
élevée, plus la probabilité sélectionnée est
grande. Comme la puissance de calcul est coûteuse, le coût
d'acquisition de 51% de la puissance totale de calcul du réseau est
élevé ; c'est une façon de sécuriser le
réseau en rendant le coût d'une attaque disproportionnée
par rapport au bénéfice.
Le deuxième type de mécanisme de consensus est
utilisé dans les blockchains privées dans lesquelles les noeuds
appartiennent à une même entité, ou dans les blockchains
semi-privées dans lesquelles les noeuds appartiennent à un
consortium de différents utilisateurs autorisés. Ce
deuxième type n'a pas besoin d'un mécanisme de consensus aussi
coûteux que le POW, car les participants sont connus et de confiance dans
une certaine mesure. Dans ce cas, le mécanisme de consensus
utilisé est beaucoup plus simple comme l'algorithme de
PBFT5 (9J.
Ci-dessous, nous listons la comparaison de quelques algorithmes
de consensus (10J.
5 PBFT : est un
excellent algorithme de consensus pour les consortiums d'entreprises où
les membres sont partiellement fiables.
Chapitre I Généralités et
présentation de l'ouvrage
[8]
Mécanisme du consensus
|
Description
|
Avantages
|
Inconvénients
|
POW
|
Dans une blockchain publique, les ordinateurs des mineurs sont
mis à disposition pour résoudre un problème
mathématique compliqué. Le 1erqui trouve une solution
gagne la récompense du prochain bloc de la chaine.
|
Simple à mettre en oeuvre.
Sécurisé. Faible.
Consommation des ressources réseau.
|
Consomme trop de ressources informatiques.
La probabilité de bifurcation est
élevée.
Le consensus prend plus de temps.
|
POS
|
Preuve d'enjeu. Les
validateurs de transactions doivent mettre en gage la possession
de crypto monnaie pour recevoir une récompense. Si un noeud est
malveillant, il peut perdre sa mise en gage au profit des validateurs
honnêtes
|
Moins de
consommation de ressources.
|
La mise en oeuvre est plus compliquée.
Faille de sécurité.
Pression de trafic réseau élevée.
|
BPFT
|
Consensus dont la liste des validateurs est connue au
départ et peut tolérer jusqu'à 1/3 de noeuds compromis
(déconnectés ou malveillants).
|
Consensus de groupe rapide et performant.
Pas de fork ou de réorganisation de chaine.
|
Chaine privée uniquement.
|
POA
|
Preuve d'autorité. Consensus dont la liste des
validateurs est connue au départ et qui valide à tour de
rôle un bloc. Ce type de consensus peut tolérer jusqu'à 49%
de noeuds malveillants ou déconnectés.
|
Consensus de groupe rapide.
|
Chaine privée uniquement.
Fork ou réorganisation de la chaine possible.
|
|
Tableau I- 1: Comparaison des mécanismes de
consensus de la blockchain
[9]
Chapitre I Généralités et
présentation de l'ouvrage
|