Journal Le web distribué: Zeronet, IPFS, Dat.data, Maidsafe,...

Posté par . Licence CC by-sa
33
20
sept.
2016

J'ai découvert coup sur coup plusieurs technos qui «construisent l'internet distribué dont le monde a besoin» et je vais essayer de les présenter. Ça peut vite devenir technique donc je risque de me planter dans leur présentation.

Freenet

Je le cite d'abord car il est fonctionnel depuis plusieurs années. Il met en avant anonymisation sur le réseau et la résistance à la censure grâce à son fonctionnement en pair à pair: «Freenet est une plateforme pair-à-pair de communication et de publication qui résistent à la censure.»

En pratique, il y a un temps de démarrage de plusieurs minutes pour démarrer son instance et l'accès à un site n'est pas immédiat. Il ne marche pas pour les sites dynamiques. Il est écrit en java. Des plugins permettent de faire de la messagerie, etc

Zeronet

Mon préféré: le contenu est partagé en pair-à-pair, les noms de domaine sont gérés par le système du bitcoin. Fonctionne pour les sites dynamiques (mises à jour en temps réel), peut utiliser TOR, permet une consultation hors ligne, plusieurs applications sont déjà utilisables, et sont belles. Il est rapide. Possibilité de cloner un site en un clic. Zeronet est écrit en Python. Il semblerait que son fondateur puisse maintenant s'y consacrer à plein temps.

Installation

Essayer Zeronet est très facile en deux lignes de commande. Pour Debian:

    sudo apt-get install msgpack-python python-gevent
    wget https://github.com/HelloZeroNet/ZeroNet/archive/master.tar.gz
    tar xvpfz master.tar.gz
    cd ZeroNet-master
    python zeronet.py # et ouvrir son navigateur à http://127.0.0.1:43110/

On obtient:

Play, le premier site de torrent incoulable ?

Play est un site où on trouve des fichiers magnet, pour télécharger des torrents. C'est donc un site distribué, par ses utilisateurs. Est-il totalement incoulable ?

Ce n'est pas un tracker, il prend sa source du site rarbg.to. (du coup, le choix est moyen)

Il semblerait que ZeroTorrent, qu'on peut essayer possède une plus grosse base de données.

ZeroMail, ZeroBlog, ZeroId,…

Lisons la doc: https://zeronet.readthedocs.io/en/latest/using_zeronet/sample_sites/

IPFS

The Interplanetary File System: le web permanent, Git + Bittorrent avec un système de noms propre, IPNS.

IPFS est très alpha. Je n'ai pas trouvé de vrais sites ou applications à tester.
L'implémentation de base est en go, il en existe en plusieurs langages.

D'après makeuseof, ipfs ou ces technos de pair-à-pair commencent à intéresser de gros fournisseurs de contenu actuel.

Usage

Ajouter une vidéo au réseau est aussi simple que

    ipfs add -q sintel.mp4

et pour la lire

    ipfs cat $vidhash | mplayer -vo xv -

ou bien

    mplayer http://localhost:8080/ipfs/$vidhash

Présentation vidéo: https://www.youtube.com/watch?v=8CMxDNuuAiQ

Dat-data

Un outil décentralisé pour partager de (larges) données, les synchroniser (comme Dropbox) et les versionner (comme git).
Sont aidés par des fondations. Également très alpha. Outil en ligne de commande, avec interface web et de bureau, développé en node.js.

Ajouter du contenu ou le récupérer et le synchroniser est également très simple.

D'autres, avec de la crypto-monnaie et au fonctionnement plus ou moins opaques

MaidSafe

Aussi très alpha. Leur version alpha n'est pas distribuée.

Synereo

Avec de la blockchain 2.0, svp. Startup israëlienne.

Steemit

Permet une sorte de reddit où tu peux gagner de l'argent avec ton contenu. Très américain non ?

Cet article essaye de décrypter le fonctionnement de la réputation et des sous sur Steemit et Synereo, et montre le tout très opaque.

Un navigateur pour Dat et IPFS

Ce navigateur (dérivé de Chrome) comprend les protocoles Dat et IPFS nativement et permet d'y publier des fichiers ou des sites entiers facilement.

Annexes

J'ai aussi envie de citer Hubzilla, qui est une platefrome décentralisée, avec authentification unique sur l'ensemble du réseau, qui peut être indépendant du système DNS, Retroshare une plateforme de communication distribuée et sécurisée et Lantern qui utilise du pair-à-pair… pour accéder à l'internet lorsqu'il est censuré.

Pfiou. J'ai l'impression qu'aujourd'hui il n'y a que Zeronet de vraiment utilisable. Pour autant, il faut être un peu geek, il n'y a pas d'outil graphique facile pour l'installer, se connecter ou créer un site.

