Liste des différents consensus en crypto-monnaies et dans les blockchains

 

explication et définition d'un consensus dans la technologie blockchain et les crypto-monnaies

 

Qu’est ce qu’un consensus ?

Pour fonctionner correctement, les crypto-monnaies ont besoin de suivre certaines règles qui régissent leur fonctionnement. Parmi ces règles, l’une des plus importantes concerne la manière dont le réseau détermine si une transaction existe ou non, et comment tous les nœuds réseau font pour se mettre d’accord sur ce point. Dans le jargon, on appelle cela un système de consensus.

Ce système définira certains points importants régissant le fonctionnement d’un crypto-actif, comme par exemple :

  • Est-ce que le crypto-actif fonctionnera grâce à l’activité des mineurs ?
  • Un système de MasterNode sera-t-il possible ?
  • Comment décide-t-on de l’évolution du projet ? En d’autres mots, comment est structurée la gouvernance ?
  • Comment doit-on récompenser les personnes qui permettent de valider les transactions ?
  • De quelle manière les transactions sont-elles effectuées exactement ?
  • Comment sécurise-t-on au mieux la blockchain ?
  • Etc.

Chaque système de consensus fonctionne selon des règles qui lui sont propres. Il existe également au sein de chaque système quelques petites variantes selon le crypto-actif qui l’utilise (taille des blocs, durée de traitement des transactions, etc.).

Dans cet article, nous allons surtout parler des consensus utilisés par des crypto-monnaies qui ont une certaine importance. Nous avons bien conscience que nous pouvons trouver au moins une cinquantaine de consensus différents, mais nous ne nous intéresserons ici qu’à ceux qui font fonctionner les crypto-monnaies les plus connues et capitalisées, ou éventuellement, ceux qui nous paraissent les plus intéressants et novateurs. Pour chacun des consensus présentés, nous donnerons une brève explication, une liste des avantages, une liste des inconvénients et nous donnerons le nom d’au moins un crypto-actif fonctionnant selon ce consensus.

 

Preuve de Travail, ou Proof of Work (PoW)


Explications :

Le système de la Preuve de Travail a été le premier consensus existant dans le monde des crypto-monnaies. La plupart des premiers crypto-actifs utilisent cette méthode car c’était un système révolutionnaire lorsque Satoshi Nakamoto a présenté ce concept en 2008 et l’a appliqué au Bitcoin. Pour résumer assez simplement, les récompenses sont distribuées aux personnes qui ont le plus contribué à la validation des transactions.

Si vous voulez plus d’informations au sujet de la Preuve de Travail, nous vous conseillons de lire notre guide complet sur le sujet : Qu’est-ce que le PoW (Proof of Work) ou preuve de travail ?

Avantages :

  • Il est très onéreux de passer outre la sécurité de ce système lorsque le réseau est suffisamment développé.
  • Cela fait plus de 10 ans que la Preuve de Travail est utilisée par de nombreux crypto-actifs, elle a donc été améliorée au fil des ans et a su faire ses preuves.

Inconvénients :

  • Le système de vérification des transactions est lent.
  • C’est un processus qui consomme énormément d’énergie et donc induit beaucoup de pollution.
  • Les crypto-actifs les plus obscurs qui utilisent la Preuve de Travail peuvent être facilement piratés par le biais d’une attaque à 51%, comme le montre clairement ce site, qui fait la liste des crypto-actifs utilisant la Preuve de Travail et indique quel est le coût d’une attaque 51% pour chacune d’entre elles.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Preuve d’Enjeu, ou Proof of Stake (PoS)


Explications :

La Preuve d’Enjeu, ou Proof of Stake (PoS), est le deuxième système de consensus le plus populaire après la Preuve de Travail. Le but de ce protocole de consensus est de réduire considérablement les dépenses énergétiques engendrées par la Preuve de Travail, tout en assurant une sécurité acceptable.

