Les Bitcoins, l’Ethereum ainsi que de nombreux autres réseaux de crypto-monnaie utilisent le principe de la Blockchain. Dans le fond, la Blockchain est un système de stockage inventé pour le Bitcoin et qui assure une transmission de données transactionnelles transparentes, sécurisées et fonctionnant sans aucun organe central de contrôle.
Mais qu’est-ce qui définit exactement une Blockchain publique telle que celle utilisée par le réseau Bitcoin ? Pourquoi ce mode de stockage et de transmission d’informations est-il si célèbre ? Comment fonctionne-t-il réellement ? Comment être sûr de sécurité ? Faisons un tour d’horizon de la Blockchain et de ses principaux avantages.
Les débuts de la Blockchain
Il semble que ce soit Satoshi Nakamoto (une personne, un groupe de personne ou une entreprise), le créateur du système Bitcoin qui soit également l’inventeur de la Blockchain.
La première Blockchain utilisée dans le monde daterait donc de 2008 et serait liée de très près à la mise en place du réseau Bitcoin. Quasiment indissociable du Bitcoin, la blockchain est la structure virtuelle qui lui sert de base. Elle a vu le jour dès mai 2010, lors de la première transaction effectuée avec des Bitcoins. C’est aujourd’hui la même chaîne qui est toujours utilisée. Si le Bitcoin ne pourrait pas être viable sans la Blockchain, la réciproque ne se confirme pas.
En effet, la Blockchain à déjà trouvé de nombreuses autres applications (dApps) pratiques éloignées du domaine des crypto-monnaies. Si d’autres applications ont déjà été trouvées dans le monde de la finance comme pour les transferts d’actifs (actions, titres de propriété, etc.), d’autres applications plus larges sont également envisagées. On estime que d’ici peu les Blockchains seront fréquentes dans des domaines divers tels que les bureaux de vote, les assurances, la santé, la gestion de l’énergie, la communication, les transports, etc.
La Blockchain pourrait remplacer de nombreux intermédiaires de ces domaines tels que les banques, les centrales, les centres d’archives ou les notaires. Ainsi, les risques de fraudes, d’erreurs humaines ou de tentatives de piratages seraient limités et certains systèmes pourraient se voir entièrement sécurisés. Les avantages principaux envisagés pour l’application de la Blockchain dans divers domaines sont le fait d’être plus inviolable que n’importe quel autre système de contrôle, de limiter le nombre d’intermédiaires lors d’une transaction et de pouvoir ainsi réduire les frais de commission de ces intermédiaires. Mais comment fonctionne ce système novateur ?
Le principe de la Blockchain
La Blockchain du réseau Bitcoin, ou chaîne de blocs, est par définition une base de données qui contient les informations de tous les échanges effectués par les utilisateurs de Bitcoins depuis la création de la crypto-monnaie. Chaque utilisateur partage une version de la Blockchain sans intermédiaires. Celle-ci est donc constamment vérifiée et validée, les tentatives de fraudes sur le réseau Bitcoins étant ainsi éliminées rapidement. Souvent comparée à un très grand cahier de comptes lisible, indestructible et indélébile, la Blockchain publique du réseau Bitcoin est en fait bien plus performante que cela.
En effet, toutes les transactions réalisées par les utilisateurs du réseau Bitcoins sont rassemblées dans des blocs. Afin d’être intégrés à la blockchain, les blocs doivent au préalable être validés par les mineurs, les nœuds du réseau Bitcoins.
Le « proof-of-work » effectué par les mineurs consiste en la résolution d’un problème algorithmique complexe qui aboutit à la résolution d’un bloc et à sa vérification. Lorsqu’une solution à un bloc a été trouvée, le mineur responsable de la résolution du problème mathématique complexe est récompensé et le bloc est ajouté à la chaîne de blocs. C’est alors tout le réseau qui peut avoir accès à ce bloc et analyser les transactions qu’il contient. Ce n’est qu’une fois que le bloc a été ajouté à la Blockchain que la transaction est validée et que le destinataire reçoit les Bitcoins envoyés. Ainsi, tout le processus de transaction prend de 10 à 15 minutes depuis la réalisation de la transaction jusqu’à l’ajout du bloc à la chaîne et la réception des Bitcoins par le destinataire.
La sécurité de la Blockchain
Bien que par nature, la Blockchain ne soit qu’une suite d’écrits comptables d’opérations numériques partagés, elle possède de nombreux avantages.
C’est un système qui est fondé sur un contrôle majoritaire interne décentralisé. Une information entrant dans la Blockchain ne peut donc jamais en être retirée ou être écrasée. C’est pourquoi, même la plus petite ou la plus vieille des transactions de Bitcoins jamais réalisées est toujours présente dans la chaîne et vérifiable par n’importe quel utilisateur qui la consulte. Ainsi, le risque de fraude est évité de façon particulièrement efficace. En effet, lorsqu’un système de sécurité est centralisé, il existe toujours un risque que le système central soit piraté ou subisse des bugs importants. Toutefois, avec un système de sécurisation tel que la Blockchain, il est possible d’avoir accès à une archive de transactions passées ou en cours infalsifiable et sûre pour tous ses utilisateurs.
De plus, la vie privée des utilisateurs de Bitcoins n’est, en aucun cas, menacée par l’établissement de la Blockchain. Aucun détail confidentiel n’est présent dans les descriptions des transactions. En outre, cette chaîne de blocs est composée d’une infinité de blocs. Chaque bloc contient pour 1 Mo de transactions.
Chaque transaction contient les données suivantes : les clés alphanumériques publiques des deux utilisateurs concernés par la transaction, le montant de Bitcoins transférés, les données antérieures de chaque Bitcoin impliqué dans la transaction. Ainsi, pour chaque transaction, il est possible de savoir de quel porte-feuille proviennent les Bitcoins échangés, sur quel porte-feuille ils sont allés et de quels autres utilisateurs chacun d’entre eux venait auparavant. L’intégrité de la chaîne de transaction est donc vérifiable à l’intérieur de chacune d’entre elle.
Le hash : signature unique de chaque bloc de la chaîne
Pour comprendre le niveau de sécurité offert par la technologie Blockchain, il faut appréhender l’importance de l’empreinte de chaque bloc. Cette empreinte est représentée par le hash d’un bloc (ou somme de contrôle), un nombre calculé automatiquement selon le contenu de celui-ci. Ce calcul est cependant à sens unique. Il est possible de trouver le hash à partir du contenu du bloc, mais il est impossible de reconstituer le bloc à partir du hash.
Le hash est un nombre de 256 bits, uniquement dans le cas du réseau Bitcoins, constitué de 78 chiffres. Le nombre de deux blocs différents est donc, lui aussi, toujours différent. Ainsi, chaque bloc possède grâce au hash un identifiant qui lui est unique. Chaque bloc contient donc en plus des écritures de chaque transaction (quelques milliers par bloc), son hash ainsi que celui du bloc qui le précède dans la chaîne. Il est donc possible de remonter toute la chaîne jusqu’à son bloc de départ depuis n’importe lequel d’entre eux. La validité et l’intégrité de chaque bloc peuvent ainsi être vérifiées pas à pas par cette démarche.
Toute modification du contenu d’un bloc entraînerait donc la modification du hash de ce bloc. Comme le bloc suivant possède également le hash du bloc modifié, il se verrait lui aussi transformé et son hash changerait avec lui. Cette modification, au-delà des performances algorithmiques et informatiques qu’elle demanderait, se répercuterait ainsi sur tous les blocs de la chaîne et serait facile à déceler. Ainsi, la structure même de la Blockchain certifie qu’elle soit infalsifiable, comme toutes les données qu’elle contient. C’est le hash qui permet une vérification complète de chacun des blocs avant son intégration dans la chaîne.
Un système coopératif
En résumé, la construction permanente de la Blockchain est le fruit d’un travail de coopération dépourvu de serveur central. De nombreux opérateurs différents doivent se succéder pour assurer une chaîne sûre et infaillible, endossant tour à tour les diverses responsabilités qu’implique la chaîne.
Tout d’abord, les mineurs forment les blocs de transaction et les ajoutent à leur propre version de la Blockchain. Lorsqu’un bloc est validé, il est intégré puis vérifié de nombreuses fois par d’autres opérateurs. Si chacun des nœuds à le pouvoir d’ajouter un bloc à son exemplaire de la chaîne, il n’a en aucun cas le pouvoir de le modifier. Chacun des opérateurs indépendants (ou mineurs) situés dans de nombreux pays, peut tour à tour participer à la construction d’un bloc, à sa validation, à sa vérification ou à son intégration dans sa chaîne.
Ainsi, ce sont en fait des milliers de chaînes de blocs inaltérables et libres d’accès qui sont consultables dans le monde entier. Une même transaction apparaîtra donc sur toutes les versions des chaînes de blocs. La consultation de plusieurs chaînes de blocs pourra ainsi parfois être nécessaire à un utilisateur afin de s’assurer du résultat obtenu. Car, si chaque version de la chaîne de bloc est, en théorie, identique sur chacun des nœuds, il serait incorrect de dire que cette chaîne est distribuée.
En effet, chacun des nœuds ne porte pas une partie de la chaîne, mais à construit sa propre version de la chaîne. La multiplicité des exemplaires de la Blockchain est donc une sécurité pour chacun des utilisateurs et garantit l’inviolabilité de celle-ci.