Liens faibles / intermédiaires / forts

:warning: Je passe ce sujet en section R&D pour information seulement, il n’est actuellement plus envisagé d’implémenter la fonctionnalité ici présentée. Je ne la défendrai pas davantage ni ne souhaite la développer.


Duniter pourrait nuancer son processus de certifications avec des liens faibles, intermédiaires et forts.

Ce sujet n’est pas nouveau :

L’objectif

Une telle fonctionnalité permettrait une inclusion plus souple et plus légère des membres de la Ğ1, afin que celle-ci s’étende davantage et évite les frustrations de ceux qui veulent simplement co-créer la monnaie sans se poser trop de questions.

À l’observation de l’évolution actuelle de la Ğ1 et des retours d’utilisateurs qui souhaiteraient adopter cette monnaie en la co-produisant mais se voient rejetés et rejettent alors eux-même la monnaie, je crains que la Ğ1 en reste à l’état d’épiphénomène et qu’on en reprenne pour 80 ans sans monnaie libre.

Je pense pourtant qu’il est possible d’inclure de tels membres.

Le principe

On distinguerait 3 niveaux de certification (faible, intermédiaire et fort) impliquant aussi 3 niveaux de droits cumulatifs :

  • Membres N1 : ne peuvent émettre que des liens faibles, co-créent le DU
  • Membres N2 : peuvent en plus de N1 émettre des liens intermédiaires et devenir membres référents
  • Membres N3 : peuvent en plus de N2 émettre des liens forts et écrire dans la blockchain

Avec comme règles :

  • être membre N3 requiert 5 certifications fortes ou plus
  • être membre N2 requiert 10 certifications intermédiaires ou plus
  • être membre N1 requiert 20 certifications faibles ou plus
  • une certification forte compte pour 2 intermédiaires
  • une certification intermédiaires compte pour 2 faibles
  • une certification faible dure 1 an et ne peut être suivie d’une autre certification que 5 jours plus tard
  • une certification intermédiaire dure 2 ans et ne peut être suivie d’une autre certification que 10 jours plus tard
  • une certification forte dure 3 ans et ne peut être suivie d’une autre certification que 15 jours plus tard
  • une certification existante ne peux être rejouée avec un niveau différent qu’après expiration
  • toutes les certifications émises sans niveau (avant cette nouvelle version du protocole) sont considérées comme fortes

Avec comme sens :

  • certification faible = je ne connais pas, mais cette personne manifeste la volonté de produire des Ğ1
  • certification intermédiaire = je connais de façon un peu éloignée, mais je suis capable de recouper des informations sur elle (collègue de travail occasionnel, connaissance web, ami d’enfance pas revu depuis des années, …)
  • certification forte = je connais bien cette personne, conformément à la définition donnée par la licence

Avec pour conséquences :

  • toutes les certifications actuelles voient leur durée augmentée de 1 an
  • une personne totalement inconnue peut co-produire des Ğ1 sous réserve de trouver 20 certifications faibles
  • une personne que l’on ne connaît que “sur le web” mais avec une certaine confiance peut produire des Ğ1 assez facilement
  • co-produire les Ğ1 et écrire sur la blockchain deviennent des droits séparés
  • bien qu’il soit plus facile de certifier à la légère, le stock de chacun étant limité l’inclusion de nouveaux membres reste contenu
  • un “levier” de 20 rend les attaques sybilles totalement hors-portée, et le fait de ne pas les inclure dans les référents les empêche de metastaser la WoT

Voilà, cette idée est encore un brouillon. Mais si celle-ci vous inspire, positivement comme négativement, j’aimerais bien vos retours.

11 Likes

Il vaut mieux attendre au moins 3 ans après le lancement, avant d’envisager de compliquer quoi que ce soit. Par contre optimiser les temps de calculs, le stockage, les interactions entre les noeuds, l’amélioration ou la création de nouveaux clients plus ergonomiques, plus complets, éliminer des clients les fausses données non fondamentales (cesium+ qui trompe encore beaucoup d’utilisateurs…) peut se faire sans attendre.

