OpenUDC - Plan pas Secret pour pas Contrôler le Monde

Bonsoir tout le monde !
Suite à un partage sur FB, je me permets de poster ici concernant OpenUDC…

Je viens de voir une vidéo de J.Jbar sur YT => https://youtu.be/SH7RW1iyqdU qui s’exprime sur la relance de son projet OpenUDC.
A priori il a l’air très ouvert aux discussions et s’interroge sur éventuellement se rapprocher de Duniter et éventuellement implémenter OpenPGP qui est une solution qui avait été abandonnée pour Duniter… (ce qui lui paraît être une erreur, peut-être la plus importante)… Mais aussi pourquoi pas travailler avec vous sur le bébé.

Les limites et inconvénients cités dans sa vidéo semblent justifiés ?
Qu’en est-il réellement ?
Pourquoi revenir parler de ce projet 6 ans après l’avoir mis en pause ?
Ne vaut-il pas mieux qu’il rejoigne les dev de Duniter au lieu d’éventuellement trouver une autre équipe pour faire tout autrement ?

Voilà, le sujet est ouvert, à vos commentaires ! :wink: Merci :slight_smile:

3 J'aimes

Merci pour le partage de la vidéo.

Deux point qui différencient les projets Duniter/Ğ1 et OpenUDC.
Le type de toile de confiance évoqué dans ce post. OpenUDC souhaite utiliser OpenPGP. J’ai un doute qu’une toile de confiance fédérative permette d’éviter les doubles comptes, à savoir d’identifier de manière unique les individus.

L’autre point important est qu’OpenUDC ne souhaite pas utiliser la PoW, mais quelque chose d’autre, que je n’ai pas bien compris quoi.

  • max ~100k individus
  • PoW
  • Fiabilité et solidité à prouver

On est pas encore à 100 k membres et la PoW reste toujours abordable aujourd’hui. Il s’agit de points surement justifiés pour un usage à plus grand échelle. La Ğ1 souhaite démontrer qu’il est possible de faire une monnaie libre. Pour aller plus loin, il faudra adapter les choses.

  • Peu d’interopérabilité avec technologies existantes

Je ne vois pas de problèmes d’interopérabilité. Ce point peux surement être détaillé par jbar.

On ne peut pas forcer une personne à travailler sur quelque chose dans laquelle il ne croit pas dans ses fondements. Si ça se trouve, il a raison et ses choix techniques vont percer et dépasser ceux faits par Duniter/Ğ1.

2 J'aimes

OpenPGP n’a pas du tout été conçue pour les mêmes besoins. Ça me semble être un non-sens que d’utiliser ça. Si on veut absolument utiliser quelque chose d’existant, BrightID est infiniment plus proche de notre besoin, mais ils sont encore moins développés que nous et demande des frais en UNL pour utiliser leurs services.
A un moment il faut arrêter avec l’argument de l’interopérabilité. Vouloir absolument trouver dans l’existant quitte a mal répondre a notre besoin, il est parfois infiniment plus sage et plus pertinent de développer notre propre système. A ce titre, je pense que @cgeek a eu raison de concevoir notre propre toile de confiance (qui est évidemment perfectible, et on va l’améliorée).

D’après mes derniers échanges récents avec @nanocryk qui fait justement de la R&D en mécanismes de consensus dans le cadre de son travail, il est formel : A ce jours, il n’existe pas de mécanisme de consensus éprouvé et réellement décentralisé autre que la PoW.

Donc rien que sur ces 2 choix, je suis désolé mais je préfère être franc, je pense que jbar se trompe :confused:

4 J'aimes

Tes craintes et objections me semble intéressantes @elois, et pour autant j’ai du mal à ballayer d’un revers de main le point de vue de quelqu’un qui s’est intéressé et impliqué dans le projet déjà il y a 8ans, donc qui à potentiellement eu l’occasion de murement réfléchir ses positions (ou de se réveiller un beau matin avec un avis arrêté, c’est possible aussi).
Bref, je serais rassuré de te percevoir à l’écoute de son point de vue, tout comme je suis curieux de voir les nuances qu’il pourrait apporté à tes objections.