Toutefois, le système PoS possède une vulnérabilité importante, tout comme les attaques 51% de la Preuve de Travail : le “nothing at stake problem”, ou problème de l’absence d’enjeu. En effet, dans un système PoW, la validation des transactions nécessite la résolution d’équations mathématiques complexes. Pour accomplir ce processus, de l’énergie est dépensée, et de l’argent par la même occasion. Or, le système de staking de la Preuve d’Enjeu ne coûte pratiquement rien à une personne pour valider les transactions. De ce fait, lorsque plusieurs blockchains concurrentes sont en compétition (en cas de fork notamment), les personnes en charge d’approuver les transactions peuvent continuer à les valider sur ces deux chaînes sans que cela n’impacte significativement leurs finances. Il en résulte alors la possibilité que 2 blockchains parallèles puissent co-exister et se parasiter mutuellement.

Cela pourrait permettre, entre autres, à un mineur de créer une chaîne parallèle dans laquelle il s’attribue des jetons, et faire en sorte que cette chaîne survive puisque les autres mineurs travailleraient également sur sa chaîne par simple souci de maximisation des profits. Différentes solutions théoriques existent : certains crypto-actifs utilisent un système de minage hybride avec la Preuve de Travail pour stabiliser la chaîne, d’autres proposent des mécanismes pour punir ceux minant sur deux chaînes… Ce problème reste toutefois difficile à résoudre entièrement, et c’est notamment pour cette raison qu’Ethereum n’utilise pas encore le consensus de la Preuve d’Enjeu.

Pour plus d’informations à propos de la Preuve d’Enjeu, rendez-vous sur notre article dédié : Qu’est-ce que le Proof of Stake ?

Avantages :

  • Les dépenses d’énergies sont maîtrisées.
  • Les transactions peuvent être plus rapides.

Inconvénients :

  • Le problème de l’absence d’enjeu, qui réduit un peu la sécurité vis-à-vis de la Preuve de Travail.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Preuve d’Historique, ou Proof of History (PoH)


Explications :

L’idée de base derrière ce consensus est de pouvoir prouver l’ordre de déroulement d’une série de transactions. Le Proof of History tente de remédier au problème principal qu’ont les crypto-actifs actuellement : le problème du temps.

En effet, lorsqu’on effectue une transaction entre 2 ordinateurs, le moment exact à laquelle elle se déroule doit être déterminé et validé par l’ensemble des nœuds du réseau. Puisque les ordinateurs n’ont pas forcément la même heure, il faut toujours effectuer une opération supplémentaire, qui fera en sorte que l’on puisse déterminer l’ordre exact des transactions.

Si l’opération semble facile à effectuer, dans la pratique, c’est très compliqué. Faire en sorte que des événements soient coordonnés nécessite énormément de ressources.

Le consensus Proof of History fera en sorte que tous les nœuds du réseau n’aient pas à approuver la transaction. Il requiert simplement d’établir qu’un événement Y s’est déroulé après un événement X, et avant un événement Z. En l’occurrence, les événements X et Z sont représentés par des calculs de hachage, économes en énergie et effectués à intervalles réguliers, dont le résultat est impossible à prévoir. Grâce à cette opération, le consensus pourra fonctionner correctement. En effet, il est impossible de savoir à l’avance quel sera le résultat X ou Z, ce qui fait qu’il n’est possible de créer des transactions situées entre les deux qu’au moment précis où l’on s’y trouve.

Avantages :

  • Ne nécessite pas que l’entièreté du réseau valide les transactions pour qu’elles deviennent valides.
  • Gain de temps énorme.

Inconvénients :

  • Le projet n’est encore que théorique. Solana est pour l’instant le seul crypto-actif qui utilise cette méthode, et il n’est toujours pas accessible au grand public.
  • Peut-être existe-t-il des problèmes que l’on n’a pas encore pu imaginer, tels que la problématique de l’absence d’enjeu mentionné ci-dessus.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

  • Solana.

 

Preuve d’Enjeu Déléguée, ou Delegated Proof of Stake (DPoS)


Explications :

Dans un consensus Delegated Proof of Stake, les détenteurs des jetons peuvent élire des délégués qui valideront les transactions à leur nom. De ce fait, seul un petit nombre d’individus validera les transactions, ce qui rendra le système plus rapide que le PoS.

