Vous êtes sur la page 1sur 17

TABLE DES MATIERES

TABLE DES MATIERES ....................................................................................................... 1


INTRODUCTION .................................................................................................................... 2
I. PRESENTATION GENERALE DE BLOCKCHAIN............................................... 2
1. Origine ......................................................................................................................................... 2
2. Caractéristiques générales .......................................................................................................... 2
3. Type de Blockchain ...................................................................................................................... 3
a) La technologie blockchain publique .................................................................................... 3
b) La technologie blockchain privée ......................................................................................... 4
c) Blockchain hybride................................................................................................................ 5
d) La technologie blockchain de consortium ........................................................................... 6
II. FONCTIONNEMENT DE LA BLOCKCHAIN ........................................................ 8
III. LES APPLICATIONS POSSIBLES DE LA BLOCKCHAIN ............................... 10
IV. MISE EN ŒUVRE D’UNE BLOCKCHAIN ........................................................... 12
V. AVANTAGES ET LIMITES ..................................................................................... 14
1. Les avantages de la Blockchain ................................................................................................. 14
2. Les limites de la Blockchain ....................................................................................................... 16
CONCLUSION ....................................................................................................................... 17

1
INTRODUCTION

Pour bien définir ce qu’est la « blockchain » de manière générale, nous


dirons qu’il s’agit d’une technologie permettant le stockage et la transmission
d’informations dans un contexte totalement transparent, décentralisé et sécurisé.
Pour mieux visualiser le concept, il convient d’imaginer des données
informatiques par blocs où chaque bloc est dépendant du précédent. Il en résulte
au final la constitution d’une véritable base de données contenant l’historique des
échanges effectués entre les membres depuis l’origine. Le mathématicien Jean-
Paul Delahaye associe les caractéristiques de la blockchain à un « grand livre
comptable public, anonyme et infalsifiable ». L’origine de cette technologie
remonte aux années 1990, époque de piratage des fichiers audio et vidéo en «
peer-to-peer ».

I. PRESENTATION GENERALE DE BLOCKCHAIN

1. Origine

Développée à partir de 2008, la blockchain est, en premier lieu, une


technologie de stockage et de transmission d’informations. Cette technologie
offre de hauts standards de transparence et de sécurité car elle fonctionne sans
organe central de contrôle. Plus concrètement, la blockchain permet à ses
utilisateurs - connectés en réseau - de partager des données sans intermédiaire.

Une blockchain est un registre, une grande base de données qui a la


particularité d’être partagée simultanément avec tous ses utilisateurs, tous
également détenteurs de ce registre, et qui ont également tous la capacité d’y
inscrire des données, selon des règles spécifiques fixées par un protocole
informatique très bien sécurisé grâce à la cryptographie.

2. Caractéristiques générales

Les données de la blockchain répondent à 3 caractéristiques principales qui sont :

• Immuables : Les données stockées dans la blockchain sont immuables (ne


peuvent être supprimées) et ne peuvent pas être modifiées facilement

2
comme expliqué ci-dessus. De plus, les données sont ajoutées au bloc après
avoir été approuvées par tous les membres du réseau et permettent ainsi des
transactions sécurisées. Ceux qui valident les transactions et les ajoutent en
bloc sont appelés mineurs.
• Infalsifiables : il est impossible de modifier une transaction après son
intégration. La blockchain est décentralisée tel un grand livre ouvert. Le
grand livre est l’enregistrement des transactions effectuées et parce qu’il est
visible par tout le monde, il est donc appelé un grand livre ouvert. Aucun
individu ou aucune organisation n’est en charge des transactions. Chaque
connexion du réseau blockchain a une même copie du grand livre.

• Chronologiques : Les transactions sont intégrées les unes a la suite des


autres au fil du temps

• La blockchain fournit un réseau Peer to Peer : Cette caractéristique de


la blockchain permet aux transactions de n’impliquer que deux parties,
l’expéditeur et le destinataire. Ainsi, il supprime l’exigence d’« autorisation
de tiers », car tout le monde dans le réseau est lui-même en mesure
d’autoriser les transactions.
Par exemple, si j’envoie de l’argent des États-Unis à mon ami en Inde par
le biais d’une banque, la banque sera le tiers de confiance. Tout d’abord,
elle vérifiera la transaction, puis pourra réduire certains frais pour la
transaction. D’où la blockchain entre en vue. Il vise à supprimer les tiers de
confiance afin de rendre la transaction rapide et bon marché.

