I.5 Pourquoi utiliser la technologie Blockchain
La deuxième question que les gens posent
habituellement lorsqu'ils entendent parler de la blockchain est : pourquoi
utiliser la blockchain ? Pourquoi utiliser un grand livre distribué ?
Pourquoi ne pas utiliser une base de données régulière ou
un système hérité comme système d'enregistrement
dans ce monde déjà numérique ?
Dans cette partie, nous examinons ce qu'est
réellement une blockchain, ce qu'elle peut faire et, surtout, pourquoi
utiliser la blockchain ?
I.5.1 QU'EST-CE QUE LA BLOCKCHAIN ? UN GRAND
LIVRE DISTRIBUÉ
Juste au cas où vous auriez besoin d'un petit
rattrapage, les gens parlent souvent de « blockchain » au singulier,
comme s'il n'en était qu'un. En réalité, ils devraient
parler de la technologie de la chaîne de blocs également connue
sous le nom de technologie de registre distribué ou DLT ou des
chaînes de blocs au pluriel, car il en existe de nombreuses
différentes, y compris les chaînes de blocs publiques (sans
autorisation) et privées (avec autorisation).
La blockchain Bitcoin, la blockchain Ethereum, la
blockchain NEO7 et bien d'autres sont des exemples de blockchains publiques et
de technologie de blockchain distribuée. Les
7 NEO : est une
plate- forme d'application décentralisée blockchain open source
fondée en 2014 par Da HongFei et Erik Zhang. Depuis son changement de
nom à NEO d'Antshares en 2017, la vision du projet est de
Chapitre I Généralités et
présentation de l'ouvrage
[13]
chaînes de blocs autorisées sont adaptées
à une utilisation d'entreprise ou organisationnelle, avec un tel exemple
étant la chaîne de blocs Hyperledger8
d'IBM9. Mais nous y reviendrons dans un instant.
La blockchain est un moyen simple mais ingénieux de
transmettre des informations de A à B de manière
entièrement automatisée et sûre. Une partie à une
transaction lance le processus en créant un bloc. Ce bloc est
vérifié par des milliers, voire des millions d'ordinateurs
répartis sur le Net. Chaque bloc de la chaîne est
chronologiquement connecté aux blocs précédents et
synchronisé avec les noeuds du réseau, créant non
seulement un enregistrement unique, mais la falsification d'un seul block
signifierait la falsification de la chaîne de block entière ce qui
rend très difficile la falsification (13J.
I.5.2 Comment fonctionne la
Blockchain
Les tâches que nous effectuons sur les appareils
numériques peuvent être divisées en deux catégories
: transactionnelles et non transactionnelles. Écrire des e-mails,
regarder des vidéos et naviguer sur Internet sont principalement des
activités non transactionnelles, ce qui signifie que nous n'avons rien
acheté ou vendu, ni signé aucun accord contractuel.
Cependant, nous effectuons de plus en plus de transactions en
ligne, telles que la signature des contrats, l'achat d'article.
Les transactions numériques sont plus rapides et plus
pratiques, mais peuvent ne pas être sécurisées, permettant
aux cybercriminels de se connecter à notre compte ou d'obtenir nos
numéros de sécurité sociale et d'autres informations
sensibles. La blockchain est conçue pour agir comme un compte public
virtuel qui peut être consulté par tout le monde et écrit
à l'encre persistante. Chaque bloc est un fichier et un
nouveau bloc est créé toutes les 10 minutes, qui contient un
enregistrement de toutes les transactions précédentes,
répertoriées dans l'ordre et se terminant par une nouvelle
transaction (14J.
En terme technique, la blockchain est une base de
données distribuée basée sur des Merkle-Trees
chiffrés, c'est-à-dire que la base de données n'est ni
créée, ni développée, ni stockée dans une
unité centrale de traitement. Au lieu de cela, il existe une copie de
chaque ordinateur ou "noeud" utilisé pour traiter et vérifier les
transactions. Lorsqu'une nouvelle transaction est ajoutée, toutes les
copies sont modifiées en même temps. Si une transaction qui ne
respecte pas les règles de protocole est détectée par les
noeuds du réseau, elle est immédiatement
expulsée (15J.
réaliser une « économie intelligente » en
utilisant la technologie de la blockchain et des contrats intelligents pour
émettre et gérer des actifs numérisés.
8 Hyperledger d'IBM :
Hyperledger Fabric est le cadre de la plate-forme IBM Blockchain. Pour
permettre une innovation rapide et une adoption plus rapide dans tous les
secteurs, la plate-forme IBM Blockchain est basée sur un protocole de
chaîne de blocs open source.
9 IBM International
Business Machines : une société multinationale d'informatique et
de technologie de l'information
Chapitre I Généralités et
présentation de l'ouvrage
[14]
Figure I- 3: Base de données de la
blockchain
La blockchain la plus connue est celle du réseau
Bitcoin. Lorsqu'une transaction est générée via un certain
noeud, la transaction doit être transmise à d'autres noeuds pour
la vérification et puis confirmée par des mineurs. L'action ne
peut être annulée. Ce procédé consiste à
chiffrer les données de transaction via des signatures numériques
et à obtenir une série de valeurs de hachage uniques
représentant la transaction via la fonction de hachage, puis à
diffuser cette valeur de hachage à d'autres noeuds participants dans le
réseau de blockchain Bitcoin pour la vérification (voir figure
ci-dessous). Chaque noeud effectue le calcul de preuve de travail (POW) pour
déterminer qui peut vérifier la transaction. Le noeud qui a
obtenu le droit de vérification diffuse le bloc à tous les noeuds
qui terminent le POW dès que possible et diffuse son propre bloc aux
autres noeuds. A ce stade, d'autres noeuds confirmeront si les transactions
contenues dans ce bloc sont valides. Après avoir confirmé
qu'elles n'ont pas été dépensées à plusieurs
reprises et ont des signatures numériques valides, elles acceptent le
bloc. En ce moment, le bloc est officiellement connecté à la
chaîne de blocs [16].
Chapitre I Généralités et
présentation de l'ouvrage
[15]
Figure I- 4: Fonctionnement de la
Blockchain
I.5.3 Blockchain vs Base de données
normales
On dit que la blockchain est une sorte de base de
données, donc « Quelle est la différence entre la blockchain
et la base de données traditionnelle ? »
I.5.3.1 Centralisation vs Décentralisation
système
La raison même pour laquelle nous examinons le
débat entre centralisation et décentralisation est que la
blockchain est conçue pour être décentralisée.
Cependant, les termes décentralisée et centralisée ne sont
pas toujours clairs. Donc, la plupart des concepts et exemples de cette section
sont inspirés des notes de M. Vilatik Buterin, le fondateur de la
blockchain Ethereum.
Qu'est-ce qu'un système distribué alors ? Un
système distribué centralisé est un système dans
lequel il y a, par exemple, un noeud maître chargé de
décomposer les tâches ou les données et de répartir
la charge entre les noeuds. D'autre part, un système distribué
décentralisé est un système où il n'y a pas de
"maître" [16J. Donc, la blockchain
en est un exemple, et nous en examinerons de nombreuses représentations
schématiques plus loin dans ce chapitre.
Chapitre I Généralités et
présentation de l'ouvrage
[16]
La figure suivante représente un schéma d'un
système distribué centralisé.
Figure I- 5: Système distribué avec
contrôle centralisé
Cette représentation est similaire à la mise en
oeuvre de Hadoop10, à titre d'exemple. Si le calcul est plus
rapide dans de telles conceptions en raison de l'informatique
distribuée, il souffre également de limitations dues à la
centralisation.
Il est extrêmement important de noter qu`un
système centralisé / décentralisé ne se limite pas
à l'architecture technique.
Ce que nous entendons dire, c'est qu'un système peut
être décentralisé techniquement, mais ne peut-être
pas aussi logiquement ou politiquement. Jetons un oeil à ces
différentes perspectives pour pouvoir concevoir correctement un
système en fonction de l'exigence :
Architecture Technique : un système
peut être centralisé ou décentralisé à partir
d'une architecture technique c'est-à-dire combien nous
considérons le nombre de noeuds (ordinateurs) utilisés pour
concevoir un système.
Perspective politique : elle indique le
contrôle qu'un individu ou un groupe de personnes ou bien une
organisation dans son ensemble sur un système. Si les noeuds du
système sont contrôlés par eux, donc le système est
centralisé.
10 Hadoop : est
un cadre logiciel open source pour le stockage de données et
l'exécution d'applications sur des clusters de matériel de base.
Il offre un stockage massif pour tout type de données.
Chapitre I Généralités et
présentation de l'ouvrage
[17]
Perspective logique : un système peut
être logiquement centralisé ou décentralisé en
fonction de son apparence, qu'il soit centralisé ou
décentralisé techniquement ou politiquement.
§ Le réseau de distribution de contenu, d'autre
part, est décentralisé sur le plan architectural,
également décentralisé sur le plan logique, mais est un
système politiquement centralisé car il appartient à des
entreprises. On cite à titre d'exemple Amazon et
CloudFront11.
§ Examinons maintenant la blockchain. Les objectifs de
la blockchain étaient de permettre la décentralisation. Ainsi, il
est décentralisé architecturalement par conception. Il est
également décentralisé d'un point de vue politique, car
personne ne le contrôle.
Une petite mise au point technique, parce qu'on voit qu'il y
a beaucoup de confusion sur les termes « centralisé », «
décentralisé », « distribué », « pair
à pair », pour pouvoir comprendre pourquoi la blockchain est
décentralisée par conception (17J.
Commençons par décrire le système
centralisé.
I.5.3.1.1 Système centralisé
Figure I- 6: Système
centralisé
C'est un système avec un contrôle
centralisé avec tous les autorités administratives, un serveur a
priori dans le cas informatique (18J. Un
système centralisé typique peut apparaître comme le montre
la figure ci-dessous.
Comme le montre la figure tous les noeuds de l'application
sont hébergés sur une seule machine et les utilisateurs peuvent
directement se connecter à la machine centrale.
Le principal problème du système
centralisé est qu'il n'est pas facilement évolutif. Il y a une
limite au nombre de CPU dans un système et finalement le système
entier doit être mis
à niveau ou remplacé.
11 CloudFront : est
un réseau de diffusion de contenu proposé par Amazon Web
Services. Les réseaux de distribution de contenu fournissent un
réseau mondialement distribué de serveurs proxy qui mettent en
cache le contenu, comme les vidéos Web ou d'autres médias
volumineux, plus localement pour les consommateurs, améliorant ainsi la
vitesse d'accès pour télécharger le contenu
Chapitre I Généralités et
présentation de l'ouvrage
I.5.3.1.2 Système
décentralisé
Comme l'indique son nom, ce système n'a pas de centre.
L'idée pour un système de communication, c'est que tous les
noeuds puissent être une partie d'un réseau qui n'a pas
d'autorité principale, et que ces autorités puissent parler entre
elles [19J.
Un système décentralisé typique peut
apparaître comme le montre la figure suivante :
Figure I- 7: Système
décentralisé
On note qu'un système distribué peut
également être décentralisé. Par exemple, la
blockchain ! Cependant, contrairement aux systèmes distribués
communs, la tâche n'est pas subdivisée aux noeuds, car aucun
maître ne le ferait dans la blockchain. Pour le réseau P2P ou
« pair à pair », l'idée de cette architecture est de
permettre au réseau de fonctionner même si on lui coupe
l'accès à une partie de lui-même. Un système
peer-to-peer est illustré par la figure I-8.
Figure I- 8: Système
décentralisé avec p2p architecture
[18]
Chapitre I Généralités et
présentation de l'ouvrage
[19]
Ce qui fait principalement la différence entre un
système « décentralisé » et «
entièrement P2P » c'est la place des serveurs. Pour transformer
votre système décentralisé avec serveurs en un
système entièrement P2P, vous mettez un seul client sur votre
serveur, et vous mettez le serveur et le client sur la même
machine (20].
I.6 BLOCKCHAINS AUTORISÉS VS BLOCKCHAINS
PUBLIQUES
Vous ne pouvez pas être un crypto investisseur ou
entrepreneur sans avoir une vraie compréhension des différences
entre les types de blockchains ainsi que leurs implications. Donc, Quelle sont
les différences entre blockchain privée et blockchain publique ?
et Comment faire le choix d'une ou de l'autre de ces options ?
Une blockchain est dite publique c'est à dire «
ouverte » lorsque n'importe qui peut devenir membre du réseau. La
chaîne d'alliance est ouverte à des organisations
spécifiques. De nos jours, l'industrie estime généralement
que la chaîne d'alliance se situe entre les chaînes publiques et
privées et appartient essentiellement à la catégorie des
chaînes privées.
Nous nous concentrerons sur les chaînes publiques et
privées, car les chaînes d'alliance peuvent être
classées comme chaînes privées
(21].
I.6.1 Blockchain publique
La chaîne publique est une chaîne de blocs qui
peut être lue par n'importe qui dans le monde, n'importe quelle personne
peut envoyer des transactions et les transactions peuvent être
effectivement confirmées, et n'importe qui peut participer au processus
de consensus. Le processus de consensus détermine quels blocs peuvent
être ajoutés à la blockchain
(22]. En effet, les transactions qui sont stockées
dans ces « Ledgers » sont non modifiables, non supprimables,
accessibles en lecture par tout le monde, et ultra sécurisées
à base de la cryptographie.
I.6.1.1 Les caractéristiques de la blockchain
publique
§ Protéger les utilisateurs des
développeurs.
§ Faible barrière à l'accès.
§ Toutes les données sont publiques par
défaut.
I.6.2 Blockchains privées
Les blockchains privées regroupent toutes les
solutions que les entreprises peuvent installer dans leur contexte interne et
qu'elles vont décider d'utiliser de manière partiellement
décentralisée, c'est-à-dire elle fait
référence à une blockchain dont les autorisations
d'écriture sont entre les mains d'une seule
organisation (23].
I.6.2.1 Les caractéristiques de la blockchain
privée
§ La vitesse de transaction est très rapide.
§ Meilleure protection de la vie privée.
§ Les coûts de transaction sont
considérablement réduits voire nuls.
§ Aide à protéger ses produits de base contre
les dommages.
Chapitre I Généralités et
présentation de l'ouvrage
[20]
I.7 Mécanismes de sécurité dans les
réseaux
I.7.1 Introduction
De nos jours, toutes les informations sont
numérisées et il est possible de s'y référer en
utilisant un ordinateur personnel à portée de main. L'utilisation
généralisée d'Internet a permis d'obtenir les informations
nécessaires à tout moment et en tout lieu. Mais en même
temps, les problèmes de sécurité augmentent. À
l'heure actuelle, un réseau privé virtuel (VPN), qui peut
accéder en toute sécurité à un réseau
interne de l'extérieur de l'entreprise ou construire un réseau
virtuel et sécurisé entre les succursales, s'est
généralisé. Cependant, il existe de nombreuses
méthodes VPN, chacune avec des caractéristiques
différentes.
I.7.2 Qu'est-ce qu'un VPN (Virtual Private
Network)
Le VPN est une technologie permettant de construire
virtuellement un réseau privé en utilisant la technologie
d'authentification, la technologie de cryptage, la technologie de tunneling,
etc. sur un réseau public partagé par de nombreuses personnes
comme la ligne Internet [24J.
I.7.3 Les protocoles du VPN
I.7.3.1 OpenVPN
Il s'agit d'un protocole open source relativement nouveau,
fiable et exemplaire.
Très populaire parmi les services tiers, il n'y a pas de
support natif pour la plateforme.
Il prend en charge une variété d'algorithmes,
garantissant le plus haut niveau de sécurité.
C'est l'un des protocoles les plus rapides. La vitesse de
communication dépend du niveau de cryptage, mais dans la plupart des
cas, l'effet n'est pas ressenti en utilisation normale.
Bien qu'il puisse sembler difficile à configurer, de
nombreux excellents services VPN sont conçus pour nécessiter peu
ou pas d'intervention de l'utilisateur [25J.
I.7.3.2 IKEv2 (Internet Key Exchange v2)
IKEv2 est un protocole de tunneling basé sur IPsec
développé par Microsoft et Cisco. Il est stable et
sécurisé car il prend en charge la capacité de reconnexion
et divers algorithmes.
Il possède une très bonne vitesse de
communication relativement plus rapide que L2TP, SSTP, PPTP.
Il n'est pas souvent disponible sur d'autres plates-formes,
à l'exception des terminaux BlackBerry. Parce qu'il s'agit d'une
technologie propriétaire, certaines personnes peuvent vouloir l'utiliser
en fonction de leur connaissance de Microsoft. Mais la même version open
source existe [26J.
Chapitre I Généralités et
présentation de l'ouvrage
[21]
I.7.3.3 L2TP (protocole de tunneling de couche
2)
Il vient du Cisco L2F et du PPTP de Microsoft. Puisqu'il n'y
a aucune fonction de sécurité, elle est
généralement fournie avec IPsec.
Les terminaux et les systèmes d'exploitation qui
prennent en charge les VPN récents sont toujours intégrés.
Dans l'ensemble, c'est un bon protocole, mais il a été
souligné que la NSA (National Security Agency) pourrait
interférer avec une fuite récente. Il n'y a pas beaucoup
d'avantages par rapport à OpenVPN
(27].
I.7.3.4 SSTP (Secure Socket Tunneling
Protocol)
SSTP est introduit pour la première fois par Microsoft
sur Windows Vista. Il est intégré à Windows et peut ne pas
être disponible sur d'autres plateformes. La plupart des pares-feux
peuvent être facilement traversés. En raison de la technologie
Microsoft, vous ne pouvez pas dire où vos données sont
envoyées (28].
La vitesse de communication est rapide et relativement
sécurisée, mais les vulnérabilités qui la
sous-tendent la rendent inférieure au meilleur protocole.
I.7.3.5 PPTP (protocole de tunneling point à
point)
Il s'agit du premier protocole VPN pris en charge par
Windows. Il peut être utilisé sur tous les appareils pouvant
utiliser un VPN.
La vitesse de communication est très élevée
en raison des faibles normes de cryptage.
PPTP offre une très faible sécurité. On
sait qu'il est facilement gêné par la NSA depuis de nombreuses
années. Microsoft a amélioré PPTP, mais recommande
d'utiliser d'autres protocoles, tels que SSTP et L2TP / IPSec.
[22]
Chapitre I Généralités et
présentation de l'ouvrage
I.7.3.6 Comparaison entre les protocoles
[29]
Protocol
|
La
vitesse
|
Cryptage &
Navigation sécurisée
|
La
stabilité
|
Streaming multimédia
|
Partage de fichiers P2P
|
Compatible avec
|
Avantages
|
Inconvénien ts
|
PPTP
|
Vite
|
Faible
|
Moyen
|
Bien
|
Bien
|
La plupart des OS et appareils.
|
Haute vitesse.
|
Ancien protocole.
Faible sécurité.
|
L2TP/IPSec
|
Vite
|
Moyen
|
Bien
|
Bien
|
Bien
|
La plupart des OS et appareils.
|
La sécurité est forte.
|
Vitesse lente.
Peut être bloqué par un pare-feu
|
IKEv2/IPSec
|
Vite
|
Bien
|
Bien
|
Bien
|
Bien
|
La plupart des OS et appareils.
|
La sécurité est forte.
Haute vitesse.
Suivez
automatiquement la communication
|
Moins d'appareils pris en charge.
|
OpenVPN
|
Vite
|
Bien
|
Moyen
|
Bien
|
Bien
|
La plupart des OS et appareils
|
La sécurité est forte.
Haute vitesse Open source.
Peut passer à travers le pare-feu
|
Peut nécessiter une application tierce.
|
SSTP
|
Moyen
|
Bien
|
Moyen
|
Moyen
|
Bien
|
Windows
|
La sécurité est bien.
Non bloqué par le pare-feu.
|
Est opaque
Pour Windows
|
|
Tableau I- 2: Comparaison entre les protocoles du
VPN
Chapitre I Généralités et
présentation de l'ouvrage
[23]
I.8 Conclusion
Dans ce chapitre, nous avons couvert l'évolution de la
blockchain, son histoire et sa définition, quels sont les avantages de
la conception et son fonctionnement, pourquoi est-il si important avec certains
cas d'utilisation pertinents et cette dernière est divisé en deux
partie privée et publique et nous conclurons par les mécanismes
de sécuritéì dans les réseaux.
Dans le chapitre II, nous approfondirons dans
les fondamentaux de la blockchain.
|