PS : je viens d’inviter J. Jbar à venir voir par ici.

3 J'aimes

Si l’objectif est de reposé sur du fiable et éprouvé, alors OpenPGP + surcouche pour adapter au besoin et PoW

Si l’objectif est de coller au mieux à nos spécificités, alors on peut se permettre d’innover coté WoT aussi bien que coté mécanisme de concensus.

Qu’en pense tu d’un point de vue théorique ? (D’un point de vue pratique je suis bien conscient de l’ampleur de travail qui serait nécessaire pour expérimenter d’autres choix sur des aspects socles comme ceux-ci, et donc que si ces expérimentations devaient être mené, ce serait par d’autres, ou loin derrière bien d’autres priorités).

2 J'aimes

OpenUDC n’est pas un « autre projet », c’est l’historique du projet Duniter/Ğ1. Jbar a juste abandonné le projet quand @cgeek a apporté l’étape suivante et la réalisation de Duniter, exactement comme Linus Torwald a apporté Linux et GIT l’énervement en moins (quoique l’énervement vis à vis du système monétaire non-libre dominant était bien sensible) et la bonne humeur en plus.

La vidéo qu’a publiée Jbar en reste exactement au point où il en était il y a 8 ans, il n’y a ni réflexion ajoutée, ni code ajouté, c’est une fenêtre sur le passé, elle aurait pu être enregistrée à l’époque c’était pareil.

C’est certainement dommage de ne pas avoir un informaticien de talent comme Jbar dans le projet depuis 8 ans, mais d’un autre côté c’est une grande chance que d’avoir des informaticiens de talents tels que @cgeek @Moul @Inso @kimamila @elois @vit @gerard94 @Paidge @1000i100 etc. (la liste à jour !).

A la louche je dirais que la chance ici dépasse d’un facteur 100 le dommage.

Le fait que les contributeurs aient choisi de suivre @cgeek est un sujet de réflexion pertinent quant à comprendre ce qui cause la pousse d’un arbre qui donne des fruits et ce qui cause que d’autres graines ne germent pas, ou que certaines branches de l’arbre se développent et d’autres non.

Quand l’arbre a déjà poussé et donne des fruits, les réflexions sur ce qu’il convient de faire ensuite ne sont pas du même ressort que les réflexions qui considèrent une graine qui n’a pas germé.

7 J'aimes

J’étais présent au RML de novembre 2014 où @Galuel a demandé à Jbar et @cgeek où ils en était :

  • Réponse de Jbar : je n’ai plus le temps de coder sur le projet, je passe la main, mais je vous confis la partie OpenPGP déjà entamée.

  • Réponse de @cgeek : je n’ai pas repris le travail de Jbar sauf le protocole. J’ai basculé sur ED25519, plus léger et je code tout en nodejs. Sur ces paroles, il nous montre une POC sur son ordi. Bluffant quand on sait dans quel délai fût réalisé la POC.

Donc, sur la question quel projet suivre ?

  • A l’époque la question ne se posait même pas car un projet était actif et l’autre abandonné.
  • Aujourd’hui on a :
    • Duniter : un projet avec un développement actif, mais surtout avec 3 ans de développement en pré-production, puis 3 ans de développement en production, avec des statistiques réelles. Donc 6 ans d’expérience. Pour participer au cœur, il faut faire du nodejs/typescript ou du rust.
    • OpenUDC qui propose une implémentation ancienne qui reste a développer et surtout à expérimenter (aucune garantie que cela fonctionne comme Duniter au départ), basée sur des outils tiers sur lesquels on a peu de contrôle. Pour participer au cœur, il faut faire du C ou du C++.

Dans 3 ans à minima, si Jbar n’est pas seul, un début de production sera peut-être envisageable. Mais surtout dans 3 ans, Duniter aura 9 ans de développement et 6 ans d’expérience en production. OpenUDC aura donc toujours 6 ans de retard si ses implémentations diffèrent de Duniter.