3. Type de Blockchain

On distingue quatre sortes de blockchains : publiques, privées, hybrides et


consortium.
a) La technologie blockchain publique

Le premier type de technologie blockchain est la blockchain publique. C’est


de là que proviennent les cryptomonnaies comme le bitcoin, qui ont contribué à
populariser la technologie du ledger distribué (DLT). Elle supprime les problèmes
liés à la centralisation, notamment une sécurité et une transparence moindres. La
technologie DLT ne stocke pas les informations en un seul endroit, mais les
distribue sur un réseau de pair à pair. Sa nature décentralisée exige une méthode

3
pour vérifier l’authenticité des données. Cette méthode est un algorithme de
consensus par lequel les participants à la blockchain se mettent d’accord sur l’état
actuel du Ledger. La preuve de travail (PoW) et la preuve d’enjeu (PoS) sont deux
méthodes de consensus courantes.

La blockchain publique est non restrictive et sans autorisation, et toute


personne disposant d’un accès à Internet peut se connecter à une plateforme
blockchain pour devenir un nœud autorisé. Cet utilisateur peut accéder aux
enregistrements actuels et passés et mener des activités de minage, les calculs
complexes utilisés pour vérifier les transactions et les ajouter au ledger. Aucun
enregistrement ou transaction valide ne peut être modifié sur le réseau, et
n’importe qui peut vérifier les transactions, trouver des bugs ou proposer des
modifications car le code source est généralement open source.

b) La technologie blockchain privée

Un réseau blockchain qui fonctionne dans un environnement restrictif


comme un réseau fermé, ou qui est sous le contrôle d’une seule entité, est une
blockchain privée. Bien qu’il fonctionne comme un réseau blockchain public dans
le sens où il utilise des connexions pair-à-pair et la décentralisation, ce type de
blockchain est à une échelle beaucoup plus petite. Au lieu que n’importe qui
puisse s’y joindre et fournir de la puissance de calcul, les blockchains privées sont
généralement exploitées sur un petit réseau au sein d’une entreprise ou d’une
organisation. Elles sont également appelées blockchains à autorisation ou
blockchains d’entreprise.
Avantages :

L’organisation qui les contrôle définit les niveaux de permission, la


sécurité, les autorisations et l’accessibilité. Par exemple, une organisation qui
met en place un réseau blockchain privé peut déterminer quels nœuds peuvent
voir, ajouter ou modifier des données. Elle peut également empêcher des tiers
d’accéder à certaines informations. Parce qu’elles sont limitées en taille, les
blockchains privées peuvent être très rapides et traiter des transactions beaucoup
plus rapidement que les blockchains publiques.

4
« Vous pouvez considérer les blockchains privées comme l’intranet, tandis que
les blockchains publiques ressemblent davantage à l’internet », a déclaré
Godefroy.

Inconvénients :

Les inconvénients des blockchains privées incluent l’affirmation


controversée qu’elles ne sont pas de véritables blockchains, puisque la
philosophie de base de la blockchain est la décentralisation. Il est également plus
difficile d’obtenir une confiance totale dans les informations, puisque des nœuds
centralisés déterminent ce qui est valide. Le petit nombre de nœuds peut
également signifier une sécurité moindre. Si quelques nœuds se rebellent, la
méthode de consensus peut être compromise.

En outre, le code source des blockchains privées est souvent propriétaire et


fermé. Les utilisateurs ne peuvent pas le vérifier ou le confirmer de manière
indépendante, ce qui peut conduire à une sécurité moindre. L’anonymat n’existe
pas non plus sur une blockchain privée.

Cas d’utilisation : La rapidité des blockchains privées les rend idéales pour les
cas où la blockchain doit être cryptographiquement sécurisée mais où l’entité qui
la contrôle ne veut pas que le public ait accès aux informations.

c) Blockchain hybride

Parfois, les organisations veulent le meilleur des deux mondes et utilisent une
blockchain hybride, un type de technologie de blockchain qui combine des
éléments de blockchain privée et publique. Elle permet aux organisations de
mettre en place un système privé, basé sur des autorisations, parallèlement à un
système public sans autorisation, ce qui leur permet de contrôler qui peut accéder
à des données spécifiques stockées dans la blockchain, et quelles données seront
ouvertes au public.