Lorsqu’on désire élire un délégué, celui-ci peut donner des incitants à ses électeurs. L’incitation la plus commune est de donner une partie des revenus obtenus grâce aux frais de transaction. Plus le pourcentage reversé aux votants est important, plus il sera susceptible d’obtenir des voix. Cependant, si un délégué ne fait pas correctement son travail, il ne validera pas les transactions de manière efficace. De ce fait, les électeurs lui retireront leurs votes et voteront pour une autre personne qui leur fera potentiellement gagner plus d’argent.

Le Delegated Proof of Stake (DPoS) peut se révéler problématique lorsque le nombre total de délégués est faible car cela peut permettre à certains individus de prendre le contrôle du consensus en faisant collusion entre eux.

Afin de trouver un compromis acceptable, il faut que le nombre total de délégués soit suffisamment grand afin d’éviter la création d’un cartel, tout en ayant un nombre de délégués suffisamment petit pour garantir la rapidité de validation des transactions.

Avantages :

  • Efficace d’un point de vue énergétique.
  • Rapidité.

Inconvénients :

  • Risque de centralisation excessive.
  • Les participants possédant le plus de jetons peuvent voter pour eux-même afin de s’élire vérificateur des transactions.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Preuve d’Enjeu à Scrutin, ou Proof of Stake Voting (PoSV)


Explications :

Le consensus Proof of Stake Voting possède bien des aspects du DPoS tout en incluant des éléments de sécurité supplémentaires. Le principe de base est simple : il s’agit d’un système de masternodes, avec une petite particularité : les masternodes doivent être élus avant de pouvoir valider des blocs. Le vote est effectué par les propriétaires des jetons, avec une voix associée à chaque jeton.

Ensuite, lorsqu’une masternode sera chargée de créer un bloc, une autre masternode sera choisie aléatoirement parmi les autres vérificateurs afin de valider le bloc. Après cette première vérification, un autre individu choisi lui aussi aléatoirement sera à son tour chargé de vérifier cette transaction. Si les deux informations concordent, alors le bloc est créé. Si ce n’est pas le cas, un autre bloc sera créé en respectant les mêmes étapes.

Afin d’éviter les risques de fork, le consensus Proof of Stake Voting (PoSV) utilisera également une caractéristique de la Preuve de Travail. A savoir : lorsque plusieurs blockchains seront en compétition, seule la plus longue deviendra l’officielle et les autres seront écartées.

Avantages :

  • Diminue la centralisation dont souffre le DPoS.
  • Système de double vérification couplé à une sélection aléatoire des vérificateurs.
  • Les risques de fork sont écartés.

Inconvénients :

  • Mêmes problèmes globaux que le PoS ou le DPoS.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Preuve d’Autorité, ou Proof of Authority (PoA)


Explications :

Dans un consensus basé sur la Preuve d’Autorité, les blocs et les transactions sont validés par des comptes approuvés à l’avance, que l’on appelle en anglais “validator“. Le processus est automatique et mis à part le fait de vérifier que l’ordinateur n’est pas compromis, il n’y a rien d’autres à faire.

Pour devenir un validateur dans le consensus Proof Of Authority (PoA), il faut que votre identité soit formellement vérifiée et affichée sur la blockchain. Car c’est votre identité et votre réputation qui sont mises en jeu, plutôt que votre puissance de calcul ou votre richesse.

Il y a donc 3 piliers sur lesquels ce consensus repose :

  • Un moyen de certifier sans aucun doute possible l’identité d’une personne.
  • Un procédé suffisamment difficile à achever pour devenir validateur, afin que la perte de ce titre représente un problème majeur pour le validateur déchu.
  • Un procédé de sélection uniformisé pour tous les validateurs, afin que chacun des validateurs puisse faire confiance aux autres.

En créant un système de réputation lié à une identité, les validateurs sont incités à continuer de valider les transactions de la manière la plus efficace, honnête et transparente possible. S’ils ne le font pas, alors leur identité pourrait être associée à une réputation négative, ce qui leur ferait perdre ainsi leur rôle de validateur difficilement acquis.

Toutefois, ce système présente des inconvénients quelque peu extrêmes, dont le plus important est sa centralisation. En effet, si  les validateurs doivent être choisis, c’est donc qu’une autorité centrale contrôle le réseau indirectement. Ce système de consensus est donc tout à fait adapté à des blockchains mises en place par des administrations.