De plus, le nouvel OpenUDC essaie-t-il de rester compatible avec le protocole Duniter ? Si oui, alors souhaitons lui la bienvenue, sinon il va concurrencer Duniter et forcément éparpiller les énergies et tenter de ramener des développeur à lui. Ce que je ne trouve ni opportun, ni constructif.

7 J'aimes

Merci beaucoup pour ton point de vu éclairé. :slight_smile:
Effectivement certains points soulevés ne sont pas encore d’actualité du fait de notre communauté qui est encore à très petite échelle, mais je trouve sympa de s’y pencher au cas où une « Masse » se réveillerait d’un coup et souhaiterait changer les choses !..
Bon on a le droit d’y croire, hein :wink:

Ensuite, effectivement on ne peut pas forcer quelqu’un à rejoindre s’il en a pas envie et s’il ne partage pas les mêmes fondements…
Par contre cela n’empêche pas éventuellement qu’il discute de tout ça avec les Dev pour faire le point sur où chacun en est concernant leurs positions sur les choix stratégiques à prendre sur le futur de la monnaie libre. :+1:

A voir, je ne sais pas ?

1 J'aime

Merci pour ces précisions. :slight_smile:
Du coup, j’aimerais bien qu’il vienne s’exprimer sur le sujet ici pour en savoir un peu plus sur le fond du pourquoi relancer aujourd’hui le projet OpenUDC ? Et aussi discuter avec vous tous sur les éventuelles actions bénéfiques qu’il pourrait apporter ou non à Duniter si le coeur lui en dit bien évidemment.
Après comme me l’a fait remarquer @Moul on ne pas forcer quelqu’un à rejoindre Duniter s’il n’est pas ok avec les fondements…

Néanmoins je reste optimiste et je pense que quelqu’un de son niveau pourrait grandement vous aider s’il lui semble possible de revoir ses positions en fonction d’où vous en êtes dans vos stratégies de développements futurs. :slight_smile:

1 J'aime

Merci pour cet avis. :slight_smile:
Effectivement nous avons beaucoup de chance d’avoir une équipe de Dev qui mettent la main dans le cambouis constamment pour améliorer le système.

Ce qui m’interpelle avec cette vidéo c’est de savoir pourquoi revenir sur ce projet maintenant ?
Et ensuite, si vraiment il a la nostalgie de son bébé, n’est-il pas opportun pour lui de « s’adapter » et de pourquoi pas apporter ses connaissances en rejoignant la Team ?

« Ensembles les charbons brûlent, séparés ils s’éteignent » :wink: :+1:

1 J'aime

Ce sont des questions auxquelles lui seul pourrait répondre, il n’est utile en rien de les poser ici.

Espérons alors qu’il rejoigne la discussion en répondant favorablement à l’invitation de @1000i100 :slight_smile:

S’il prend le temps de comprendre l’existant et d’avoir une approche constructive pour nous aider à améliorer l’existant, alors je serais à l’écoute de son point de vue, mais si c’est pour lancer un autre projet et diviser le peu de développeurs actifs, ça me semble être un acte très nuisible pour la Monnaie Libre.

Je comprends ce qu’il peut ressentir, quand je suis arrivé il y a plein de chose qui ne me convenais pas techniquement. Mais plutôt que de râler, je me retrousse les manches pour changer ce qui me semble devoir être changé, car je sais qu’il est essentiel d’avancer ensemble.

Je ne suis pas d’accord. Notre besoin ne peut pas être couvert convenablement par une surcouche d’OpenPGP car c’est dès le fondement que le besoin est incompatible.

Dans la toile OpenPGP, on signe une clé pour attester qu’elle est liée à une identité étatique, à une personne physique au sens juridique du terme. On ne signe pas pour attester de la bonne connaissance de la personne.

Le but d’OpenPGP n’est pas d’empêcher des double-comptes, c’est uniquement de s’assurer que la personne qui nous écrit est bien celle qu’elle prétend être, si tu y réfléchis bien, tu verras que c’est tout à fait différent.
Les « liens » qui existent dans la toile OpenPGP actuelle ne peuvent pas être considérés comme valident du point de vue de la licence Ğ1.

Ce n’est pas un problème technique, c’est bien plus grave, c’est fondamentalement incompatible.