En général, les transactions et les enregistrements d’une blockchain hybride ne


sont pas rendus publics mais peuvent être vérifiés si nécessaire, par exemple en
autorisant l’accès par un contrat intelligent. Les informations confidentielles sont
conservées à l’intérieur du réseau mais restent vérifiables. Même si une entité
privée peut posséder la blockchain hybride, elle ne peut pas modifier les
5
transactions. Lorsqu’un utilisateur rejoint une blockchain hybride, il a un accès
complet au réseau. L’identité de l’utilisateur est protégée des autres utilisateurs,
sauf s’il effectue une transaction. Dans ce cas, son identité est révélée à l’autre
partie.

Avantages : L’un des grands avantages de la blockchain hybride est que, comme
elle fonctionne dans un écosystème fermé, les pirates extérieurs ne peuvent pas
monter une attaque à 51 % sur le réseau. Elle protège également la vie privée mais
permet de communiquer avec des tiers. Les transactions sont bon marché et
rapides, et elle offre une meilleure évolutivité qu’un réseau blockchain public.

Inconvénients : Ce type de blockchain n’est pas totalement transparent car les


informations peuvent être protégées. La mise à niveau peut également être un défi,
et les utilisateurs ne sont pas incités à participer ou à contribuer au réseau.

Cas d’utilisation : La blockchain hybride présente plusieurs cas d’utilisation


importants, notamment dans le domaine de l’immobilier. Les entreprises peuvent
utiliser une blockchain hybride pour gérer des systèmes de manière privée, mais
montrer certaines informations, telles que les annonces, au public. Le commerce
de détail peut également rationaliser ses processus grâce à la blockchain hybride,
et les marchés hautement réglementés comme les services financiers peuvent
également tirer des avantages de son utilisation.

d) La technologie blockchain de consortium

Le quatrième type de blockchain, la blockchain de consortium, également


appelée blockchain fédérée, est similaire à une blockchain hybride en ce sens
qu’elle possède des caractéristiques de blockchain privée et publique. Mais elle
est différente dans la mesure où plusieurs membres de l’organisation collaborent
sur un réseau décentralisé. Essentiellement, une blockchain de consortium est une
blockchain privée dont l’accès est limité à un groupe particulier, ce qui élimine
les risques liés au contrôle du réseau par une seule entité sur une blockchain
privée.

Dans une blockchain de consortium, les procédures de consensus sont


contrôlées par des nœuds prédéfinis. Elle dispose d’un nœud validateur qui initie,
reçoit et valide les transactions. Les nœuds membres peuvent recevoir ou initier
des transactions.
6
Avantages : Une blockchain de consortium a tendance à être plus sûre, plus
évolutive et plus efficace qu’un réseau blockchain public. Comme les blockchains
privées et hybrides, elle offre également des contrôles d’accès.

Inconvénients : La blockchain de consortium est moins transparente que la


blockchain publique. Elle peut toujours être compromise si un nœud membre est
victime d’une faille, les règlements propres à la blockchain peuvent nuire à la
fonctionnalité du réseau.

Cas d’utilisation : Les banques et les paiements sont deux utilisations de ce type
de blockchain. Différentes banques peuvent se regrouper et former un consortium,
en décidant quels nœuds valideront les transactions. Les organismes de recherche
peuvent créer un modèle similaire, tout comme les organisations qui souhaitent
assurer le suivi des aliments. C’est idéal pour les chaînes d’approvisionnement,
en particulier pour les applications alimentaires et médicales.

Bien qu’il s’agisse des quatre principaux types de blockchain, il faut également
tenir compte des algorithmes de consensus. En plus de PoW et PoS, quiconque
prévoit de mettre en place un réseau voudra également considérer les autres types,
disponibles sur différentes plateformes comme Wave et Burstcoin. Par exemple,
la preuve d’enjeu louée permet aux utilisateurs de gagner de l’argent grâce au
minage, sans que le nœud ait besoin de miner lui-même. La preuve d’importance
utilise à la fois le solde et les transactions pour attribuer une importance à chaque
utilisateur.

En définitive, la technologie blockchain gagne en popularité et obtient


