Outils du site

Outils pour utilisateurs


p2p:ipfs (lu 4336 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
p2p:ipfs [le 26/09/2019 à 11h36]
111110101011
p2p:ipfs [le 10/12/2020 à 01h13]
111110101011 [Présentation]
Ligne 3: Ligne 3:
 ===== Présentation ===== ===== Présentation =====
  
-IPFS (Inter Planetary File System) est un P2P sous licence libre qui vise à proposer un web décentralisé, à l'instar de [[p2p>ZeroNet]]. Contrairement à [[p2p>I2P]] ou [[p2p>Freenet]], IPFS n'est pas anonymisant, mais des solutions pourraient être apportées, notamment par un couplage avec [[wpfr>Tor_(réseau)|Tor]]. Cette ambition orientée «web» n'interdit pas de s'en servir pour faire du partage de fichiers potentiellement volumineux.+IPFS (InterPlanetary File System) est un P2P sous licence libre qui vise à proposer un web décentralisé, à l'instar de [[p2p>ZeroNet]]. Contrairement à [[p2p>I2P]] ou [[p2p>Freenet]], IPFS n'est pas anonymisant, mais des solutions pourraient être apportées, notamment par un couplage avec [[wpfr>Tor_(réseau)|Tor]]. Cette ambition orientée «web» n'interdit pas de s'en servir pour faire du partage de fichiers potentiellement volumineux.
  
-Pour arriver à ses fins, IPFS réutilise des technologies à succès et s'en inspire ou les combine : [[wpfr>Git]], [[p2p>BitTorrent]], [[p2p>kademlia_reseau|Kademlia]], [[p2p>Bitcoin]], [[wp>Smart_File_System|SFS]]((Smart File System est un système de fichiers journalisé initialement implémenté sur Amiga qui gère les écritures de méta-données de façon transactionnellece qui permet de revenir à des états préalables sains en cas d'erreur d'écriture.))((Euh, ah, il s'agirait plutôt de Self-Certified File System : l'identité d'une machine proposant un fichier est certifiée par sa clé publique)).+Pour arriver à ses fins, IPFS réutilise des technologies à succès et s'en inspire ou les combine : [[wpfr>Git]], [[p2p>BitTorrent]], [[p2p>kademlia_reseau|Kademlia]], [[p2p>Bitcoin]], [[wp>Self-certifying_File_System|SFS]]((Self-Certified File System un système de fichiers réseau similaire à NFS, mais dont les chemins d'accès aux fichiers contiennent la clé publique de la machinepermettant de s'assurer de leur authenticité)).
  
 IPFS est développé par [[https://protocol.ai|Protocol Labs]], une start-up de San Francisco pour qui les protocoles qui ont permis de batir le réseau internet doivent être libres et ouverts. Il s'agit naturellement d'un logiciel libre, l'implémentation de référence est écrite en langage Go et est disponible pour la plupart des systèmes d'exploitation (Linux, Mac OS X, Windows). La boite développe aussi FileCoin, une solution de stockage avec rémunération, ainsi que libp2p, qui est la couche réseau utilisée par IPFS, IPLD, qui décrit le modèle de données pour un web décentralisé, et Multiformats. IPFS est développé par [[https://protocol.ai|Protocol Labs]], une start-up de San Francisco pour qui les protocoles qui ont permis de batir le réseau internet doivent être libres et ouverts. Il s'agit naturellement d'un logiciel libre, l'implémentation de référence est écrite en langage Go et est disponible pour la plupart des systèmes d'exploitation (Linux, Mac OS X, Windows). La boite développe aussi FileCoin, une solution de stockage avec rémunération, ainsi que libp2p, qui est la couche réseau utilisée par IPFS, IPLD, qui décrit le modèle de données pour un web décentralisé, et Multiformats.
  
 IPFS cherche vraiment à remplacer (ou au moins trouver un modèle alternatif) au web centralisé essentiellement basé sur HTTP(S). Les adresses utilisées dans ce web décentralisé pointent non pas vers un emplacement (comme l'adresse IP d'un hôte) mais vers un contenu, identifié par un hash appellé **cid** (comme Content Identifier). Ce contenu peut être hébergé de façon décentralisée, comme avec BitTorrent, ce qui permet à l'auteur de ce contenu de ne pas avoir à l'héberger lui-même. La réplication des données confère au réseau une résilience et un rôle de protection contre la censure. IPFS cherche vraiment à remplacer (ou au moins trouver un modèle alternatif) au web centralisé essentiellement basé sur HTTP(S). Les adresses utilisées dans ce web décentralisé pointent non pas vers un emplacement (comme l'adresse IP d'un hôte) mais vers un contenu, identifié par un hash appellé **cid** (comme Content Identifier). Ce contenu peut être hébergé de façon décentralisée, comme avec BitTorrent, ce qui permet à l'auteur de ce contenu de ne pas avoir à l'héberger lui-même. La réplication des données confère au réseau une résilience et un rôle de protection contre la censure.
 +
 +On peut naviguer sur IPFS avec un navigateur web ordinaire. Celui-ci se branche sur le [[def>daemon|démon]] IPFS en tâche de fond.
  
 Fin 2018, le projet [[https://github.com/ipfs/go-ipfs/commits/master|poursuit son développement]] de façon soutenue.  Fin 2018, le projet [[https://github.com/ipfs/go-ipfs/commits/master|poursuit son développement]] de façon soutenue. 
Ligne 21: Ligne 23:
 Dans les initiatives de web décentralisé, la cryptographie est utilisée comme alternative à ce modèle de certificats. Dans les initiatives de web décentralisé, la cryptographie est utilisée comme alternative à ce modèle de certificats.
  
-===== Adressage des ressources =====+==== Adressage et intégrité des ressources ====
  
 D'abord, les ressources que vous consultez sont identifiées, on l'a dit, par des cid, qui permettent de vérifier que le résultat qui vous est servi est bien celui correspondant au hash (principe de l'intégrité). Le contenu ne sera donc pas modifié malintentionellement durant son voyage dans le réseau. D'abord, les ressources que vous consultez sont identifiées, on l'a dit, par des cid, qui permettent de vérifier que le résultat qui vous est servi est bien celui correspondant au hash (principe de l'intégrité). Le contenu ne sera donc pas modifié malintentionellement durant son voyage dans le réseau.
 +
 +IPFS utilise la DHT (merkle tree).
  
 L'utilisation de cid a plusieurs inconvénients. L'utilisation de cid a plusieurs inconvénients.
Ligne 38: Ligne 42:
 D'autre part, la ressource sur laquelle pointe cette adresse ne peut pas être modifiée ni mise à jour. Si j'ai envie de rajouter une moustache à Ada, je devrai vous communiquer un nouveau lien. Ce n'est pas très pratique si mes envies de dessiner sont fréquentes. Cet inconvénient a deux solutions proposées : DNSLink, et IPNS (voir plus bas). D'autre part, la ressource sur laquelle pointe cette adresse ne peut pas être modifiée ni mise à jour. Si j'ai envie de rajouter une moustache à Ada, je devrai vous communiquer un nouveau lien. Ce n'est pas très pratique si mes envies de dessiner sont fréquentes. Cet inconvénient a deux solutions proposées : DNSLink, et IPNS (voir plus bas).
  
-===== Stockage des ressources =====+==== Stockage des ressources ====
  
 IPFS utilise une blockchain pour stoquer les liens IPFS. Les données en elles-mêmes ne sont donc pas stockées dans la blockchain. IPFS utilise une blockchain pour stoquer les liens IPFS. Les données en elles-mêmes ne sont donc pas stockées dans la blockchain.
- 
-IPFS utilise la DHT (merkle tree). 
  
 Comme dans un essaim BitTorrent, les données sont échangées entre les pairs, donc si vous partagez quelque chose, et que d'autres personnes le récupèrent, elles deviendront seeders à leur tour, ce qui permet aux ressources de rester accessibles même après que vous vous soyiez déconnecté du réseau. Plus exactement, cela maximise les chances qu'elle soit en ligne. Comme dans un essaim BitTorrent, les données sont échangées entre les pairs, donc si vous partagez quelque chose, et que d'autres personnes le récupèrent, elles deviendront seeders à leur tour, ce qui permet aux ressources de rester accessibles même après que vous vous soyiez déconnecté du réseau. Plus exactement, cela maximise les chances qu'elle soit en ligne.
Ligne 97: Ligne 99:
 Il vous suffit d'indiquer le hash de la ressource à laquelle vous désirez accéder pour qu'elle vous soit servie par HTTP, directement dans votre navigateur. Il vous suffit d'indiquer le hash de la ressource à laquelle vous désirez accéder pour qu'elle vous soit servie par HTTP, directement dans votre navigateur.
  
-Cloudflare propose une telle passerelle, mais d'autres existent.+Cloudflare propose une telle passerelle (et on ne vous en recommande pas l'usage car cet acteur s'accapare un lourd pouvoir d'observation du traffic internet), mais d'autres existent.
  
 Ce type de passerelle est une commodité, et a l'avantage de rendre disponible une ressource pour des personnes non familières à IPFS, qui n'ont pas besoin d'installer ou de comprendre le logiciel. Ce type de passerelle est une commodité, et a l'avantage de rendre disponible une ressource pour des personnes non familières à IPFS, qui n'ont pas besoin d'installer ou de comprendre le logiciel.
- 
 ===== Usages ===== ===== Usages =====
  
Ligne 149: Ligne 150:
   * OpenBazaar, plateforme d'achats fonctionnant avec des cryptomonnaies.   * OpenBazaar, plateforme d'achats fonctionnant avec des cryptomonnaies.
   * Et d'autres trucs, comme des applications utilisant [[p2p>bitcoin|Ethereum]].   * Et d'autres trucs, comme des applications utilisant [[p2p>bitcoin|Ethereum]].
 +
 +Autre initiative, [[https://textile.io/|Textile]] est une collection d'outils permettant l'usage d'IPFS dans votre application (si j'ai bien compris).
  
 ===== Liens ===== ===== Liens =====
Ligne 157: Ligne 160:
   * Un autre article de vulgarisation sur IPFS : https://lucas.bourneuf.net/blog/ipfs.html (si vous connaissez déjà p2pfr et êtes familiers avec les notions de notre [[:glossaire]], il est probable qu'une bonne partie des explications de l'article soit superflue)   * Un autre article de vulgarisation sur IPFS : https://lucas.bourneuf.net/blog/ipfs.html (si vous connaissez déjà p2pfr et êtes familiers avec les notions de notre [[:glossaire]], il est probable qu'une bonne partie des explications de l'article soit superflue)
   * Un récapitulatif technique d'IPFS (en anglais) : https://medium.com/@seraya/ipfsf-abd5fccf528   * Un récapitulatif technique d'IPFS (en anglais) : https://medium.com/@seraya/ipfsf-abd5fccf528
 +  * Rien à voir, les cours de Michel Foucault restaurés, hébergés sur IPFS : https://freefoucault.eth.link/ - utilise une passerelle web qui re-centralise, Michel tu vaux mieux !
  
   * P2P similaires : [[p2p>Dat]]   * P2P similaires : [[p2p>Dat]]
p2p/ipfs.txt · Dernière modification: le 10/12/2020 à 01h23 de 111110101011