L’erreur de jbar est justement de s’arrêter aux similitudes techniques (signer une autre clé), et de ne pas comprendre que le besoin est fondamentalement différent.

Donc vu que l’on ne peut pas récupérer les « données » de la toile OpenPGP existante, a quoi bon utiliser cet outil si on ne peut pas bénéficier des données existantes ET que l’on doit en plus recoder nos propres règles par-dessus pour éviter les double-compte ?

la partie la plus complexe et la plus chiante, ce n’est pas la toile en elle-même, mais toutes ses règles métier : règle de distance, nombre de certif max, durée des certif, expirations, etc.

Utiliser le code d’openPGP nous demanderait de recoder 95% du code de gestion de la wot, et les 95% les plus difficile, donc aucun intérêt.

J’ai beau creuser la question, en long, en large et en travers, je ne vois aucun intérêt à OpenGPG, nous aurions beaucoup à y perdre, et rien à y gagner.

En fait je pense que si jbar a ce point de vue c’est qu’il est contre la licence Ğ1.


Pour ce qui est « d’innover » coté mécanismes de consensus, je suis ça de près depuis des années, et le jour ou je vois quelque chose d’éprouvé (et totalement décentralisé) pour remplacer la PoW, je serais le premier à foncer. Mais ça peut prendre encore de nombreuses années (voir ne jamais aboutir).

En attendant, il n’est pas envisageable de partir sur quelque chose qui n’est pas éprouvé pour une partie aussi critique que le mécanisme de consensus (bien plus critique que la wot).

5 J'aimes

Le but d’OpenPGP n’est pas d’empêcher des double-comptes, c’est uniquement de s’assurer que la personne qui nous écrit est bien celle qu’elle prétend être

Oui !

Le but de la toile d’openPGP est different.
C’est un outil consultatif pour aider a decider si une clef publique correspond bien a quelqu’un.
Pour verifier ou trouver la clef de quelqu’un on s’appuye sur les certifications des gens auxquels on fait confiance, puis on decide un peu soi-meme si oui ou non on considere une clef comme etant valide.

Ce qu’on veut pour la toile de Duniter c’est different.
On veut un systeme avec des regles qui font que tout les membres sont recconus (indirectement) par tout les autres comme etant valide et unique.
On veut que meme pour 2 personnes indirectement relies dans la toile, ce soit credible pour les deux d’accepter l’identite de l’autre comme etant valide.

On a besoin d’une toile + de regles pour decider qui est universellement recconu comme membre.
La toile d’openPGP ne donne que des indications pour aider un individu en reconnaitre un autre.

4 J'aimes

Est-ce qu’on peut s’assurer qu’une personne physique ne peut pas avoir plusieurs identités dans une toile OpenPGP ?

J’ai regardé la vidéo, effectivement jbar reprend là où il en était.

J’ai retrouvé ce message où j’explique quelques principes fondateurs, dont la mise à l’écart technologique d’OpenPGP et la création du protocole Duniter.

Ce dernier point est le plus important, comme le relèvent @Oiwoorop et @elois : l’enjeu du protocole a été de définir une base de données commune, pas relative. Comprendre cette contrainte permet de comprendre la plupart de nos choix.

Pour finir sur OpenPGP, cette technologie ne faisait pas partie de mes contraintes de départ : le seul et unique but a toujours été de produire une monnaie libre. En me freinant dans cet objectif, j’ai dû m’en séparer et je ne regrette absolument pas ce choix.

Enfin je souhaite bonne chance à jbar, toutefois je ne suis pas dupe et lui-même ne l’est pas et l’évoque dans sa vidéo : il n’a pas la place dans sa vie pour ce développement. Pour l’avoir expérimenté, je dirais que j’ai eu une fenêtre de temps pour réaliser Duniter et je doute d’en avoir une autre de sitôt. Autrement dit, je vous invite à ne pas trop vous disperser pour cette vidéo et à poursuivre votre chemin.

9 J'aimes
1 J'aime

L’analogie Duniter ou OpenUDC est bien celle qui se compare avec GNU / Linux ou Hurd. GNU qui travaille encore sur Hurd toujours pas opérationnel alors que Linux a envahi la planète.