Mais attention: il n’est pas du tout adapté à des crypto-actifs devant servir de monnaie, pour lesquels la décentralisation est d’une importance capitale. En effet, il est impossible qu’une crypto-monnaie véritablement décentralisée souffre des mêmes problèmes que le système bancaire et monétaire mondial. C’est pour cette raison précise que la notion de décentralisation était au cœur des travaux de Satoshi Nakamoto.

Avantages :

  • Efficace d’un point de vue énergétique.
  • Rapidité des transactions.

Inconvénients :

  • Très centralisé.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Preuve d’Importance, ou Proof of Importance (PoI)


Explications :

Le consensus de la Preuve d’Importance est en fait une version lourdement modifiée de la Preuve d’Enjeu, avec des mécanismes différents qui prennent en compte différents critères. En effet, le principe est le même : la capacité de minage des blocs dépend de la quantité de jetons possédée. Mais il y a une spécificité : au lieu de simplement compter ceux présents sur l’adresse, le mécanisme de la preuve d’importance ne prend en compte que les jetons qui ont été présents sur l’adresse un certain temps.

En fait, chaque jour, un compte des jetons est fait. Et sur l’ensemble de ces jetons, que l’on considère “unvested”, c’est-à-dire non acquis, 10% seront considérés comme “vested, donc acquis. Le lendemain, le compte des jetons acquis et non acquis est refait. Et sur les jetons non acquis, 10% sont déplacés dans la catégorie des acquis.

Pour expliquer tout cela en chiffres, mettons par exemple que vous disposez d’un portefeuille avec 20.000 jetons. A la fin de la première journée, il y a 20.000 jetons non acquis. Le réseau déclare donc que 10% de ces 20.000 doivent être considérés comme “acquis”. Ainsi, au début de la deuxième journée, le portefeuille contient 18.000 jetons non acquis, et 2.000 jetons acquis. A la fin du deuxième jour, le compte est refait : 18.000 jetons sont non acquis. Le système déclare donc que 10% de cette somme devront être acquis pour le lendemain, soit 1.800 jetons. Ainsi, au début du deuxième jour, le portefeuille contiendra 16.200 jetons non acquis, et 3.800 jetons acquis.

Ce mécanisme est très important, parce que seuls les portefeuilles disposant de 10.000 jetons acquis peuvent valider des transactions.

Une fois que le portefeuille détient assez de jetons acquis, les chances qu’il soit sélectionné comme validateur dépendent de plusieurs facteurs :

  • De la “notoriété” qui s’obtient via une formule mathématique spécifique, dépendant notamment de la fréquence et de la taille des transactions validées précédemment.
  • Du nombre de jetons que l’individu possède.
  • De la variété d’origines des transactions validées par le portefeuille. Plus les transactions validées proviennent de gens différents, plus le portefeuille est considéré fiable.

Ces 3 paramètres permettent de calculer la composante “Importance” du système PoI. Cela donne une image plus globale de l’utilité qu’a une personne dans le consensus Proof of Importance. Plus une personne est active et contribue à faire fonctionner le réseau, plus elle sera récompensée.

Du fait de ce système d’importance, il est également très difficile de manipuler les choses. Il faudra du temps à une nouvelle personne avant d’obtenir de la notoriété et de valider un certains nombre de transactions. De même, une personne considérée importante dans le passé et n’étant plus suffisamment efficace mettra du temps avant de perdre de sa notoriété.

Avantages :

  • Meilleur que le système PoS pour évaluer l’enjeu.
  • Consensus difficile à manipuler.

Inconvénients :

  • Il faudra du temps pour un nouvel utilisateur avant de pouvoir valider de manière régulière des blocs, le temps que son importance grandisse.
  • Il faudra également du temps pour qu’un individu qui n’est plus efficace dans la validation des transactions laisse sa place à d’autres.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Tolérance aux Failles Byzantines, ou Byzantine Fault Tolerance (BTF)


Explications :

