Puis surement pour relier les noeuds g1sms.fr qui pourront y gérer leurs wallets et transactions ainsi répartir et alléger la charge sur duniter
Ce qui serait génial ce serait de mettre la base elastic search Cesium+ dans IPFS @kimamila vu que Cesium s’héberge sur IPFS, ça pourrait fournir une architecture unique à l’ensemble et une version en production maîtrisée aux travers de portails IPFS loadbalancé par exemple.
Je pense qu’on peut mettre que des fichiers statiques dans IPFS, car ils sont incrémentés par une vérification de hash. Du coup, avoir une base de données qui évolue rapidement, ça me semble compliqué.
Il existe une surcouche qui fait office de liens dynamiquement mis à jour (IPNS) qui par des publish permet de mettre à jour la référence à la dernière version d’une structure de donnée.
IPFS, c’est la réunion de git, emule, torrent avec un stockage des données par hash. So Unhosted.
Oula… comme l’explique @moul, un système de fichier de remplace pas une base de données, et encore moins une API de requetage.
Il faut bien se rappeler qu’IPFS ne gère pas les mises à jour.
Eventuellement, y mettre un backup pourquoi pas, mais tu n’auras pas l’accès en mode requete (par clé, recherche full text, etc.)
Le nom DApp porte a confusion.
C’est juste l’hébergement du logiciel qui est décentralisée, et éventuellement les fichiers que les utilisateurs peuvent y envoyer, mais il n’y a aucune application avec des comptes utilisateurs, des droits d’accès, etc.
Si tu fais tout en fichier avec IPFS (par exemple, les profiles, les annonces de gchange, etc.), alors il n’y a aucun modération possible, aucun anti-spam, etc.
C’est le meilleur moyen de plomber les noeuds IPFS avec tout un tas de donnée de spam… AMHA
A moins que des fonctions de modérations soient possibles.
Bref, @Frederic_Renault a mon avis ne t’emballe pas trop, les BDD ne sont pas prête de mourir.
Par ailleurs les noeuds Cs+ sont déjà P2P, mais avec des fonctions anti-spam, une vérification des signateures (et hash) de chaque document, et une API de requetage bien plus rapide que les accès IPFS.
Effectivement, je pensais aussi que IPFS se limitait à du stockage de fichier et l’hébergement de sites statiques. Sa couche IPNS apporte le moyen de publier un ensemble de données mis à jour sur IPFS, mais est lent et ne permet pas l’usage temps réel. Mais c’est sans compter sa couche libp2p qui permet une communication inter nœud instantanée. La couche Textile.io apporte une interface unifiée à toutes ces couches…
Concernant les DApp, effectivement elles dépendent souvent d’une connexion websocket dans le Web2.0, mais plus si on instancie un noeud IPFS dans le navigateur. Go sur les serveurs, JS sur les clients, tout devient décentralisé.
Concernant le Spam, c’est celui qui spam qui se pollue, on ne mettra pas de pin à sa data.
carson [5:40 PM]
Textile supports search for a very specific set of things (contacts and metadata), but full text search and more complex contextual search is pretty far off from what I’m aware of.
oui. Si on veut profiter de la décentralisation totale. Mais on peut utiliser IPFS derrière une API http (sans profiter de la couche instantanée internoeud).
Pour le moment, je teste la partie serveur (go) contrôlée en ligne de commande… Apparemment la couche de textile js est encore en développement, mais ils sont bien motivés pour m’aider à faire une interface pour les jukebox lecteurs enregistreurs de webradio que je met en libre: https://www.copylaradio.com/
Ce que je bricole là sera parfait pour arriver à créer des wallets et partager leur gestion par un essaim de serveurs G1sms/G1billet
J’avoue que pour ce qui est de la partie client, je suis moins au point…
voila @SimonLefort je suis ici aussi. je l’ai fait d’abord par le façon le plus simple imaginable… mais enfin si un app est Unhosted, ça marche en ipfs sans rien changer. juste ipfs add -r avec ou se trouve Cesium tout compilé, et voila, ça marche déjà
Il va rester « pinné » plus longtemps que sur la gateway ipfs.io
Par contre, je ne comprends pas pourquoi il n’arrive pas à se connecter à g1.madeinzion.org ??
Voilà son ID QmYTg4cQ9rGZjkoSVbcctNqhBRTMSt8W9jM7HFb1oCMGGi
Mais actuellement, il est installé dans l’essaim privé que j’ai sous la main… donc seulement accessible depuis ma passerelle https://ipfs.copylaradio.com/ipfs/
Ce cas de figure garanti une meilleure performance, permet de valider le code (HASH), assure le backup (load-balancing). Faudra que je l’installe dans l’IPFS Globlal pour voir comment ça fonctionne, mais il faut ajouter une autre gateway à ajouter à celles de ipfs.io ou cloudflare-ipfs.com
Ca va apparaitre… bientôt… Au travers des petites box qui enregistrent copylaradio.com
Musique, Films et Monnaie Libre sans plus aucun intermédiaire entre le spectateur et l’'artiste.
Pas seulement, des données structurées aussi, les fichiers sont qu’un “exemple” de données structurées.
Mais c’est vrai,
mais, non,
car il y’a IPNS, naming service, qui permet en gros d’accéder à un hash d’un noeud qui lui alias vers un hash de fichier ou dossier (t’accede tjs au meme hash, alors que le contenu incrémente de version).
Il suffirait alors soit de maintenir une liste de noeud de confiance seulement, ou bien faire un compagnon IPFS à côté de DUniter (opt-in) qui déclarerait cette capacité dans sa fiche de pair.
Alors le champs des possibles s’ouvrirait à
la synchro de la blockchain par IPFS (gestion type torrent, reel p2p, load-balancing
chaque noeud peux être une gateway IPFS (voir même en autarcie)
attachement de n’importe quoi dans une transaction par son hash (acte de propriété, média, elements d’identité)
comme dis, hébergement des données Cesium+, y compris privées, qui peuvent être gérées par clés et confiance à tel ou tel noeud (à voir, IPNS peux en fait linker plusieurs hashs de noeud à des références différentes, à l’aide de plusieurs pairs de clés de noeud)
“C’est juste l’hébergement” oui, mais décentralisé, voir morcelé / responsabilité-partagée, et crypté (par défaut) avec garantie d’inaltérabilité des statics client sans pb de piratage par DNS. Hébergement pouvant être de la données structurée (pas que des fichiers, voir IPLD).
Si si, le nom DApp va bien, mais comme dans Ethereum, IPFS ne fourni que des fichiers/données statiques (ou versionnées) et c’est la blockchain et les smart-contract qui font le métier/validation/modération, toute la logique que tu veux.
La DApp Cesium içi, serait un lot de fichier statiques qui font l’application, dans laquelle du JS fait des appels à l’API DUniter GraphQL par exemple, ou même à un autre noeud sur une API d’annonces (gchange) et/ou une API pour ci, une API pour là.
Dans IPFS aprés, lorsque tu structure ton arbre de données, tu peut très bien te créer des données “index” qui ne sont que des liens vers d’autres données (qui n’est donc pas dupliquée) mais partage une liste sous un certain ordre/filtre. C’est ensuite ton hash de noeud qui est mis a jour régulièrement (ajout/modif/suppr) avec les nouveaux indexs. L’app client n’a plus qu’a demander à tel ou tel noeud par son hash d’avoir l’index “ordre alpha des pseudo” ou encore “rangé par clé pub” ou encore “la liste des message adressé à clépub” ou encore “les annonces commençant par A”.
Par un réseau de confiance des noeud compatibles, du genre ActivityPub, les noeuds IPFS peuvent se parler (et même parler à un client) via des events pubsub (ils ont fait un orbit.chat en exemple…)
… plus j’avance dans la lecture des messages, plus je vois que @Frederic_Renault à déjà répondu
Enorme ce qu’ils ont fait! Je connaissait pas ce framework…
Cette fonction appelée à chaque publication IPFS mémorise l’état précédent. Et chaque node publie l’état actuel à tous les nodes du swarm avec son propre ID. On récupère l’état de chacun en parcourant la liste du swarm.
for NODEWALLETS in $(su $YOU -c "ipfs swarm peers" | awk -F '/' '{print $7}');
do
count=$((count+1))
su $YOU -c "ipfs get --output=./wallets_$NODEWALLETS/ /ipns/$NODEWALLETS"
done
Du coup si les noeuds IPFS du swarm sont cohérents (partagent les bonnes clefs de chiffrage), ils se fabriquent et partagent un répertoire de leur filesystem comme une base de donnée! G1sms+ est bâti la dessus
Le hash de son code est gravé dans le marbre: QmdMEfCqihSKm2HTbGf4fMVnfttYoaq4rPgY9GxDmthuoN
Pour qu’il disparaisse, il faut que tous en retire le « pin » et lance leur « garbage collector »
@kimamila, tu pourrai officialiser la version que tu certifies en PROD en la publiant dans IPFS et publiant son HASH. En exploitant qq noeuds ipfs sur le réseau public, on peut maintenir une clef IPNS… Actuellement, mon réseau ipfs est en essaim privé. Mais je crois que @pytlin (d’autres?) ont des instances publiques en ligne??