En termes économiques, des modules intégrables (dans wordpress par exemple, ou dans du HTML basique) de crownfunding et d’enchères me semblent plus enclins par ailleurs à développer les échanges de Ğ1. Laisser s’enfermer les échanges dans un site centralisé tel que Ğchange n’est pas bon.

Il y a donc encore beaucoup de conférences à réaliser dans des événements plus larges tels que Ubuntu Party ou RMLL, en direction des informaticiens de talent afin que ces outils essentiels puissent un jour apparaître.

Donc par exemple concernant des versions améliorées de Duniter un crownfunding intégrale sous forme de module permettrait de lancer la libération du code déjà testé. Et des fonctionnalités de clients non-encore développées pourraient se voir développer sous la même forme.

Et ce ne serait pas équivalent d’avoir un même crowfunding disponibles sous N sites différents, que d’être sous un site inconnu difficile à trouver et à connaître.

1 Like

Bitcoin a-t-il réuni ses 1ers développeurs principaux en faisant des conférences ? Je ne le pense pas.

Par contre il me semble évident que celui qui produit des Bitcoin ou des Ğ1 a tout intérêt à développer des outils pour favoriser son utilisation et son adoption, ainsi que d’en faire la promotion. D’où cette idée.

Quant aux délais, cette fonctionnalité de verrai pas le jour avant plusieurs mois, ce qui nous amène déjà à 1,5 ans d’existence. J’ai aussi d’autres chantiers en cours sur Duniter et suis encore en mission-euros. Néanmoins j’aimerais bosser ce changement sur les certifications qui me paraît capital.

1 Like

On peut aussi réfléchir au fait que le profil des développeurs bitcoin n’est pas forcément un profil qui correspond à celui des développeurs Duniter, et que les raisons et les moyens qui les amènent au bitcoin n’en font pas le même domaine d’intérêt.

Aussi il n’est pas du tout sûr sur la base de cette réflexion que le mode et les moyens qui consistent à relier des êtres humains entre eux soit de la même nature que le mode et les moyens qui consistent à développer un outil dont le fonctionnement n’implique pas une reliance de même nature.

Une utilisation et une adoption qui reposent sur la confiance en des principes interhumains n’est pas de même nature qu’une utilisation et une adoption qui reposent sur la confiance en une création finie.

Ca me paraît au contraire complexifier l’existant, monter de plusieurs crans le niveau de compréhension nécessaire, et conduire in-fine à l’abandon d’une monnaie dont les principes demanderont un niveau de compréhension bien trop élevé pour y placer dès lors une confiance assurée, la confiance reposant sur la compréhension.

Au vu de ce principe je serai le premier à ne plus vouloir l’utiliser, le trouvant trop complexe à expliquer.

S’il y avait des changements à faire ils devraient mener vers une plus grande simplicité et unicité, de meilleurs temps de réponse, de meilleurs volumes de stockage, une meilleure clarté explicative etc…

La plus grande simplicité est le chemin qui mène à une plus grande compréhension auprès du plus grand nombre de personnes, en ne sacrifiant rien des principes essentiels (de ce point de vue la Relativité Générale est bien “de plus grande simplicité”).

1 Like

C’est étonnant, car je trouve que c’est justement aujourd’hui que la compréhension nécessaire est la plus élevée. Et effectivement, je pense que ça va nous conduire à l’abandon si on laisse le système tel quel, car finalement non adopté.

Ce que je propose n’est pas justement de comprendre, mais de permettre l’accès premier qui éventuellement débouchera sur une compréhension plus grande.

Crois-tu une seule seconde à ce que tu viens de dire, ou dois-je donner un contre-exemple ?

1 Like

Je ne pense absolument pas qu’on puisse dire d’une adoption qui a fait x16 en 1 an soit “non adopté”. Au bout de 3 ans d’existence on pourra peut-être réévaluer ce constat, mais à ce jour absolument rien ne peut dire que cela “n’est pas adopté” c’est tout simplement affirmer quelque chose contre la vérification expérimentale.

L’accès premier fonctionne très bien, je ne vois vraiment pas pourquoi il faudrait le remettre en question, alors que rien n’indique de blocage à aucun niveau que ce soit.