S’il est tout à fait possible qu’un développement plus lent soit techniquement mieux fondé, et parvienne à terme à dépasser un développement pratique plus rapide (TCP/IP a fini par renvoyer le trop rapide lièvre pratique « Minitel » aux oubliettes), ce n’est pas une raison suffisante pour savoir quoi suivre, et ce n’est certainement pas un critère déterminant, sinon il suffirait d’être lent pour avoir raison ! :slight_smile:

Je maintiens donc dans tous les cas que cette analogie reste une bonne analogie.

Concernant l’état des contributeurs lors de la genèse OpenUDC / uCoin / Duniter, il est incorrect de dire qu’une « équipe » aurait explosé, la réalité est que seul @jbar travaillait véritablement le fond d’un potentiel coeur, et qu’aucun autre contributeur n’y mettait vraiment les mains, les autres passants sont comme la multitude d’autres passants qui sont passés, ont réalisé des contributions externes ou ponctuelles puis sont partis.

Ce dernier point n’a pas d’intérêt, c’est comme regretter que les développeurs de Linux n’aient pas plutôt contribué à Hurd, mais ça c’est dû en grande partie au fait qu’un développement qui réussit suppose « release early, release often », et ça ne dépend pas de la qualité (quoi qu’il en faille un minimum, sinon ça ne marche pas), mais de la preuve qu’on apporte de la tendance vers un objectif tangible. C’est toute la différence entre la méthode américaine (vite un OS qui marche et se vend, peu importe s’il est tout pourri, mais il est fonctionnel, on l’améliorera plus tard, la qualité viendra, et en attendant on vulgarise la notion chez un maximum d’utilisateurs), et la méthode française (Concorde avion parfait, mais trop tard, Boeing avait déjà tout pris, et au terme la qualité a fini par largement rejoindre et dépasser Concorde).

Possible alors qu’OpenUDC soit le Hurd de la monnaie libre, mieux pensé (pas sûr), plus lent, qui finit par être dépassé par ce qui adopté tout de suite, et qui reste évolutif.

Maintenant la seule et unique question qui se pose c’est : qui est intéressé par reprendre le développement du projet « OpenUDC » tel qu’il était il y a 8 ans ? Ou même repensé aujourd’hui ? Est-il même suffisamment clair, a-t-il vraiment éclairci les zones d’ombre que Duniter lui a dépassées ? Ce n’est pas sûr du tout, et seule l’observation expérimentale permettra de conclure un jour peut-être d’ici 1 an par exemple, sinon il faut rester dans la foi. Je ne dis pas que c’est un mauvais chemin, mais la foi sans objectif est un chemin qui n’est pas que long, c’est un chemin éternel.

Depuis 2012 OpenUDC n’est toujours pas utilisable, sur son fondement, seul Duniter/Ğ1 son évolution pratique existe et peut-être utilisé. Donnons nous donc rendez-vous en Juillet 2021 pour voir ce qu’il en sera. En science seule la preuve expérimentale permet de trancher.

En attendant des êtres humains peuvent utiliser une monnaie libre depuis Mars 2017 avec Duniter/Ğ1, et avec rien d’autre. Puissent d’éventuelles meilleures solutions advenir, mais d’ici là, offrons aux utilisateurs intéressés une solution qui reste la seule praticable et qui continue d’évoluer.

Plutôt donc que de parler de « fantômes qui sortent du placard », je préfère considérer que OpenUDC a été la base qui a permis la genèse de Duniter, avec un gros travail qui avait été réalisé, pour d’abord comprendre la TRM (le blocage intellectuel à considérer déjà qu’une monnaie numérique était possible, et pis encore en « croissance sans fin » avec Dividende Universel, était un énorme blocage qui sans avoir été réduit n’eût conduit à aucun investissement sur le sujet, et seuls ceux qui étaient là à cette époque peuvent éventuellement se remémorer une difficulté qui paraît presque dérisoire aujourd’hui), puis mettre au point des concepts techniques suffisants, permettant de conceptualiser pleinement Duniter enfin.

7 J'aimes