Le consensus Byzantine Fault Tolerance se nomme ainsi en l’honneur des stratégies militaires supposément mises en place par l’Empire Byzantin. La légende veut que lorsque plusieurs généraux encerclaient une ville, ils étaient chacun en charge de la gestion d’une armée spécifique. Ils avaient alors le choix d’attaquer ensemble ou pas du tout, mais de préférence pas séparément. S’ils attaquaient séparément, alors ils risquaient de courir tout droit au fiasco. Et la présence de messagers envoyés par l’ennemi pour brouiller les transmissions risquait précisément d’inciter des généraux à agir seuls, en croyant qu’ils seraient soutenus par leurs alliés…

En informatique, cette métaphore s’applique lorsque des informations doivent être transmises entre différents systèmes, mais que l’on ne peut pas être sûr à 100% de l’intégrité du message transmis, et des intentions de la source. L’objectif est donc de concevoir un système qui n’est pas vulnérable à la transmission d’informations fausses. Chaque système est ici assimilable à un général. Et dans le cas de la blockchain, c’est donc chaque nœud réseau qui représente un général.

Ce problème des généraux Byzantins est au cœur de la blockchain et du principe de consensus, et c’est par des mécanismes comme la Preuve d’Enjeu et la Preuve de Travail que l’on peut résoudre ce problème. Les consensus de type “Byzantine Fault Tolerance” tente d’apporter une solution à cette problématique via deux mécanismes différents :

  • Tolérance aux Failles Byzantines Pragmatique, ou Practical Byzantine Fault Tolerance (PBFT) : seuls les généraux les plus efficaces communiquent entre eux, en espérant que les autres suivront le mouvement.
  • Agrément Byzantin Fédéré, ou Federated Byzantine Agreement (FBA) : chacun des généraux analyse indépendamment la situation en fonction des informations qu’il reçoit. Il prend alors sa décision sans consulter les autres généraux. On espère ici que chacun prendra la même décision car l’analyse d’un même problème devrait donner lieu à la même solution.

Avantages :

  • Rapidité des transactions.
  • Scalabilité
  • Facilité à mettre en œuvre.

Inconvénients :

  • Possibilité pour certains nœuds réseau de profiter de leurs positions pour filtrer certaines transactions et/ou les retarder.
  • Autant Ripple que Stellar ont implémenté cette solution de manière centralisée. Ripple, notamment, ne permet pas aux utilisateurs de choisir quels serveurs sont au centre du procédé de validation : il ne peut s’agir que de ceux de la société, comme vous pourrez le lire dans cet article. Cela étant dit, au fil du temps Stellar semble progresser vers une relative décentralisation. Leur principal problème semble désormais être celui de la distribution très inégalitaire des jetons.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Tolérance aux Failles Byzantines Déléguée, ou Delegated Byzantine Fault Tolerance (dBFT)


Explications :

Le consensus Delegated Byzantine Fault Tolerance autorise plus de personnes à prendre part au système de gouvernance que le BFT classique. Les possesseurs du jeton peuvent, via un vote, choisir ce qu’on appelle un “bookkeeper”, c’est-à-dire un comptable. Ensuite, un groupe de comptables, choisi au hasard, tente de parvenir à un consensus pour générer un nouveau bloc. Si deux tiers du réseau acceptent sa proposition, le bloc est validé, autrement il est rejeté et un autre comptable est sélectionné pour proposer une solution.

Le dBFT autorise une tolérance dans les fautes de l’ordre de (n-1)/3 où n est le nombre de nœuds participant au consensus. Le système inclut également les sécurités du système BFT de base. Lorsque les blocs sont confirmés, il n’est plus possible de révoquer une transaction ou de revenir en arrière.

Le consensus Delegrated Byzantine Fault Tolerance utilise la technologie d’identité numérique. Cela signifie que les comptables peuvent être des individus ou institutions réels. Ce faisant, il est possible de geler, de révoquer, d’hériter, de récupérer et de transférer la propriété des comptables en raison de décisions judiciaires les concernant.

Avantages :

  • Rapidité des transactions.
  • Scalabilité.
  • Utilisé sur des réseaux publics.

Inconvénients :

  • Il est possible d’observer des blocages si 1/3 des comptables refuse de valider les transactions.
  • Système très centralisé.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Les consensus des Graphes Orientés Acycliques, ou Directed Acyclic Graphs (DAG)


Explications :

