Bitcoin: Une naissance tardive

Par Gaël Grosch

Publiée le 19.10.2014 à 18h27

Logo PDF Logo Email Logo Facebook Logo Twitter Logo Google+
Bitcoin, la première monnaie virtuelle entrièrement décentralisée est apparue en 2009, avant de connaître une formidable explosion l’année passée. Avec toutes les avancées technologiques des deux dernières décades, pourquoi cette technologie ne s’est-elle pas développée plus tôt ? Pourquoi Bitcoin diffère-t-il de toutes les approches précédentes visant à créer une monnaie virtuelle ? La raison est simple : il restait un problème à résoudre sans lequel une telle technologie ne pouvait exister.

Bitcoin logo - Source: Jason Benjamin

Vous avez probablement déjà entendu parler plusieurs fois de Bitcoin. Vous savez probablement qu’il s’agit d’une monnaie décentralisée qui permet d’envoyer de l’argent facilement sur internet. Mais peu connaissent les réelles raisons pour lesquels Bitcoin a finalement pu naître.

 

Bitcoin, la première monnaie virtuelle entrièrement décentralisée est apparue en 2009, avant de connaître une formidable explosion l’année passée. Avec toutes les avancées technologiques des deux dernières décades, pourquoi cette technologie ne s’est-elle pas développée plus tôt ? Pourquoi Bitcoin diffère-t-il de toutes les approches précédentes visant à créer une monnaie virtuelle ? La raison est simple : il restait un problème à résoudre sans lequel une telle technologie ne pouvait exister.

 

Toutes les conditions étaient réunies depuis plusieurs années pour permettre l’apparition d’une monnaie virtuelle décentralisée. La cryptographie moderne était utilisée depuis les années 70, d’abord par les gouvernements, puis, plus tard par les particuliers. L’internet s’était répandu au début des années 1990, révolutionnant tous les aspects de notre vie. Et finalement, la technologie Peer-2-peer avait émergée en 1999 avec l’explosion de Napster. Tous les éléments étaient pourtant là. Néanmoins, les tentatives de développer un tel système échouaient continuellement devant le même problème. Aucune solution n’arrivait à s’affranchir totalement d’une entité centrale. Il ne manquait que la dernière pièce du puzzle et, c’était peut-être la plus simple.

 

Revenons d’abord à Bitcoin. Bien qu’on le considère comme une monnaie, Bitcoin est un grand registre public contenant l’historique de toutes les transactions et un montant associé à chaque entrée. Ce registre est appelé «Blockchain». Le Blockchain est dispersé et répliqué à travers des millions d’ordinateurs. Chaque nouvelle transaction y est ajoutée et est partagée ensuite à tout le réseau par le protocole peer-2-peer BitTorrent. L’un des problèmes fondamentaux est de garder le BlockChain synchronisé et unique entre tous les acteurs du réseau, un problème difficile lorsque certains acteurs peuvent essayer de profiter du système et tenter de modifier le registre. La réelle innovation de Bitcoin est la résolution de ce problème connue sous le nom du «Problème des Généraux Byzantins » (dont la version simplifié est « Problèmes des deux généraux »). Il s’agit d’un fameux problème en informatique et théorie des jeux ayant de nombreuses applications pratiques dans les réseaux informatiques. 

 

Le problème peut être reformulé de façon intuitive (bien que mathématiquement non-formel). Imaginez-vous au plein cœur de l’empire byzantin. 10 généraux entourent une ville ennemie, prêts à la conquérir. La ville étant très bien protégée, aucun des généraux ne peux l’envahir seul. Il faut l’attaque simultanée d’au moins 6 des généraux pour réussir la conquête. S’ils attaquent la cité à 5 ou moins, leurs armées seront anéanties et ils seront à la merci d’attaques des autres généraux. Ils doivent donc s’accorder sur une heure d’attaque commune. Pour ceci, les généraux, trop paranoïaques pour tous se rencontrer hors de la sécurité de leur camps, disposent de messagers qu’ils peuvent envoyer auprès des autres généraux. Ils peuvent ainsi formuler et partager des plans. Pour accepter un plan, un général appose son sceau royal sur le message et le retransmet. Ainsi un plan sera accepté s’il possède les sceaux de tous les généraux.

 

L’objectif semble simple. Malheureusement la situation devient vite compliquée. Chaque général pouvant contacter les 9 autres simultanément, 90 messages peuvent potentiellement circuler en même temps. Il est alors possible qu’un (ou plusieurs) traître mette en place une stratégie pour que plusieurs plans soient acceptés simultanément. Le problème est ici: aucune parade prouvée contre de tels stratégies n'existe pour éviter cette situation. Les généraux ne se peuvent toujours pas accordés sur un plan unique! Bitcoin résout ce problème avec une simple modification. Avant de pouvoir envoyer un message, les généraux doivent résoudre un long problème qui possède un élément aléatoire. Cet élément de chance fait que le temps pour résoudre le problème est variable pour tous les généraux. Le premier qui résout le problème a seul l’autorité de proposer le plan. Le risque que deux plans soient acceptés simultanément a disparu puisqu'un seul message circule à la fois. Un accord peut être trouvé. Cet ajout introduit par le Bitcoin est appelé « proof of work » (ou preuve de travail). 

 

Dans le cas de Bitcoin, ce travail est le calcul d’une fonction de hachage aléatoire.  La fonction de hachage est un algorithme qui prends en entrée le registre de bitcoin précédent ainsi que les nouvelles transactions et en ressort une chaine de 64 caractères aléatoires, similaire à ceci :

 

e320b6c2fffc8d750423db8b1eb942ae710e951ed797f7affc8892b0f1fc122b

 

Aujourd’hui, ce calcul peut-être fait de manière très efficace mais Bitcoin n’accepte que les chaines commençant par 13 zéros. Une telle chaîne est extrêmement rare et il faut des milliards de calculs pour la trouver. La difficulté de cette tâche est ajustée toutes les 2 semaines pour s’assurer qu’elle prends en moyenne 10 minutes pour être calculée par le réseau Bitcoin. Voici à quoi peut ressembler le résultat final:

 

00000000000000001e8d6829a8a21adc5d38d0a473b144b6765798e61f98bd1d

 

Chaque participant du réseau Bitcoin vérifie la réponse et ajoute les nouvelles transactions à son registre. Finalement, la mise à jour du registre est unique et similaire pour tous les participants.

 

Ainsi, il fallait l’apparition de plusieurs technologies pour que la naissance de Bitcoin devienne possible : l’internet, la cryptographie à clé publique et les réseau Peer-2-Peer. Mais malgré ces incroyables technologies, il manquait un élément final qui allait permettre de les combiner et créer un système d’échange décentralisé. Il aura fallu plus de 10 ans pour le trouver. En rétrospective, certaines des découvertes les plus brillantes sont parfois les plus simples.

 

Inspiré par: [1]

Autres sources: [2],[3],[4]

 

Par Gaël Grosch

Tags : bitcoin money informatique réseau théorie

Soumettre un commentaire Soumettre une correction

Autres nouvelles


Plus de nouvelles...

Commentaires :



Aucun commentaires...