Sections
Blockchain 101
Comment fonctionne la blockchain ?
A quoi sert la blockchain ?
Section 1 - Blockchain 101
Contenu
Qu’est-ce que la blockchain ?
Comment les blocs sont-ils connectés ?
Blockchains et décentralisation
Le problème des généraux byzantins
Pourquoi les blockchains doivent-elles être décentralisées ?
Qu’est-ce qu’un réseau peer-to-peer ?
Quels sont les nœuds d’une blockchain ?
Blockchains publiques ou publiques blockchains privées
Comment fonctionnent les transactions ?
Comment effectuer des transactions Bitcoin
Comment retirer des bitcoins de Binance
Comment envoyer des bitcoins de Trust Wallet vers Electrum
Qui a inventé la technologie blockchain ?
Avantages et inconvénients de la technologie blockchain
Avantages
Contre
Qu’est-ce que la blockchain ?
Une blockchain est un type particulier de base de données. Vous avez peut-être également entendu parler de la technologie du grand livre distribué (DLT) – dans de nombreux cas, les deux concepts font référence à la même chose.
Une blockchain possède certaines propriétés uniques. Il existe des règles qui déterminent comment les données doivent être ajoutées, et une fois stockées, il est pratiquement impossible de les modifier ou de les supprimer.
Les données sont ajoutées au fil du temps dans des structures appelées blocs. Chaque bloc est construit au-dessus du précédent et comprend une partie des informations qui le relie à celui-ci. En regardant le bloc le plus récent, nous pouvons vérifier qu’il a été créé après le précédent. Donc, si nous continuons le long de la « chaîne », nous atteindrons notre premier bloc – connu sous le nom de bloc de genèse.
En utilisant une analogie, imaginez que vous disposez d’une feuille de calcul à deux colonnes. Dans la première cellule de la première colonne, vous saisissez les informations que vous souhaitez conserver.
Les données de cette première cellule seront converties en un identifiant à deux lettres, qui sera ensuite utilisé dans le cadre de la saisie suivante. Dans notre exemple, l'identifiant à deux lettres KP doit être utilisé pour remplir la cellule suivante de la deuxième ligne (defKP). Cela signifie que si vous modifiez les données de la première entrée (abcAA), vous aurez une combinaison de lettres différente dans toutes les cellules restantes.
Une base de données dans laquelle chaque entrée est liée à la dernière.
Si nous regardons maintenant la ligne 4, nous voyons que notre identifiant le plus récent est TH. Rappelez-vous comment nous avons mentionné que vous ne pouvez pas revenir en arrière et supprimer ou supprimer des entrées ? La raison en est qu’il serait facile pour quiconque de remarquer que cela s’est produit et que votre tentative de changement serait tout simplement ignorée.
Imaginez que vous modifiiez les données dans la première cellule – vous obtiendriez un identifiant différent, ce qui signifie que votre deuxième bloc aurait des données différentes, ce qui donnerait un identifiant différent dans la ligne 2, et ainsi de suite. TH est, par essence, le produit de toutes les informations qui le précèdent.
Comment les blocs sont-ils connectés ?
La discussion ci-dessus – avec nos identifiants à deux lettres – est une simple analogie avec la façon dont une blockchain utilise les fonctions de hachage. Le hachage est la colle qui maintient les blocs ensemble. Cela consiste à prendre des données de n'importe quelle taille pour produire une sortie (un hachage) qui aura toujours la même longueur.
Les hachages utilisés dans les blockchains sont intéressants, car la probabilité de trouver deux informations générant exactement le même résultat est astronomiquement faible. Comme pour nos identifiants ci-dessus, toute légère modification de nos données d'entrée entraînera une sortie complètement différente.
Nous pouvons illustrer cela avec SHA256, une fonction largement utilisée dans Bitcoin. Comme vous pouvez le constater, même l’utilisation différentielle des majuscules suffit à modifier complètement le résultat.
Des données d'entrée | Sortie de SHA256 |
---|---|
Académie Binance | 886c5fd21b403a139d24f2ea1554ff5c0df42d5f873a56d04dc480808c155af3 |
Académie Binance | 4733a0602ade574551bf6d977d94e091d571dc2fcfd8e39767d38301d2c459a7 |
académie binance | a780cd8a625deb767e999c6bec34bc86e883acc3cf8b7971138f5b25682ab181 |
Le fait qu’il n’y ait pas de « collisions » connues (c’est-à-dire deux entrées différentes donnant le même résultat) pour SHA256 est incroyablement précieux dans le contexte des blockchains. Cela signifie que chaque bloc peut pointer vers celui qui le précède en incluant son hachage, et toute tentative de modification d'anciens blocs sera immédiatement apparente.
Chaque bloc contient une empreinte digitale du précédent.
Blockchains et décentralisation
Nous avons expliqué la structure de base d'une blockchain. Mais lorsque vous entendez les gens parler de la technologie blockchain, ils ne font probablement pas référence à la base de données elle-même, mais plutôt à l'écosystème construit autour d'elle.
En tant que structures de données indépendantes, les blockchains ne sont utiles que pour des applications très spécifiques. Là où les choses deviennent intéressantes, c’est lorsque nous les utilisons comme un outil permettant à des inconnus de se coordonner les uns avec les autres. Combinée à d’autres technologies et à une certaine théorie des jeux, une blockchain peut agir comme un grand livre distribué que personne ne contrôle.
Cela signifie qu'aucun acteur n'a le pouvoir de modifier les informations relatives aux règles du système (nous reviendrons prochainement sur les règles). En ce sens, on pourrait affirmer que tout le monde est simultanément en possession du registre : les participants sont d’accord sur son apparence à tout moment.
Le problème des généraux byzantins
Le véritable défi qui s’oppose à un système comme celui décrit ci-dessus est ce que nous appelons le problème des généraux byzantins. Conçu dans les années 1980, il décrit un dilemme dans lequel des participants isolés doivent communiquer pour coordonner leurs actions. Le dilemme en question implique une série de généraux d’armée encerclant une ville, tout en décidant de l’attaquer ou non. Les généraux ne peuvent communiquer que via un messager.
Chacun doit décider s’il doit attaquer ou battre en retraite. Peu importe qu’ils fassent une chose ou une autre, tant que tous les généraux partagent la même décision. S’ils décident d’attaquer, ils ne réussiront que s’ils se déplacent à l’unisson. Alors, comment pouvons-nous garantir qu’ils y parviennent ?
Bien sûr, ils pourraient communiquer via le messager. Mais que se passerait-il si le messager était intercepté par un message disant « nous attaquerons à l’aube » et que ce message était remplacé par un autre disant « nous attaquerons ce soir » ? Et si l’un des généraux était un acteur malveillant qui trompait délibérément les autres pour assurer leur défaite ?
Les généraux réussissent lorsque tout le monde attaque (à gauche). Lorsque certains battent en retraite tandis que d’autres attaquent, ils seront vaincus (à droite).
Nous avons besoin d’une stratégie permettant de parvenir à un consensus, même dans le cas où les participants se révéleraient malveillants ou si des messages seraient interceptés. Ne pas maintenir une base de données n’est pas une situation de vie ou de mort équivalente à l’attaque d’une ville sans renforts, mais le même principe s’applique. S’il n’y a personne en charge de superviser la blockchain et de donner aux utilisateurs des informations « correctes », alors ce seront les utilisateurs qui devront pouvoir communiquer entre eux.
Pour pallier la défaillance potentielle d’un (ou plusieurs) utilisateurs, les mécanismes de la blockchain doivent avoir été soigneusement conçus pour résister à de tels revers. Nous appelons les systèmes capables d’atteindre cette tolérance aux pannes byzantines. Comme nous le verrons bientôt, les algorithmes de consensus sont utilisés pour faire respecter des règles fermes.
Pourquoi les blockchains doivent-elles être décentralisées ?
Bien entendu, on pourrait exploiter seul une blockchain. Mais vous finirez par avoir une base de données encombrante, comparée à d’autres alternatives supérieures. Et son véritable potentiel ne peut être exploité que dans un environnement décentralisé, c’est-à-dire dans lequel il existe une égalité entre tous les utilisateurs. De cette manière, la blockchain ne peut pas être éliminée ou dominée de manière malveillante. Ce sera une source unique de vérité visible par tous.
Qu’est-ce qu’un réseau peer-to-peer ?
Le réseau peer-to-peer (P2P) est notre couche utilisateur (ou la couche générale, dans notre exemple précédent). Il n'y a pas d'administrateur, donc au lieu de se connecter à un serveur central chaque fois que quelqu'un souhaite échanger des informations avec un autre utilisateur, il les envoie directement à ses pairs.
Regardons le graphique ci-dessous. À gauche, A doit envoyer son message via le serveur pour le transmettre à F. À droite, en revanche, les deux sont connectés sans intermédiaire.
Un réseau centralisé (à gauche) vs. un réseau décentralisé (à droite).
En règle générale, le serveur stocke toutes les informations dont les utilisateurs ont besoin. Lorsque vous accédez à Binance Academy, vous demandez à leurs serveurs de vous fournir tous leurs éléments. Si la page Web est « hors ligne », vous ne pourrez pas les voir. Cependant, si vous avez téléchargé tout le contenu, vous pouvez le télécharger sur votre ordinateur sans avoir à interroger Binance Academy.
Fondamentalement, c'est ce que chaque homologue du réseau fait avec la blockchain : il stocke l'intégralité de la base de données sur son ordinateur. Si quelqu’un quitte le réseau, les utilisateurs qui y restent pourront toujours accéder à la blockchain et partager des informations entre eux. Lorsqu'un nouveau bloc est ajouté à la chaîne, les données sont propagées sur le réseau afin que chacun puisse mettre à jour sa propre copie du grand livre.
N'oubliez pas de lire notre Introduction aux réseaux Peer-to-Peer pour une analyse plus détaillée de ce type de réseaux.
Quels sont les nœuds d’une blockchain ?
Les nœuds sont simplement les machines connectées au réseau – ils sont chargés de stocker des copies de la blockchain et de partager des informations avec le reste des unités. Les utilisateurs n'ont pas besoin de gérer manuellement ces processus. Généralement, tout ce qu’ils ont à faire est de télécharger et d’exécuter le logiciel blockchain, et le reste fonctionnera automatiquement.
Nous avons décrit ci-dessus ce qu'est un nœud dans son sens le plus pur, mais la définition peut également inclure d'autres utilisateurs qui interagissent d'une manière ou d'une autre avec le réseau. Dans le cas des cryptomonnaies, par exemple, une simple application de type portefeuille sur votre téléphone serait ce que nous appelons un nœud léger.
Blockchains publiques ou publiques blockchains privées
Comme vous le savez peut-être, Bitcoin a jeté les bases de l’industrie de la blockchain pour devenir ce qu’elle est aujourd’hui. Dès que Bitcoin a commencé à faire ses preuves en tant qu’actif financier légitime, les acteurs innovants ont commencé à réfléchir au potentiel de la technologie sous-jacente pour d’autres domaines. Cela a conduit à l’exploration de la blockchain pour d’innombrables cas d’utilisation en dehors du secteur financier.
Bitcoin est ce que nous appelons une « blockchain publique ». Cela signifie que n'importe qui peut consulter les transactions qu'il contient, et pour y adhérer, il suffit d'une connexion Internet et du logiciel nécessaire. Puisqu’il n’y a aucune autre condition requise pour participer, nous pouvons qualifier ces types d’environnements de sans autorisation.
En revanche, il existe également un autre type de blockchain que nous appelons « blockchains privées ». Ces systèmes établissent des règles qui déterminent qui peut visualiser et interagir avec la blockchain. C’est pour cette raison que nous les appelons environnements autorisés. Même si les blockchains privées peuvent sembler redondantes à première vue, elles présentent certaines applications importantes, principalement dans des scénarios d’entreprise.
Si vous souhaitez en savoir plus sur le sujet, jetez un œil aux Blockchains privées, publiques et de consortium – En quoi sont-elles différentes ?
Vous envisagez de vous lancer dans le monde des cryptomonnaies ? Achetez du Bitcoin sur Binance !
Comment fonctionnent les transactions ?
Si Alice souhaite payer Bob par virement bancaire, elle devra en informer la banque. Pour simplifier, disons que les deux parties utilisent la même banque. Ce dernier vérifiera qu'Alice dispose des fonds nécessaires pour réaliser la transaction, avant de mettre à jour sa base de données (c'est-à-dire d'inscrire -50$ à Alice et +50$ à Bob).
Ce n’est pas quelque chose de très différent de ce qui se passe dans une blockchain. Après tout, c'est aussi une base de données. La principale différence est qu’il n’y a pas un seul acteur en charge des contrôles et de la mise à jour des bilans, mais que tous les nœuds doivent le faire.
Si Alice souhaite envoyer cinq bitcoins à Bob, elle diffusera un message l'annonçant au réseau. Celui-ci ne sera pas immédiatement ajouté à la blockchain – les nœuds le verront, mais d'autres actions devront être effectuées pour que la transaction soit confirmée. Voir Comment les blocs sont-ils ajoutés à la blockchain ?
Une fois la transaction ajoutée à la blockchain, tous les nœuds pourront voir qu'elle a été exécutée. Ensuite, ils mettront à jour leur copie de la blockchain pour refléter cela. Désormais, Alice ne pourra plus envoyer ces mêmes cinq unités à Carol (ce qui reviendrait à commettre une « double dépense »), car le réseau saura qu'elle les a déjà dépensées lors d'une transaction précédente.
Il n'y a pas de concepts de « nom d'utilisateur » et de « mot de passe » – la cryptographie à clé publique est utilisée pour prouver la propriété des fonds. Donc d’abord, pour recevoir des fonds, Bob devra générer une clé privée. Il s’agit simplement d’un nombre aléatoire très long, pratiquement impossible à deviner, même s’il dispose de centaines d’années pour essayer. Mais si Bob révèle sa clé privée à n’importe qui, celui-ci peut agir en tant que propriétaire de ses fonds (et donc les dépenser). Il est donc important que vous gardiez cela secret.
Ce que Bob peut faire, cependant, c'est dériver une clé publique à partir de sa clé privée. Vous pouvez ensuite donner cette clé publique à n’importe qui, car il est pratiquement impossible pour quiconque de procéder à une ingénierie inverse de la clé privée à partir de celle-ci. Dans la plupart des cas, Bob effectuera une autre opération sur la clé publique (comme la hacher) pour obtenir une adresse publique.
Bob donnera à Alice l'adresse publique afin qu'elle sache où envoyer les fonds. Elle générera une transaction indiquant de payer ces fonds à cette adresse publique. Ensuite, pour prouver au réseau qu'elle n'essaie pas de dépenser des fonds qui ne lui appartiennent pas, Alice générera une signature numérique en utilisant sa propre clé privée. N'importe qui peut mettre la main sur le message signé d'Alice et le comparer à sa clé publique pour déterminer avec certitude si elle a le droit d'envoyer ces fonds à Bob.
Comment effectuer des transactions Bitcoin
Pour illustrer comment vous pouvez effectuer des transactions Bitcoin, imaginons deux scénarios. Dans le premier, vous envisagez de retirer des bitcoins de Binance, tandis que dans le second, vous envisagez d'envoyer des fonds de votre TrustWallet vers votre portefeuille Electrum.
Comment retirer des bitcoins de Binance
1. Connectez-vous à votre compte Binance. Si vous n'avez pas encore de bitcoins, consultez notre guide Bitcoin pour savoir comment les acheter.
2. Passez la souris sur « Wallet » et sélectionnez « Spot Wallet ».
3. Cliquez sur « Retirer » dans la barre latérale gauche.
4. Choisissez la devise que vous souhaitez retirer – dans ce cas, BTC.
5. Copiez l'adresse à laquelle vous souhaitez envoyer les bitcoins que vous retirez et collez-la dans l'adresse BTC du destinataire.
6. Précisez le montant que vous souhaitez retirer.
7. Cliquez sur "Envoyer".
8. Vous recevrez un e-mail de confirmation peu de temps après. Veuillez vérifier attentivement que l'adresse est correcte. Si c'est le cas, confirmez la transaction dans le même email.
9. Attendez que votre transaction passe par la blockchain. Vous pouvez surveiller son statut dans l’onglet Historique des dépôts et retraits ou à l’aide d’un explorateur de blocs.
Comment envoyer des bitcoins de Trust Wallet vers Electrum
Dans cet exemple, nous enverrons des bitcoins de Trust Wallet à Electrum.
1. Ouvrez l'application Trust Wallet.
2. Cliquez sur votre compte Bitcoin.
3. Cliquez sur "Envoyer".
4. Ouvrez votre portefeuille Electrum.
5. Cliquez sur l'onglet Electrum "Recevoir" et copiez l'adresse.
Vous pouvez également revenir à Trust Wallet et appuyer sur l'icône [–] pour scanner le code QR pointant vers votre adresse Electrum.
6. Collez votre adresse Bitcoin dans « Adresse du destinataire » dans Trust Wallet.
7. Précisez la quantité.
8. Si tout semble correct, confirmez la transaction.
9. Vous avez terminé ! Attendez que votre transaction soit confirmée sur la blockchain. Vous pouvez surveiller son statut en saisissant votre adresse dans un explorateur de blocs.
Vous envisagez de vous lancer dans le monde des cryptomonnaies ? Achetez du Bitcoin sur Binance !
Qui a inventé la technologie blockchain ?
La technologie blockchain a été formalisée en 2009 avec le lancement de Bitcoin – la première et la plus populaire blockchain. Cependant, le pseudonyme de son créateur, Satoshi Nakamoto, s'inspirerait des technologies et propositions antérieures.
Les blockchains font largement appel aux fonctions de hachage et à la cryptographie – des éléments qui, au lancement du Bitcoin, existaient déjà depuis des décennies. Il est intéressant de noter que l'origine de la structure blockchain remonte au début des années 1990, mais à cette époque, elle était simplement utilisée pour « horodater » des documents, afin qu'ils ne puissent pas être modifiés ultérieurement.
Pour en savoir plus sur le sujet, voir Histoire de la Blockchain.
Avantages et inconvénients de la technologie blockchain
Les blockchains correctement conçues résolvent un problème qui affecte les parties prenantes de divers secteurs, de la finance à l'agriculture. Un réseau distribué présente de nombreux avantages par rapport au modèle client-serveur traditionnel, mais il présente également certains inconvénients.
Avantages
L’un des avantages immédiats soulignés dans le livre blanc Bitcoin est la possibilité d’effectuer des paiements sans la participation d’un intermédiaire. Les blockchains ultérieures sont allées plus loin, permettant aux utilisateurs d’envoyer tous types d’informations. L'élimination des contreparties se traduit par un risque moindre pour les utilisateurs concernés et se traduit par des commissions inférieures, car aucun intermédiaire ne prend la part.
Comme nous l’avons mentionné précédemment, un réseau public de blockchain est également « sans autorisation » : il n’y a aucune barrière à l’entrée, car personne n’en est responsable. Si un utilisateur potentiel peut se connecter à Internet, il pourra alors interagir avec d’autres pairs sur le réseau.
Beaucoup diront que la qualité la plus importante des blockchains est qu’elles présentent un degré élevé de résistance à la censure. Pour désactiver un service centralisé, il suffirait à un acteur malveillant de cibler un serveur. Mais dans un réseau peer-to-peer, chaque nœud agit à lui seul comme un serveur.
Un système comme Bitcoin compte plus de 10 000 nœuds visibles répartis dans le monde, ce qui rend pratiquement impossible, même pour un attaquant disposant de ressources suffisantes, de compromettre le réseau. Il convient de noter qu’il existe également de nombreux nœuds cachés, qui ne sont pas visibles par le réseau dans son ensemble.
Ce sont quelques-uns des avantages généraux. Il existe de nombreux cas d’usage spécifiques que les blockchains peuvent satisfaire, comme vous le verrez dans À quoi sert une blockchain ?
Contre
Les blockchains ne sont pas une solution miracle à tous les problèmes. Puisqu’ils sont optimisés pour leurs points forts, mentionnés dans la section précédente, ils finissent par présenter des lacunes dans d’autres domaines. L’obstacle le plus évident à l’adoption massive des blockchains est le fait qu’elles ne s’adaptent pas très bien.
Ceci est valable pour tout réseau distribué. Puisque tous les participants doivent rester synchronisés, de nouvelles informations ne peuvent pas être ajoutées trop rapidement, sinon les nœuds ne pourront pas suivre le rythme. Par conséquent, les développeurs ont tendance à limiter délibérément la vitesse à laquelle la blockchain peut être mise à jour, afin de garantir que le système reste décentralisé.
Pour les utilisateurs d’un réseau, cela peut se manifester sous la forme de longues périodes d’attente si trop de personnes tentent d’effectuer des transactions. Les blocs ne peuvent contenir qu’une certaine quantité de données et ne sont pas ajoutés instantanément à la chaîne. S'il y a plus de transactions qu'un bloc ne peut en contenir, les transactions supplémentaires devront attendre le bloc suivant.
Un autre inconvénient possible des systèmes blockchain décentralisés est qu’ils ne peuvent pas être facilement mis à jour. Si vous créez votre propre logiciel, vous pouvez ajouter de nouvelles fonctionnalités comme bon vous semble - vous n'avez pas besoin de collaborer avec d'autres ni de leur demander la permission d'apporter des modifications.
Dans un environnement comptant des millions d’utilisateurs potentiels, apporter des changements est considérablement plus difficile. Vous pourrez modifier certains paramètres de votre logiciel de nœud, mais vous finirez par vous retrouver isolé du réseau. Si le logiciel modifié est incompatible avec d'autres nœuds, ils le détecteront et rejetteront toute interaction avec lui.
Supposons que vous souhaitiez modifier la règle qui détermine la taille maximale des blocs (de 1 Mo à 2 Mo). Vous pouvez essayer d'envoyer ledit bloc aux nœuds auxquels vous êtes connecté, mais ils ont une règle qui dit « n'acceptez pas les blocs de plus de 1 Mo ». S’ils reçoivent quelque chose de plus gros, ils ne l’incluront pas dans leur copie de la blockchain.
La seule façon de mettre en œuvre des changements est de faire en sorte que la majorité de l’écosystème les accepte. Dans le cas des grandes blockchains, cela peut prendre des mois, voire des années, de discussions intenses sur un forum avant que les changements puissent être coordonnés. Pour en savoir plus sur ce sujet, consultez Hard Forks et Soft Forks.
Section 2 – Comment fonctionne la blockchain ?
Contenu
Comment les blocs sont-ils ajoutés à la blockchain ?
Exploitation minière (preuve de travail)
Avantages de la preuve de travail
Contre-preuve de travail
Jalonnement (preuve de mise)
Avantages de la preuve de participation
Contre la preuve de participation
Autres algorithmes de consensus
Puis-je annuler des transactions blockchain ?
Qu’est-ce que l’évolutivité de la blockchain ?
Pourquoi la blockchain doit-elle évoluer ?
Qu’est-ce qu’un fork blockchain ?
Fourchettes souples
Fourches dures
Comment les blocs sont-ils ajoutés à la blockchain ?
Jusqu’à présent, nous avons abordé de nombreux sujets. On sait que les nœuds sont interconnectés et qu’ils stockent des copies de la blockchain. En outre, ils se transmettent des informations sur les transactions et les nouveaux blocs. Nous avons déjà analysé ce que sont les nœuds, mais vous vous demandez peut-être : comment les nouveaux blocs sont-ils ajoutés à la blockchain ?
Il n’existe pas de source unique indiquant aux utilisateurs quoi faire. Étant donné que tous les nœuds ont le même pouvoir, il doit exister un mécanisme permettant de décider équitablement qui peut ajouter des blocs à la blockchain. Nous avons besoin d’un système qui rend la triche coûteuse pour les utilisateurs, mais qui les récompense lorsqu’ils agissent honnêtement. Tout utilisateur rationnel voudra agir d’une manière qui soit économiquement bénéfique.
Le réseau étant sans autorisation, la création de blocs doit être accessible à tous. Les protocoles garantissent souvent cela en exigeant de l’utilisateur qu’il mette un peu de « peau dans le jeu » : il doit mettre son propre argent en danger. Cela leur permettra de participer à la création de blocs, et s’ils en génèrent un valide, ils recevront une récompense.
Cependant, s’ils tentent de tricher, le reste du réseau le saura. Toute mise qu'ils auront soumise sera perdue. Nous appelons ces mécanismes des algorithmes de consensus car ils permettent aux participants du réseau de parvenir à un consensus sur le bloc à ajouter ensuite.
Exploitation minière (preuve de travail)
Le minage est de loin l’algorithme de consensus le plus utilisé. Dans le secteur minier, l'algorithme Proof of Work (PoW) est utilisé. Cela implique que les utilisateurs sacrifient leur puissance de calcul pour tenter de résoudre un casse-tête défini par le protocole.
Le puzzle oblige les utilisateurs à contrôler les transactions et autres informations incluses dans le bloc. Mais pour que le hachage soit considéré comme valide, il doit être inférieur à un certain nombre. Puisqu'il n'y a aucun moyen de prédire quel sera le résultat donné, les mineurs doivent continuer à analyser les données légèrement modifiées jusqu'à ce qu'ils trouvent une solution valable.
De toute évidence, le hachage répété des données coûte cher en termes de calcul. Dans les blockchains Proof of Work, la « mise » soumise par les utilisateurs est l’argent investi dans les ordinateurs de minage et l’électricité utilisée pour les alimenter. Ils le font dans l’espoir d’obtenir une récompense globale.
Rappelez-vous comment nous avons dit plus tôt qu'il est pratiquement impossible d'inverser un hachage, mais qu'il est facile à vérifier ? Lorsqu'un mineur envoie un nouveau bloc au reste du réseau, tous les autres nœuds l'utilisent comme entrée dans une fonction de hachage. Il leur suffit de l’exécuter une fois pour vérifier que le bloc est valide selon les règles de la blockchain. Dans le cas contraire, le mineur ne recevra pas de récompense et aura gaspillé de l’électricité pour rien.
La première blockchain de preuve de travail était Bitcoin. Depuis sa création, de nombreuses autres blockchains ont adopté le mécanisme PoW.
Avantages de la preuve de travail
Testé et éprouvé : à ce jour, le Proof of Work est l'algorithme de consensus le plus abouti et a permis de sécuriser des centaines de milliards de dollars.
Sans autorisation : n'importe qui peut rejoindre la compétition minière ou simplement exécuter un nœud de validation.
Décentralisation : les mineurs se font concurrence pour produire des blocs, ce qui signifie que le pouvoir de hachage n'est jamais contrôlé par une seule partie.
Contres de Preuve de travail
Gaspillage : L’exploitation minière consomme énormément d’électricité.
Des barrières à l’entrée de plus en plus élevées : à mesure que de plus en plus de mineurs rejoignent le réseau, les protocoles augmentent la difficulté du puzzle minier. Pour rester compétitifs, les utilisateurs doivent investir dans de meilleurs équipements. Cela pourrait coûter cher à de nombreux mineurs.
Attaques à 51 % : bien que le minage favorise la décentralisation, il est possible qu'un mineur acquière la majorité du pouvoir de hachage. S’ils le font, ils peuvent théoriquement annuler des transactions et compromettre la sécurité de la blockchain.
Jalonnement (preuve de mise)
Dans les systèmes de preuve de travail, ce qui vous incite à agir honnêtement, c'est l'argent que vous avez payé pour l'extraction d'ordinateurs et d'électricité. Vous n'obtiendrez pas de retour sur votre investissement si vous n'exploitez pas correctement les blocs.
Avec Proof of Stake (PoS), il n’y a aucun coût externe. Au lieu de mineurs, nous avons des validateurs qui proposent (ou « forgent ») des blocs. Ils peuvent utiliser un ordinateur ordinaire pour générer de nouveaux blocs, mais ils doivent mettre en jeu une partie importante de leurs fonds pour obtenir ce privilège. Le staking se fait avec un montant prédéfini de cryptomonnaie native de la blockchain, selon les règles de chaque protocole.
Différentes implémentations ont différentes variantes, mais une fois qu'un validateur jalonne ses unités, le protocole peut les sélectionner au hasard pour annoncer le bloc suivant. En le faisant correctement, ils recevront une récompense. Alternativement, plusieurs validateurs peuvent accepter le bloc suivant, et une récompense est distribuée proportionnellement à la mise que chacun a soumise.
Les blockchains PoS « pures » sont moins courantes que les DPoS (Delegated Proof of Stake), qui obligent les utilisateurs à voter sur des nœuds (témoins) pour valider les blocs pour l'ensemble du réseau.
Ethereum, la principale blockchain de contrats intelligents, passera bientôt à Proof of Stake lors de sa migration vers ETH 2.0.
Avantages de la preuve de participation
Respectueux de l’environnement : l’empreinte carbone du PoS ne représente qu’une fraction de l’exploitation minière du PoW. Le jalonnement élimine le besoin d’opérations de hachage gourmandes en ressources.
Transactions plus rapides : puisqu'il n'est pas nécessaire de dépenser de la puissance de calcul supplémentaire pour résoudre des énigmes arbitraires définies par le protocole, certains partisans du PoS affirment que cela pourrait augmenter le débit des transactions.
Récompenses et intérêts de mise : au lieu d'aller aux mineurs, les récompenses pour la sécurisation du réseau sont versées directement aux détenteurs de jetons. Dans certains cas, le PoS permet aux utilisateurs de gagner un revenu passif sous forme de parachutages ou d'intérêts, simplement en mettant leurs fonds en jeu.
Contre la preuve de participation
Relativement non testés : les protocoles PoS n’ont pas encore été testés à grande échelle. Il peut y avoir des vulnérabilités non découvertes dans sa mise en œuvre ou dans la cryptoéconomie.
Plutoncratie : certains craignent que le PoS encourage un écosystème « les riches deviennent plus riches », car les validateurs ayant des enjeux élevés ont tendance à gagner plus de récompenses.
Problème « Rien n'est mis en jeu » : dans PoW, les utilisateurs ne peuvent « mettre en jeu » qu'une seule chaîne : ils exploitent sur la chaîne qu'ils estiment la plus susceptible de réussir. Lors d’un hard fork, ils ne peuvent pas miser des multiples avec la même puissance de hachage. Cependant, les validateurs PoS peuvent travailler sur plusieurs chaînes avec peu de coûts supplémentaires, ce qui peut entraîner des problèmes économiques.
Autres algorithmes de consensusAutres algorithmes de consensus
La preuve de travail et la preuve d'enjeu sont les algorithmes de consensus les plus courants, mais il en existe bien d'autres. Certains sont des hybrides combinant des éléments des deux systèmes, tandis que d’autres sont des méthodes complètement différentes.
Nous ne les aborderons pas ici, mais si vous êtes intéressé, consultez les articles suivants :
Preuve de travail retardée expliquée
Consensus sur la preuve de participation louée expliqué
Preuve d'autorité expliquée
Preuve de brûlure expliquée
Puis-je annuler des transactions blockchain ?
Les blockchains sont, de par leur conception, des bases de données très robustes. Ses propriétés inhérentes rendent extrêmement difficile la suppression ou la modification des données blockchain après leur enregistrement. Lorsqu’il s’agit de Bitcoin et d’autres grands réseaux, c’est presque impossible. Par conséquent, lorsque vous effectuez une transaction sur une blockchain, il est préférable de la considérer comme gravée dans le marbre pour toujours.
Cela dit, il existe de nombreuses implémentations différentes de la blockchain, et la différence la plus fondamentale entre elles réside dans la manière dont elles parviennent à un consensus au sein du réseau. Cela signifie que, dans certaines implémentations, un groupe relativement restreint de participants peut obtenir suffisamment de pouvoir au sein du réseau pour annuler efficacement les transactions. Ceci est particulièrement inquiétant pour les altcoins fonctionnant sur de petits réseaux (avec de faibles taux de hachage en raison de la faible concurrence minière).
Qu’est-ce que l’évolutivité de la blockchain ?
L’évolutivité de la blockchain est généralement utilisée comme terme général pour désigner la capacité d’un système blockchain à répondre à une demande croissante. Même si les blockchains possèdent des propriétés souhaitables (telles que la décentralisation, la résistance à la censure, l’immuabilité), elles ont un coût.
Contrairement aux systèmes décentralisés, une base de données centralisée peut fonctionner avec une vitesse et des performances considérablement plus élevées. Cela est logique puisque des milliers de nœuds dispersés dans le monde n’ont pas besoin de se synchroniser avec le réseau à chaque fois que leur contenu est modifié. Mais ce n’est pas le cas des blockchains. En conséquence, l’évolutivité est un sujet très débattu parmi les développeurs de blockchain depuis des années.
Plusieurs solutions différentes ont été proposées ou mises en œuvre pour atténuer certains des inconvénients de performances des blockchains. Toutefois, à ce stade, il n’existe pas de meilleure approche claire. De nombreuses solutions différentes devront probablement être essayées jusqu'à ce qu'il y ait des réponses plus directes au problème d'évolutivité.
À un niveau plus large, une question fondamentale se pose concernant l’évolutivité : devrions-nous améliorer les performances de la blockchain elle-même (mise à l’échelle en chaîne) ou devrions-nous permettre aux transactions de s’exécuter sans gonfler la blockchain principale (mise à l’échelle hors chaîne) ?
Il peut y avoir des avantages évidents pour les deux. Les solutions d'évolutivité en chaîne pourraient réduire la taille des transactions, ou même simplement optimiser la façon dont les données sont stockées en blocs. D’un autre côté, les solutions hors chaîne impliquent des transactions par lots en dehors de la blockchain principale et ne les ajoutent que plus tard. Certaines des solutions hors chaîne les plus remarquables sont appelées sidechains et canaux de paiement.
Si vous souhaitez approfondir ce sujet, lisez Évolutivité de la blockchain : chaînes latérales et canaux de paiement.
Pourquoi la blockchain doit-elle évoluer ?
Si les systèmes blockchain veulent rivaliser avec leurs homologues centralisés, ils doivent être au moins aussi efficaces qu’eux. En réalité, cependant, ils devront probablement faire encore mieux pour inciter les développeurs et les utilisateurs à passer aux plates-formes et applications basées sur la blockchain.
Cela signifie que par rapport aux systèmes centralisés, l’utilisation des blockchains devrait être plus rapide, moins chère et plus simple pour les développeurs et les utilisateurs. Ce n’est pas une tâche facile à réaliser tout en conservant les caractéristiques déterminantes des blockchains dont nous avons discuté ci-dessus.
Qu’est-ce qu’un fork blockchain ?
Comme pour tout logiciel, les blockchains ont besoin de mises à jour pour résoudre les problèmes, ajouter de nouvelles règles ou supprimer les anciennes. La plupart des logiciels blockchain étant open source, n’importe qui peut théoriquement proposer de nouvelles mises à jour à ajouter au logiciel qui régit le réseau.
Gardez à l’esprit que les blockchains sont des réseaux distribués. Une fois le logiciel mis à jour, des milliers de nœuds répartis dans le monde doivent pouvoir communiquer et déployer la nouvelle version. Mais que se passe-t-il si les participants ne parviennent pas à se mettre d’accord sur la mise à jour à mettre en œuvre ? En règle générale, il n’existe aucune organisation disposant d’un flux de décision établi pour décider. Cela nous amène à des fourches souples et dures.
Fourchettes souples
S'il existe un accord général sur ce à quoi devrait ressembler une mise à jour, c'est une question relativement simple. Dans un scénario comme celui-ci, le logiciel est mis à jour avec une modification rétrocompatible, ce qui signifie que les nœuds mis à jour peuvent toujours interagir avec les nœuds qui ne le sont pas. Cependant, en réalité, presque tous les nœuds devraient être mis à jour au fil du temps. C’est ce qu’on appelle une fourchette souple.
Fourches dures
Un hard fork est plus compliqué. Une fois mises en œuvre, les nouvelles règles seront incompatibles avec les anciennes. Par conséquent, si un nœud exécutant les nouvelles règles tente d’interagir avec un nœud exécutant les anciennes règles, ils ne pourront pas communiquer. Cela a pour conséquence de diviser la blockchain en deux : d’un côté, l’ancien logiciel fonctionne, de l’autre, les nouvelles règles sont implémentées.
Après le hard fork, il existe essentiellement deux réseaux différents exécutant deux protocoles différents en parallèle. Il est à noter qu’au moment du fork, les soldes de l’unité native de la blockchain sont clonés à partir du réseau précédent. Ainsi, si vous aviez un solde sur l'ancienne chaîne au moment du fork, vous aurez également un solde sur la nouvelle.
Voir Hard Forks et Soft Forks pour plus d’informations à ce sujet.
Chapitre 3 – A quoi sert la blockchain ?
Contenu
Blockchain pour les chaînes d'approvisionnement
Blockchain et industrie du jeu
Blockchain pour la santé
Envois de fonds avec blockchain
Blockchain et identité numérique
Blockchain et Internet des objets (IoT)
La blockchain pour la gouvernance
Blockchain pour la charité
Blockchain pour la spéculation
Financement participatif avec Blockchain
Blockchain et systèmes de fichiers distribués
La technologie Blockchain peut être utilisée pour un large éventail de cas d’utilisation. Examinons quelques-uns d'entre eux.
Blockchain pour les chaînes d'approvisionnement
Des chaînes d'approvisionnement efficaces sont au cœur de nombreuses entreprises prospères et concernent la manipulation des marchandises du fournisseur au consommateur. La coordination de plusieurs parties prenantes dans un secteur donné est traditionnellement difficile. Cependant, la technologie blockchain pourrait permettre de nouveaux niveaux de transparence dans de nombreux secteurs. Un écosystème de chaîne d’approvisionnement interopérable qui s’articule autour d’une base de données immuable est exactement ce dont de nombreuses industries ont besoin pour devenir plus robustes et plus fiables.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : chaîne d'approvisionnement.
Blockchain et industrie du jeu
L’industrie du jeu est devenue l’une des plus grandes industries du divertissement au monde et pourrait grandement bénéficier de la technologie blockchain. En général, les joueurs ont tendance à être à la merci des développeurs de jeux. Dans la plupart des jeux en ligne, les joueurs sont obligés de faire confiance à l'espace serveur des développeurs et de suivre leurs règles en constante évolution. Dans ce contexte, la blockchain pourrait contribuer à décentraliser la propriété, la gestion et la maintenance des jeux en ligne.
Le plus gros problème, cependant, est que les éléments de gameplay ne peuvent pas exister en dehors des titres, éliminant ainsi les possibilités de propriété réelle et de marchés secondaires. En optant pour une approche basée sur la blockchain, les jeux pourraient devenir plus durables à long terme, et les objets du jeu émis sous forme d'objets de collection cryptographiques pourraient acquérir une valeur réelle.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la Blockchain : Jeux.
Blockchain pour la santé
Le stockage fiable des dossiers médicaux est vital pour tout système de santé, et le recours à des serveurs centralisés rend les informations sensibles vulnérables. La transparence et la sécurité de la technologie blockchain en font une plateforme idéale pour stocker les dossiers médicaux.
En sécurisant cryptographiquement leurs dossiers sur une blockchain, les patients peuvent préserver leur confidentialité et partager leurs informations médicales avec n'importe quel établissement de santé. Si tous les participants du système de santé actuellement fragmenté pouvaient accéder à une base de données mondiale et sécurisée, le flux d’informations entre eux serait beaucoup plus rapide.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : soins de santé.
Envois de fonds avec blockchain
Envoyer de l’argent à l’international est un problème avec les services bancaires traditionnels. Principalement en raison d'un réseau complexe d'intermédiaires, les frais et les délais de règlement rendent le recours aux banques traditionnelles coûteux et peu fiable pour les transactions urgentes.
Les crypto-monnaies et les blockchains éliminent cet écosystème d’intermédiaires et peuvent permettre des transferts rapides et bon marché partout dans le monde. Alors que les blockchains sacrifient sans aucun doute les performances au profit de certaines de leurs propriétés souhaitables, divers projets exploitent la technologie pour permettre des transactions quasi instantanées et bon marché.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : remittances.
Vous envisagez de vous lancer dans le monde des cryptomonnaies ? Achetez du Bitcoin sur Binance !
Blockchain et identité numérique
La gestion sécurisée des identités sur Internet nécessite de toute urgence une solution rapide. Une quantité extraordinaire de nos données personnelles est stockée sur des serveurs centralisés et analysée à l'aide d'algorithmes d'apprentissage automatique à notre insu et sans notre consentement.
La technologie Blockchain permet aux utilisateurs de s'approprier leurs données et de divulguer sélectivement des informations à des tiers uniquement lorsque cela est nécessaire. Ce type de magie cryptographique pourrait permettre une expérience en ligne plus fluide sans sacrifier la confidentialité.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : identité numérique.
Blockchain et Internet des objets (IoT)
Un nombre extraordinaire d’appareils physiques sont connectés à Internet, et ce nombre ne fera qu’augmenter. Certains pensent que la communication et la coopération entre ces appareils pourraient augmenter considérablement grâce à la technologie blockchain. Les micropaiements automatisés de machine à machine (M2M) pourraient créer une nouvelle économie qui dépend d'une solution de base de données sécurisée et performante.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : Internet des objets (IoT).
La blockchain pour la gouvernance
Les réseaux distribués peuvent définir et appliquer leurs propres formes de régulation sous forme de code informatique. Il n’est pas surprenant que la blockchain ait la possibilité de désintermédiationner divers processus de gouvernance au niveau local, national ou même international.
En outre, cela pourrait résoudre l’un des plus gros problèmes auxquels sont actuellement confrontés les environnements de développement open source : l’absence d’un mécanisme fiable pour la distribution des fonds. La gouvernance de la blockchain garantit que tous les participants peuvent participer à la prise de décision et fournit un aperçu transparent des politiques mises en œuvre.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la Blockchain : Gouvernance.
Blockchain pour la charité
Les organismes de bienfaisance sont souvent gênés par les restrictions quant à la manière dont ils peuvent accepter des fonds. Plus frustrant encore, la destination finale des fonds donnés peut être difficile à suivre avec précision, ce qui décourage sans doute beaucoup de personnes de soutenir ces organisations.
La « crypto-philanthropie » fait référence à l’utilisation de la technologie blockchain pour contourner ces limitations. S'appuyant sur les propriétés inhérentes de la technologie pour garantir une plus grande transparence, une participation mondiale et des dépenses réduites, ce domaine émergent cherche à maximiser l'impact des organisations caritatives. L'une de ces organisations est la Blockchain Charity Foundation.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : association caritative.
Blockchain pour la spéculation
La spéculation est sans aucun doute l’une des utilisations les plus populaires de la technologie blockchain. Les transferts fluides entre les bourses, les solutions de trading sans garde et un écosystème croissant de produits dérivés en font un terrain de jeu idéal pour tous les types de scalpers.
En raison de ses propriétés inhérentes, la blockchain est un excellent instrument pour ceux qui sont prêts à prendre le risque de participer à une telle classe d’actifs. Certains pensent même qu’une fois la technologie et la réglementation environnante matures, les marchés spéculatifs mondiaux pourront être symbolisés sur la blockchain.
Si vous souhaitez en savoir plus, consultez Cas d'utilisation de la blockchain : marchés de prédiction.
Financement participatif avec Blockchain
Les plateformes de financement participatif en ligne jettent les bases de l’économie peer-to-peer depuis près d’une décennie. Le succès de ces sites montre qu’il existe un réel intérêt pour le développement de produits financés par le crowdfunding. Cependant, comme ces plateformes agissent en tant que dépositaires des fonds, elles peuvent en prélever une part considérable sous forme de frais. De plus, chacun aura son propre ensemble de règles pour faciliter l’accord entre les différents participants.
La technologie blockchain, et plus particulièrement les contrats intelligents, pourrait permettre un financement participatif plus sécurisé et automatisé où les termes des accords sont définis dans un code informatique.
Une autre application du financement participatif utilisant la blockchain est les offres initiales de pièces (ICO) et les offres d'échange initiales (IEO). Dans le cadre de ventes symboliques comme celles-ci, les investisseurs lèvent des fonds dans l’espoir que le réseau réussira à l’avenir et qu’ils obtiendront un retour sur investissement.
Blockchain et systèmes de fichiers distribués
La distribution du stockage de fichiers sur Internet présente de nombreux avantages par rapport aux alternatives centralisées conventionnelles. Une grande partie des données stockées dans le cloud repose sur des serveurs et des fournisseurs de services centralisés, qui ont tendance à être plus vulnérables aux attaques et aux pertes de données. Dans certains cas, les utilisateurs peuvent également être confrontés à des problèmes d'accessibilité en raison de la censure des serveurs centralisés.
Du point de vue de l'utilisateur, les solutions de stockage de fichiers blockchain fonctionnent comme les autres solutions de stockage cloud : vous pouvez télécharger, stocker et accéder à des fichiers. Cependant, ce qui se passe en arrière-plan est tout à fait différent.
Lorsque vous téléchargez un fichier sur un stockage blockchain, il est distribué et répliqué sur plusieurs nœuds. Dans certains cas, chaque nœud stockera une partie différente de votre fichier. Ils ne peuvent pas faire grand-chose avec les données partielles, mais vous pouvez ensuite demander aux nœuds de fournir chaque partie, afin de pouvoir les combiner pour récupérer l'intégralité du fichier.
L'espace de stockage provient des participants qui fournissent leur stockage et leur bande passante au réseau. En règle générale, ces participants reçoivent des incitations financières pour fournir ces ressources et sont sanctionnés financièrement s'ils ne respectent pas les règles ou ne stockent pas et ne servent pas de fichiers.
Vous pourriez penser que ce type de réseau est similaire au Bitcoin. Dans ce cas, cependant, l’objectif principal du réseau n’est pas de prendre en charge les transferts de valeur monétaire, mais plutôt de permettre un stockage décentralisé de fichiers résistant à la censure.
D'autres protocoles open source, comme l'Interplanetary File System (IPFS), ouvrent déjà la voie à ce nouveau Web plus permanent et distribué. Bien qu’IPFS soit un protocole et un réseau peer-to-peer, il ne s’agit pas exactement d’une blockchain. Mais il applique certains principes de la technologie blockchain pour améliorer la sécurité et l’efficacité.