rapidement le soutien des entreprises. Chacun de ces types de blockchain a une
application potentielle qui peut améliorer la confiance et la transparence et créer
un meilleur enregistrement des transactions.

Résumé : Une blockchain publique est ouverte à tous et est semblable


à un grand livre comptable public, anonyme et qu’on ne peut falsifier. Tout
le monde est donc à même de le consulter librement et gratuitement. Il est
possible d’ajouter du contenu, mais il est impossible d’en effacer ou de
détruire la chaîne. Une blockchain privée reste quant à elle bien plus
confidentielle, étant uniquement consultable par les personnes qui y sont
autorisées.

7
II. FONCTIONNEMENT DE LA BLOCKCHAIN

En pratique, une blockchain est une base de données qui contient l’historique
de tous les échanges effectués entre ses utilisateurs depuis sa création. Nous avons
une petite explication des principales caractéristiques :

• L’identification de chaque partie s’effectue par un procédé cryptographique


• La transaction est envoyée à un réseau (ou « nœud » de stockage)
d’ordinateurs situés dans le monde entier
• Chaque « nœud » héberge une copie de la base de données dans lequel est
inscrit l’historique des transactions effectuées. Toutes les parties prenantes
peuvent y accéder simultanément
• Le système de sécurisation repose sur un mécanisme de consensus de tous
les « nœuds » à chaque ajout d’informations. Les données sont déchiffrées et
authentifiées par des « centres de données » ou « mineurs ». La transaction ainsi
validée est ajoutée dans la base sous forme d’un bloc de données chiffrées (c’est
le « block » dans blockchain)
• La décentralisation de la gestion de la sécurité empêche la falsification des
transactions. Chaque nouveau bloc ajouté à la blockchain est lié au précédent et
une copie est transmise à tous les « nœuds » du réseau. L’intégration est
chronologique, indélébile et infalsifiable.

Une autre explication : Pour fonctionner, la blockchain nécessite l’utilisation


d’une monnaie ou d’un jeton (aussi appelé token) programmable. Nous pouvons
par exemple utiliser le Bitcoin.

Pour fonctionner, la blockchain nécessite l’utilisation d’une monnaie ou d’un


jeton (aussi appelé token) programmable. Vous pouvez par exemple utiliser le
Bitcoin.

Dans la blockchain, toutes les transactions sont regroupées sous la forme de


blocs. Chaque bloc doit ensuite être validé par les nœuds du réseau en utilisant
une méthode algorithmique. Une fois que le bloc est validé, il est ajouté à la chaîne
de blocs et devient donc visible de tous les utilisateurs.

Tout le principe du Bitcoin est de créer un système de monnaie décentralisée.


Il ne doit pas y avoir de serveur central. Il utilise donc la blockchain (et son
principe du Peer to Peer) pour échanger des fichiers entre ordinateurs sans autorité
centrale (ici les banques) : les ordinateurs s’accordent entre eux grâce à

8
l’algorithme du Bitcoin. Chaque ordinateur qui possède une copie de la
blockchain est appelé un “nœud” du réseau.

Il existe 2 principes généraux pour comprendre le fonctionnement de la


blockchain :

• Le concept de clé publique/clé privée : la clé privée (gardée secrète par


son propriétaire) lui permet de signer une transaction tandis que la clé
publique (disponible à tous) permet de s’assurer de l’authenticité de la
personne à l’origine de cette transaction. Aussi cette clé publique permet
de vérifier la signature d’un message sans pour autant pouvoir simuler cette
signature.
• Les fonctions de Hash : fonction particulière qui, à partir d’une donnée
fournie, crée une empreinte (suite de caractères) unique servant à identifier
la donnée initiale. S’il y a une modification de la donnée de départ, le hash
est totalement différent. Une propriété importante de ces fonctions, c’est
qu’elles sont à sens unique : on ne peut pas prendre un hash pour retrouver
la donnée initiale.

Le protocole de transaction associé à ce type de réseau fonctionne de la même


manière qu’une transaction bancaire classique et contient les mêmes
informations :

• Le montant à envoyer
• À qui on veut l’envoyer
• La signature de l’envoyeur via le système de clé privée/clé publique
permettant de crypter et d’authentifier l’envoi

Dans un réseau blockchain, de nombreuses transactions se font simultanément.


Ainsi, plusieurs transactions sont regroupées dans un block. En moyenne, un bloc
contient toutes les transactions faites lors des 10 dernières minutes.

