Les bénéfices de la Preuve d'Autorité - Proof-of-Authority (PoA)

La blockchain commence à s’immiscer dans nos systèmes informatiques en offrant une nouvelle manière de penser nos échanges avec les autres. On la connait aujourd’hui principalement grâce au Bitcoin qui est composé de milliers d’acteurs. Lorsque l’on souhaite créer sa propre blockchain sur le réseau de son entreprise dans des proportions moindres -quelques noeuds- il peut être intéressant de regarder plus en détails les mécanismes de consensus. Parmi ces derniers, nous pouvons citer la Preuve de travail (ou Proof-of-work, la plus commune), la Preuve d’enjeux (ou Proof-of-stake), ou encore la Preuve d’Autorité (ou Proof-of-authority), aux propriétés bien distinctes. La Preuve d’autorité nous semble la plus adaptée à un contexte de blockchain privée et pourtant la moins documentée. Nous allons y remédier.

Retour sur la Preuve de Travail

La preuve de travail est le mécanisme utilisé pour faire fonctionner la majorité des blockchains publiques, dont notamment Bitcoin. Le principe est de permettre à l’ensemble des noeuds, appelés mineurs, d’être actifs sur la blockchain et de prouver à l’ensemble du réseau sa légitimité à écrire sur la blockchain (création et ajout d’un bloc). Techniquement, pour pouvoir créer et ajouter un nouveau bloc, un mineur doit trouver la solution d’un problème mathématique très couteux en ressources. Une fois cette solution trouvée, il peut diffuser à l’ensemble du réseau le bloc contenant (entre autres) la solution. Chaque noeud qui réceptionne ce bloc peut vérifier instantanément que la solution est correcte, puis l’ajouter ou non à sa copie locale.

Ce processus assure une confiance envers les noeuds qui publient le nouveau bloc. En effet, pour qu’un bloc soit valide, il est nécessaire que la majorité des mineurs l’ajoutent à leur copie locale. Pour qu’un acteur malhonnête puisse agir sur la blockchain, il doit alors posséder cette majorité, ce qui est à ce jour impossible au vu des besoins de performance demandées, car il faudrait posséder un grand nombre de machines, ce qui implique un coût très important.

noeuds blockchain malhonnetes

Attaque d’une blockchain par monopole majoritaire

Mais cela n’est valable que sur des blockchains d’au moins plusieurs milliers de noeuds. Sur des chaînes privées de quelques dizaines d’acteurs, il est plus facile d’obtenir la puissance équivalente à la majorité des noeuds (un bon serveur a autant de puissance de calcul qu’une ou plusieurs dizaines d’ordinateurs de bureau). La preuve de travail ne permet donc pas d’apporter la confiance nécessaire dans les blockchains constituées de peu de noeuds.

La Preuve d’Autorité entre en jeu

La Preuve de Travail a montré ses limites et c’est ici que la Preuve d’Autorité (POA) répond aux besoins. Dans une chaîne limitée en nombre d’acteurs, on sait que quoiqu’il arrive, il serait possible de devenir le possesseur majoritaire de la horde de mineurs, car n’importe qui peut devenir mineur. Avec la POA, on définit à l’avance quels sont les noeuds qui feront autorité, c’est-à-dire qui joueront le rôle de mineurs. On perd alors le principe de confiance, ce qui nous oblige à affecter les autorités à des parties avec un intérêt commun minimal.

fonctionnement de la blockchain

fonctionnement de la blockchain

 

Prenons l’exemple d’une enseigne d’une vingtaine de magasins et dont chaque employé utilise un ordinateur possédant un noeud de la blockchain. La stratégie globale de l’enseigne est promulgée et partagée en utilisant la blockchain. Imaginons qu’il y ait, en tout, une centaine de noeuds, alors la POA est bien indiquée dans ce cas. En effet, avec la preuve de travail, il serait possible pour un employé de configurer et déployer une centaine de noeuds supplémentaires afin de « hacker » la blockchain. Avec la POA, si nous décidons que dans chaque magasin, l’ordinateur de chaque directeur est le noeud qui a autorité, on peut avoir confiance. En effet, aucun de ces ordinateurs ne sont accessibles par d’autres personnes que leur propriétaire. De plus, chaque directeur étant en compétition avec les autres pour le poste de PDG, il est peu probable que la moitié d’entre eux s’allient pour modifier la blockchain.

L’autorité sous toutes ses formes

On peut appliquer ce principe dans de nombreux cas : les autorités séparées entre la direction, les syndicats, le CE, les délégués des employés ou entre des professeurs, des administratifs et des bureaux d’élèves… Mais le second point intéressant de la Preuve d’Autorité est la gestion en écriture de sa chaîne. En effet, selon les méthodes de POA utilisées, il est possible d’empêcher les noeuds non-autorités de faire des demandes d’inscription de données sur la blockchain (d’émettre des transactions). Cela permet donc de garder une chaîne transparente, car ses données sont toujours lisibles, mais un tiers extérieur au contexte ne pourra pas agir sur la blockchain.
Imaginons une application qui gère les budgets des différents départements d’une société. Le pôle administratif peut réaliser des versements vers les établissements secondaires et inversement. Mais les employés, qui ont accès à la blockchain, afin de pouvoir garder un oeil sur les transactions et vérifier par exemple qu’il n’y a pas de fraudes, ne peuvent quant à eux pas interagir avec cette blockchain.

Conclusion

La POA est un concept qui est très intéressant pour les blockchains privées de petite envergure. Elle permet d’éviter le monopole d’un acteur malhonnête et de gérer les accès en lecture. Malgré une baisse de confiance, on obtient une blockchain plus rapide, demandant moins de ressources de calcul et ainsi une baisse de la consommation énergétique. Elle vient juste d’apparaitre dans des clients Ethereum tels que Parity et donc balbutie encore. Mais elle offre des perspectives intéressantes que nous suivrons de près.

Auteur : Romain Gaborieau, SQLI Nantes

 

0 commentaires

votre commentaire

Se joindre à la discussion ?
Vous êtes libre de contribuer !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Inscription newsletter

Ne manquez plus nos derniers articles !