LA BLOCKCHAIN – BITCOIN ET DÉRIVÉS

LA BLOCKCHAIN – BITCOIN ET DÉRIVÉS

  • Post author:
  • Post category:Tech (PnP)

Par Etienne Almodovar

Bitcoin est la première implémentation de la blockchain. Satoshi Nakamoto est à l’origine du concept, inventé en 2008, et le réseau Bitcoin lui-même fut lancé en 2009. Aujourd’hui, le réseau s’appelle officiellement Bitcoin Core. L’objectif initial de Bitcoin était de dépasser un problème transactionnel historique, à savoir la nécessité d’avoir un tiers de confiance pour effectuer sa transaction. La désintermédiation a été rendue possible par la blockchain. 

Retour sur les blocs : la preuve de travail (Proof of Work)

La preuve de travail est le système de sécurisation clé du réseau Bitcoin tel qu’il a été conçu. Lorsqu’un nœud reçoit des transactions, il les place dans une liste d’attente. Le nœud vérifie ces transactions et forme un bloc. Ce bloc ne sera pas valide et ne sera pas partagé au reste du réseau tant que la preuve de travail n’aura pas été réalisée. Cette liste d’attente diffère selon les nœuds et la preuve de travail permet au réseau de s’accorder sur le prochain bloc valide. 

En quoi la preuve de travail consiste-t-elle ? Pour répondre à cette question nous devons d’abord répondre à la question « comment un bloc est-il validé ? ». Pour valider un bloc il faut résoudre un en-tête. L’en-tête est un hash, c’est-à-dire une emprunte numérique d’une donnée d’entrée résultante d’une fonction mathématique. Cet en-tête résulte de 6 éléments : 

  • la version du bloc, 
  • le hash du bloc précédent, 
  • la racine de l’arbre de Merkel (hash issu des hash des transactions constituant le bloc), 
  • la date, 
  • la difficulté,
  • le nonce (nombre arbitraire). 

Les quatre premières composantes pour obtenir le hash du bloc sont fixes. Pour que l’en-tête soit valide, il doit être d’un montant inférieur à un seuil qui est fonction de la difficulté. Il faut ainsi tester différent nonce jusqu’à en trouver un pour lequel le hash du bloc (en-tête) est inférieur au seuil. La difficulté est recalculée tous les 2016 blocs afin que, à l’échelle du réseau, il faille environ 10 minutes pour trouver un hash valide. Ces 10 minutes sont une cible d’attente entre deux blocs qui a été choisie initialement par Satoshi Nakamoto pour diverses raisons, notamment pour éviter une concurrence entre les nœuds et de multiples débuts de chaines secondaires. C’est un sujet à débat dans la communauté des utilisateurs soutenant le réseau. 

Plus la puissance de calcul d’un mineur est élevée, plus il a de chances de trouver rapidement une solution, c’est-à-dire, un nonce qui fera que le hash du bloc est inférieur au seuil. Aujourd’hui, un mineur seul ne peut pas avoir assez de puissance de calcul pour résoudre une équation d’une telle complexité. Les mineurs se rassemblent en pool et agglomèrent leur puissance de calcul. A chaque bloc validé, le reste des nœuds vérifie que : 

  • le hash du bloc précédent est correct, 
  • la date du bloc est supérieure à celle du bloc précédent, 
  • la preuve de travail est valide (hash du bloc inférieur au seuil),
  • les transactions du bloc sont correctes. 

Si tout est valide, le nœud ajoute le bloc à la blockchain et met à jour sa liste d’attente de transactions. Si le nœud est un mineur il assemble un nouveau bloc de transactions à résoudre. 

Pour un bloc validé, un montant fixe de bitcoins est attribué au groupe de mineur ayant validé le bloc. Mais le nombre de bitcoins est limité (21 millions). La question qui se pose est la suivante : que va-t-il se passer lorsque cette limite sera atteinte pour le réseau Bitcoin ? Figurez-vous qu’il n’y a pas encore de réponses claires à ce sujet… 

Limites de Bitcoin et autres blockchain

Il y a de nombreuses limites à Bitcoin Core : 

  • le nombre limité de bitcoins et l’incertitude sur l’avenir du réseau une fois cette limite atteinte. En effet, la rémunération serait réduite aux simples frais de transactions ce qui pourrait faire partir de nombreux mineurs.  
  • le temps d’attente entre les transactions, qui est relativement long par rapport à d’autres blockchains. 
  • les frais de transactions. En effet, c’est l’émetteur qui décide du montant de frais qu’il paye. Le moins de frais accordés par l’émetteur, le plus de temps d’attente, voire une transaction qui ne lui sera jamais validée. Ce mécanisme pousse à une certaine inflation des frais.  
  • le volume maximum de transactions pouvant être stockées dans le réseau et finalement le « poids » ou la taille de la blockchain (plus de 230 Go en janvier 2019). 

Toutes ces limites ont poussé des développeurs à créer de nouveaux réseaux pour permettre une meilleure, voire d’autres utilisations. Je vais parler des trois blockchains suivantes de manière succincte : Litecoin, Ripple et Bitcoin cash. 

Litecoin : créé en 2011, le but est de répondre aux problématiques de Bitcoin, à savoir permettre un plus grand volume de stockage (4 fois plus grand que Bitcoin), un temps de validation des blocs réduit (≈ 2’30″ ), des frais de transactions contenus, un algorithme de minage plus accessible (en termes de matériel notamment). 

Ripple : créé en 2012, Ripple est un cas d’usage de la blockchain et apporte une véritable couche technologique pour améliorer l’échange de monnaies fiduciaires. La société Ripple et son système de paiement soutenu par une blockchain rend l’intermédiaire bancaire inutile pour échanger sa monnaie contre une autre et permet d’outrepasser le taux de change. Il n’y a aucun frais et les temps de transaction sont très rapides (quelques secondes). La cryptomonnaie et le réseau se trouvent être très utilisés pour des opérations interbancaires. 

Bitcoin Cash : créé seulement en 2017, Bitcoin Cash est un hard fork, une « bifurcation » de Bitcoin Core. Étant donné la difficulté à maintenir le temps de confirmation et l’augmentation des frais sur la blockchain Bitcoin, une partie des nœuds de Bitcoin a décidé de bifurquer au 1er août 2017 afin d’augmenter la taille des blocs (seule différence avec le protocole Bitcoin Core). Une partie des nœuds a décidé de reconnaître un nouveau type de bloc étant valide. Si on compare les deux « grands livres » BCH et BTC, on note qu’ils similaires jusqu’au 1er août puis diffèrent. 


Sources :

SATOSHI NAKAMOTO, Bitcoin: A Peer-to-Peer Electronic Cash System, 2008

https://bitcoin.org/bitcoin.pdf

https://www.blockchains-expert.com/larbre-de-merkle-colonne-vertebrale-de-blockchain/

https://bitcoin.org/fr/

https://litecoin.org/fr/

https://ripple.com/

https://www.bitcoincash.org/