Avant d’arriver à son destinataire, la transaction va passer par les nœuds du


réseau. Ces nœuds vont vérifier que la transaction est bien valide puis la passer au
suivant. Parmi ces nœuds, certains sont appelés mineurs et ont un rôle de
vérification de block. Selon les types de blockchain, les techniques de validation
sont différentes. Pour le bitcoin, on parle de “Proof-of-Work” (preuve de travail)
qui consiste en la résolution de problèmes algorithmiques (où il faut tester des
fonctions de hash). Ces problèmes mathématiques sont difficiles à résoudre et leur

9
résolution est la preuve de l’effort du mineur C’est grâce à ce principe que la
blockchain peut se passer d’autorité centrale validant les transactions.

Une fois le bloc horodaté et validé, il est ajouté à la chaîne de blocs. Cette
chaîne permet de relier tous les blocs depuis la création de la blockchain et ainsi
de les authentifier. La transaction de départ est alors visible pour le destinataire
ainsi que l’ensemble du réseau.

D’autres protocoles blockchain que le Bitcoin existe. Par exemple, on peut


observer les protocoles généralistes Ethereum et Hyperledger. Ethereum
semble moins robuste en termes de technologie de paiement que le Bitcoin mais
le système est suffisamment souple pour être appliqué à de nombreux autres cas
d’usage. L’Hyperledger est un système de Blockchain plutôt taillé pour les
entreprises où le principe de décentralisation est moins important. L’idée, ici, est
d’avoir des personnes qui vont décider pour un groupe (comme en entreprise) tout
en rendant disponible une information authentifiable.

Dans la blockchain, toutes les transactions sont regroupées sous la forme


de blocs. Chaque bloc doit ensuite être validé par les nœuds du réseau en utilisant
une méthode algorithmique. Une fois que le bloc est validé, il est ajouté à la chaîne
de blocs et devient donc visible de tous les utilisateurs. Voici un schéma qui vous
permettra d’illustrer cette définition.

III. LES APPLICATIONS POSSIBLES DE LA BLOCKCHAIN

On peut classer l’utilisation de la blockchain en trois catégories :

• Le transfert d’actifs (utilisation monétaire, titres, votes…)


• L’ancrage (ou notariat) : assurer une meilleure traçabilité des produits et
des actifs grâce aux fonctions de hash (laisser une trace d’un document).
• Les smart contracts : il s’agit de programmes autonomes qui exécutent
automatiquement des transactions, sans nécessiter d’intervention humaine,
une fois démarrés. Par exemple, il est possible d’utiliser ce principe pour
donner des droits d’accès à une personne (ayant signé le smart contract
défini) pour qu’elle puisse accéder à de la donnée “secrète” que je possède.

10
La blockchain représente une innovation majeure qui est notamment
utilisée dans le secteur bancaire. En effet, historiquement, la technologie
blockchain s’est développée pour soutenir des transactions réalisées via les
cryptomonnaies/cryptoactifs (dont les bitcoins qui sont la forme la plus connue)
et qui ont comme caractéristique principale de ne pas dépendre d’un organisme
centralisateur (comme une banque centrale) et d’être internationales.

Mais son usage ne se limite pas aux cryptomonnaies. De nombreux


domaines et secteurs d’activités, marchands ou non marchands, publics ou privés,
utilisent déjà la blockchain ou prévoient de le faire dans les années à venir.

• Dans le secteur de la banque : la technologie ouvre la possibilité de