J’affirme qu’absolument oui, la confiance repose sur la compréhension.

1 Like

Je n’observe pourtant pas cela avec l’euro, si ce ne devait être que mon seul exemple.

2 Likes

Tout dabord, je note une inversion entre les NX :

Deuxièmement, je crains, que le nombre de calculateurs ait plus de mal à croître du fait de la difficulté à atteindre le statut de membre suprême.

Autrement, cette idée me plaît bien et le schéma de transition assez bien pensé pour un début de brouillon.

Parce que la confiance est relative.

La compréhension, qui vient de l’observation que depuis 10, 15, ans le fait d’avoir des UNL permet de les échanger contre des biens et services, aboutit au fait d’une confiance légitime dans la compréhension “cette UNL permet d’obtenir beaucoup de biens et services, c’est un fait observable que j’ai bien analysé et compris, et j’ai confiance dans le fait que cette quantité d’UNL me permettra d’obtenir ceci ou cela”.

Mais la compréhension qui vient de l’observation “utiliser cette UNL qui est produite par les uns mais pas par les autres, finit in-fine par laisser les uns aux commandes d’une grande partie de l’économie”, permet d’établir la confiance dans le fait que “si ces mêmes qui produisent cette UNL, se retrouvent dans une société où ce sont les autres qui produisent leur propre unité commune d’échange, alors le pouvoir de commande des uns sur les autres ne fonctionnera plus, du simple fait que l’on utilise plus leur production auparavant en abus de position dominante”.

De la sorte qu’il n’existe pas “la confiance” au sens indéfini mais “la confiance en quelque chose”, laquelle " confiance en quelque chose" repose sur “une compréhension relative à ce quelque chose”.

2 Likes

Je pense que déjà la priorité c’est de séparer le droit au calcul des blocs des autres droits.
Une fois cela fait il y a effectivement peut être moyen de rendre l’entrée plus facile, mais avoir 3 types de certifs différentes me semble très compliqué, il y a peut être plus simple :slight_smile:

Après une autre question est de savoir si rendre l’entrée plus facile maintenant est souhaitable ou non.

Je n’ai pas d’avis tranché mais je pense que notre priorité est déjà d’augmenter la fiabilité de l’éco-système Duniter.

Cependant, si l’on décidait de rendre l’entrée plus facile, je préconiserai plutôt :

  1. Augmenter fortement Y[n], le doubler tout de suite, pour que seul des membres de forte confiance puissent être référents.
  2. Réduire la durée de vie des certifications à 1an, et réduire sigPeriod a 3 jours et réduire sigStock à 80. Cela permettrait une entrée plus facile tout en simplifiant le système en faisant coïncider la durée de l’adhésion et des certifications. Réduire sigPeriod devenant alors nécessaire pour que l’ensemble du stock reste utilisable.
  3. Ne donner le droit au calcul qu’aux membres référents ET ayant une qualité > 0.8
  4. Réduire sigQty a 3 afin de permettre l’entrée large plus facilement
  5. Pour nous prémunir des attaques sybil rapides : spécifier dans le protocole qu’un nouveau membre ne peut pas émettre de certifications avant 1 mois.

Ainsi on ne changerais quasiment pas le protocole actuel tout en permettant une entrée beaucoup plus facile et la compréhension resterait du même niveau de complexité qu’aujourd’hui :wink:

Je confirme que de mon coté tout les gens que je rencontre dans tout les groupes locaux ont besoin de bien comprendre les règles de la toile qui s’appliquent a eux, j’ai très régulièrement des questions dessus aujourd’hui encore d’un membre de Béziers en MP, et qu’elles sont déjà complexes, je ne suis pas favorable a les complexifier davantage.

4 Likes

Il convient surtout de bien respirer profondément par le nez, 1 an d’existence ce n’est rien du tout. Absolument rien ne pause problème, et le taux d’adoption est encore bien trop rapide. L’année où l’on constatera un N(t) stable ou en régression sera une année où l’évolution des règles pourra commencer à être étudiée.

Patience et persévérance sont nécessaires concernant tout voyage qui veut mener suffisamment loin.

