Questions sur le protocole de Duniter et sur la TRM

Bonsoir.

J’ai eu en fin d’après-midi une passionante discution avec un ancien professeur qui à de grandes connaissances en mathématiques, en cryptographie et en sécurité informatique en général. Il avait participé à la rédaction d’un papier sur les cryptomonnaies il y a quelques mois, et va participer à celle d’un livre dans les mois à venir. Dans le premier il à évoqué Duniter en avouant ne pas avoir tout compris, mais compte bien en parler avec de meilleurs connaissances dans le livre.

J’ai donc essayé de répondre à un maximum de questions dans la limite de mes connaissances, et quelques questions sont restées sans réponse de ma part, soit parceque je ne trouvais pas l’information ou que plusieurs sources donnaient des réponses divergentes, ça parceque cela depassait ma compréhension actuelle de Duniter. Les voici:

  • Comment sont déterminés les membres référents ? Par rapport au nombre de certifications reçues ? Émises ? Les 2 ?
  • Quelle est la formule exacte pour calculer la difficulté personnalisé ?
  • Quel est le calcul qui permet de détermine le nombre maximal de membres (avec des certifications suivant la réalité / certifications parfaites pour atteindre le maximum)
  • Comment ont été choisis les paramètres (notement la distances aux sentries (5), le nombre de sentries atteintes (80%), etc)

Enfin, il m’a exposé une possibilité d’attaque que je n’ai pas réussi à contrer. Il me manque peut-être des éléments qui font qu’elle ne marche pas, mais voyons ce que vous en pensez :

Prenons 5 membres qui sont tous certifiés par des référents, qui sont eux même certifiés par des référents (ce qui forme une sorte de noyau, qui il me semble est présent dans la G1); et que chaqu’un de ces membres respectent donc la règle de distance. Ils devienent donc membres. Ils décident alors de créer plein de faux comptes et de les certifier, puis de les certifier entre eux. Avec ce grand nombre de comptes qui se certifient entre eux, ils vont devenir rapidements des référents. Ils peuvent alors à leur tour certifier de nouveaux faux comptes, augmenter le nombre de référents sybil et devenirs majoritaires, voir même représenter 80% des membres référents. Ils ont alors à ce moment là contournés la toile de confiance et peuvent créer autant de membres qu’ils veulent.

Qu’est ce qui dans le protocole actuel empêche cette attaque, avec le nombre actuel de membres comme 1 000, 10 000 ou 10 000 000 membres ?

Par ailleurs, il ne voit pas le problème d’avoir des frais de transactions (pour limiter le spam) car par la présence de la difficulté personnalisée il n’est pas possible d’avoir un avantage en déployant plus de puissance. Déployer plus de puissance reviendrait à consommer plus pour gagner tout autant, donc il a plutôt intérêt à faire comme tout le monde et consommer le moins possible tout en partageant les frais. Ils peuvent alors rémunérer l’action de participer au réseau et éviter des spams de transactions.

Il est en tout cas, comme d’autres enseignants autour de lui, très intéressés par Duniter/G1 et vont surement bientôt participer à des apéros monnaies libre pour se faire certifier (un connait Duniter puis plus d’un an mais n’a pas réussi à avoir ses 5 certifications). Coucou @jeanferreira, tu auras du monde cette prochaine fois.

Merci d’avances pour vos réponses éclairées, et passez à tous une bonne soirée !

6 Likes

les 2

cf l’étude la WoT. Tu as les fichiers dedans.

idem : cf l’étude de la Wot

1 Like

Pour les attaques sybil, je t’invite à lire cette étude d’@elois une fois que tu auras compris le fonctionnement de la WoT :slight_smile: Étude d’impact d’attaques Sybil V5 - Stratégie d’attaque plus rapide!

1 Like

Oui, mais 5 comptes ne peuvent certifier un nouveau compte que tous les 5 jours. Et ces nouveaux comptes ne peuvent pas servir à certifier rapidement d’autres comptes parce que la règle de distance va entrer en jeu.

Je n’ai pas l’impression que c’est ça le problème (mais j’ai peut-être mal compris l’histoire de spam). Rien n’empêche qui que ce soit de faire plein de transactions et de saturer la blockchain, bloquant en pratique son fonctionnement.

Ce n’est ici pas une question de rapidité. Au bout de quelques mois le nombre de comptes sybil pourrait devenir très grand. La règle de distance ne posera pas de problème si les premiers comptes (non sybil mais qui lancent l’attaque) sont proche des 80% (2 ou 3, ce dernier permettant déjà 2 couches de comptes sybil).