valider des transactions sans l’intermédiaire d’une chambre de compensation, ce
qui devrait permettre de certifier des opérations dans des délais beaucoup plus
courts. La blockchain peut aussi favoriser le partage d’informations entre acteurs
concurrents d’une place financière dans le respect du secret de leurs données
commerciales et, ce faisant, faciliter la gestion de structures ou d’instruments
communs en réduisant les coûts de contact et les frais d’administration.
• Dans le secteur de l’assurance : l’apport de la blockchain tient par
exemple à l’automatisation des procédures de remboursement et à l'allégement de
certaines formalités à la charge des sociétés comme de leurs clients, sous réserve
que les hypothèses et les conditions d’indemnisation et de préjudice soient
clairement établies.
• Dans le secteur de la logistique : la blockchain présente deux intérêts :
o Assurer une traçabilité des produits, ainsi que la mémoire des
différentes interventions sur une chaîne de production et de distribution
o Alléger les formalités et créer les conditions d’une coopération entre
les acteurs d’une filière, notamment en matière d’échange d’informations. Cet
usage pourrait trouver aussi une application dans le secteur agro-alimentaire
pour la traçabilité des aliments, particulièrement intéressante en cas de crise
sanitaire.
• Dans le secteur énergétique, en autorisant l’échange de services et de
valeurs en dehors d’une instance de gestion centrale, la blockchain crée
potentiellement les conditions de la mise en place – à une plus ou moins grande
échelle suivant les capacités techniques – de réseaux locaux de production,
d’échange et de revente d’énergie pour équilibrer l’offre et la demande à tout
moment, ce qui est une contrainte forte des réseaux d’électricité en particulier

11
Mais de nombreux autres secteurs sont potentiellement concernés par l’utilisation
de la technologie blockchain : santé, immobilier, luxe, aéronautique, etc.

IV. MISE EN ŒUVRE D’UNE BLOCKCHAIN

Les grandes étapes de mise en œuvre d’un projet blockchain sont :

1.Choisir un cas d’utilisation de la blockchain a implémentée

2. Sélectionner sa plateforme
Le réseau de blockchain Ethereum fait la quasi-unanimité. En raison du
dynamisme et de la réactivité de sa communauté mais aussi de la richesse
de sa documentation, l’environnement open source proposé par la
fondation du même nom a été choisi par la quasi-totalité des entreprises
engagées dans des projets de blockchain.

3. Initialiser la blockchain

Pour initialiser la blockchain, il suffit d’en créer manuellement le premier


bloc. Ce bloc doit contenir toutes les caractéristiques de la chaîne. Ils seront
ensuite partagés à tous les nœuds (ou terminaisons) du réseau. Pour définir ce
bloc, il faut créer un fichier au format JSON. Plusieurs paramètres sont à
renseigner : « nonce » (ou valeur aléatoire utilisée par le hash cryptographique),
« Difficulty » (niveau d’exigence associé au traitement cryptographique),
« timestamp » (temps de validation entre deux blocs successifs), etc. Une fois ce
fichier JSON renseigné, il revient au client Geth de créer le dossier contenant la
blockchain (chaindata) et de l’initialiser (cf. le billet de blog de Guillaume
Nicolas, développeur chez SQLI)

Le but est ainsi de répliquer les commandes autant de fois que votre réseau
comporte de nœuds, ces derniers étant paramétrés en accord avec le tout premier.
Pour qu’ils communiquent au sein de la blockchain, il faut dans un deuxième
temps les relier entre eux. Pour que Geth se connecte à un nœud du réseau et
coordonne l’ensemble, il doit récupérer son identifiant appelé enode sur
Ethereum.
Pour assurer la propagation du programme de nœud en nœud sur Ethereum,
il sera nécessaire de disposer de cryptomonnaie en Gas pour acquérir la puissance
informatique nécessaire auprès des acteurs du réseau. « Dans le cas d’une
blockchain privée, on génère du Gas soi-même en minant un premier bloc, puis
un suivant », explique François Zaninotto, PDG de Marmelab

12
4. Choisir le bon protocole de consensus

Le concept de preuve de travail (ou « proof of work »), qui permet de valider
et sécuriser le contenu des blocs, prend tout son sens dans une blockchain
publique en raison de la masse et de la concurrence entre les nœuds. En revanche,
il n’a pas de raison d’être au sein d’une blockchain privée. Par essence, le nombre
d’acteurs d’une blockchain privée est restreint et ils sont identifiés. Dans cette
configuration, on va par conséquent utiliser d’autres protocoles de consensus. On
pourra s’orienter par exemple vers la preuve d’enjeux (proof-of-stake) ou la
preuve d’autorité (proof-of-authority). Cette dernière se prêtant plus volontiers à
un réseau privé. Au démarrage, on va élire les nœuds qui font autorité, la majorité
validant la transaction.

Cette notion de preuve d’autorité est récente. De même, le déploiement des


scripts de paramétrage a été simplifié. Dans un fichier de configuration, on
indique le nombre de nœuds souhaité et le mécanisme de consensus retenu. Puis,
on exécute ce fichier en une ligne de commande. Toutes ces étapes se faisaient
précédemment manuellement. Sorti en avril 2017 avec la version 1.6 de Geth,
l’outil Puppeth (toujours en développement) permet ce type d’industrialisation.

