Étude de la WoT

4 messages ont été déplacés vers un nouveau sujet : Simulation de la WoT

9 messages ont été déplacés vers un nouveau sujet : Révocation des identités Sybil

Bon, suite aux discussions sur le salon XMPP et aux simulations à petite échelle que j’ai pu faire sur papier, je constate que tant qu’on a sigQty << sigStock, alors la toile peut se débrouiller pour s’étendre et se maintenir de façon rapide.

Donc je m’arrête là pour les simulations, rien n’empêche ceux qui veulent de la reprendre ou la continuer, il y a certainement des choses intéressantes à en tirer.

Cela ne change par contre rien à mon affaire de choix de valeur pour (stepMax, sigQty), dont je remets ici les valeur pour mémo :

Rappel des formules :

  • WoT (stepMax,sigQty) = (sigStock+1)*(sigStock / sigQty)^(stepMax-1)
  • WoT moyenne (stepMax,sigQty) = (50+1)*(50 / sigQty)^(stepMax-1)
  • WoT moyenne (5,4) = (50+1)*(50/4)^4 = 1.245.117
  • WoT moyenne (5,5) = (50+1)*(50/5)^4 = 510.000
  • WoT moyenne (6,5) = (50+1)*(50/5)^5 = 5.100.000
  • WoT moyenne (6,6) = (50+1)*(50/6)^5 = 2.049.575
  • WoT moyenne (6,7) = (50+1)*(50/7)^5 = 948.265

Je note que, si le million est un minimum visé, on ne peut pas conserver (5,5). Reste donc soit à utiliser une distance de 6, soit à garder la distance de 5 mais accepter des membres avec seulement 4 signatures.

Je ne comprends pas que WoT moyenne (sigQty,stepmax) soit décroissante en stepmax…

Il faudrait rappeler la formule :

  • WoT (sigQty,stepmax) = (sigStock+1)*(sigStock / sigQty)^(stepmax-1)
  • WoT moyenne (sigQty,stepmax) = (50+1)*(50 / sigQty)^(stepmax-1)

Qui est donc décroissante en sigQty et croissante en stepmax.

Parce qu’en citant les paramètres dans cet ordre “pour sigQty et stepMax” et sans rappeler la formule, la suite est incompréhensible…

Suite au split je reposte ici la partie de mon message qui ne concerne pas le split :

S’il est vrai qu’un humain connait bien 50 autres humains en moyenne, il me semble qu’il nous faut considérer le fait qu’une proportion des connaissances de chacun (disons 20%) resterons toute leur existence réticents à l’adoption d’une monnaie libre soit par peur du changement ou parce qu’ils sont beaucoup trop conditionné ou pour toute autre Ğraison que l’on ne peut ni prévoir ni juger.

J’ai donc refait les calculs en considérant que sur le long terme 80% des connaissances de chacun adoptera la monnaie libre, ce qui reviens a prendre 40 comme nombre moyens de personnes certifiées par un membre et non 50 :

WoT moyenne (5,4) = (40+1)(40/4)^4 = 410.000
WoT moyenne (5,5) = (40+1)
(40/5)^4 = 167.936
WoT moyenne (6,5) = (40+1)(40/5)^5 = 1.343.488
WoT moyenne (6,6) = (40+1)
(40/6)^5 = 539.917
WoT moyenne (6,7) = (40+1)*(40/7)^5 = 249.800

Ainsi seul la solution stepMax=6,sigQty=5 est satisfaisante pour atteindre notre objectif du million d’utilisateurs.

Simplifions avec sigStock +1 ≈ sigStock et 50 + 1 ≈ 50 :

WoTmax / WoTmoy = 10 => sigStock = 10^(1/stepmax) * 50

  • stepmax = 3 : sigStock = 108
  • stepmax = 4 : sigStock = 89
  • stepmax = 5 : sigStock = 80
  • stepmax = 6 : sigStock = 74
  • stepmax = 7 : sigStock = 70
  • stepmax = 8 : sigStock = 67
  • stepmax = 9 : sigStock = 65
  • stepmax = 10 : sigStock = 63

Les résultats sont similaires à 1 près, la formule de calcul étant bien plus simple, c’est mieux.

3 Likes