6 Likes

Très bien en ce cas. Je dirai simplement que quand le moment sera venu, le code sera prêt.

Je repensais à cette proposition cette après-midi.
Elle me plais tant d’un point de vu sécurité que diffusion plus aisée,
mais elle me conviens moins bien sur le plan “égalité entre être humain” d’un point de vu communication.

Le coté :

  • le peuple N1
  • les initiés N2
  • les gourous N3

Me semble un vecteur de critique justifié.

J’aurais tendance d’une part à explorer la piste BrightID évoqué ici : BrightID - Identité unique décentralisée

D’autre part à penser/nommer les groupes que tu propose comme :

  • Membre
  • Membre garant de la communauté (TdC) -> une responsabilité supplémentaire
  • Membre garant du fonctionnement technique (noeud, protocol, blockchain…) -> une responsabilité supplémentaire

Et donc de présenter ça non comme un niveau privilégié mais comme une responsabilité à porter, avec le besoin de formation/compréhension associé pour pouvoir assumer sa responsabilité correctement.

Ceci dit, en reprenant l’analogie “droit de vote” = faire tourner un noeud membre, on restreint la citoyenneté au seul garant du fonctionnement technique.

L’intérêt que je vois à cette approche est de limiter la critique pyramidale par une rhétorique plus responsabilisante qu’élitiste.
L’inconvénient que j’y vois est paradoxalement de réduire l’attraction des rôle à responsabilité, et donc que de favoriser dans la pratique un aspect plus pyramidale dans le sens que les rôle à responsabilité risqueraient de rester détenu par une faible part des membres.

7 Likes

Ces réflexions ont-elle avancé depuis le temps ?

Me concernant j’y ai un peu réfléchi. Il y a bien deux problématiques distinctes :

  1. la difficulté des nouveaux membres à rentrer (pour co-créer le DU et certifier à leur tour dans ce même but), problématique de création monétaire uniquement
  2. la sécurité de la blockchain par rapport au droit d’écriture

Pour le 1er point, je suis toujours favorable à la création de liens faibles, qui ouvre à leurs bénéficiaires le droit de co-créer la monnaie (avec plus de 5 liens toutefois) et de certifier à leur tour en liens faibles.

Pour le 2ème point, je me demande s’il ne serait pas judicieux de reposer tout simplement sur la topologie de la toile de confiance. Une propriété, par exemple la qualité ou la centralité, permettrait de déterminer qui peut ou non calculer des blocs. L’avantage, c’est qu’avec une centralité élevée par exemple, on sait qu’il s’agit d’une personne investie socialement dans la monnaie et donc théoriquement facile à contacter et qui connaît bien le sujet.

Ceci permettrait d’éviter les « castes techniques », car le niveau de droits sur la Ğ1 devient alors simplement fonction de l’investissement apparent de la personne dans la monnaie.

Mais bon, ce n’est toujours qu’une réflexion à ce niveau.

5 Likes

Il y a en en effet deux objectifs distincts.

Je pense que le critère discriminant concernant les solutions a retenir c’est la complexité ajoutée autant coté code que coté utilisateur final.

Plus un programme est complexe plus il est source de bug et difficile a maintenir. De la même façon plus l’utilisation finale est complexe pet moins la monnaie libre est accessible (le systèeme actuel de certifications est déjà bien compliqué a comprendre pour beaucoup d’utilisateurs).

Donc tout ajout de complexité qui n’est pas absolument nécessaire devrait être proscrit.
Si, toute chose égale par ailleurs, on a une autre solution répondant au même besoin avec un ajout de complexité plus faible alors il conviens de la choisir :slight_smile:

Objectif 1 : a difficulté des nouveaux membres à rentrer (pour co-créer le DU et certifier à leur tour dans ce même but), problématique de création monétaire uniquement : J’avais indiqué dans ce présent fil que l’on peut faciliter l’entrée en modifiant les paramètres de la wot :

Objectif 2 : la sécurité de la blockchain par rapport au droit d’écriture : J’ai proposé sur un autre fil une solution qui ajote zéro complexité pour l’utilisateur final et une complexité faible pour le protocole : Proposition d’identités forgerons − solution user-friendly au problème de sécurité des instances cesium web