5. Exécuter son premier « smart contract »

Monter une blockchain ne présente d’intérêt que si on peut faire tourner


dessus un « smart contract ». C’est-à-dire un « contrat intelligent » qui s’auto-
exécute à partir d’un seuil prédéfini qui peut être une date, un montant ou tout
événement dûment authentifié. Sur le terrain des blockchains publiques, ce
concept a fait le succès d’Ethereum.

Le langage de référence pour développer de telles applications sur


Ethereum est Solidity. Dans sa grammaire, ce langage est relativement simple et
se rapproche d’un environnement de programmation orienté objet avec les notions
de classe, d’attribut, de fonction. A cela s’ajoutent des spécificités propres à
Ethereum. Quand on fait appel à une fonction par exemple, chaque transaction a
un émetteur, des frais associés. Le code est aussi plus sensible, la moindre erreur
a des conséquences.

« On ne conçoit pas un smart contract comme une application web »

Au-delà de connaissances en JavaScript, un tel projet impliquerait de


disposer d’une compréhension globale de la blockchain, de sa philosophie et de
ses contraintes. On ne conçoit pas un « smart contract » comme une application
13
web. Avant de mettre les mains dans le cambouis, il est important de se poser
d’abord la question de la pertinence d’une DApp (ou application
décentralisée ndlr) qui n’a d’intérêt que pour résoudre un problème de confiance
entre acteurs.

6. Déboguer et passer à l’échelle

Le débogage d’une blockchain semble avoir marqué les esprits de ceux qui l’on
pratiqué. A la différence d’un programme exécuté par un ordinateur, un bloc est
exécuté sur un ensemble de nœuds ou terminaisons réseau. Sachant que chacun
doit aboutir à un traitement équivalent à ceux des autres. Le processus rend le
débogage de l’application extrêmement complexe et il se fait à tâtons sur le mode
essai/erreur .

Contrairement à une application classique où une nouvelle version écrase la


précédente, la moindre correction ou rajout d’une fonctionnalité au sein d’une
chaîne de blocs est historisé à vie. Un smart contrat bogué reste stocké dans la
blockchain. Pour régler le problème, il faudra en créer un nouveau puis attendre
que la chaîne propage les changements.

Enfin, s’agissant de plateformes open source, le code évolue constamment et


les mises à jour ont alors tendance à casser les smart contracts existants.

Pour toutes ces raisons, il est recommandé de faire auditer son smart contract
par un expert. Une phase qui serait d’autant plus indispensable dans le cas d’un
contrat déployé sur une blockchain publique pour des usages business ciblant des
clients.

V. AVANTAGES ET LIMITES

1. Les avantages de la Blockchain

L’utilisation de la blockchain comporte de nombreux avantages, parmi


lesquels :

• La traçabilité : Au sein de la chaine aucune information ne peut être


supprimée. Chaque nœud du réseau possède une copie intégrale du registre
de la blockchain. Il s’agit donc d’un système stable assurant la traçabilité
des données ;