50 connaissances est lié aux capacités de mémoire et aux interactions sociales. Des hommes adoptant une monnaie libre seront naturellement dans un environnement d’hommes souhaitant adopter une monnaie libre, adapteront leurs connaissances (qui ne sont pas figées, mais évoluent dans le temps) vers des hommes souhaitant adopter une monnaie libre. Donc de ce point de vue l’hypothèse ne tient pas, elle ne prend pas en compte l’adapation(t), le flux(t), les connaissances(t).

Par ailleurs le nombre de 50 est issu des connaissances sociales actuelles qui sont établies sur la base d’une société évoluant au sein d’une monnaie non-libre, il est tout à fait possible que ce nombre aussi évolue. Ces réflexions ne sont là que pour évaluer “à peu près” ce qu’il est “raisonnable” d’envisager, mais ne préjuge absolument pas du résultat final (sauf WoT max qui est bien une limite supérieure).

2 Likes

Concernant la propriété d’être sentry : Cela permet d’avoir un contrôle sur la distance de la Toile, mais cela joue aussi à l’inverse sur le blocage de son expansion.

Ainsi si un Sybil certifie Y[N] il devient centre de contrôle, mais c’est gênant en soi. Car il va de ce fait par exemple certifier d’autres sybils, qui deviendront centre de contrôle en certifiant, ce qui de l’autre côté de la toile, va limiter son expansion pour de mauvaises raisons.

Qui plus est cette notion plus forte permet d’éliminer le paramètre “90% des sentries” on peut se baser sur 100%, ce qui est plus complet.

Là il convient donc de symétriser la notion :

Devient Sentry le membre qui non-seulement a émis au moins Y[N] certifications, mais aussi est certifié par Y[N] membres. Ce qui rend le contrôle plus fort tout en éliminant les blocages Sybils (car un Sybil peut en effet soit risquer une expansion incontrôlable, mais aussi bloquer le développement pour de mauvaises raisons du côté de la toile où il ne joue pas (puisqu’il devient sentry non-légitime…)).

Ainsi un Sybil qui émet plein de certifications uniquement est dans la même situation que précédemment, son expansion sera limitée par la distance, mais il ne bloquera pas en plus les autres, car n’ayant pas reçu Y[N] certifications lui-même, il n’est pas pris en compte dans le calcul de distance.

Par ailleurs je pense que la formulation Y[N] = partie entière (N^(1/stepmax) + 1) me semble un poil mieux que la partie entière seulement. Avec un stock de 80 certicifications ou plus ça ne change pas grand chose, mais c’est un meilleur contrôle. Notamment cela permet d’être sentry avec une WoT de 3 membres et un stepmax de 2 (Y[N] = 2). Ce n’est par contre pas aussi fondamental que la question sur la symétrie concernant Y[N].

Oui mais cela donne, à l’inverse, un grand pouvoir aux Sybils puisqu’ils seront pris systématiquement en compte dans la distance. Et donc en cas de certifications en cercle pseudo-fermé, les Sybils auraient un grand pouvoir sur l’expansion par blocage minoritaire (1% suffit).

Avec un %sentries de l’ordre de 80% à 90%, on s’assure au moins que si l’on a 20% à 10% de Sybils sentries, celles-ci ne pourront pas verrouiller l’expansion de la toile.

Pour le reste, je suis plutôt d’accord : on a vu que certifier des personnes qui sont elles-mêmes de forts certificateurs resserrait, rapprochait la toile, créait des chemins vers de nombreuses personnes. Tandis que sans la symétrie, les chemins partant des sentries sont plus pauvres.

Oui j’y songeais aussi : à petite échelle ça permet de détendre la toile, tandis qu’à plus grande échelle ça ne change pas grand chose.

Bon … simplement j’espérais qu’on aurait pas de changement de protocole aussi important à cette étape. Mais bon, cela me semble nécessaire.

2 Likes

Exact, même si Y[N] certifications sont nécessaires, on peut imaginer Y[N] sybils qui le réalisent, donc ça limite mais ça ne bloquerait pas, il faut donc garder le paramètre %.

Ce serait bien pour les clients que Y[N] leur soit donné avec la formulation (ce qui est le pendant pour la WoT de la valeur du DU et de sa formule pour la monnaie).