Le blocage/saturation de la blockchain est le problème. La solution de la plupart des crypto est d’utiliser des frais de transactions, et Duniter ne le fait pas.Pour l’instant nous ne sommes pas nombreux, donc ce n’est pas grave, mais il faut penser à ça à l’avance. On peux envisager d’utiliser un Lightning Network, mais rien n’empêche des attaquant de saturer la blockchain et donc d’empécher la création/fermeture des channels, ce qui pose un danger important au vu de l’usage crutial des time locks dans LN.

Alors attention, il faut penser théorie des graphes, tu peut très bien n’être certifié que par des référents qui n’ont eux même été certifiés que par des référents, cela ne change rien au pouvoir bloquant de la règle de distance.
Même dans une wot avec 100% de membres référents les 5 attaquants en question serait rapidement bloqués, je te laisse faire des simulations pour t’en convaincre.

Mais surtout, plus que la taille maximale d’une région sybil c’est le temps pour attendre cette taille qui est colossal, bien souvent supérieur aux 2 ans de renouvellement des certifs, ce qui laisse le temps a la communauté de détecter la région sybil en formation et de trouver et ficher les attaquants de départ afin qu’il ne soient pas recertififier par des membres légitimes, il ne seront alors recertifier que par leur propre sybil et se détacheront complètement de la wot légitime, formant une wot isolée, ils n’arriveront plus a renouveler leurs adhésions car la règle de distance ne pourra plus être respectée (ils sont a une distance infini de tout les référents légitimes).

2 Likes

Il faut bien avoir à l’esprit que, de fait, ces nouveaux venus seront déjà à une distance supplémentaire de 1 pas de leurs certifieurs, puisqu’ils se font certifier pour entrer. Et donc ils sont aussi à une distance supplémentaire des certifieurs des certifieurs, etc. Et il n’y a que 5 pas possibles au maximum.

Et donc selon la qualité des attaquants au sein de la toile, l’attaque aura une envergure maximale plus ou moins grande, d’extrême à négligeable, et prendra un temps plus ou moins long également. Tu retrouveras des chiffres plus précis dans l’article d’Eloïs cité par Inso un peu plus haut.

1 Like

Merci pour vos réponses !

Je vais lire attentivement les liens que vous avez fourni et je vais les transmettre, et j’en rediscuterais avec mon ex-prof. Une assomption que nous avions pris était que les membres référents sont concentrés sous la forme d’un noyau, ce qui n’a pas l’air d’être le cas. Du coup même en étant proche d’un membre référent le nombre de pas vers tous les autres référent peut être important. C’est donc bien la “qualité de la toile” qui protège des attaques sybil, et cette qualité viens de l’application correcte de la licence. Personne ne peut connaître assez bien tous les membres référents, donc il ne peux pas y avoir qu’un seul pas entre tous les référents par exemple. Et plus la toile va grandir plus ça sera vrai.

2 Likes

Après, il suffit d’être atteint par 80% des référents en un maximum de 5 pas. Donc il peut exister jusqu’à 20% qui ne t’atteignent pas.

Ceci dit oui, les référents sont déjà bien dispatchés car ce n’est pas très difficile de le devenir, il suffit de 4 liens entrants et sortants aujourd’hui (me semble-t-il, car ce nombre évolue logarithmiquement avec N).

1 Like

Effectivement c’est totalement faux ! Il te suffit de regarder dans wotex la distance a laquelle se situe les autres membres référents de l’un d’eux (ils sont en bleu) : https://g1-monit.librelois.fr/wotex?lg=fr&to=elois&pending=&mode=undefined

Dans mon cas par exemple, il y a des membres référents à 5 pas de moi, il y en a même quelques uns a une distance infinie (wotex cherche jusqu’a 7 pas, au delà la distance est considérée infinie).

1 Like

Du coup actuellement quels sont les risques et les vecteurs d’attaque connus pour la monnaie et la toile de confiance ?

Oula longue question :stuck_out_tongue:
Pour la Toile De Confiance, il n’y a pas si l’on considère que les membres appliquent bien la licence Ğ1 :slight_smile:
Toutefois, comme l’humain est ce qu’il est, il est nécessaire de monitorer de près la wot avec plusieurs indicateur afin de détecter les régions sybil et d’enquêter en conséquence pour mettre les projecteurs sur les attaquants.
Sur ce point ont est déjà bien avancé aujourd’hui avec g1-monit, on pourrait aller plus loin avec les algos qu’a présenter @Smyds aux rml10, mais il ne pourront etre performant que pour une wot beaucoup plus grande de toute façon donc ce n’est pas urgent :slight_smile:

Concernant les vecteurs d’attaque au niveau de la monnaie c’est davantage @cgeek qui maitrise la question !

2 Likes