Table des matières

ZeroNet

Le propos de ZeroNet est de permettre l'hébergement de sites web de façon décentralisée. Le projet emprunte des technologies déjà présentes dans d'autres P2P, notamment BitTorrent et BitCoin. ZeroNet se veut une réponse au projet Maelstrom de BitTorrent Inc. Il s'agit d'un logiciel libre écrit en Python.

Pour permettre la distribution des sites Zeronet (parfois appellés zites), le logiciel utilise le protocole BitTorrent. Les zites sont stockés dans un unique fichier nommé content.json, qui est signé cryptographiquement1). Le simple fait de visiter un site ZeroNet amorce en fait en arrière plan le téléchargement de ce fichier via BitTorrent, c'est à dire que les données sont transmises de la même façon que pour un torrent quelconque.

Le surf sur le ZeroNet implique donc que votre ordinateur stoque et partage des données. Un onglet «stats» permet de visualiser quelles données sont stoquées sur votre ordinateur. Vous pouvez les classer selon leur origine (le zite duquel elles proviennent), ou de l'espace disque qu'elles occupent. Vous pouvez aussi faire le choix de supprimer celles que vous souhaitez.

Afin de ne pas surcharger vos disques, des quotas sont mis en place pour chaque zite. ZeroNet vous sollicite pour que vous autorisiez le réajustement de ces quotas s'il constate que le site est sur le point de le franchir.

De manière générale, l'interface de Zeronet et des zites qui ont été pensés pour le réseau est assez bien foutue. Les zites sont pensés comme des applications : tchat, forums, mais aussi Kopy Kate (un équivalant de Youtube/Peertube), ou Play (un site d'indexation de liens torrents)… Ces zites font donc bien souvent usage de javascript.

Résistance à la censure

Avis aux lolicons : contrairement à Freenet ou I2P, Zeronet ne cherche pas à vous rendre anonyme : votre vraie adresse IP est visible lorsque vous utilisez le réseau. En effet, Zeronet est avant tout un outil contre la censure, mais une censure de contenus qui doivent être assumés par les personnes qui les hébergent et les consultent, ni plus ni moins que sur le web ordinaire.

Ce non-anonymat soulève une question : quel est l'intérêt d'un contenu résistant à la censure, si l'appareil répressif de l'Etat peut encore le faire tomber ?

Trois pistes de réponses :

Fonctionnement

Ni anonyme, ni isolé

Ainsi Zeronet a une certaine porosité avec le web ordinaire : rien n'interdit un Zite de faire référence à des ressources hébergées sur le web classique, ce qui a l'inconvénient de rendre possible le tracking, et comme avantage qu'on peut facilement passer de l'un à l'autre. Cela explique pourquoi les gros fichiers de type video sont souvent recensés par des liens magnet:// qui ne sont pas gérés directement par ZeroNet mais par votre client BitTorrent.

La bonne nouvelle, c'est qu'il est possible d'utiliser Tor en complément de Zeronet pour faire transiter les données via un circuit anonymisant. Les précautions d'usage habituelles de Tor s'appliquent afin de ne pas compromettre votre anonymat (il s'agit essentiellement de respecter scrupuleusement le cloisonement). Etant donné que ce sont en grande majorité des contenus légers qui sont échangés sur ZeroNet, le traffic engendré reste raisonnable, et ne nuit pas tellement au réseau Tor, contrairement à l'échange de films couramment pratiqué avec BitTorrent qui seraient plus lourds à faire transiter par Tor.

Cryptographie

Zeronet utilise un chiffrement ECDSA secp256k1 (algorithme à courbes élliptiques emprunté à BitCoin) pour générer une clé privée et une clé publique. Cette paire de clés vous appartient. Si vous envisagez un usage sérieux de ZeroNet, vous devriez conserver ces clés en lieu sûr. Certaines activités sur Zeronet font usage de ces clés, notamment la gestion de vos identités.

NameCoin

NameCoin sert à proposer un adressage similaire à DNS pour faciliter la consultation des sites ZeroNet, mais son intégration dans le projet reste imparfaite et expérimentale.

Les adresses namecoin se terminent par .bit.

Usages

Publier un site Zeronet

Les grandes étapes :

  1. l'auteur d'un site signe un fichier content.json avec une clé privée. Il peut renouveler l'opération de signature chaque fois qu'il modifie son site pour redistribuer cette mise à jour auprès des autres pairs.
  2. les clients zeronet récupèrent les contenus mentionnés dans content.json au moyen du protocole bittorrent.

Quelques sites Zeronet

Play (indexeur de contenus BitTorrent)

Play, en mars 2016, ouverture de Play, un site de liens Bittorrent accessible via Zeronet.

A noter que celui-ci utilise des trackers publics qui sont accessibles en dehors de Zeronet, ce n'est que l'indexation des contenus qui s'effectue au sein de Zeronet.

A priori, rien n'interdit d'utiliser DHT (merci eMule), et donc de s'affranchir des trackers publics.

D'autres zites

Avis de P2PFR

En pratique, ZeroNet semble plutôt bien fonctionner : je ne l'ai pas essayé longtemps, j'ai juste pu constater qu'il pouvait émettre quelques plaintes lorsqu'il accèdait aux 0sites, mais la navigation se déroulait néanmoins assez bien.

Liens

Sites officiels

Articles

Divers

type:réseau-p2p type:client-p2p réseau:zeronet licence:libre système:linux système:mac système:windows environnement:python

1)
Une signature en cryptographie est une méthode d'identification qui permet de s'assurer qu'un document a bien été écrit par l'auteur que l'on pense, mais aussi de garantir l'intégrité, c'est à dire que les données du document n'ont pas été altérées par un tiers lorsqu'il a été transmis.