La création d’un 2ème type de certification dite “faible” me semble complexifier considérablement l’utilisation pour l’utilisateur final et rendre encore moins lisible la compréhension de la licence et de la toile de confiance :confused:
Y a t’il d’autres idées induisant un ajout de complexité plus faible ? Que pensez-vous de ma proposition d’adaptation des paramètres de la wot ?

Oui c’est une bonne idée, et c’est moins complexe que ma proposition :slight_smile: Après ça exclu du droit au calcul les personnes peu investies socialement, somme nous ok avec ça ? (c’est une question ouverte)

Je suis plutôt d’accord avec cela.

Sur le principe l’entrée devient plus facile.

Il faudra tirer toutes les conséquences de ces modifications de paramètres (en termes théoriques, comme l’avait fait Galuel), personnellement je ne l’ai pas fait. Mais bon, le détail des valeurs se discute. Sur le principe j’adhère, mais je ce que je veux va plus loin.

Ce qui me gêne le plus, et qui à mon sens rend l’entrée difficile, c’est la licence et ses implications (rien que la lire et la comprendre, enregistrer le certificat de révocation sinon-c’est-dangereux-pour-toute-la-toile, la formule du DU, la nécessaire transmission de la licence elle-même, ne certifier que conformément à cette licence et sa lourdeur d’implications).

C’est la raison pour laquelle je pousse les liens faibles, où la lecture de la licence, sa compréhension, son adhésion et sa transmission ne sont plus absolument nécessaires. En d’autres termes, pouvoir créer un compte « je veux participer à mon petit niveau », où une simple transmission orale de quelques principes suffit :

  • tu as besoin de te créer un compte, choisis de bons identifiants secrets
  • tu as besoin de trouver 5 [ou valeur plus élevée] certificateurs
  • la règle c’est : 1 compte membre par humain
  • tu peux toi-même certifier

Ou d’autres principes similaires dont la transmission orale suffit.

Bien entendu il s’agit de membres légers, dont le pouvoir sur le système technique doit être limité. Mais vous voyez l’idée.

Ça dépend comment c’est fait. Au niveau humain, c’est peut-être juste le bouton de Cesium qui change (ou qui propose 2 boutons), et la transmission humaine qui devient au contraire très simple.

Au niveau technique, ça demande de qualifier la certification et donc d’ajouter un champ, d’adapter un peu la règle concernant sigQty si l’on voulait avoir une valeur plus haute, et rajouter un contrôle concernant la certification (ne pas pouvoir certifier fort si l’on a pas nous-même le niveau). C’est pas vraiment compliqué je trouve.

Par contre il est clair qu’on n’obtient pas la même toile si l’on introduit cette notion. Les membres ne seront plus aussi « experts » que ceux de la toile Ğ1 actuelle. Mais pour obtenir une toile significativement plus grande, je doute que l’on puisse se passer des liens faibles. Il suffit de chercher « humains liens faibles » dans un moteur de recherche pour trouver plein d’informations intéressantes à ce sujet.

Oui, j’avais lu. Bon, je suis pas trop fan mais pas totalement opposé non plus. Ma raison balance au niveau du volume et de la nature de ceux qui peuvent calculer des blocs.

D’un côté, en se certifiant les uns les autres en liens forts, on a une forte cohésion et c’est bien : les calculateurs se contactent donc facilement et peuvent réagir rapidement à un bug critique par exemple.

D’un autre côté, on génère une caste technique pyramidale, un centre. Et ça c’est peut-être moins bien vu tous les problèmes que posent l’existence d’un centre.

C’est pour ça que je proposais aussi l’histoire du droit via la centralité, qui a l’avantage d’être émergent (dépend de la dynamique de la toile), et selon le niveau fixé peut générer un volume conséquent de calculateurs potentiels.

Bon, vraiment, ce n’est qu’une proposition. Je ne suis sûr de rien. Ta solution avec caste technique est possiblement plus rassurante, je ne sais pas :slight_smile:

Pas évident de répondre, ça dépend de ce que signifie “peu”. En tout cas je note que les calculants qui ne sont pas sollicitables et font perdurer une ancienne version buguée n’aident pas à renforcer la sécurité.

Je note aussi qu’une personne peu investie socialement dans la Ğ1 mais qui possède des compétences techniques peu aussi contribuer à la sécurité autrement, par exemple en codant (ce qui de fait l’amène à se rapprocher socialemet, par ailleurs).

Intuivement je dirais “oui, ok avec ça”.

3 Likes

C’est trop anticiper quoi que ce soit de complexifier un protocole sur lequel il y a 1,5 développeur actif. Il convient de garder les choses aussi simples que possible, jusqu’à ce qu’un seuil critique de développeurs actif soit atteint qui puisse décider s’il est opportun ou non de complexifier quoi que ce soit.

Il n’y a pas de problématique à entrer dans la WoT, il y une volonté d’aller vite quand le temps requis demande que la confiance soit établie, que les premiers ont mis 10 ans à se connaître et à démarrer, quand les derniers arrivés voudraient y être en quelques jours ou semaines n’a pas de légitimité à être pris en compte.

Si le protocole est complexifié (alors qu’il est déjà en état “simple” pas évident à saisir), alors cela ne fera qu’augmenter la barrière à l’entrée pour de nouveaux développeurs potentiel et la mort assurée de la monnaie à moyen terme.

5 Likes

Je n’ai pas l’intention de coder cela, je dis simplement que ne vois pas le système s’étendre à long terme sans cette notion.

D’ailleurs de manière générale je ne suis plus dans la démarche de développer davantage le protocole, mais de passer la main à d’autres. J’assure le fonctionnement tant que je peux, c’est tout.

2 Likes

C’est absolument pas bloquant avant des centaines de milliers de membres… C’est bien trop tôt pour y penser non seulement dans une vue pratique mais aussi dans une vue technique (pas encore d’équipe de développeurs actifs sur le protocole / Duniter, 1,5 développeur c’est rien, à moins de 10 c’est rien du tout).

La barrière à l’entrée au démarrage (et nous sommes à peine en démarrage), est avant tout mentale, pas technique.

S’il y a des efforts prioritaires c’est côté développement d’assurer une maintenance de fonctionnement (ce qui est parfaitement fait), une amélioration et simplification de la documentation en direction des nouveaux développeurs entrants potentiels (peut être réalisé par des développeurs entrants au fur et à mesure qu’ils s’approprient le protocole), le développement d’implémentations qui pourraient être plus attrayantes (pour des raisons de langage utilisé, de barrière à l’adoption du langage).

Côté client pour l’aspect une simplification et clarification de l’ergonomie client (avoir des clients 100% blockchain et pas des hybrides illisibles qui induisent en erreur sur la nature de la BDD blockchain), et des interfaces en terme de WoT qui soient plus lisibles et complètes pour une meilleure appropriation et prise en main (vue graphique sur la WoT, visualisation graphique des deadlines calendaires sur les expirations / renouvellements de certifications / membres…).

Bref, toujours d’abord et avant tout viser la simplicité maximale en terme de contenu et d’objectif.

Par exemple DU(t+1) = DU(t) + c²M/N est une formule très simple, qui tient en 18 caractères, tout ce qui tourne autour en terme d’explication ou de présentation graphique n’a qu’un but d’ergonomie client, et les soucis de compréhension ne sont que des barrières mentales qui n’ont pas de lien avec le sens de cette formulation.

Faire tomber des barrières mentales est quasiment impossible, très peu arrivent à remodeler leur esprit, cela demande un très grand entraînement pour se doter d’un esprit agile. Les changements ne se réalisent pas contre les barrières mentales, ils se réalisent quand les individus qui ont ces barrières mentales disparaissent, et les nouveaux paradigmes s’ils sont choisis ne se développent qu’au fur et à mesure que les nouveaux nés s’en emparent.

Aussi il ne faut pas espérer quoi que ce soit, mais savoir et comprendre ce qu’est le temps correspondant à des changements de nature profonde.

Seuls les changements superficiels sont rapides.

8 Likes