1 Like

Je viens de vérifier (et vous pouvez aussi sur Cesium), la formule actuelle est :

Y[N] = PLAFOND(N^(1/stepMax))

Donc pour N = 27, on a Y[N] = 3. Mais pour N = 28, Y[N] = 4. La différence avec ce que tu suggères est minime, donc je considère qu’on est déjà sur ce mode.

Oui c’est bon. Il faudrait le donner en réponse dans l’API qui donne les paramètres pour être sûr. Ca signifie donc aussi que c’était 3 déjà et pas 2 donc avant 27 ? Ca veut dire donc que là avec 27 membres on est toujours à 3 !?

Ca signifie par ailleurs que si les sentry sont déjà à 3 à plus de 10% (100% - 90%), alors il ne peut pas y avoir de nouveaux entrants right ? Il faut donc que les sentries soient à 2 à 90% pour que ça puisse s’ouvrir !?

Il n’est pas nécessaire que 90% des sentries soient à 2. . Actuellement 2 sentries sur 14 (mententon et Pierre-Yves sont à 3 d’au moins 1 sentries, ce qui fait plus de 10%). Et pourtant certaines identités en demande d’adhésion sont bien à 3 de 100% des sentries, comme gerard94 par exemple !

En revanche oui bien vue pour la symétrie de Y[N], ça me semble nécessaire contre les sybil effectivement :slight_smile:

Oui la distance est bien relative à un individu, donc une sentry à 3 de distance pour I1 peut très bien être à 2 pour I2. Donc la toile n’est jamais absolument bloquée.

1 Like

Oui, ça dépend de qui certifie évidemment.

Si le protocole doit être changé, peut être qu’il faudrait faire une nouvelle WoT de test (comme Gtest) mais sans contraintes de distance, histoire d’étudier la topologie de la toile qui sera formée.

À noter que l’on en a déjà discuté et qu’on s’était dit qu’il était probable qu’on se retrouve avec des « hubs » certifieurs » et des membres beaucoup plus isolés.

La distance semble très contraignante (ce qui est pas forcément un défaut) et les résultats semblent assez imprévisibles (satanés humains :slight_smile: ! ). J’avais émis l’idée il y a quelque temps d’explorer les propriétés de « co-signature », c’est à dire empêcher deux membres de signer conjointement plus de X identités.
À l’époque j’avais essayé de modéliser quelque chose mais il faut bien avouer que je ne maîtrise pas les concepts mathématiques qui permettrait de faire une étude sérieuse de ces propriétés.
Quand à la simulation de WoT, je n’ai jamais trouvé de formule satisfaisante.
Je ne sais donc pas dire si cela est une idée crédible ou non.

Malheureusement on n’a pas ce luxe, les utilisateurs se lassent vite de faire des “demandes d’adhésions” et autres “certifications” sans enjeu. Et j’en suis :slight_smile:

Également, je ne souhaite pas repousser une fois de plus la naissance d’une monnaie libre P2P réelle. D’ailleurs le changement dans le protocole est ici mineur, bien qu’ayant un impact fort. Je ne compte pas explorer de nouvelles voies, je laisserai cela à d’autres.

En tout cas, il me semble que la contrainte la plus forte aujourd’hui est qu’on n’a pas ces « hubs » justement, à cause du stock limité à 15 signatures. Sinon, plusieurs d’entre nous auraient certifié beaucoup plus activement comme sur TestNet où se dessinaient clairement ces hubs et où l’entrée en distance était plus simple.

3 Likes

J’ai l’impression qu’on a un risque avec cette situation. On pourrait potentiellement n’avoir aucune sentry dans la WoT (= des membres, mais personne qui a Y[N] reçu certifications reçues). Ca ne pouvait pas arriver en ne prenant compte que des certifications émises puisqu’elles sont la condition pour que la toile augmente (et donc que Y[N] augmente).

Vous en pensez quoi ?

Que la condition pour que la toile augmente change. Y[N] a pour valeur le minimal de ce qu’il faut pour démarrer la toile dans tous les cas. Donc il y a forcément des sentries au départ, pour augmenter la toile il faut que les conditions pour avoir des sentries soient établies par les membres, et c’est toujours possible.

La remarque ne tient pas.