top of page

Qu'est-ce que le consensus Proof of Work ?


Résumé : Les règles de consensus par preuve de travail (Proof of Work en Anglais), sont les règles régissant le bon fonctionnement de la blockchain. Il existe de nombreuses règles de consensus différentes (Proof of Stake, Proof of Capacity...). La blockchain Bitcoin repose sur une preuve de travail.

Pourquoi une preuve de travail ?

Par définition, une blockchain fait appel à des mineurs dont le rôle est d'exécuter le code et de vérifier les données entrantes sur le registre afin de créer de nouveaux blocs (un bloc contient les transactions effectuées par les utilisateurs du réseau). Ce principe de fonctionnement conduit naturellement à la question suivante : comment choisir le mineur qui aura le droit d'émettre le prochain bloc de la blockchain ? Pour y répondre, il est nécessaire de trouver des règles communes :

  • permettant de désigner un mineur dont on accordera un droit d'écriture pour prolonger la seule et unique chaîne de blocs.

  • dissuasives pour les éventuels utilisateurs malveillants.

Les règles de consensus par preuve de travail (Proof of Work) répondent à ce besoin.

Fonctionnement

La preuve de travail consiste à demander aux mineurs la résolution d'un problème mathématique nécessitant une grande quantité de puissance de calcul informatique. Le premier mineur à résoudre ce problème mathématique est autorisé à créer le prochain bloc de la blockchain. La difficulté du problème mathématique est ajustée en temps réel selon la puissance totale du réseau afin que les blocs soient toujours émis à intervalles réguliers.

La preuve de travail rend les tentatives de piratage difficiles (devenir la première puissance de calcul est extrêmement coûteux) et protège des tentatives de spams pour surcharger le réseau. Dès lors que l'identification du mineur-pirate est facile, falsifier la blockchain (en rassemblant plus de 50 % de la puissance de calcul totale) revient à détruire son investissement matériel et à s'exclure du réseau.

Hashcash est un célèbre consensus par preuve de travail. Il suffit de chiffrer un message via une fonction de hashage. Trouver la clef de déchiffrement est mathématiquement impossible : il n'y a pas d'autre solution que de générer des clefs aléatoirement et de les essayer une par une pour retrouver le message initial.

Existe-t'il des alternatives ?

Ils existent de nombreuses alternatives à la preuve de travail (Proof of Work) :

  • Proof of Stake : la sélection du mineur est aléatoire mais pondérée par la quantité de crypto-monnaie possédée par celui-ci.

  • Proof of Importance : sélection selon l'utilisation de la blockchain, l'ancienneté, la quantité de monnaie possédée et/ou autres critères.

  • Proof of Activity : sélection selon l'activité effective du mineur, pour encourager à utiliser la blockchain.

  • Proof of Capacity : sélection selon la capacité de stockage du mineur

  • ...

Chaque méthode de consensus présente ses avantages et inconvénients. Il est même possible de combiner plusieurs protocoles !

bottom of page