SECTIONS
Blockchain
Qu'est ce que la Blockchain?
Bitcoin
Qu'est-ce que le Bitcoin?
Pirate Chain
Qu'est-ce que PirateChain?
Blockchain - L'épine dorsale des devises numériques
Qu'est ce que la Blockchain?
La blockchain n'est littéralement qu'une chaîne de blocs, mais pas au sens traditionnel de ces mots. Lorsque nous prononçons les mots «bloc» et «chaîne» dans ce contexte, nous parlons en fait d'informations numériques (le «bloc») stockées dans une base de données publique (la «chaîne»).
Les «blocs» sur la blockchain sont constitués d'informations numériques. Plus précisément, ils comportent trois parties:
- Les blocs stockent des informations sur les transactions telles que la date, l'heure et le montant en dollars de vos achats les plus récents, le transfert de fonds à une autre personne, etc.
- Les blocs stockent des informations sur les personnes qui participent aux transactions. Un bloc pour un achat enregistrerait votre nom ainsi que celui à qui vous l'avez envoyé. Au lieu d'utiliser votre nom réel, votre achat est enregistré sans aucune information d'identification à l'aide d'une «signature numérique» unique, un peu comme un nom d'utilisateur.
- Les blocs stockent des informations qui les distinguent des autres blocs. Tout comme vous et moi avons des noms pour nous distinguer les uns des autres, chaque bloc stocke un code unique appelé «hachage» qui nous permet de le distinguer des autres blocs. Imaginons que vous envoyiez 100 $ à un ami et une heure plus tard, vous lui envoyez 100 $ supplémentaires. Même si les détails de votre nouvelle transaction semblent presque identiques à votre achat précédent, nous pouvons toujours distinguer les blocs en raison de leurs codes uniques.
Alors que le bloc de l'exemple ci-dessus est utilisé pour stocker un seul transfert, la réalité est un peu différente. Un seul bloc sur la blockchain peut en fait stocker jusqu'à 1 Mo de données. Selon la taille des transactions, cela signifie qu'un seul bloc peut héberger quelques milliers de transactions sous un même toit.
Comment fonctionne la Blockchain
Lorsqu'un bloc stocke de nouvelles données, il est ajouté à la blockchain. La chaîne de blocs, comme son nom l'indique, se compose de plusieurs blocs enchaînés. Cependant, pour qu'un bloc soit ajouté à la blockchain, quatre choses doivent se produire:
- Une transaction doit avoir lieu. Continuons avec l'exemple de l'envoi d'argent à un ami. Après avoir envoyé de l'argent, vous décidez d'en envoyer plus
- Cette transaction doit être vérifiée. Après avoir effectué cet achat, votre transaction doit être vérifiée. Avec d'autres registres publics d'informations, comme la Securities Exchange Commission, Wikipedia ou votre bibliothèque locale, il y a quelqu'un en charge de vérifier les nouvelles entrées de données. Avec la blockchain, cependant, ce travail est laissé à un réseau d'ordinateurs. Ces réseaux sont souvent constitués de milliers (ou dans le cas de Bitcoin, de plusieurs millions) d'ordinateurs répartis à travers le monde. Lorsque vous envoyez votre transaction, le réseau d'ordinateurs se précipite pour vérifier que votre transaction s'est déroulée comme vous l'avez dit. Autrement dit, ils confirment les détails de la transaction, y compris l'heure de la transaction, le montant en dollars et les participants.
- Cette transaction doit être stockée dans un bloc. Une fois que votre transaction a été vérifiée comme étant exacte, elle obtient le feu vert. Le montant en dollars de la transaction, votre signature numérique et la signature numérique de votre ami sont tous stockés dans un bloc. Là, la transaction rejoindra probablement des centaines, voire des milliers d'autres comme elle.
- Ce bloc doit recevoir un hachage. Tout comme un ange qui gagne ses ailes, une fois que toutes les transactions d'un bloc ont été vérifiées, il faut lui attribuer un code d'identification unique appelé hachage. Le bloc reçoit également le hachage du dernier bloc ajouté à la blockchain. Une fois haché, le bloc peut être ajouté à la blockchain.
Lorsque ce nouveau bloc est ajouté à la blockchain, il devient accessible au public pour quiconque - même vous. Si vous jetez un oeil à la blockchain de Bitcoin, vous verrez que vous avez accès aux données de transaction, ainsi que des informations sur quand («Time»), où («Height») et par qui («Relayed By») le bloc était ajouté à la blockchain.
La blockchain est-elle sécurisée?
La technologie Blockchain explique les problèmes de sécurité et de confiance de plusieurs manières. Premièrement, les nouveaux blocs sont toujours stockés de manière linéaire et chronologique. Autrement dit, ils sont toujours ajoutés à la «fin» de la blockchain. Si vous regardez la blockchain de Bitcoin, vous verrez que chaque bloc a une position sur la chaîne, appelée une «hauteur». Au 31 août 2019, la hauteur du bloc avait dépassé 592517.
Après qu'un bloc a été ajouté à la fin de la blockchain, il est très difficile de revenir en arrière et de modifier le contenu du bloc. C'est parce que chaque bloc contient son propre hachage, ainsi que le hachage du bloc qui le précède. Les codes de hachage sont créés par une fonction mathématique qui transforme les informations numériques en une chaîne de chiffres et de lettres. Si ces informations sont modifiées de quelque manière que ce soit, le code de hachage change également.
Voici pourquoi c'est est important pour la sécurité. Supposons qu'un pirate tente de modifier votre transaction avec votre ami afin que vous ayez à payer davantage. Dès qu'ils modifient le montant en dollars de votre transaction, le hachage du bloc change. Le prochain bloc de la chaîne contiendra toujours l'ancien hachage, et le pirate devra mettre à jour ce bloc afin de couvrir ses traces. Cependant, cela changerait le hachage de ce bloc. Et le suivant, et ainsi de suite.
Afin de changer un seul bloc, un pirate informatique devrait alors changer chaque bloc après lui sur la blockchain. Recalculer tous ces hachages demanderait une puissance de calcul énorme et improbable. En d'autres termes, une fois qu'un bloc est ajouté à la blockchain, il devient très difficile à modifier et impossible à supprimer.
Pour résoudre le problème de la confiance, les réseaux de chaînes de blocs ont mis en œuvre des tests pour les ordinateurs qui souhaitent rejoindre et ajouter des blocs à la chaîne. Les tests, appelés «modèles de consensus», demandent aux utilisateurs de «faire leurs preuves» avant de pouvoir participer à un réseau de blockchain. L'un des exemples les plus couramment utilisés par Bitcoin est appelé «preuve de travail».
Dans le système de preuve de travail, les ordinateurs doivent «prouver» qu'ils ont effectué un «travail» en résolvant un problème mathématique de calcul complexe. Si un ordinateur résout l'un de ces problèmes, il devient admissible pour ajouter un bloc à la blockchain. Mais le processus d'ajout de blocs à la blockchain, ce que le monde de la crypto-monnaie appelle «le mining», n'est pas facile. En fait, selon le site d'informations Blockchain BlockExplorer, les chances de résoudre l'un de ces problèmes sur le réseau Bitcoin étaient d'environ 1 sur 5,8 billions en février 2019. Pour résoudre des problèmes mathématiques complexes à ces cotes, les ordinateurs doivent exécuter des programmes qui leur coûtent cher en quantités de puissance et en énergie (lire: argent).
La preuve de travail ne rend pas les attaques de pirates informatiques impossibles, mais les rend quelque peu inutiles. Si un pirate voulait coordonner une attaque contre la blockchain, il aurait besoin de résoudre des problèmes mathématiques de calcul complexes à 1 sur 5,8 billions de cotes comme tout le monde. Le coût de l'organisation d'une telle attaque l'emporterait presque certainement sur les avantages.
Blockchain vs. Bitcoin
L'objectif de la blockchain est de permettre aux informations numériques d'être enregistrées et distribuées, mais pas éditées. Ce concept peut être difficile à comprendre sans voir la technologie en action, alors examinons comment fonctionne la première application de la technologie de la chaîne de blocs.
La technologie Blockchain a été décrite pour la première fois en 1991 par Stuart Haber et W. Scott Stornetta, deux chercheurs qui voulaient mettre en œuvre un système où les horodatages des documents ne pouvaient pas être falsifiés. Mais ce n'est que près de deux décennies plus tard, avec le lancement de Bitcoin en janvier 2009, que la blockchain a eu sa première application réelle.
Le protocole Bitcoin est construit sur la blockchain. Dans un document de recherche présentant la monnaie numérique, le créateur pseudonyme de Bitcoin, Satoshi Nakamoto, l'a qualifié de «nouveau système de paiement électronique entièrement pair à pair, sans tiers de confiance».
Voila comment ça fonctionne:
Vous avez toutes ces personnes, partout dans le monde, qui ont Bitcoin. Selon une étude de 2017 du Cambridge Center for Alternative Finance, le nombre pourrait atteindre 5,9 millions. Disons que l'une de ces 5,9 millions de personnes souhaite dépenser son Bitcoin en épicerie. C'est là qu'intervient la blockchain.
En ce qui concerne la monnaie imprimée, l'utilisation de la monnaie imprimée est réglementée et vérifiée par une autorité centrale, généralement une banque ou un gouvernement - mais le Bitcoin n'est contrôlé par personne. Au lieu de cela, les transactions effectuées en Bitcoin sont vérifiées par un réseau d'ordinateurs.
Lorsqu'une personne en paie une autre pour des marchandises en utilisant Bitcoin, les ordinateurs du réseau Bitcoin se précipitent pour vérifier la transaction. Pour ce faire, les utilisateurs exécutent un programme sur leur ordinateur et tentent de résoudre un problème mathématique complexe, appelé «hachage». Lorsqu'un ordinateur résout le problème en «hachant» un bloc, son travail algorithmique aura également vérifié le bloc transactions. La transaction terminée est enregistrée publiquement et stockée sous forme de bloc sur la chaîne de blocs, auquel cas elle devient inaltérable. Dans le cas de Bitcoin et de la plupart des autres chaînes de blocs, les ordinateurs qui vérifient avec succès les blocs sont récompensés pour leur travail avec la crypto-monnaie. (Pour une explication plus détaillée de la vérification, voir: Qu'est-ce que le Bitcoin Mining?)
Bien que les transactions soient enregistrées publiquement sur la blockchain, les données des utilisateurs ne le sont pas - ou, du moins pas en totalité. Afin d'effectuer des transactions sur le réseau Bitcoin, les participants doivent exécuter un programme appelé «portefeuille». Chaque portefeuille se compose de deux clés cryptographiques uniques et distinctes: une clé publique et une clé privée. La clé publique est l'endroit où les transactions sont déposées et retirées. C'est également la clé qui apparaît sur le registre de la blockchain en tant que signature numérique de l'utilisateur.
Même si un utilisateur reçoit un paiement en Bitcoin sur sa clé publique, il ne pourra pas le retirer avec son homologue privé. La clé publique d'un utilisateur est une version abrégée de sa clé privée, créée à l'aide d'un algorithme mathématique complexe. Cependant, en raison de la complexité de cette équation, il est presque impossible d'inverser le processus et de générer une clé privée à partir d'une clé publique. Pour cette raison, la technologie blockchain est considérée comme confidentielle.
Public & Private Keys
Voici la version «Expliquez-la comme si j'avais 5 ans»: vous pouvez considérer une clé publique comme un casier scolaire et la clé privée comme une combinaison de casiers. Les enseignants, les étudiants et même votre béguin peuvent insérer des lettres et des notes à travers l'ouverture de votre casier. Cependant, la seule personne qui peut récupérer le contenu du casier est celle qui possède la clé unique. Il convient toutefois de noter que, bien que les combinaisons de casiers scolaires soient conservées dans le bureau du directeur, il n’existe pas de base de données centrale permettant de suivre les clés privées d’un réseau de chaînes de blocs. Si un utilisateur égare sa clé privée, il perdra l'accès à son portefeuille Bitcoin.
Dans le réseau Bitcoin, la blockchain est non seulement partagée et maintenue par un réseau public d'utilisateurs, mais elle est également acceptée. Lorsque les utilisateurs rejoignent le réseau, leur ordinateur connecté reçoit une copie de la blockchain qui est mise à jour chaque fois qu'un nouveau bloc de transactions est ajouté. Mais que se passe-t-il si, par erreur humaine ou efforts d'un pirate informatique, la copie d'un utilisateur de la blockchain est manipulée pour être différente de toutes les autres copies de la blockchain?
Le protocole de la blockchain décourage l'existence de plusieurs blockchains via un processus appelé «consensus». En présence de plusieurs copies différentes de la blockchain, le protocole de consensus adoptera la plus longue chaîne disponible. Plus d'utilisateurs sur une blockchain signifient que les blocs peuvent être ajoutés plus rapidement à la fin de la chaîne. Selon cette logique, la blockchain enregistée sera toujours celle à laquelle la plupart des utilisateurs font confiance. Le protocole de consensus est l'une des plus grandes forces de la technologie blockchain mais permet également l'une de ses plus grandes faiblesses.
Théoriquement, il est possible pour un hacker de profiter de la règle de la majorité dans ce que l'on appelle une attaque à 51%. Voici comment cela se passerait. Disons qu'il y a 5 millions d'ordinateurs sur le réseau Bitcoin, un euphémisme brut certes mais un nombre assez facile à diviser. Afin d'obtenir une majorité sur le réseau, un pirate informatique devrait contrôler au moins 2,5 millions et l'un de ces ordinateurs. Ce faisant, un attaquant ou un groupe d'attaquants pourrait interférer avec le processus d'enregistrement de nouvelles transactions. Ils pouvaient envoyer une transaction - puis l'annuler, donnant l'impression qu'ils avaient toujours la pièce qu'ils venaient de dépenser. Cette vulnérabilité, connue sous le nom de double dépense, est l'équivalent numérique d'une contrefaçon parfaite et permettrait aux utilisateurs de dépenser leurs Bitcoins deux fois.
Une telle attaque est extrêmement difficile à exécuter pour une blockchain à l'échelle de Bitcoin, car elle nécessiterait qu'un attaquant prenne le contrôle de millions d'ordinateurs. Lorsque Bitcoin a été fondé pour la première fois en 2009 et que ses utilisateurs se comptaient par dizaines, il aurait été plus facile pour un attaquant de contrôler la majorité de la puissance de calcul du réseau. Cette caractéristique déterminante de la blockchain a été signalée comme une faiblesse pour les petites crypto-monnaies. La peur des utilisateurs de 51% d'attaques peut en fait limiter la formation de monopoles sur la blockchain, d'où la nature décentralisée de Bitcoin.