14
• Sécurité renforcée : Vos données sont sensibles et cruciales, et la
blockchain peut modifier considérablement la façon dont vos informations
stratégiques sont perçues. En créant un enregistrement impossible à
modifier et chiffré de bout en bout, la blockchain aide éviter la fraude et les
activités non autorisées. Les problèmes de confidentialité peuvent
également être traités dans la blockchain, en anonymisant les données à
caractère personnel et en utilisant des autorisations pour empêcher les
accès. Les informations sont enregistrées sur un réseau d'ordinateurs et non
sur un serveur unique, ce qui rend difficile l’accès aux données par les
pirates informatiques.
• Plus de transparence : Sans la blockchain, chaque entreprise doit gérer
une base de données distincte. Parce que la blockchain utilise un grand livre
distribué, les transactions et les données sont enregistrées à l'identique dans
plusieurs endroits. Tous les participants au réseau disposant d'une
autorisation d'accès voient les mêmes informations en même temps, ce qui
met en place une transparence complète. Toutes les transactions sont
enregistrées de manière non modifiable et sont horodatées. Cela permet aux
membres de visualiser l'historique entier d'une transaction et élimine
pratiquement toute possibilité de fraude.
• Efficacité et rapidité accrues : La rapidité des transactions grâce au fait
que la validation d’un bloc ne prend que quelques secondes à quelques
minutes. Les gains de productivité et d’efficacité générés grâce au fait que
la blockchain confie l’organisation des échanges à un protocole
informatique. Cela réduit mécaniquement les coûts de transaction ou de
centralisation existant dans les systèmes traditionnels (frais financiers, frais
de contrôle ou de certification, recours à des intermédiaires qui se
rémunèrent pour leur service ; automatisation de certaines prestations, etc.).
• Automatisation : Les transactions peuvent même être automatisées à
l'aide de « contrats intelligents », avec à la clé plus d'efficacité et de
rapidité du traitement. Une fois les conditions préalablement spécifiées
remplies, le stade suivant de la transaction ou du processus est déclenché
automatiquement. Les contrats intelligents réduisent l'intervention
humaine et évitent de devoir faire appel à des tiers pour vérifier que les
dispositions du contrat ont été respectées. Dans le domaine des
assurances, par exemple, lorsqu'un client a fourni toute la documentation
nécessaire pour déposer une demande de remboursement, l'action peut
être automatiquement traitée et payée

15
2. Les limites de la Blockchain

Malgré toutes ses promesses, la technologie Blockchain possède des limites :

• Une blockchain ne remplace pas complétement les intermédiaires : Les


smart contracts présents sur la blockchain sont dépendants des entrées
saisies manuellement par l'utilisateur. Par exemple, la blockchain ne peut
pas attester elle-même la véracité d'un diplôme : elle peut en assurer
l'authentification pérenne si une institution l'inscrit sur le réseau. La
promesse de pouvoir se passer de tout organe de régulation n'est pas
souhaitable dans toutes les situations. D'autre-part, l'utilisateur reste
dépendant de la plateforme qui offre une interface d'utilisation pour cette
blockchain.
• Les projets s’articulant autour d’une blockchain ne sont pas
infaillibles : L'automatisation des opérations inscrites sur une blockchain
sont gages de sécurité et transparence. Cependant, l'exploitation d'une faille
par un pirate est un risque qui doit toujours être envisagé. L'exemple du
piratage de TheDAO en 2016 (plateforme de crowfunding s'appuyant sur
la blockchain Ethereum) met en lumière deux paradigmes possibles : le
code d'un smart contract doit-il rester inviolable ? Ou bien une modification
de celui-ci par la main humaine prévaut-elle sur la garantie intangible de
son exécution ?
• Certaines blockchains sont gourmandes en énergie : Le système de
validation par Preuve de Travail ou Proof of Work utilisés par de
nombreuses blockchains (dont Bitcoin) assurant la sécurité du registre
consomme énormément d'énergie. Bien que cela soit difficile à estimer, le
fonctionnement du Bitcoin aurait une consommation électrique équivalente
à celle de l'Irlande (d'après cette étude). Il s'agit néanmoins d'un "faux
problème" puisque des solutions ont été formulées et mises en œuvre pour
d'autres crypto-monnaies tel que le Proof of Capacity ou le Proof of Stake.

• La blockchain n’est théoriquement pas invulnérable aux attaques :


Jusqu'à preuve du contraire, réussir à mettre en défaut une blockchain
demeure extrêmement improbable. L'architecture du réseau rend non

16
seulement les attaques coûteuses et compliquées, mais elle limite aussi la
nature des piratages possibles. Cependant, l'attaque des 51 % n'est
statistiquement pas impossible ; elle a déjà été largement étudiée. Son
action est limitée à la non validation de transactions ou à la double dépense.

CONCLUSION

La blockchain est ‘une base de données transactionnelle distribuée’ capable


de stocker et de transférer de la valeur ou des données par le biais d’Internet. Elle
se caractérise par sa transparence, son autonomie et le niveau élevé de sécurité
qu’elle offre à ses utilisateurs. On peut la comparer à un ‘grand livre comptable
décentralisé’ consultable en temps réel et impossible à falsifier. La technologie
blockchain repose sur la confiance, et permet la mise en place d’un système
automatisé de transactions offrant la possibilité de s’affranchir de la nécessité de
recourir à un intermédiaire.

17

Vous aimerez peut-être aussi