Les Graphes Orientés Acycliques représentent une catégorie de crypto-actifs relativement nouvelle, basée sur une technologie différente de la blockchain. 

En effet, les blockchains fonctionnent selon une structure linéaire qui ajoute des blocs un par un sur une chaîne. Pour pouvoir ajouter un bloc à la chaîne, il faut qu’il soit placé après un bloc déjà créé, on ne peut pas ajouter deux blocs en même temps.

Dans la structure des DAG, les transactions peuvent être ajoutées en parallèle, chaque transaction confirmant un certain nombre de blocs précédents.

Les problématiques de consensus étant par conséquent fondamentalement différentes, les DAG disposent de leurs propres systèmes de consensus, autres que ceux mentionnés ci-dessus. Certains essaient même de concevoir des systèmes dans lequel un consensus global n’est pas nécessaire.

En résumé, les DAG doivent notamment résoudre les problèmes suivants :

  • Comment faire pour décider si une transaction est valide ?
  • Comment propager l’information ?
  • Comment classer les transactions une fois que celles-ci sont effectuées ?

Leurs méthodes de consensus étant généralement uniques, il y a relativement peu d’intérêt à les analyser une par une. Sachez simplement que chaque DAG aura une méthode de consensus bien à lui, et qu’il conviendra d’y faire tout particulièrement attention avant d’investir. En effet, certains sont plus centralisés que d’autres…

Avantages :

  • Extrêmement rapide, peu importe la taille du réseau.
  • Très efficace d’un point de vue énergétique.
  • Peut être décentralisé si le consensus est bien conçu.

Inconvénients :

  • Du fait de la nature des contrats intelligents, la plupart des DAG ne permettent pas leur fonctionnement. Toutefois, des solutions ont été trouvées, notamment par Byteball, le premier DAG à permettre l’utilisation de ces contrats intelligents.
  • Peut être centralisé si le consensus est mal conçu.

Crypto-actif le(s) plus emblématique(s) utilisant ce consensus :

 

Conclusion sur les différents consensus existant

La blockchain est une chose de commune à presque tous les crypto-actifs, mais la manière dont on effectue la vérification des transactions est très différente d’une crypto-monnaie à une autre.
Si nous devions citer d’autres modes de consensus, nous pourrions parler :

  • preuve de possession (proof of hold) basée sur la durée de conservation des jetons de crypto
  • preuve d’utilisation (proof of use) basée sur le nombre de transactions réalisées
  • preuve d’importance (proof of importance) qui repose sur la réputation des différents acteurs du réseau
  • preuve de destruction (proof of burn) qui consiste à détruire des crypto-monnaies pour obtenir la confiance du réseau

Il existe d’ores et déjà des dizaines de méthodes de consensus, et de nouveaux verront très probablement le jour au cours des prochaines années.
Certains seront plus révolutionnaires que d’autres ; mais il semble que la question la plus complexe de toutes à résoudre soit celle sur laquelle certaines équipes conceptrices de DAG travaillent : comment faire pour assurer à 100% la validité d’une transaction sans requérir de consensus global, tout en maintenant le caractère décentralisé des choses ? Peut-être qu’une solution apparaîtra dans les années à venir, même si cela semble farfelu.

D’autres solutions, jugées encore plus résistantes sont en train d’être développées par des scientifiques. Notamment par Silvio Micali qui propose le protocole Algorand. Cette méthode de consensus est prouvée mathématiquement et souple. Il fonctionne même avec la possibilité d’avoir des noeuds malveillants dans l’ensemble du réseau.

En attendant, il faut bien observer les méthodes de consensus utilisées par les crypto-actifs dans lesquels vous choisissez d’investir : certains consensus peuvent avoir des effets secondaires extrêmement indésirables, et dangereux pour les utilisateurs du réseau. Privilégiez donc plutôt les crypto-actifs utilisant des systèmes de consensus adaptés à leurs objectifs.

 


Note des lecteurs

[Total : 1    Moyenne : 4/5]

Vous avez aimé ce tutoriel ❤ ? Alors vous aimerez également :

Qu’est-ce que la Blockchain ?La technologie Blockchain en pratiqueBlockchain : avantages et inconvénients


Poster un Commentaire

avatar