Partage d'expérience bienvenue !

  • # ZeroNet et IPFS

    Posté par . Évalué à 2.

    Je vais installer une instance ZeroNet, j'avoue qu'il me botte assez bien.
    Par contre, je trouve très mal joué de présenter un service de diffusion illégal de contenu sous copyrights.
    J'aurais vu en plus intéressant, je sais pas moi, un service à la youtube mais en décentralisé.

    Quant à IPFS, il me fait un penser pas mal à Camlistore.

  • # Play

    Posté par . Évalué à 1.

    Play, le premier site de torrent incoulable ?

    Ce n'est pas un tracker, il prend sa source du site rarbg.to. (du coup, le choix est moyen)

    C'est comme à l'époque de Popcorn-Time, qui les APIs du site Yify, puis ce dernier a fermé et Popcorn-Time est alors devenu inutilisable. Il pourrait se passer la même chose avec Play si les devs n'en changent pas le fonctionnement ;)

    Et soit dit en passant, il y a pas mal de chose sur Rarbg :)

  • # aperçu sans rien installer

    Posté par . Évalué à 2. Dernière modification le 20/09/16 à 14:56.

    Il y a moment de voir ce que ça donne directement via un proxy

    https://bit.no.com:43110/

  • # intéressant

    Posté par . Évalué à 2.

    Je viens de constater quelque chose que je trouve très intéressant avec zeronet:
    On peut créer des site dynamiques, mais surtout le code se trouve entièrement du coté client, du coup sur cette toile tout est forcement opensource.

    • [^] # Re: intéressant

      Posté par (page perso) . Évalué à 3.

      Si on veut être rigoureux, open source = libre. Et donc si le code est obscurci (obfuscated), et/ou que sa licence interdit par exemple la modification, alors on ne peut pas vraiment parler d'open source/libre.

      • [^] # Re:intéressant

        Posté par (page perso) . Évalué à 2.

        Si on veut être rigoureux, open source = libre.

        Gnii ?

        • [^] # Re:intéressant

          Posté par (page perso) . Évalué à 5.

          'Libre' (pour du logiciel) veut dire qui suit permet les 4 libertés du logiciel libre.
          'open source' veut dire qui suit les 10 points définis par l'Open Source Initiative.
          En pratique les licences considérées comme Open Source sont considérées à 99% comme libre (que ça soit par la FSF, debian…) et donc ça recouvre en pratique la même chose (la différence est philosophique, les uns mette en avant la liberté, les autres les avantages techniques).

          Un logiciel dont tu peux juste voir le code (mais pas le modifier, revendre…) n'est donc pas open source. Il se trouve que des tas de gens commettent l'erreur (je ne sais plus si c'est April ou l'Aful qui par exemple recommande du coup de ne pas employer ce terme car mal compris) ; mais bon ici sur LinuxFR ça serait bête de laisser passer cette erreur. Par exemple, quand les gens de Epic mettent le UnrealEngine4 sur github (on peut donc voir le code, mais leur licence oblige à payer des royalties à la commercialisation), ils ne parlent pas dans leur communication de Open Source (parce que ce sont des gens sérieux), mais de 'source code is available' ou 'get the code'.

          • [^] # Re:intéressant

            Posté par . Évalué à 1.

            D'accord! Je ne sais pas pourquoi j'avais pas cette définition d'opensource. J'ai posté sans avoir vu ta réponse où tu précisais la définition d'opensource par l'open source initiative. Du coup rm sur mon post précédent et s/opensource/code accessible/

      • [^] # Re: intéressant

        Posté par . Évalué à -1.

        Bah non voyons. Le code est du côté client (en javascript pour la plupart des sites que j'ai pu voir sur zero net) donc on peux y accéder.
        Après oui, il peut être obscurci et la licence peut ne pas être libre mais c'est bien pour ça que j'ai parlé d'opensource et pas de libre. opensource != libre. opensource ça veut juste dire que tu peux accéder/lire au code source.

        • [^] # Re: intéressant

          Posté par . Évalué à 4. Dernière modification le 21/09/16 à 14:07.

          opensource ça veut juste dire que tu peux accéder/lire au code source.

          Non, comme l'a rappelé GuieA_7 l'a définition d'open-source c'est celle-là qui comporte en introduction :

          Open source doesn't just mean access to the source code.

          Soit :

          Open source ne signifie pas seulement l'accès au code source.

          Sapere aude ! Aie le courage de te servir de ton propre entendement. Voilà la devise des Lumières.

        • [^] # Re: intéressant

          Posté par . Évalué à 4.

          opensource != libre. opensource ça veut juste dire que tu peux accéder/lire au code source.

          Non. Gmail n'est pas partiellement opensource du fait qu'il y ai une partie en JS accessible. Le fait de pirater Microsoft pour leaker le source de windows ne rend pas windows opensource.

          Si tu regarde la définition d'un logiciel opensource par l'OSI (les gens qui détiennent le nom « opensource ») : https://opensource.org/faq#osd

          Generally, Open Source software is software that can be freely accessed, used, changed, and shared (in modified or unmodified form) by anyone.

          Donc si tu prend litéralement le terme opensource tu as raison, mais le fait est qu'il s'agit d'une marque et qu'il a une définition précise qui dévie un peu du sens littéral.

          Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)

  • # Gnutella

    Posté par (page perso) . Évalué à 2.

    Gnutella est un réseau P2P distribué. Contrairement à bittorrent il n'y a pas besoin de trackers, on peut faire des recherches de fichiers par nom et par SHA1 sur le réseau. Une fois le fichier découvert, les téléchargements utilisent le protocole HTTP.
    Cela pourrait être utilisé assez simplement comme base pour faire du web distribué, non?

  • # Et I2P

    Posté par . Évalué à 1.

    Utilisateur aussi de ZeroNet : ZeroPlay, merci pour ZeroTorrent, et aussi ZeroMail, non censurable et étant P2P, le destinataire n'est pas connu.
    Il y a aussi, historique comme FreeNet, I2P que je n'ai pas testé.

  • # GNUnet

    Posté par . Évalué à 10.

    Je pense qu'il manque un vrai élément à ta liste : GNUnet. Ce n'est pas à proprement parler un programme, mais un framework qui permet de créer des programmes qui sont acentrés, avec des communications sécurisées et incensurables. Le but est de recréer les outils que nous avons sur internet mais de manière sécurisée et respectueuse de la vie privée, mais également d'aller plus loin que ça, inventer de nouveaux concepts.

    Gnunet va plus loin que de simplement proposer un programme, les développeurs cherchent à créer des abstractions qui pourront être utiles dans n'importe-quel autre programme. C'est fait par des chercheurs et des ingénieurs, dont certains sont en France (Inria).

    Dans GNUnet, un nouveau système de nommage a été créé pour palier les problèmes du système DNS actuel (centralisation de la gouvernance, censure, …). Le principe est différent de namecoin, mais tout aussi intéressant. Je vous laisse découvrir.

    Il y a également un système de routage bien intéressant qui permet de cacher son adresse IP, le réseau est anonymisé au maximum. On peut par exemple (mais ce n'est pas une obligation) ne fait que de la communication ami-à-ami (friend-to-friend) si on est un bon gros parano.

    Quelques programmes ont déjà été créés avec ce framework. On retrouve notamment un système de partage de fichiers (acentré, pair-à-pair) avec de la recherche parmis les fichiers (incensurable selon plusieurs modèles d'attaque, dont une volonté propre d'un gouvernement de vouloir censurer).

    Bref, je ne peux que vous conseiller de vous lancer dans GNUnet, ça a été conçu sur plus de 15 ans maintenant, par des gens dont c'est le métier, et cela va bien au delà d'un programme.

    Pour finir, une petite vidéo (anglais) où Christian Grothoff présente GNUnet : https://www.youtube.com/watch?v=eM4J7ljCExM

    Je ne pense pas qu'une autre équipe ne prenne autant la sécurité et surtout l'anonymat aussi sérieusement que ces types. Enjoy !

    • [^] # Re: GNUnet

      Posté par . Évalué à 1.

      Si jamais tu lis ce vieux commentaire et que je lis la réponse: que peut-on utiliser de GNUNet ??? J'ai trouvé http://secushare.org/ et encore 2 exemples en ligne de command: https://gnunet.org/gnunet-search mais… les exemples sont inexistants, je trouve que c'est extrèmement obscur de se pencher dans GNUNet. Donc as-tu essayé qlq chose, et comment ?

      • [^] # Re: GNUnet

        Posté par . Évalué à 1. Dernière modification le 27/09/16 à 00:44.

        Youtube ne donne rien non plus en français (un peu d'allemand et un peu d'anglais).

        Mais le Wikipédia est prometteur: un framework permettant de dev des applications au dessus d'un "noyau" P2P/F2F.

        Merci pour l'infos @karchnu je vais tenter de creuser un peu :)

        Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

      • [^] # Re: GNUnet

        Posté par . Évalué à 1. Dernière modification le 27/09/16 à 16:21.

        Des applications qui découlent directement de GNUnet j'en connais pas des masses, il y en a des répertoriées sur leur site web. Pour le moment je ne suis pas un vrai utilisateur du système, je me le garde sous le coude pour du développement.

        Et c'est ce qu'il y a d'important derrière : GNUnet directement, c'est pour du développement logiciel. Mais si tu regardes des conférences du développeur principal, tu te rendras compte qu'il y a un bon nombre de fonctionnalités déjà présentes et fonctionnelles : ça tourne et t'as des softs. Il m'a dit une fois qu'un de leurs ingé avait fait un twitter basé sur GNUnet, donc ça existe. :)

        Je pense regarder de plus près GNUnet dans les prochains temps, j'en ferai sans doute un journal/une dépêche.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.